Home | History | Annotate | Download | only in WebCore
      1 2009-06-15  Adele Peterson  <adele (a] apple.com>
      2 
      3         Reviewed by Darin Adler.
      4 
      5         Fix for <rdar://problem/6907228> Pasting a paragraph as quotation leaves you typing in blue instead of black; repros
      6 
      7         * editing/InsertParagraphSeparatorCommand.cpp: (WebCore::InsertParagraphSeparatorCommand::doApply):
      8         When inserting a newline after the blockquote, we don't want to apply the original style after the insertion.
      9 
     10 2009-06-15  Sam Weinig  <sam (a] webkit.org>
     11 
     12         Reviewed by Anders Carlsson.
     13 
     14         Remove outdated comment.
     15 
     16         * bindings/js/JSDOMWindowBase.h:
     17 
     18 2009-06-15  Sam Weinig  <sam (a] webkit.org>
     19 
     20         Reviewed by Anders Carlsson.
     21 
     22         Bring CustomGetPropertyNames more inline with the other
     23         extended attributes prefixed with Custom, by making it 
     24         require a complete implementation.
     25 
     26         * bindings/js/JSDOMWindowCustom.cpp:
     27         (WebCore::JSDOMWindow::getPropertyNames):
     28         * bindings/js/JSHistoryCustom.cpp:
     29         (WebCore::JSHistory::getPropertyNames):
     30         * bindings/js/JSLocationCustom.cpp:
     31         (WebCore::JSLocation::getPropertyNames):
     32         * bindings/js/JSStorageCustom.cpp:
     33         (WebCore::JSStorage::getPropertyNames):
     34         * bindings/scripts/CodeGeneratorJS.pm:
     35 
     36 2009-06-15  Sam Weinig  <sam (a] webkit.org>
     37 
     38         Reviewed by Anders Carlsson.
     39 
     40         Remove commented out ondataunavailable attribute event listener which
     41         has now been removed from HTML 5.
     42 
     43         * page/DOMWindow.idl:
     44 
     45 2009-06-15  Sam Weinig  <sam (a] webkit.org>
     46 
     47         Reviewed by Anders Carlsson.
     48 
     49         Move entire custom implementation of getOwnPropertySlot and put
     50         for JSDOMWindow into JSDOMWindowCustom, eliminating the bit in
     51         JSDOMWindowBase.
     52 
     53         * bindings/js/JSDOMWindowBase.cpp:
     54         * bindings/js/JSDOMWindowBase.h:
     55         * bindings/js/JSDOMWindowCustom.cpp:
     56         (WebCore::nonCachingStaticFunctionGetter):
     57         (WebCore::childFrameGetter):
     58         (WebCore::indexGetter):
     59         (WebCore::namedItemGetter):
     60         (WebCore::JSDOMWindow::getOwnPropertySlot):
     61         (WebCore::JSDOMWindow::put):
     62         (WebCore::JSDOMWindow::getPropertyAttributes):
     63         * bindings/js/JSDOMWindowCustom.h:
     64         * page/DOMWindow.idl:
     65 
     66 2009-06-15  Jeremy Orlow (jorlow (a] chromium.org)
     67 
     68         Reviewed by Dimitri Glazkov.
     69 
     70         https://bugs.webkit.org/show_bug.cgi?id=26356
     71         Define the functions in V8CustomBindings.h.  "Forgot" this in my
     72         earlier patch since it wasn't fully upstreamed when I wrote the
     73         patch.
     74 
     75         * bindings/v8/custom/V8CustomBinding.h:
     76 
     77 2009-06-15  Andre Boule  <aboule (a] apple.com>
     78 
     79         Reviewed by Cameron Zwarich and Dan Bernstein.
     80 
     81         - fix <rdar://problem/6967975> crash with NSString drawAtPoint
     82 
     83         No test possible because this crash can only occur if the client uses
     84         WebKit text drawing without ever using WebCore text, and DumpRenderTree
     85         cannot do either.
     86 
     87         * platform/graphics/FontCache.cpp:
     88         (WebCore::FontCache::purgeInactiveFontData): Null-check
     89             gFontPlatformDataCache.
     90 
     91 2009-06-15  Simon Fraser  <simon.fraser (a] apple.com>
     92 
     93         Reviewed by Mark Rowe.
     94 
     95         <rdar://problem/6974857>
     96         
     97         Define ENABLE_3D_RENDERING when building on 10.6, and move ENABLE_3D_RENDERING
     98         switch from config.h to wtf/Platform.h.
     99 
    100         * Configurations/FeatureDefines.xcconfig:
    101         * config.h:
    102 
    103 2009-06-15  Pavel Feldman  <pfeldman (a] chromium.org>
    104 
    105         Reviewed by Timothy Hatcher.
    106 
    107         Make WebInspector's console evaluation/completion asynchronous.
    108         This way of evaluation allows serializing calls between 
    109         InspectorController and its frontend.
    110         
    111         https://bugs.webkit.org/show_bug.cgi?id=26350
    112 
    113         * inspector/front-end/Console.js:
    114         (WebInspector.Console.prototype.completions):
    115         (WebInspector.Console.prototype._reportCompletions):
    116         (WebInspector.Console.prototype._evalInInspectedWindow):
    117         (WebInspector.Console.prototype._enterKeyPressed.printResult):
    118         (WebInspector.Console.prototype._enterKeyPressed):
    119         * inspector/front-end/DatabaseQueryView.js:
    120         * inspector/front-end/ObjectPropertiesSection.js:
    121         (WebInspector.ObjectPropertyTreeElement.prototype.evaluateExpression):
    122         * inspector/front-end/ScriptsPanel.js:
    123         (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame):
    124         * inspector/front-end/TextPrompt.js:
    125         (WebInspector.TextPrompt.prototype.complete):
    126         (WebInspector.TextPrompt.prototype._completionsReady):
    127 
    128 2009-06-15  Kevin McCullough  <kmccullough (a] apple.com>
    129 
    130         Reviewed by Tim Hatcher.
    131 
    132         Reverted previous change as the old behavior was correct for heavy view.
    133 
    134         * inspector/front-end/BottomUpProfileDataGridTree.js:
    135         (WebInspector.BottomUpProfileDataGridNode.prototype._populate):
    136 
    137 2009-06-15  Kevin McCullough  <kmccullough (a] apple.com>
    138 
    139         Reviewed by Tim Hatcher.
    140 
    141         <rdar://problem/6968125> Profiler 'Call' count is incorrect in Heavy
    142         view (26418)
    143 
    144         - Removed code that copied call and time data from it's ancestor.
    145 
    146         * inspector/front-end/BottomUpProfileDataGridTree.js:
    147         (WebInspector.BottomUpProfileDataGridNode.prototype._populate):
    148 
    149 2009-06-15  Chris Marrin  <cmarrin (a] apple.com>
    150 
    151         Reviewed by Simon Fraser  <simon.fraser (a] apple.com>.
    152 
    153         https://bugs.webkit.org/show_bug.cgi?id=26163
    154 
    155         Added logic to updateTransitions similar to that in updateKeyframeAnimations
    156         which detects and removes stale transitions.
    157 
    158         Test: transitions/cancel-transition.html
    159 
    160         * page/animation/CompositeAnimation.cpp:
    161         (WebCore::CompositeAnimation::updateTransitions):
    162         * page/animation/ImplicitAnimation.cpp:
    163         (WebCore::ImplicitAnimation::ImplicitAnimation):
    164         * page/animation/ImplicitAnimation.h:
    165         (WebCore::ImplicitAnimation::active):
    166         (WebCore::ImplicitAnimation::setActive):
    167 
    168 2009-06-15  Dan Bernstein  <mitz (a] apple.com>
    169 
    170         Reviewed by Tim Hatcher.
    171 
    172         - allow the source code font in the Web Inspector to be customized
    173 
    174         * css/view-source.css: Use the default monospace font family and size
    175             for source code.
    176         * inspector/front-end/inspector.css: Use the default monospace font
    177             family and size for console I/O.
    178 
    179 2009-06-15  Simon Hausmann  <simon.hausmann (a] nokia.com>
    180 
    181         Reviewed by and done with Tor Arne Vestb.
    182 
    183         Fix initialization of uninitialized members in FontFallbackListQt, leading
    184         to random crashes when rendering text.
    185 
    186         * platform/graphics/qt/FontFallbackListQt.cpp:
    187         (WebCore::FontFallbackList::FontFallbackList):
    188         (WebCore::FontFallbackList::invalidate):
    189 
    190 2009-06-15  Xan Lopez  <xlopez (a] igalia.com>
    191 
    192         Reviewed by Holger Freyther.
    193 
    194         https://bugs.webkit.org/show_bug.cgi?id=25895
    195         [Gtk] Segfault when deleting the last/only character in an entry if a11y is enabled
    196 
    197         Use computeOffsetInContainerNode instead of the inline
    198         offsetInContainerNode to return the caret offset, since the former
    199         can handle all types of anchoring. Otherwise we'll hit an ASSERT
    200         in some situations in debug builds, and crash.
    201 
    202         * editing/gtk/SelectionControllerGtk.cpp:
    203         (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
    204 
    205 2009-06-15  Joe Ligman  <joseph.ligman (a] nokia.com>
    206 
    207         Reviewed by Simon Hausmann.
    208 
    209         [Qt] Fix build break
    210         Rename JSONObject to InspectorJSONObject
    211 
    212         https://bugs.webkit.org/show_bug.cgi?id=26340
    213 
    214         * GNUmakefile.am:
    215         * WebCore.pro:
    216         * WebCore.vcproj/WebCore.vcproj:
    217         * WebCore.xcodeproj/project.pbxproj:
    218         * WebCoreSources.bkl:
    219         * inspector/ConsoleMessage.cpp:
    220         (WebCore::ConsoleMessage::addToConsole):
    221         * inspector/InspectorDOMStorageResource.cpp:
    222         (WebCore::InspectorDOMStorageResource::bind):
    223         * inspector/InspectorDatabaseResource.cpp:
    224         (WebCore::InspectorDatabaseResource::bind):
    225         * inspector/InspectorFrontend.cpp:
    226         (WebCore::InspectorFrontend::newInspectorJSONObject):
    227         (WebCore::InspectorFrontend::addMessageToConsole):
    228         (WebCore::InspectorFrontend::addResource):
    229         (WebCore::InspectorFrontend::updateResource):
    230         (WebCore::InspectorFrontend::addDatabase):
    231         (WebCore::InspectorFrontend::addDOMStorage):
    232         * inspector/InspectorFrontend.h:
    233         * inspector/InspectorJSONObject.cpp: Copied from WebCore/inspector/JSONObject.cpp.
    234         (WebCore::InspectorJSONObject::InspectorJSONObject):
    235         (WebCore::InspectorJSONObject::set):
    236         (WebCore::InspectorJSONObject::scriptObject):
    237         (WebCore::InspectorJSONObject::createNew):
    238         * inspector/InspectorJSONObject.h: Copied from WebCore/inspector/JSONObject.h.
    239         * inspector/InspectorResource.cpp:
    240         (WebCore::populateHeadersObject):
    241         (WebCore::InspectorResource::createScriptObject):
    242         (WebCore::InspectorResource::updateScriptObject):
    243         * inspector/JSONObject.cpp: Removed.
    244         * inspector/JSONObject.h: Removed.
    245 
    246 2009-06-12  Tor Arne Vestb  <tor.arne.vestbo (a] nokia.com>
    247 
    248         Reviewed by Simon Hausmann.
    249 
    250         Refactor handling of options in the build-webkit script
    251         
    252         Options are now defined in one place, and then reused when creating
    253         the usage help text, the arguments to GetOptions(), and when passing
    254         the options on to the underlying port-dependent build systems.
    255         
    256         This allows the Qt port to read the defaults for the options from the
    257         pro file (dynamically), and to pass the options on to qmake at build.
    258 
    259         * WebCore.pro:
    260 
    261 2009-06-14  chris fleizach  <cfleizach (a] apple.com>
    262 
    263         Reviewed by Darin Adler.
    264 
    265         Bug 26399: REGRESSION: java applet accessibility broken
    266         https://bugs.webkit.org/show_bug.cgi?id=26399
    267  
    268         Accessibility could not access the elements in a java applet 
    269         when going down the AX hierarchy.
    270 
    271         Test: DRT does not allow java applets so add a manual test:
    272               manual-tests/accessibility/java-applet.html
    273 
    274         * accessibility/AccessibilityRenderObject.cpp:
    275         (WebCore::AccessibilityRenderObject::doAccessibilityHitTest):
    276         * accessibility/mac/AccessibilityObjectMac.mm:
    277         (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
    278         * accessibility/mac/AccessibilityObjectWrapper.mm:
    279         (-[AccessibilityObjectWrapper attachmentView]):
    280         * manual-tests/accessibility: Added.
    281         * manual-tests/accessibility/java-applet.html: Added.
    282         * manual-tests/accessibility/resources: Added.
    283         * manual-tests/accessibility/resources/AppletTest.class: Added.
    284         * manual-tests/accessibility/resources/AppletTest.java: Added.
    285         (AppletTest):
    286         (AppletTest.init):
    287 
    288 2009-06-14  Sam Weinig  <sam (a] webkit.org>
    289 
    290         Reviewed by Cameron Zwarich.
    291 
    292         Rename the CustomGetOwnPropertySlot and CustomPutFunction extended attributes
    293         to DelegatingGetOwnPropertySlot and DelegatingPutFunction to more clearly describe
    294         their functionality (customGetOwnPropertySlot and customPut member functions have
    295         been renamed getOwnPropertySlotDelegate and putDelegate).  CustomGetOwnPropertySlot 
    296         and CustomPutFunction have been repurposed to mean a complete custom implementation
    297         of the function which is inline with other extended attributes prefixed with Custom.
    298 
    299         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
    300         (WebCore::JSCSSStyleDeclaration::putDelegate):
    301         * bindings/js/JSDOMWindowCustom.h:
    302         (WebCore::JSDOMWindow::getOwnPropertySlotDelegate):
    303         (WebCore::JSDOMWindow::putDelegate):
    304         * bindings/js/JSHTMLAppletElementCustom.cpp:
    305         (WebCore::JSHTMLAppletElement::getOwnPropertySlotDelegate):
    306         (WebCore::JSHTMLAppletElement::putDelegate):
    307         * bindings/js/JSHTMLEmbedElementCustom.cpp:
    308         (WebCore::JSHTMLEmbedElement::getOwnPropertySlotDelegate):
    309         (WebCore::JSHTMLEmbedElement::putDelegate):
    310         * bindings/js/JSHTMLObjectElementCustom.cpp:
    311         (WebCore::JSHTMLObjectElement::getOwnPropertySlotDelegate):
    312         (WebCore::JSHTMLObjectElement::putDelegate):
    313         * bindings/js/JSHistoryCustom.cpp:
    314         (WebCore::JSHistory::getOwnPropertySlotDelegate):
    315         (WebCore::JSHistory::putDelegate):
    316         * bindings/js/JSLocationCustom.cpp:
    317         (WebCore::JSLocation::getOwnPropertySlotDelegate):
    318         (WebCore::JSLocation::putDelegate):
    319         (WebCore::JSLocationPrototype::putDelegate):
    320         * bindings/js/JSStorageCustom.cpp:
    321         (WebCore::JSStorage::putDelegate):
    322         * bindings/js/JSWorkerContextCustom.cpp:
    323         (WebCore::JSWorkerContext::getOwnPropertySlotDelegate):
    324         * bindings/scripts/CodeGeneratorJS.pm:
    325         * css/CSSStyleDeclaration.idl:
    326         * html/HTMLAppletElement.idl:
    327         * html/HTMLEmbedElement.idl:
    328         * html/HTMLObjectElement.idl:
    329         * page/DOMWindow.idl:
    330         * page/History.idl:
    331         * page/Location.idl:
    332         * storage/Storage.idl:
    333         * workers/WorkerContext.idl:
    334 
    335 2009-06-14  Dan Bernstein  <mitz (a] apple.com>
    336 
    337         Reviewed by Darin Adler.
    338 
    339         - fix https://bugs.webkit.org/show_bug.cgi?id=26395
    340           <rdar://problem/6971333> REGRESSION (r40813-r40884): No caret after
    341           going back/forward to page with focused text field
    342 
    343         No test, since the back/forward cache is disabled in DumpRenderTree
    344 
    345         * loader/FrameLoader.cpp:
    346         (WebCore::FrameLoader::open): Added a call to CachedPage::restore(),
    347         which was removed in r40870.
    348 
    349 2009-06-14  Darin Adler  <darin (a] apple.com>
    350 
    351         * editing/TextIterator.cpp:
    352         (WebCore::BitStack::push): Use named constant instead of hardcoded numbers.
    353         (WebCore::BitStack::top): Ditto.
    354 
    355 2009-06-14  Darin Adler  <darin (a] apple.com>
    356 
    357         Reviewed by Dan Bernstein.
    358 
    359         Bug 26364: Search can find text that's hidden by overflow:hidden
    360         https://bugs.webkit.org/show_bug.cgi?id=26364
    361         <rdar://problem/6952081>
    362 
    363         Test: fast/text/find-hidden-text.html
    364 
    365         * editing/TextIterator.cpp:
    366         (WebCore::BitStack::BitStack): Added.
    367         (WebCore::BitStack::push): Added.
    368         (WebCore::BitStack::pop): Added.
    369         (WebCore::BitStack::top): Added.
    370         (WebCore::BitStack::size): Added.
    371         (WebCore::parentOrShadowParent): Added. Helper function for walking up
    372         the parent node chain, crossing shadow tree boundaries.
    373         (WebCore::depthCrossingShadowBoundaries): Added for use in assertions.
    374         Counts the depth of a node using the parentOrShadowParent function.
    375         (WebCore::fullyClipsContents): Added. Returns true for an element that
    376         fully clips its contents, currently defined as a box that has zero width
    377         or height and hides overflow. We can add other cases here later.
    378         (WebCore::ignoresContainerClip): Added. Returns true for an element that
    379         ignores its container clip, currently defined as an element with absolute
    380         or fixed positioning.
    381         (WebCore::pushFullyClippedState): Added. Pushes a bit on the stack indicating
    382         if the node in question fully clips its contents.
    383         (WebCore::setUpFullyClippedStack): Added. Pushes a bit for each ancestor of
    384         a node. Used when creating an iterator.
    385         (WebCore::TextIterator::TextIterator): Removed code to initialize
    386         m_inShadowContent. Call setUpFullyClippedStack.
    387         (WebCore::TextIterator::advance): Use parentOrShadowParent. Call pop when moving
    388         up to a parent node, and also one extra time when moving to a sibling node.
    389         Call pushFullyClippedState when moving to a child node, or when moving to a
    390         sibling node after the aforementioned call to pop.
    391         (WebCore::TextIterator::handleTextNode): Return early if the node is fully clipped.
    392         (WebCore::TextIterator::handleReplacedElement): Ditto.
    393         (WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator):
    394         Call setUpFullyClippedStack.
    395         (WebCore::SimplifiedBackwardsTextIterator::advance): Same changes as
    396         TextIterator::advance above.
    397 
    398         * editing/TextIterator.h: Added BitStack class and added m_fullyClippedStack to both
    399         TextIterator and SimplifiedBackwardsTextIterator. Removed unneeded m_inShadowContent.
    400 
    401 2009-06-14  David Hyatt  <hyatt (a] apple.com>
    402 
    403         Reviewed by Simon Fraser.
    404 
    405         https://bugs.webkit.org/show_bug.cgi?id=26362
    406 
    407         Back out Simon's fix and replace it with a better one that doesn't needlessly destroy RenderObjects.
    408         Use NoInherit rather than Detach for child index changes, and don't worry about other pseudo-class state
    409         changes, since they were handled already with setNeedsStyleRecalcs on the affected objects themselves.
    410 
    411         * dom/Element.cpp:
    412         (WebCore::Element::recalcStyle):
    413         * dom/Node.cpp:
    414         (WebCore::Node::diff):
    415         * rendering/style/RenderStyle.h:
    416         (WebCore::InheritedFlags::setChildIndex):
    417 
    418 2009-06-14  David Hyatt  <hyatt (a] apple.com>
    419 
    420         Reviewed by Dan Bernstein.
    421 
    422         Move all of the mutable member variables from Font into the refcounted FontFallbackList.  This makes
    423         copying of Fonts more efficient and also effectively makes all of the mutations of a Font object happen
    424         inside the FontFallbackList.
    425 
    426         * WebCore.base.exp:
    427         * platform/graphics/Font.cpp:
    428         (WebCore::Font::Font):
    429         (WebCore::Font::operator=):
    430         (WebCore::Font::primaryFont):
    431         (WebCore::Font::update):
    432         * platform/graphics/Font.h:
    433         (WebCore::Font::setWordSpacing):
    434         (WebCore::Font::setLetterSpacing):
    435         * platform/graphics/FontFallbackList.cpp:
    436         (WebCore::FontFallbackList::FontFallbackList):
    437         (WebCore::FontFallbackList::invalidate):
    438         (WebCore::FontFallbackList::determinePitch):
    439         * platform/graphics/FontFallbackList.h:
    440         (WebCore::FontFallbackList::primarySimpleFontData):
    441         (WebCore::FontFallbackList::primaryFontData):
    442         * platform/graphics/FontFastPath.cpp:
    443         (WebCore::Font::glyphDataForCharacter):
    444 
    445 2009-06-14  Simon Fraser  <simon.fraser (a] apple.com>
    446 
    447         Reviewed by Darin Adler
    448         
    449         https://bugs.webkit.org/show_bug.cgi?id=26362
    450         
    451         Fix an issue noted on quirksmode.com where dynamically adding siblings does not
    452         update :nth-child style correctly.
    453 
    454         Test: fast/css/nth-child-dynamic.html
    455 
    456         * dom/Node.h:
    457         Change diff() to take const RenderStyle*
    458         * dom/Node.cpp:
    459         (WebCore::Node::diff):
    460         When comparing styles to decide whether to detach and reattach, we
    461         need to look at whether the pseudoclass-related data in the style
    462         changed (since RenderStyle::diff doesn't check this).
    463         
    464         * rendering/style/RenderStyle.cpp:
    465         (WebCore::RenderStyle::getCachedPseudoStyle):
    466         (WebCore::RenderStyle::inheritedNotEqual):
    467         Make these methods const.
    468         * rendering/style/RenderStyle.h:
    469         (WebCore::InheritedFlags::styleType):
    470         (WebCore::InheritedFlags::pseudoClassStateEquivalent):
    471         Make methods const.
    472         Add new method that compares the pseudoclass-related members.
    473 
    474 2009-06-13  Peter Kasting  <pkasting (a] google.com>
    475 
    476         Reviewed by Kevin Ollivier.
    477 
    478         https://bugs.webkit.org/show_bug.cgi?id=25709 part eleven
    479         Write a wx implementation so the wx port can compile.  For now this is
    480         mostly a copy of the Cairo port, but in the future it can be changed to
    481         use a wxBitmap as the storage type everywhere (just as Cairo can
    482         probably be changed).
    483         
    484         Also ASSERT for any other ports who call getAddr() (I don't think there
    485         are any, and besides, they probably won't link, but this doesn't hurt).
    486         
    487         Also fixes a dumb Cairo build bustage typo introduced in part ten.
    488 
    489         * platform/graphics/wx/ImageSourceWx.cpp:
    490         (WebCore::ImageSource::createFrameAtIndex):
    491         * platform/image-decoders/ImageDecoder.h:
    492         (WebCore::RGBA32Buffer::getAddr):
    493         * platform/image-decoders/cairo/ImageDecoderCairo.cpp:
    494         (WebCore::RGBA32Buffer::setStatus):
    495         * platform/image-decoders/wx: Added.
    496         * platform/image-decoders/wx/ImageDecoderWx.cpp: Added.
    497         (WebCore::RGBA32Buffer::RGBA32Buffer):
    498         (WebCore::RGBA32Buffer::clear):
    499         (WebCore::RGBA32Buffer::zeroFill):
    500         (WebCore::RGBA32Buffer::copyBitmapData):
    501         (WebCore::RGBA32Buffer::setSize):
    502         (WebCore::RGBA32Buffer::asNewNativeImage):
    503         (WebCore::RGBA32Buffer::hasAlpha):
    504         (WebCore::RGBA32Buffer::setHasAlpha):
    505         (WebCore::RGBA32Buffer::setStatus):
    506         (WebCore::RGBA32Buffer::operator=):
    507         (WebCore::RGBA32Buffer::width):
    508         (WebCore::RGBA32Buffer::height):
    509         * webcore-wx.bkl:
    510 
    511 2009-06-13  Stephen White  <senorblanco (a] chromium.org>
    512 
    513         Reviewed by Dimitri Glazkov.  Landed by Adam Barth.
    514 
    515         https://bugs.webkit.org/show_bug.cgi?id=26320
    516 
    517         Some minor code cleanup for chromium/skia port.  Removed #ifdef's
    518         around skia API changes, since the new version seems solid and we
    519         don't need to go back.  Added some comments to
    520         TransparencyWin.h, as requested by Brett in
    521         https://bugs.webkit.org/show_bug.cgi?id=24584.
    522 
    523         * platform/graphics/chromium/FontCacheLinux.cpp:
    524         (WebCore::FontCache::createFontPlatformData):
    525         * platform/graphics/chromium/TransparencyWin.h:
    526         * platform/graphics/skia/PathSkia.cpp:
    527         (WebCore::Path::boundingRect):
    528         (WebCore::boundingBoxForCurrentStroke):
    529         * platform/graphics/skia/SkiaUtils.cpp:
    530         (WebCore::SkPathContainsPoint):
    531 
    532 2009-06-13  Adam Barth  <abarth (a] webkit.org>
    533 
    534         Reviewed by Darin Fisher.
    535 
    536         https://bugs.webkit.org/show_bug.cgi?id=24492
    537 
    538         Moved registerURLSchemeAsLocal and registerURLSchemeAsNoAccess from
    539         FrameLoader to SecurityOrigin.
    540 
    541         * WebCore.base.exp:
    542         * loader/FrameLoader.cpp:
    543         (WebCore::FrameLoader::loadFrameRequest):
    544         (WebCore::FrameLoader::canLoad):
    545         * loader/FrameLoader.h:
    546         * page/SecurityOrigin.cpp:
    547         (WebCore::localSchemes):
    548         (WebCore::noAccessSchemes):
    549         (WebCore::SecurityOrigin::SecurityOrigin):
    550         (WebCore::SecurityOrigin::isLocal):
    551         (WebCore::SecurityOrigin::registerURLSchemeAsLocal):
    552         (WebCore::SecurityOrigin::shouldTreatURLAsLocal):
    553         (WebCore::SecurityOrigin::shouldTreatURLSchemeAsLocal):
    554         (WebCore::SecurityOrigin::registerURLSchemeAsNoAccess):
    555         (WebCore::SecurityOrigin::shouldTreatURLSchemeAsNoAccess):
    556         * page/SecurityOrigin.h:
    557 
    558 2009-06-13  Ben Murdoch  <benm (a] google.com>
    559 
    560         Reviewed by David Kilzer.  Landed by Adam Barth.
    561 
    562         https://bugs.webkit.org/show_bug.cgi?id=26189
    563 
    564         This patch changes the way PageGroups create their localStorage
    565         objects. Rather than creating a local storage object for the page group
    566         when a page is added to the group, the local storage object is now
    567         created lazily when the local storage object is requested by the
    568         DOMWindow.
    569 
    570         * page/PageGroup.cpp:
    571         (WebCore::PageGroup::closeLocalStorage): Before attempting to close a local storage object for a page group, ensure one has been created.
    572         (WebCore::PageGroup::addPage): Do not automatically try to create a local storage object when a page is added to the group.
    573         (WebCore::PageGroup::localStorage): Create a local storage object if one does not exist and return it.
    574         * page/PageGroup.h: Add private hasLocalStorage method to PageGroup.
    575 
    576 
    577 2009-06-13  Ben Murdoch  <benm (a] google.com>
    578 
    579         Reviewed by Eric Seidel.  Landed by Adam Barth.
    580 
    581         https://bugs.webkit.org/show_bug.cgi?id=26189
    582 
    583         Add ENABLE(DOM_STORAGE) guards to the dom storage source files.
    584 
    585         * storage/LocalStorage.cpp: Add ENABLE(DOM_STORAGE) guards to the file.
    586         * storage/LocalStorage.h: Ditto
    587         * storage/LocalStorageArea.cpp: Ditto
    588         * storage/LocalStorageArea.h: Ditto
    589         * storage/LocalStorageTask.cpp: Ditto
    590         * storage/LocalStorageTask.h: Ditto
    591         * storage/LocalStorageThread.cpp: Ditto
    592         * storage/LocalStorageThread.h: Ditto
    593         * storage/SessionStorage.cpp: Ditto
    594         * storage/SessionStorage.h: Ditto
    595         * storage/SessionStorageArea.cpp: Ditto
    596         * storage/SessionStorageArea.h: Ditto
    597         * storage/Storage.cpp: Ditto
    598         * storage/Storage.h: Ditto
    599         * storage/StorageArea.cpp: Ditto
    600         * storage/StorageArea.h: Ditto
    601         * storage/StorageEvent.cpp: Ditto
    602         * storage/StorageEvent.h: Ditto
    603         * storage/StorageMap.cpp: Ditto
    604         * storage/StorageMap.h: Ditto
    605         * storage/StorageEvent.idl: Add Conditional=DOM_STORAGE attribute.
    606         * storage/Storage.idl: Ditto
    607 
    608 2009-06-13  Peter Kasting  <pkasting (a] google.com>
    609 
    610         Reviewed by Eric Seidel.
    611 
    612         https://bugs.webkit.org/show_bug.cgi?id=25709 part ten
    613         Make Skia use the root directory ImageDecoder.h and factor out most
    614         Skia-specific bits into skia/ImageDecoderSkia.cpp.  Also fix a pair of
    615         style violations in ImageDecoderCairo.cpp.  This is the last patch for
    616         this bug, everything beyond this is an enhancement rather than
    617         unforking.
    618 
    619         * platform/image-decoders/ImageDecoder.h:
    620         (WebCore::RGBA32Buffer::getAddr):
    621         * platform/image-decoders/cairo/ImageDecoderCairo.cpp:
    622         (WebCore::RGBA32Buffer::hasAlpha):
    623         (WebCore::RGBA32Buffer::setHasAlpha):
    624         (WebCore::setStatus):
    625         * platform/image-decoders/skia/ImageDecoder.h: Removed.
    626         * platform/image-decoders/skia/ImageDecoderSkia.cpp: Added.
    627         (WebCore::RGBA32Buffer::RGBA32Buffer):
    628         (WebCore::RGBA32Buffer::clear):
    629         (WebCore::RGBA32Buffer::zeroFill):
    630         (WebCore::RGBA32Buffer::copyBitmapData):
    631         (WebCore::RGBA32Buffer::setSize):
    632         (WebCore::RGBA32Buffer::asNewNativeImage):
    633         (WebCore::RGBA32Buffer::hasAlpha):
    634         (WebCore::RGBA32Buffer::setHasAlpha):
    635         (WebCore::RGBA32Buffer::setStatus):
    636         (WebCore::RGBA32Buffer::operator=):
    637         (WebCore::RGBA32Buffer::width):
    638         (WebCore::RGBA32Buffer::height):
    639 
    640 2009-06-13  Victor Wang <victorw (a] chromium.org>
    641 
    642         Reviewed by Eric Seidel.  Landed by Adam Barth.
    643 
    644         https://bugs.webkit.org/show_bug.cgi?id=26333
    645         Alert during a dragenter event handler will crash the renderer
    646         
    647         This crash is casued by calling NULL pointer m_documentUnderMouse in
    648         DragController::tryDocumentDrag()
    649 
    650         tryDHTMLDrag fires dragenter event. The event listener that listens
    651         to this event may create a nested message loop (open a modal dialog),
    652         which could process dragleave event and reset m_documentUnderMouse in
    653         dragExited.
    654 
    655         Fix the crash by checking m_documentUnderMouse after tryDHTMLDrag and
    656         do not continue if the pointer has been set to NULL.
    657 
    658         Test: DRT does not show alerts so add a manual test:
    659               manual-tests/drag-enter-alert.html
    660 
    661         * manual-tests/drag-enter-alert.html: Added.
    662         * manual-tests/resources/drag-image.png: Added.
    663         * page/DragController.cpp:
    664         (WebCore::DragController::tryDocumentDrag):
    665 
    666 2009-06-13  Nate Chapin  <japhet (a] google.com>
    667 
    668         Reviewed by Dimitri Glazkov.  Landed by Adam Barth.
    669 
    670         Moved V8 Bindings for V8CustomXPathNSResolver to svn.webkit.org.
    671 
    672         https://bugs.webkit.org/show_bug.cgi?id=26227
    673 
    674         * bindings/v8/custom/V8CustomXPathNSResolver.cpp: Added.
    675         (WebCore::V8CustomXPathNSResolver::V8CustomXPathNSResolver): Moved from src.chromium.org.
    676         (WebCore::V8CustomXPathNSResolver::~V8CustomXPathNSResolver): Moved from src.chromium.org.
    677         (WebCore::V8CustomXPathNSResolver::lookupNamespaceURI): Moved from src.chromium.org.
    678         * bindings/v8/custom/V8CustomXPathNSResolver.h: Added.
    679         * bindings/v8/custom/V8DocumentCustom.cpp: Updated includes.
    680         (WebCore::CALLBACK_FUNC_DECL): Updated class name.
    681 
    682 2009-06-13  Laszlo Gombos  <laszlo.1.gombos (a] nokia.com>
    683 
    684         Reviewed by Mark Rowe.  Landed by Adam Barth.
    685 
    686         Remove obsolete declarations for old Symbian port
    687         https://bugs.webkit.org/show_bug.cgi?id=26339
    688 
    689         * platform/graphics/FloatPoint.h: Remove declarations for native SYMBIAN adaptation.
    690         * platform/graphics/FloatRect.h: Ditto.
    691         * platform/graphics/IntPoint.h: Ditto.
    692         * platform/graphics/IntRect.h: Ditto.
    693         * platform/graphics/IntSize.h: Ditto.
    694 
    695 2009-06-13  Dirk Schulze  <krit (a] webkit.org>
    696 
    697         Reviewed by Eric Seidel.
    698 
    699         Added subRegion calculation to SVG filter. Every filter effect is
    700         clipped to the filter region (according to the spec). This makes
    701         ImageBuffers for filter effects smaller and we just need to take
    702         care about big filter regions.
    703         SVGFEImage needed a correction, to avoid an ASSERT. The two filter
    704         effects feOffset and feFlood help to test the new subRegion code.
    705 
    706         Tests: svg/filters/subRegion-one-effect.svg
    707                svg/filters/subRegion-two-effects.svg
    708 
    709         * platform/graphics/filters/FEBlend.h:
    710         (WebCore::FEBlend::uniteChildEffectSubregions):
    711         * platform/graphics/filters/FEColorMatrix.h:
    712         (WebCore::FEColorMatrix::uniteChildEffectSubregions):
    713         * platform/graphics/filters/FEComponentTransfer.h:
    714         (WebCore::FEComponentTransfer::uniteChildEffectSubregions):
    715         * platform/graphics/filters/FEComposite.h:
    716         (WebCore::FEComposite::uniteChildEffectSubregions):
    717         * platform/graphics/filters/Filter.h:
    718         (WebCore::Filter::setSourceImage):
    719         (WebCore::Filter::sourceImage):
    720         * platform/graphics/filters/FilterEffect.cpp:
    721         (WebCore::FilterEffect::FilterEffect):
    722         (WebCore::FilterEffect::calculateUnionOfChildEffectSubregions):
    723         (WebCore::FilterEffect::calculateEffectRect):
    724         * platform/graphics/filters/FilterEffect.h:
    725         (WebCore::FilterEffect::setUnionOfChildEffectSubregions):
    726         (WebCore::FilterEffect::unionOfChildEffectSubregions):
    727         (WebCore::FilterEffect::hasX):
    728         (WebCore::FilterEffect::setHasX):
    729         (WebCore::FilterEffect::hasY):
    730         (WebCore::FilterEffect::setHasY):
    731         (WebCore::FilterEffect::hasWidth):
    732         (WebCore::FilterEffect::setHasWidth):
    733         (WebCore::FilterEffect::hasHeight):
    734         (WebCore::FilterEffect::setHasHeight):
    735         (WebCore::FilterEffect::setEffectBuffer):
    736         (WebCore::FilterEffect::uniteChildEffectSubregions):
    737         * platform/graphics/filters/SourceAlpha.h:
    738         (WebCore::SourceAlpha::calculateEffectRect):
    739         * platform/graphics/filters/SourceGraphic.cpp:
    740         (WebCore::SourceGraphic::calculateEffectRect):
    741         (WebCore::SourceGraphic::apply):
    742         * platform/graphics/filters/SourceGraphic.h:
    743         * rendering/SVGRenderSupport.cpp:
    744         (WebCore::SVGRenderBase::prepareToRenderSVGContent):
    745         (WebCore::SVGRenderBase::finishRenderSVGContent):
    746         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
    747         (WebCore::SVGFilterPrimitiveStandardAttributes::setStandardAttributes):
    748         * svg/graphics/SVGResourceFilter.cpp:
    749         (WebCore::SVGResourceFilter::prepareFilter):
    750         (WebCore::SVGResourceFilter::applyFilter):
    751         * svg/graphics/SVGResourceFilter.h:
    752         * svg/graphics/filters/SVGFEConvolveMatrix.h:
    753         (WebCore::FEConvolveMatrix::uniteChildEffectSubregions):
    754         * svg/graphics/filters/SVGFEDiffuseLighting.h:
    755         (WebCore::FEDiffuseLighting::uniteChildEffectSubregions):
    756         * svg/graphics/filters/SVGFEDisplacementMap.h:
    757         (WebCore::FEDisplacementMap::uniteChildEffectSubregions):
    758         * svg/graphics/filters/SVGFEFlood.cpp:
    759         (WebCore::FEFlood::apply):
    760         * svg/graphics/filters/SVGFEGaussianBlur.h:
    761         (WebCore::FEGaussianBlur::uniteChildEffectSubregions):
    762         * svg/graphics/filters/SVGFEImage.cpp:
    763         (WebCore::FEImage::FEImage):
    764         * svg/graphics/filters/SVGFEImage.h:
    765         * svg/graphics/filters/SVGFEMerge.cpp:
    766         (WebCore::FEMerge::uniteEffectRect):
    767         * svg/graphics/filters/SVGFEMerge.h:
    768         * svg/graphics/filters/SVGFEMorphology.h:
    769         (WebCore::FEMorphology::uniteChildEffectSubregions):
    770         * svg/graphics/filters/SVGFEOffset.cpp:
    771         (WebCore::FEOffset::apply):
    772         * svg/graphics/filters/SVGFEOffset.h:
    773         (WebCore::FEOffset::uniteChildEffectSubregions):
    774         * svg/graphics/filters/SVGFESpecularLighting.h:
    775         (WebCore::FESpecularLighting::uniteEffectRect):
    776         * svg/graphics/filters/SVGFETile.cpp:
    777         (WebCore::FETile::uniteChildEffectSubregions):
    778         * svg/graphics/filters/SVGFETile.h:
    779         * svg/graphics/filters/SVGFilter.cpp:
    780         (WebCore::SVGFilter::calculateEffectSubRegion):
    781         * svg/graphics/filters/SVGFilter.h:
    782         (WebCore::SVGFilter::effectBoundingBoxMode):
    783         (WebCore::SVGFilter::filterRegion):
    784         (WebCore::SVGFilter::sourceImageRect):
    785 
    786 2009-06-13  Peter Kasting  <pkasting (a] google.com>
    787 
    788         Bustage: Fix broken GIFs on Cairo due to subtle typo.  Fix a warning.
    789 
    790         * platform/image-decoders/ImageDecoder.h:
    791         (WebCore::RGBA32Buffer::copyRowNTimes):
    792         * platform/image-decoders/bmp/BMPImageReader.cpp:
    793         (WebCore::BMPImageReader::processBitmasks):
    794 
    795 2009-06-13  Peter Kasting  <pkasting (a] google.com>
    796 
    797         GTK bustage fix.  "inline" is handled differently by different compilers.
    798 
    799         * platform/image-decoders/ImageDecoder.h:
    800         (WebCore::RGBA32Buffer::getAddr):
    801         * platform/image-decoders/cairo/ImageDecoderCairo.cpp:
    802 
    803 2009-06-13  Peter Kasting  <pkasting (a] google.com>
    804 
    805         Reviewed by Eric Seidel.
    806 
    807         https://bugs.webkit.org/show_bug.cgi?id=25709 part nine
    808         Factor Cairo-specific implementation out of ImageDecoder.h into
    809         ImageDecoderCairo.cpp.  Add some comments to functions declared
    810         in ImageDecoder.h.
    811 
    812         * GNUmakefile.am:
    813         * WebCore.vcproj/WebCore.vcproj:
    814         * platform/image-decoders/ImageDecoder.h:
    815         * platform/image-decoders/cairo: Added.
    816         * platform/image-decoders/cairo/ImageDecoderCairo.cpp: Added.
    817         (WebCore::RGBA32Buffer::RGBA32Buffer):
    818         (WebCore::RGBA32Buffer::clear):
    819         (WebCore::RGBA32Buffer::zeroFill):
    820         (WebCore::RGBA32Buffer::copyBitmapData):
    821         (WebCore::RGBA32Buffer::setSize):
    822         (WebCore::RGBA32Buffer::asNewNativeImage):
    823         (WebCore::RGBA32Buffer::hasAlpha):
    824         (WebCore::RGBA32Buffer::setHasAlpha):
    825         (WebCore::RGBA32Buffer::operator=):
    826         (WebCore::RGBA32Buffer::width):
    827         (WebCore::RGBA32Buffer::height):
    828         (WebCore::RGBA32Buffer::getAddr):
    829 
    830 2009-06-13  David Hyatt  <hyatt (a] apple.com>
    831 
    832         Reviewed by Darin Adler.
    833 
    834         Cleanup of the new MidpointState class.  Turn it into a struct instead.  Fix a mistaken
    835         assertion removal and some unintentional whitespace changes.
    836 
    837         * platform/text/BidiResolver.h:
    838         (WebCore::MidpointState::reset):
    839         * rendering/RenderBlock.h:
    840         * rendering/bidi.cpp:
    841         (WebCore::BidiRun::operator delete):
    842         (WebCore::chopMidpointsAt):
    843         (WebCore::checkMidpoints):
    844         (WebCore::addMidpoint):
    845         (WebCore::appendRunsForObject):
    846         (WebCore::RenderBlock::findNextLineBreak):
    847 
    848 2009-06-12  David Hyatt  <hyatt (a] apple.com>
    849 
    850         Reviewed by Dan Bernstein.
    851 
    852         https://bugs.webkit.org/show_bug.cgi?id=26367
    853 
    854         Remove the global variables in bidi.cpp.  Make a new struct, MidpointState, that holds all of the
    855         midpoint information.  Add the remaining global variables as arguments passed down through functions
    856         as needed.
    857 
    858         * platform/text/BidiResolver.h:
    859         (WebCore::MidpointState::MidpointState):
    860         (WebCore::MidpointState::reset):
    861         (WebCore::BidiResolver::midpointState):
    862         * rendering/RenderBlock.h:
    863         * rendering/bidi.cpp:
    864         (WebCore::BidiRun::operator delete):
    865         (WebCore::chopMidpointsAt):
    866         (WebCore::checkMidpoints):
    867         (WebCore::addMidpoint):
    868         (WebCore::appendRunsForObject):
    869         (WebCore::RenderBlock::bidiReorderLine):
    870         (WebCore::RenderBlock::layoutInlineChildren):
    871         (WebCore::RenderBlock::determineStartPosition):
    872         (WebCore::skipNonBreakingSpace):
    873         (WebCore::shouldCollapseWhiteSpace):
    874         (WebCore::requiresLineBox):
    875         (WebCore::RenderBlock::generatesLineBoxesForInlineChild):
    876         (WebCore::RenderBlock::skipTrailingWhitespace):
    877         (WebCore::RenderBlock::skipLeadingWhitespace):
    878         (WebCore::shouldSkipWhitespaceAfterStartObject):
    879         (WebCore::RenderBlock::findNextLineBreak):
    880 
    881 2009-06-12  Holger Hans Peter Freyther  <zecke (a] selfish.org>
    882 
    883         Build fix for Qt. After recent ImageDeocder.h changes. I want
    884         the original change to be backed out as the whole Skia merging
    885         is going in the wrong direction. The discussion will happen in
    886         the bugtracker.
    887 
    888         https://bugs.webkit.org/show_bug.cgi?id=25709.
    889 
    890         * platform/image-decoders/ImageDecoder.h:
    891 
    892 2009-06-12  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
    893 
    894         Gtk build fix: include cstdio so we can use sscanf
    895 
    896         Gtk/Win Cairo build fix: use isASCIISpace instead of isspace
    897         Suggested by Brent Fulgham
    898 
    899         * platform/image-decoders/xbm/XBMImageDecoder.cpp:
    900         (WebCore::XBMImageDecoder::decodeDatum):
    901 
    902 2009-06-12  Peter Kasting  <pkasting (a] google.com>
    903 
    904         Yet another Skia bustage fix.
    905 
    906         * platform/image-decoders/skia/ImageDecoder.h:
    907         (WebCore::RGBA32Buffer::setSize): Avoid symbol name clash.  The better fix is to take an IntSize(); I'll do that later.
    908 
    909 2009-06-12  Peter Kasting  <pkasting (a] google.com>
    910 
    911         Fix remaining Cairo build bustage from
    912         https://bugs.webkit.org/show_bug.cgi?id=25709 changes.  Use
    913         Vector<char> in place of std::string.
    914 
    915         * platform/image-decoders/xbm/XBMImageDecoder.cpp:
    916         (WebCore::XBMImageDecoder::setData):
    917         (WebCore::XBMImageDecoder::decodeHeader):
    918         (WebCore::XBMImageDecoder::decodeDatum):
    919         * platform/image-decoders/xbm/XBMImageDecoder.h:
    920 
    921 2009-06-12  David Levin  <levin (a] chromium.org>
    922 
    923         Reviewed by Darin Adler.
    924 
    925         UString shouldn't create sharedBuffer for SmallStrings.
    926         https://bugs.webkit.org/show_bug.cgi?id=26347
    927 
    928         Change the call to use the method UString::Rep::sharedBuffer due
    929         to changes in UString.
    930 
    931         No noticable change in behavior, so no test.
    932 
    933         * platform/text/StringImpl.cpp:
    934         (WebCore::StringImpl::create):
    935 
    936 2009-06-12  Peter Kasting  <pkasting (a] google.com>
    937 
    938         Fix Chromium and some of Cairo build bustage, fallout from
    939         https://bugs.webkit.org/show_bug.cgi?id=25709 changes.
    940 
    941         * WebCore.vcproj/WebCore.vcproj: Add missing XBM decoder files.
    942         * platform/image-decoders/skia/ImageDecoder.h:
    943         (WebCore::RGBA32Buffer::copyRowNTimes): Fix typo that broke Skia GIF decoding.
    944 
    945 2009-06-12  Simon Fraser  <simon.fraser (a] apple.com>
    946 
    947         Reviewed by Dan Bernstein
    948 
    949         https://bugs.webkit.org/show_bug.cgi?id=26095
    950         
    951         Fix crash when a renderer for an anonymous node is composited
    952         by null-checking renderer()->node().
    953         
    954         Test: compositing/generated-content.html
    955 
    956         * rendering/RenderLayerBacking.cpp:
    957         (WebCore::RenderLayerBacking::createGraphicsLayer):
    958         (WebCore::RenderLayerBacking::rendererHasBackground):
    959         (WebCore::RenderLayerBacking::rendererBackgroundColor):
    960         (WebCore::RenderLayerBacking::isSimpleContainerCompositingLayer):
    961         (WebCore::RenderLayerBacking::paintIntoLayer):
    962 
    963 2009-06-12  Simon Fraser  <simon.fraser (a] apple.com>
    964 
    965         Fix build when ACCELERATED_COMPOSITING is defined.
    966 
    967         * loader/EmptyClients.h:
    968         (WebCore::EmptyChromeClient::attachRootGraphicsLayer):
    969         (WebCore::EmptyChromeClient::setNeedsOneShotDrawingSynchronization):
    970         (WebCore::EmptyChromeClient::scheduleViewUpdate):
    971         Add stubs for the compositing-related ChromeClient methods.
    972         
    973         * rendering/RenderLayerCompositor.cpp:
    974         (WebCore::RenderLayerCompositor::updateRootLayerPosition):
    975         (WebCore::RenderLayerCompositor::ensureRootPlatformLayer):
    976         docWidth()/docHeight() became private. Use overflowWidth()/overflowHeight() instead, which
    977         matches what is used to size the WebHTMLView.
    978 
    979 2009-06-12  jorlow  <jorlow (a] chromium.org>
    980 
    981         Reviewed by David Levin.
    982 
    983         https://bugs.webkit.org/show_bug.cgi?id=26356
    984         http://crbug.com/14006
    985         Create custom bindings for v8.  The rest of these files are still
    986         forked (so the review is happening on the chromium review site).
    987         These bindings have been tested on a hacked up Chromium instance
    988         (also running --single-process) and Android.
    989 
    990         * bindings/v8/custom/V8StorageCustom.cpp: Added.
    991 
    992 2009-06-12  Dmitry Titov  <dimich (a] chromium.org>
    993 
    994         Reviewed by David Levin.
    995 
    996         https://bugs.webkit.org/show_bug.cgi?id=26359
    997         [v8] Add XMLHttpRequest to WorkerContextExecutionProxy.
    998 
    999         * bindings/v8/WorkerContextExecutionProxy.cpp:
   1000         (WebCore::WorkerContextExecutionProxy::ToV8Object): Add type == V8ClassIndex::XMLHTTPREQUEST to the convertable types.
   1001         (WebCore::WorkerContextExecutionProxy::EventTargetToV8Object): same.
   1002         * bindings/v8/WorkerContextExecutionProxy.h: fix typo in the comment.
   1003 
   1004 2009-06-12  Peter Kasting  <pkasting (a] google.com>
   1005 
   1006         Reviewed by Eric Seidel.
   1007 
   1008         https://bugs.webkit.org/show_bug.cgi?id=25709 part eight
   1009         Replace placeholder Cairo BMP, ICO, XBM decoders with real ones.  Remove
   1010         all the decoders from skia/ since they are now just mirrors of the Cairo
   1011         ones.
   1012 
   1013         * GNUmakefile.am:
   1014         * WebCore.vcproj/WebCore.vcproj:
   1015         * WebCoreSources.bkl:
   1016         * platform/graphics/cairo/ImageSourceCairo.cpp:
   1017         (WebCore::createDecoder): Pass IntSize() to ICOImageDecoder() so it will always decode the largest icon.  Enable XBM decoding on Windows.
   1018         * platform/graphics/skia/ImageSourceSkia.cpp:
   1019         * platform/graphics/wx/ImageSourceWx.cpp:
   1020         (WebCore::createDecoder): Pass IntSize() to ICOImageDecoder() so it will always decode the largest icon.
   1021         * platform/image-decoders/bmp/BMPImageDecoder.cpp: Replaced with WebCore/platform/image-decoders/skia/BMPImageDecoder.cpp.
   1022         * platform/image-decoders/bmp/BMPImageDecoder.h: Replaced with WebCore/platform/image-decoders/skia/BMPImageDecoder.h.
   1023         * platform/image-decoders/bmp/BMPImageReader.cpp: Copied from WebCore/platform/image-decoders/skia/BMPImageReader.cpp.
   1024         * platform/image-decoders/bmp/BMPImageReader.h: Copied from WebCore/platform/image-decoders/skia/BMPImageReader.h.
   1025         * platform/image-decoders/ico/ICOImageDecoder.cpp: Replaced with WebCore/platform/image-decoders/skia/ICOImageDecoder.cpp.
   1026         * platform/image-decoders/ico/ICOImageDecoder.h: Replaced with WebCore/platform/image-decoders/skia/ICOImageDecoder.h.
   1027         * platform/image-decoders/skia/BMPImageDecoder.cpp: Removed.
   1028         * platform/image-decoders/skia/BMPImageDecoder.h: Removed.
   1029         * platform/image-decoders/skia/BMPImageReader.cpp: Removed.
   1030         * platform/image-decoders/skia/BMPImageReader.h: Removed.
   1031         * platform/image-decoders/skia/GIFImageDecoder.cpp: Removed.
   1032         * platform/image-decoders/skia/GIFImageDecoder.h: Removed.
   1033         * platform/image-decoders/skia/GIFImageReader.cpp: Removed.
   1034         * platform/image-decoders/skia/GIFImageReader.h: Removed.
   1035         * platform/image-decoders/skia/ICOImageDecoder.cpp: Removed.
   1036         * platform/image-decoders/skia/ICOImageDecoder.h: Removed.
   1037         * platform/image-decoders/skia/JPEGImageDecoder.cpp: Removed.
   1038         * platform/image-decoders/skia/JPEGImageDecoder.h: Removed.
   1039         * platform/image-decoders/skia/PNGImageDecoder.cpp: Removed.
   1040         * platform/image-decoders/skia/PNGImageDecoder.h: Removed.
   1041         * platform/image-decoders/skia/XBMImageDecoder.cpp: Removed.
   1042         * platform/image-decoders/skia/XBMImageDecoder.h: Removed.
   1043         * platform/image-decoders/xbm/XBMImageDecoder.cpp: Replaced with WebCore/platform/image-decoders/skia/XBMImageDecoder.cpp.
   1044         * platform/image-decoders/xbm/XBMImageDecoder.h: Replaced with WebCore/platform/image-decoders/skia/XBMImageDecoder.h.
   1045 
   1046 2009-06-11  Peter Kasting  <pkasting (a] google.com>
   1047 
   1048         Reviewed by Eric Seidel.
   1049 
   1050         https://bugs.webkit.org/show_bug.cgi?id=25709 part seven
   1051         Update Skia's ImageDecoder.h with a few changes designed to reduce the
   1052         delta between specific implementations of ImageDecoder.h.  Update
   1053         Cairo's ImageDecoder.h to sync up with the API changes in the Skia
   1054         version in the last two chage sets.  Update Cairo's PNG/JPEG/GIF
   1055         decoders to use the APIs as well.  All the Cairo image decoder changes
   1056         are direct copies of the Skia versions except ImageDecoder.h, which is
   1057         modified in the necessary ways for the differences between Cairo and
   1058         Skia.
   1059 
   1060         * platform/graphics/cairo/ImageSourceCairo.cpp:
   1061         (WebCore::ImageSource::createFrameAtIndex): Use new RGBA32Buffer::asNewNativeImage() API.
   1062         * platform/image-decoders/ImageDecoder.h: Sync up with Skia version.
   1063         (WebCore::RGBA32Buffer::):
   1064         (WebCore::RGBA32Buffer::RGBA32Buffer):
   1065         (WebCore::RGBA32Buffer::clear):
   1066         (WebCore::RGBA32Buffer::zeroFill):
   1067         (WebCore::RGBA32Buffer::copyBitmapData):
   1068         (WebCore::RGBA32Buffer::copyRowNTimes):
   1069         (WebCore::RGBA32Buffer::setSize):
   1070         (WebCore::RGBA32Buffer::asNewNativeImage):
   1071         (WebCore::RGBA32Buffer::hasAlpha):
   1072         (WebCore::RGBA32Buffer::disposalMethod):
   1073         (WebCore::RGBA32Buffer::setHasAlpha):
   1074         (WebCore::RGBA32Buffer::setDisposalMethod):
   1075         (WebCore::RGBA32Buffer::setRGBA):
   1076         (WebCore::RGBA32Buffer::operator=):
   1077         (WebCore::RGBA32Buffer::width):
   1078         (WebCore::RGBA32Buffer::height):
   1079         (WebCore::RGBA32Buffer::getAddr):
   1080         * platform/image-decoders/gif/GIFImageDecoder.cpp: Sync up with Skia version.
   1081         (WebCore::GIFImageDecoder::initFrameBuffer):
   1082         (WebCore::GIFImageDecoder::haveDecodedRow):
   1083         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp: Sync up with Skia version.
   1084         (WebCore::JPEGImageDecoder::outputScanlines):
   1085         * platform/image-decoders/png/PNGImageDecoder.cpp: Sync up with Skia version.
   1086         (WebCore::PNGImageDecoder::rowAvailable):
   1087         * platform/image-decoders/skia/ImageDecoder.h: Add various typedefs or helper functions to minimize differences with Cairo version.  Reorder functions slightly to match reordering of Cairo's m_hasAlpha variable, which I moved to increase readability.
   1088         (WebCore::RGBA32Buffer::):
   1089         (WebCore::RGBA32Buffer::copyRowNTimes):
   1090         (WebCore::RGBA32Buffer::setSize):
   1091         (WebCore::RGBA32Buffer::asNewNativeImage):
   1092         (WebCore::RGBA32Buffer::hasAlpha):
   1093         (WebCore::RGBA32Buffer::disposalMethod):
   1094         (WebCore::RGBA32Buffer::setHasAlpha):
   1095         (WebCore::RGBA32Buffer::setStatus):
   1096         (WebCore::RGBA32Buffer::setDisposalMethod):
   1097         (WebCore::RGBA32Buffer::setRGBA):
   1098         (WebCore::RGBA32Buffer::operator=):
   1099         (WebCore::RGBA32Buffer::width):
   1100         (WebCore::RGBA32Buffer::height):
   1101         (WebCore::RGBA32Buffer::getAddr):
   1102         * platform/image-decoders/skia/JPEGImageDecoder.cpp: Add #include needed by JPEG headers on some platforms, plus comment.
   1103 
   1104 2009-06-12  Brent Fulgham  <bfulgham (a] webkit.org>
   1105 
   1106         Unreviewed build correction.
   1107 
   1108         Revert accidental configuration checkin.  Was not meant to
   1109         be part of the last changeset.
   1110 
   1111         * config.h:
   1112 
   1113 2009-06-12  Brent Fulgham  <bfulgham (a] webkit.org>
   1114 
   1115         Reviewed by Eric Seidel.
   1116 
   1117         https://bugs.webkit.org/show_bug.cgi?id=26353
   1118         Corrects handling of Cairo fonts that were getting out of
   1119         sync due to default copy construction.  Also refactors
   1120         some incorrect platform font destruction code that belongs
   1121         in the font object's destructor.
   1122 
   1123         * platform/graphics/win/FontPlatformData.h:
   1124         * platform/graphics/win/FontPlatformDataCGWin.cpp:
   1125         (WebCore::FontPlatformData::~FontPlatformData):
   1126         * platform/graphics/win/FontPlatformDataCairoWin.cpp:
   1127         (WebCore::FontPlatformData::platformDataInit):
   1128         (WebCore::FontPlatformData::FontPlatformData):
   1129         (WebCore::FontPlatformData::setFont):
   1130         (WebCore::FontPlatformData::~FontPlatformData):
   1131         * platform/graphics/win/FontPlatformDataWin.cpp:
   1132         * platform/graphics/win/SimpleFontDataCGWin.cpp:
   1133         * platform/graphics/win/SimpleFontDataCairoWin.cpp:
   1134         (WebCore::SimpleFontData::platformInit):
   1135         (WebCore::SimpleFontData::platformWidthForGlyph):
   1136         * platform/graphics/win/SimpleFontDataWin.cpp:
   1137 
   1138 2009-06-12  Peter Kasting  <pkasting (a] google.com>
   1139 
   1140         Reviewed by Eric Seidel.
   1141 
   1142         * ChangeLog-2007-10-14: Update my email address.
   1143         * ChangeLog-2008-08-10: Update my email address.
   1144 
   1145 2009-06-12  Nate Chapin  <japhet (a] google.com>
   1146 
   1147         Reviewed by David Levin.
   1148 
   1149         Upstream V8Helpers.
   1150 
   1151         https://bugs.webkit.org/show_bug.cgi?id=26332
   1152 
   1153         * bindings/v8/V8Helpers.cpp: Added.
   1154         (wrapNPObject): Moved from v8_helpers.cpp.
   1155         (toV8Context): Moved from v8_helpers.cpp.
   1156         (toV8Proxy): Moved from v8_helpers.cpp.
   1157         * bindings/v8/V8Helpers.h: Added.
   1158 
   1159 2009-06-12  Jessie Berlin  <jberlin (a] apple.com>
   1160 
   1161         Reviewed by Mark Rowe.
   1162 
   1163         https://bugs.webkit.org/show_bug.cgi?id=24792
   1164         rdar://problem/6933055
   1165 
   1166         Changes the radius in which cursor movement around the 4 arrow icon
   1167         while pan-scrolling does not cause scrolling from around 10 pixels to
   1168         15 pixels, similar to what is found in IE and Firefox.
   1169 
   1170         * page/EventHandler.cpp:
   1171         (WebCore::EventHandler::setPanScrollCursor):
   1172         Factor out the no-pan-scroll radius.
   1173         * platform/ScrollView.h:
   1174         Create a constant for the no-pan-scroll radius.
   1175         * rendering/RenderLayer.cpp:
   1176         (WebCore::RenderLayer::panScrollFromPoint):
   1177         Factor out the no-pan-scroll radius.
   1178 
   1179 2009-06-12  Xan Lopez  <xlopez (a] igalia.com>
   1180 
   1181         Reviewed by Gustavo Noronha.
   1182 
   1183         https://bugs.webkit.org/show_bug.cgi?id=25609
   1184         [GTK] Implement support for get_selection and get_n_selections
   1185 
   1186         Only use the VisibleSelection object if it actually belongs to the
   1187         object we are using.
   1188 
   1189         This is pretty hacky-ish, but I can't seem to find a direct API to
   1190         get the VisibleSelection for a given object, only the global one.
   1191 
   1192         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
   1193         (selectionBelongsToObject):
   1194         (webkit_accessible_text_get_n_selections):
   1195         (webkit_accessible_text_get_selection):
   1196 
   1197 2009-06-03  Eric Seidel  <eric (a] webkit.org>
   1198 
   1199         Reviewed by Darin Adler.
   1200 
   1201         Crash at Node::nodeIndex()
   1202         https://bugs.webkit.org/show_bug.cgi?id=26044
   1203 
   1204         This crash seems to be caused by calling nodeIndex() on
   1205         and invalid Node pointer.  As far as I can tell, the most likely
   1206         explanation is that the Range holding the node is actually
   1207         deleted already (thus the memory is junk).  Looking at the code
   1208         Range changes m_start.container() in its destructor to tell if
   1209         the range is detached or not.  If somehow m_start.container() was
   1210         cleared, the range will never be detached and the Document will end
   1211         up with pointers to deleted ranges.  I don't know how to reproduce this
   1212         any reproduction I could think of would hit ASSERTS in Debug mode.
   1213         One reproduction I tried, did not crash in Release mode, even though it
   1214         did in Debug mode.
   1215 
   1216         I'm making a speculative fix by always detaching the Range from the document
   1217         during ~Range.  This is safer, and all we lose is an ASSERT to prevent double-detach.
   1218         
   1219         Another solution would be to instead store an m_attached bool on the Range object, or
   1220         expose a Document::isRangeAttached(range) call.  Either of those solutions
   1221         could affect performance, so I went with this solution for now.
   1222 
   1223         I also removed the RangeBoundaryPoint default constructor
   1224         as it is not used anywhere (and is more likely to cause confusion).
   1225 
   1226         Since I can't reproduce the crash, no test.
   1227 
   1228         * dom/Document.cpp:
   1229         (WebCore::Document::detachRange):
   1230         * dom/Range.cpp:
   1231         (WebCore::Range::~Range):
   1232         (WebCore::Range::detach):
   1233         * dom/RangeBoundaryPoint.h:
   1234         (WebCore::RangeBoundaryPoint::RangeBoundaryPoint):
   1235           RangeBoundaryPoints always have an m_containerNode, ASSERT that.
   1236         (WebCore::RangeBoundaryPoint::set):
   1237           ASSERT(container) to match all the other functions.
   1238           All callers already ASSERT(container).  Since we only
   1239           have reports if this crash from Release mode, I can only
   1240           assume that those ASSERTs would have been hit in a Debug reproduction.
   1241 
   1242 2009-06-11  Shinichiro Hamaji  <hamaji (a] chromium.org>
   1243 
   1244         Reviewed by Adam Barth.
   1245 
   1246         https://bugs.webkit.org/show_bug.cgi?id=25512
   1247         Handle texts after unfinished special tags (i.e., script, style, textarea,
   1248         title, xmp, and iframe) as the text node under the tags in view-source mode.
   1249         Before this change, all texts in unfinished special tags cannot be seen even in view-source mode.
   1250 
   1251         This was already done only for title. This change allows other special tags to be handled as well.
   1252 
   1253         Test: fast/frames/viewsource-unfinished-tags.html
   1254 
   1255         * html/HTMLTokenizer.cpp:
   1256         (WebCore::HTMLTokenizer::parseNonHTMLText):
   1257         (WebCore::HTMLTokenizer::parseTag):
   1258         (WebCore::HTMLTokenizer::write):
   1259         * html/HTMLTokenizer.h:
   1260         (WebCore::HTMLTokenizer::State::inAnyNonHTMLText):
   1261 
   1262 2009-06-11  Yongjun Zhang  <yongjun.zhang (a] nokia.com>
   1263 
   1264         Reviewed by Ariya Hidayat.
   1265 
   1266         https://bugs.webkit.org/show_bug.cgi?id=26291
   1267 
   1268         [Qt] build break in ImageDecoderQt.cpp.
   1269 
   1270         * platform/graphics/qt/ImageDecoderQt.cpp:
   1271         (WebCore::ImageDecoderQt::reset):
   1272         (WebCore::ImageDecoderQt::setData):
   1273         (WebCore::ImageDecoderQt::isSizeAvailable):
   1274         * platform/image-decoders/ImageDecoder.h:
   1275         (WebCore::ImageDecoder::setSize):
   1276 
   1277 2009-06-11  Simon Hausmann  <simon.hausmann (a] nokia.com>
   1278 
   1279         Rubber-stamped by Ariya Hidayat.
   1280 
   1281         Removed obsolete and unmaintained files from the old Symbian port.
   1282 
   1283         * platform/symbian/FloatPointSymbian.cpp: Removed.
   1284         * platform/symbian/FloatRectSymbian.cpp: Removed.
   1285         * platform/symbian/IntPointSymbian.cpp: Removed.
   1286         * platform/symbian/IntRectSymbian.cpp: Removed.
   1287         * platform/symbian/IntSizeSymbian.cpp: Removed.
   1288         * platform/text/symbian/StringImplSymbian.cpp: Removed.
   1289         * platform/text/symbian/StringSymbian.cpp: Removed.
   1290 
   1291 2009-06-10  Peter Kasting  <pkasting (a] google.com>
   1292 
   1293         Reviewed by Eric Seidel.
   1294 
   1295         https://bugs.webkit.org/show_bug.cgi?id=25709 part six
   1296         Miscellaneous tiny changes.  The important bits here are the ANSI C++
   1297         compliance fix in skia/ImageDecoders.h (needed to compile this file on
   1298         non-MSVC) and some behavioral fixes for the XBM decoder that Chromium
   1299         unit tests partly exposed.  Other changes are mostly cosmetic.
   1300 
   1301         * platform/image-decoders/ImageDecoder.h: Make some variables private again.  This will break QTWebKit but those guys have agreed to wait on my finishing the ImageDecoder changes.
   1302         * platform/image-decoders/gif/GIFImageDecoder.cpp:
   1303         (WebCore::GIFImageDecoder::initFrameBuffer): Use IntPoint() instead of the redundant IntPoint(0, 0).
   1304         (WebCore::GIFImageDecoder::frameComplete): Use IntPoint() instead of the redundant IntPoint(0, 0).
   1305         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
   1306         (WebCore::JPEGImageDecoder::outputScanlines): Remove obvious comments.
   1307         * platform/image-decoders/png/PNGImageDecoder.cpp:
   1308         (WebCore::PNGImageDecoder::rowAvailable): Remove obvious comments.
   1309         * platform/image-decoders/skia/BMPImageReader.cpp:
   1310         (WebCore::BMPImageReader::decodeBMP): Make more in line with other decoders' comments and structure, use a ref to decrease verbosity.
   1311         (WebCore::BMPImageReader::processRLEData): Use a ref to decrease verbosity.
   1312         (WebCore::BMPImageReader::processNonRLEData): Use a ref to decrease verbosity.
   1313         * platform/image-decoders/skia/GIFImageDecoder.cpp: Use IntPoint() instead of the redundant IntPoint(0, 0).
   1314         (WebCore::GIFImageDecoder::initFrameBuffer): Use IntPoint() instead of the redundant IntPoint(0, 0).
   1315         (WebCore::GIFImageDecoder::frameComplete): Use IntPoint() instead of the redundant IntPoint(0, 0).
   1316         * platform/image-decoders/skia/ImageDecoder.h:
   1317         (WebCore::RGBA32Buffer::copyRowNTimes): Fix ANSI violation that MSVC let me compile (!).
   1318         * platform/image-decoders/skia/JPEGImageDecoder.cpp:
   1319         (WebCore::JPEGImageDecoder::outputScanlines): Remove obvious comments.
   1320         * platform/image-decoders/skia/PNGImageDecoder.cpp:
   1321         (WebCore::PNGImageDecoder::rowAvailable): Remove obvious comments.
   1322         * platform/image-decoders/skia/XBMImageDecoder.cpp:
   1323         (WebCore::XBMImageDecoder::frameBufferAtIndex): Return 0 for non-zero indexes, don't try to decode unnecessarily after failure or when the size couldn't be computed, make more in line with other decoders' comments and structure, call RGBA32Buffer::setRect() appropriately.
   1324 
   1325 2009-06-10  Ojan Vafai  <ojan (a] chromium.org>
   1326 
   1327         Reviewed by Eric Seidel.
   1328 
   1329         The shadow node inside empty textareas gets collapsed in disabled
   1330         textareas. This is a regression from moving the overflow from
   1331         the shadow node to it's parent. The fix is to return true in
   1332         RenderBlock::hasLineIfEmpty for textarea shadow nodes as we 
   1333         currently do for input shadow nodes.
   1334         
   1335         https://bugs.webkit.org/show_bug.cgi?id=26296
   1336         
   1337         Test: fast/forms/empty-textarea-toggle-disabled.html
   1338 
   1339         * rendering/RenderBlock.cpp:
   1340         (WebCore::RenderBlock::hasLineIfEmpty):
   1341 
   1342 2009-06-10  Xan Lopez  <xlopez (a] igalia.com>
   1343 
   1344         Reviewed by Gustavo Noronha.
   1345 
   1346         https://bugs.webkit.org/show_bug.cgi?id=25609
   1347         [GTK] Implement support for get_selection and get_n_selections
   1348 
   1349         Implement atk_text_get_n_selections.
   1350 
   1351         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
   1352         (webkit_accessible_text_get_n_selections):
   1353 
   1354 2009-06-10  Dan Bernstein  <mitz (a] apple.com>
   1355 
   1356         Reviewed by Anders Carlsson.
   1357 
   1358         - fix <rdar://problem/6958664> REGRESSION (r42665): When I drag to pan a
   1359           Google map in iPhoto Places, it drags a map tile instead
   1360 
   1361         Calling stopLoadRequest() from notifyFinished() removed the
   1362         ScriptElementData from the CachedScript's client set, which could make
   1363         it eligible for purging. The fix is to call removeClient() only after
   1364         executing the script, which protects it from being purged while it is
   1365         in the document's queue of scripts to execute soon.
   1366 
   1367         * dom/ScriptElement.cpp:
   1368         (WebCore::ScriptElementData::execute): Call removeClient() here.
   1369         (WebCore::ScriptElementData::notifyFinished): Instead of calling
   1370         stopLoadRequest(), which calls removeClient(), just reset
   1371         m_cachedScript.
   1372 
   1373 2009-06-10  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   1374 
   1375         Reviewed by Mark Rowe and Eric Seidel.
   1376 
   1377         Update WebInspector localizedStrings.js with new resource tracking strings
   1378         https://bugs.webkit.org/show_bug.cgi?id=26247
   1379 
   1380         * English.lproj/localizedStrings.js:
   1381 
   1382 2009-06-10  Feng Qian  <feng (a] chromium.org>
   1383 
   1384         Reviewed by Eric Seidel.
   1385 
   1386         Add Android specific files.
   1387         https://bugs.webkit.org/show_bug.cgi?id=26280
   1388 
   1389         * platform/text/android: Added.
   1390         * platform/text/android/TextBreakIteratorInternalICU.cpp: Added.
   1391 
   1392 2009-06-10  Feng Qian  <feng (a] chromium.org>
   1393 
   1394         Reviewed by Eric Seidel.
   1395 
   1396         Add Android specific file to WebCore/platform/android (part 9).
   1397         https://bugs.webkit.org/show_bug.cgi?id=26266
   1398 
   1399         * platform/android/TemporaryLinkStubs.cpp: Added.
   1400 
   1401 2009-06-10  Feng Qian  <feng (a] chromium.org>
   1402 
   1403         Reviewed by Eric Seidel.
   1404 
   1405         Add Android platform specific files.
   1406         https://bugs.webkit/org/show_bug.cgi?id=26265 (part 8).
   1407 
   1408         * platform/android/SystemTimeAndroid.cpp: Added.
   1409         * platform/android/WidgetAndroid.cpp: Added.
   1410 
   1411 2009-06-10  Feng Qian  <feng (a] chromium.org>
   1412 
   1413         Reviewed by Eric Seidel.
   1414 
   1415         Add Android port files to WebCore/platform. (part 6).
   1416         https://bugs.webkit.org/show_bug.cgi?id=26264
   1417 
   1418         * platform/android/RenderThemeAndroid.cpp: Added.
   1419         * platform/android/RenderThemeAndroid.h: Added.
   1420 
   1421 2009-06-10  Feng Qian  <feng (a] chromium.org>
   1422 
   1423         Reviewed by Eric Seidel.
   1424 
   1425         Add Android port files to WebCore/platform (part 7).
   1426         https://bugs.webkit.org/show_bug.cgi?id=23296
   1427 
   1428         * platform/android/ScreenAndroid.cpp: Added.
   1429         * platform/android/ScrollViewAndroid.cpp: Added.
   1430         * platform/android/SearchPopupMenuAndroid.cpp: Added.
   1431 
   1432 2009-06-10  Feng Qian  <feng (a] chromium.org>
   1433 
   1434         Reviewed by Eric Seidel.
   1435 
   1436         Add Android port files to WebCore/platform (part 5).
   1437         https://bugs.webkit.org/show_bug.cgi?id=23296
   1438 
   1439         * platform/android/LocalizedStringsAndroid.cpp: Added.
   1440         * platform/android/PopupMenuAndroid.cpp: Added.
   1441 
   1442 2009-06-10  Feng Qian  <feng (a] chromium.org>
   1443 
   1444         Reviewed by Eric Seidel.
   1445 
   1446         Add Android port files to WebCore/platform (part 4).
   1447         https://bugs.webkit.org/show_bug.cgi?id=23296
   1448 
   1449         * platform/android/KeyEventAndroid.cpp: Added.
   1450         * platform/android/KeyboardCodes.h: Added.
   1451 
   1452 2009-06-10  Feng Qian  <feng (a] chromium.org>
   1453 
   1454         Reviewed by Eric Seidel.
   1455 
   1456         Add Android port files to WebCore/platform (part 3).
   1457         https://bugs.webkit.org/show_bug.cgi?id=23296
   1458 
   1459         * platform/android/FileChooserAndroid.cpp: Added.
   1460         * platform/android/FileSystemAndroid.cpp: Added.
   1461 
   1462 2009-06-10  Feng Qian  <feng (a] chromium.org>
   1463 
   1464         Reviewed by Eric Seidel.
   1465 
   1466         Add Android port files to WebCore/platform (part 2).
   1467         https://bugs.webkit.org/show_bug.cgi?id=23296
   1468 
   1469         * platform/android/CursorAndroid.cpp: Added.
   1470         * platform/android/DragDataAndroid.cpp: Added.
   1471         * platform/android/EventLoopAndroid.cpp: Added.
   1472 
   1473 2009-06-10  Nate Chapin  <japhet (a] google.com>
   1474 
   1475         Reviewed by David Levin.
   1476 
   1477         Finish moving V8Custom from src.chromium.org to svn.webkit.org.
   1478 
   1479         https://bugs.webkit.org/show_bug.cgi?id=26258
   1480 
   1481         * bindings/v8/custom/V8CustomBinding.cpp: Finished upstreaming.
   1482         (WebCore::ACCESSOR_GETTER): Moved from v8_custom.cpp.
   1483         (WebCore::INDEXED_ACCESS_CHECK): Moved from v8_custom.cpp.
   1484         (WebCore::NAMED_ACCESS_CHECK): Moved from v8_custom.cpp.
   1485         (WebCore::V8Custom::GetTargetFrame): Moved from v8_custom.cpp.
   1486         (WebCore::V8Custom::DowncastSVGPathSeg): Moved from v8_custom.cpp.
   1487         * bindings/v8/custom/V8CustomBinding.h: Finished upstreaming.
   1488         * bindings/v8/custom/V8DatabaseCustom.cpp: Updated includes.
   1489         * bindings/v8/custom/V8SQLResultSetRowListCustom.cpp: Updated includes.
   1490         * bindings/v8/custom/V8SQLTransactionCustom.cpp: Updated includes.
   1491         * bindings/v8/custom/V8WebKitPointConstructor.cpp: Added.
   1492         (WebCore::CALLBACK_FUNC_DECL): Moved from v8_custom.cpp.
   1493 
   1494 2009-06-10  Takeshi Yoshino  <tyoshino (a] google.com>
   1495 
   1496         Reviewed by Justin Garcia.
   1497 
   1498         Bug 26214: RenderTextControl: Remove ASSERT for checking that visiblePositionForIndex()'s return is not null.
   1499         https://bugs.webkit.org/show_bug.cgi?id=26214
   1500 
   1501         visiblePositionForIndex can return an instance that returns true for
   1502         isNotNull(). One of common case is when the corresponding input element has
   1503         "-webkit-user-select: none" style attribute. We should allow the case instead
   1504         of putting ASSERT.
   1505 
   1506         Test: fast/forms/input-select-webkit-user-select-none.html
   1507 
   1508         * rendering/RenderTextControl.cpp:
   1509         (WebCore::RenderTextControl::setSelectionRange):
   1510 
   1511 2009-06-10  Roland Steiner <rolandsteiner (a] google.com>
   1512 
   1513         Reviewed by Eric Seidel.
   1514 
   1515         Bug 26197: Incorrect variable initialization in PlatformContextSkia.cpp
   1516         https://bugs.webkit.org/show_bug.cgi?id=26197
   1517 
   1518         The PlatformContextSkia constructor does a (very likely) wrong size
   1519         initialization for its m_stateStack member:
   1520 
   1521             m_stateStack(sizeof(State))
   1522 
   1523         The intended initialization is probably rather
   1524 
   1525             m_stateStack(1)
   1526 
   1527         However, since this doesn't buy much (see also comment #4),
   1528         I removed the initialization completely.
   1529 
   1530         * platform/graphics/skia/PlatformContextSkia.cpp:
   1531         (PlatformContextSkia::PlatformContextSkia): remove member initialization
   1532 
   1533 2009-06-10  Dean McNamee  <deanm (a] chromium.org>
   1534 
   1535         Reviewed by Eric Seidel.
   1536 
   1537         When there is no backing bitmap, return a transparent pattern.
   1538         https://bugs.webkit.org/show_bug.cgi?id=26061
   1539 
   1540         Test: fast/canvas/canvas-empty-image-pattern.html
   1541 
   1542         * platform/graphics/skia/PatternSkia.cpp:
   1543         (WebCore::Pattern::createPlatformPattern):
   1544 
   1545 2009-06-10  Dean McNamee  <deanm (a] chromium.org>
   1546 
   1547         Reviewed by Eric Seidel.
   1548 
   1549         Fix a crash for radial gradients with a zero radius.
   1550         https://bugs.webkit.org/show_bug.cgi?id=26059
   1551 
   1552         Test: fast/gradients/crash-on-zero-radius.html
   1553 
   1554         * platform/graphics/skia/GradientSkia.cpp:
   1555         (WebCore::Gradient::platformGradient):
   1556 
   1557 2009-06-10  Peter Kasting  <pkasting (a] google.com>
   1558 
   1559         Reviewed by Eric Seidel.
   1560 
   1561         https://bugs.webkit.org/show_bug.cgi?id=25709 part five
   1562         Rewrite users of ImageDecoder.h to use "safe" API calls, Skia side.
   1563         This tweaks the RGBA32Buffer interfaces to be implementable by Cairo as
   1564         well and modifies Skia's usage of those interfaces accordingly.  Once a
   1565         similar change lands on the Cairo side, the Skia and Cairo decoders
   1566         should be identical except for the implementation of RGBA32Buffer.
   1567 
   1568         * platform/graphics/skia/ImageSourceSkia.cpp:
   1569         (WebCore::ImageSource::createFrameAtIndex): Use new RGBA32Buffer::asNewNativeImage() function.
   1570         * platform/image-decoders/skia/BMPImageReader.cpp:
   1571         (WebCore::BMPImageReader::processNonRLEData): Use new RGBA32Buffer::zeroFill() function.
   1572         * platform/image-decoders/skia/GIFImageDecoder.cpp:
   1573         (WebCore::GIFImageDecoder::haveDecodedRow): Rewrite to use RGBA32Buffer::setRGBA(x, y, ...) calls as well as other RGBA32Buffer interface calls instead of knowing the underlying types inside the buffer; also try and add clarity.
   1574         * platform/image-decoders/skia/ImageDecoder.h: Removed bitmap(), width(), and height().
   1575         (WebCore::RGBA32Buffer::zeroFill): Added.
   1576         (WebCore::RGBA32Buffer::copyBitmapData): Avoid using bitmap(), which is going away.
   1577         (WebCore::RGBA32Buffer::copyRowNTimes): Added.
   1578         (WebCore::RGBA32Buffer::setSize): Use new zeroFill() function.
   1579         (WebCore::RGBA32Buffer::asNewNativeImage): Added.
   1580         (WebCore::RGBA32Buffer::setRGBA): Condensed two versions into one that takes coordinates instead of a raw pointer.
   1581 
   1582 2009-06-10  Xan Lopez  <xlopez (a] igalia.com>
   1583 
   1584         Reviewed by Gustavo Noronha.
   1585 
   1586         https://bugs.webkit.org/show_bug.cgi?id=25671
   1587         [GTK] Implement support for set_caret_offset
   1588 
   1589         Make an implementation that actually works.
   1590 
   1591         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
   1592         (webkit_accessible_text_set_caret_offset):
   1593 
   1594 2009-06-10  Darin Fisher  <darin (a] chromium.org>
   1595 
   1596         Reviewed by Dimitri Glazkov.
   1597 
   1598         https://bugs.webkit.org/show_bug.cgi?id=26294
   1599 
   1600         Make sure all member variables are initialized so that the default
   1601         assignment operator and copy constructors do not read uninitialized
   1602         memory.
   1603 
   1604         * platform/network/ResourceResponseBase.cpp:
   1605 
   1606 2009-06-10  Yury Semikhatsky  <yurys (a] chromium.org>
   1607 
   1608         Reviewed by Timothy Hatcher.
   1609 
   1610         Update main resource meta-data when resource tracking is disabled.
   1611 
   1612         https://bugs.webkit.org/show_bug.cgi?id=26253
   1613 
   1614         * inspector/InspectorController.cpp:
   1615         (WebCore::InspectorController::getTrackedResource):
   1616         (WebCore::InspectorController::willSendRequest):
   1617         (WebCore::InspectorController::didReceiveResponse):
   1618         (WebCore::InspectorController::didReceiveContentLength):
   1619         (WebCore::InspectorController::didFinishLoading):
   1620         (WebCore::InspectorController::didFailLoading):
   1621         * inspector/InspectorController.h:
   1622 
   1623 2009-06-10  Xan Lopez  <xlopez (a] igalia.com>
   1624 
   1625         Reviewed by Gustavo Noronha.
   1626 
   1627         https://bugs.webkit.org/show_bug.cgi?id=25609
   1628         [GTK] Implement support for get_selection and get_n_selections
   1629 
   1630         Implement atk_text_get_selection.
   1631 
   1632         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
   1633         (webkit_accessible_text_get_selection):
   1634 
   1635 2009-06-10  Xan Lopez  <xlopez (a] igalia.com>
   1636 
   1637         Reviewed by Gustavo Noronha.
   1638 
   1639         Do not check if our parent class has the finalize method, it's
   1640         guaranteed to be there.
   1641 
   1642         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
   1643         (webkit_accessible_finalize):
   1644 
   1645 2009-06-10  Brent Fulgham  <bfulgham (a] webkit.org>
   1646 
   1647         Build correct for Windows Cairo targets.
   1648 
   1649         * WebCore.vcproj/WebCore.vcproj: Disable warning 4611 (interaction
   1650           between '_setjmp' and C++ object destruction is non-portable) for
   1651           the two Cairo targets.  This used to be disabled in a #pragma,
   1652           but recent refactoring removed these lines.
   1653 
   1654 2009-06-10  Tor Arne Vestb  <tor.arne.vestbo (a] nokia.com>
   1655 
   1656         Reviewed by Simon Hausmann.
   1657 
   1658         Fix the build of PluginView on Qt with 64-bit where we disable plugins
   1659         at compile time.
   1660 
   1661         Use the FooNone.cpp files at compile-time.
   1662 
   1663         * plugins/PluginPackageNone.cpp:
   1664         * plugins/mac/PluginPackageMac.cpp:
   1665         * plugins/mac/PluginViewMac.cpp:
   1666 
   1667 2009-06-10  Simon Hausmann  <simon.hausmann (a] nokia.com>
   1668 
   1669         Fix the Qt build.
   1670 
   1671         ImageDecoderQt needs m_size and m_sizeAvailable to be protected.
   1672 
   1673         * platform/image-decoders/ImageDecoder.h:
   1674 
   1675 2009-06-10  Tor Arne Vestb  <tor.arne.vestbo (a] nokia.com>
   1676 
   1677         Reviewed by Simon Hausmann.
   1678 
   1679         [Qt] Use absolute path for install_name on Mac
   1680 
   1681         * WebCore.pro:
   1682 
   1683 2009-06-10  Xan Lopez  <xlopez (a] igalia.com>
   1684 
   1685         Reviewed by Jan Alonzo.
   1686 
   1687         https://bugs.webkit.org/show_bug.cgi?id=25415
   1688         [GTK][ATK] Please implement support for get_text_at_offset
   1689 
   1690         Reduce duplicated code to access the text of a AtkText
   1691         object. doAXStringForRange calls text() internally, so we are
   1692         doing exactly the same after the change.
   1693 
   1694         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
   1695         (getGailTextUtilForAtk):
   1696         (getPangoLayoutForAtk):
   1697 
   1698 2009-06-10  Xan Lopez  <xlopez (a] igalia.com>
   1699 
   1700         Reviewed by Jan Alonzo.
   1701 
   1702         https://bugs.webkit.org/show_bug.cgi?id=25415
   1703         [GTK][ATK] Please implement support for get_text_at_offset
   1704 
   1705         Pass a PangoLayout to the GailTextUtil function calls.
   1706 
   1707         It's needed for LINE boundary calls to work correctly.
   1708 
   1709         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
   1710         (updateLayout):
   1711         (getPangoLayoutForAtk):
   1712         (webkit_accessible_text_get_text_after_offset):
   1713         (webkit_accessible_text_get_text_at_offset):
   1714 
   1715 2009-06-10  Xan Lopez  <xlopez (a] igalia.com>
   1716 
   1717         Reviewed by Jan Alonzo.
   1718 
   1719         https://bugs.webkit.org/show_bug.cgi?id=25415
   1720         [GTK][ATK] Please implement support for get_text_at_offset
   1721 
   1722         Use GailUtilText instead of my crappy partial reimplementation of
   1723         it. This should add support for LINE boundaries too, although it's
   1724         mostly untested for now.
   1725 
   1726         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
   1727         (getGailTextUtilForAtk):
   1728         (webkit_accessible_text_get_text_after_offset):
   1729         (webkit_accessible_text_get_text_at_offset):
   1730 
   1731 2009-06-10  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   1732 
   1733         Gtk build fix: include <stdio.h> as it is required in jpeglib.h
   1734 
   1735         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
   1736 
   1737 2009-06-09  Peter Kasting  <pkasting (a] google.com>
   1738 
   1739         Reviewed by Eric Seidel.
   1740 
   1741         https://bugs.webkit.org/show_bug.cgi?id=25709 part four
   1742         Most of the remaining Cairo changes needed before merging Skia/Cairo
   1743         image decoders.  Most of these involve plumbing more error detection and
   1744         handling (or, in some cases, merely the capability to detect errors, as
   1745         e.g. Skia detects and handles image allocation failure while Cairo
   1746         currently doesn't).  There is also some general cleanup and
   1747         simplification; RGBA32Buffer::m_height and all associated functions have
   1748         been removed (set but never used) and some places now rely on superclass
   1749         implementations.
   1750 
   1751         * platform/image-decoders/ImageDecoder.h:
   1752         (WebCore::RGBA32Buffer::RGBA32Buffer): Remove m_height, ensureHeight() and associated stuff
   1753         (WebCore::RGBA32Buffer::copyBitmapData): Add API function so refcounted backing stores (like Skia uses) can be used with GIFs
   1754         (WebCore::RGBA32Buffer::setSize): Zero-fill image to avoid garbage
   1755         (WebCore::RGBA32Buffer::height): Remove
   1756         (WebCore::RGBA32Buffer::ensureHeight): Remove
   1757         (WebCore::ImageDecoder::ImageDecoder): Keep member initialization in order, force subclasses to go through size() instead of accessing m_size directly
   1758         (WebCore::ImageDecoder::isSizeAvailable): Check that decoding hasn't failed
   1759         (WebCore::ImageDecoder::size): Check that decoding hasn't failed
   1760         (WebCore::ImageDecoder::setSize): Protect against integer overflow
   1761         (WebCore::ImageDecoder::isOverSize): Protect against integer overflow
   1762         * platform/image-decoders/gif/GIFImageDecoder.cpp: Remove prepEmptyFrameBuffer()
   1763         (WebCore::GIFImageDecoder::isSizeAvailable): Rely on superclass isSizeAvailable() for better failure handling
   1764         (WebCore::GIFImageDecoder::sizeNowAvailable): Add return values for better failure handling, rely on superclass setSize() for overflow protection
   1765         (WebCore::GIFImageDecoder::initFrameBuffer): Add return values for better failure handling, remove prepEmptyFrameBuffer(), use RGBA32Buffer::setSize() to handle potential allocation failures (won't happen with Cairo port, can in Skia), use RGBA32Buffer::copyBitmapData() so backing store can be refcounted internally (Cairo won't be, Skia is), rely on superclass size() for better failure handling
   1766         (WebCore::GIFImageDecoder::haveDecodedRow): Fix style violation, remove RGBA32Buffer::ensureHeight()
   1767         (WebCore::GIFImageDecoder::frameComplete): Remove RGBA32Buffer::ensureHeight()
   1768         * platform/image-decoders/gif/GIFImageDecoder.h: Remove prepEmptyFrameBuffer(), add return values for better failure handling
   1769         * platform/image-decoders/gif/GIFImageReader.cpp:
   1770         (GIFImageReader::do_lzw): Protect against array overflow, add comments
   1771         (GIFImageReader::read): Protect against array overflow, be more tolerant of bad data, better failure handling
   1772         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp: Remove MSVC-specific warning disable (bfulgham will move into build files)
   1773         (WebCore::JPEGImageReader::decode): Better failure handling
   1774         (WebCore::JPEGImageDecoder::isSizeAvailable): Rely on superclass isSizeAvailable() for better failure handling
   1775         (WebCore::JPEGImageDecoder::outputScanlines): Use RGBA32Buffer::setSize() to handle potential allocation failures (won't happen with Cairo port, can in Skia), rely on superclass size() for better failure handling, remove RGBA32Buffer::ensureHeight()
   1776         * platform/image-decoders/jpeg/JPEGImageDecoder.h: Rely on superclass setSize() for overflow protection
   1777         * platform/image-decoders/png/PNGImageDecoder.cpp: Remove MSVC-specific warning disable (bfulgham will move into build files)
   1778         (WebCore::PNGImageDecoder::PNGImageDecoder): Don't allocate a slot in the framebuffer cache until it's needed
   1779         (WebCore::PNGImageDecoder::isSizeAvailable): Rely on superclass isSizeAvailable() for better failure handling
   1780         (WebCore::PNGImageDecoder::frameBufferAtIndex): Don't allocate a slot in the framebuffer cache until it's needed
   1781         (WebCore::PNGImageDecoder::decode): Don't allocate a slot in the framebuffer cache until it's needed
   1782         (WebCore::PNGImageDecoder::decodingFailed): Fix style violation
   1783         (WebCore::PNGImageDecoder::headerAvailable): Rely on superclass isSizeAvailable() and setSize() for overflow protection and better failure handling
   1784         (WebCore::PNGImageDecoder::rowAvailable): Don't allocate a slot in the framebuffer cache until it's needed, use RGBA32Buffer::setSize() to handle potential allocation failures (won't happen with Cairo port, can in Skia), remove RGBA32Buffer::ensureHeight()
   1785         (WebCore::PNGImageDecoder::pngComplete): Don't allocate a slot in the framebuffer cache until it's needed
   1786 
   1787 2009-06-09  Kevin Ollivier  <kevino (a] theolliviers.com>
   1788 
   1789         wx build fix, adding JSCore/assembler to the list of include dirs, and
   1790         adding editing/ReplaceNodeSpanCommand.cpp to the build.
   1791         
   1792         * WebCoreSources.bkl:
   1793         * webcore-base.bkl:
   1794 
   1795 2009-06-09  Yury Semikhatsky  <yurys (a] chromium.org>
   1796 
   1797         Reviewed by Timothy Hatcher.
   1798 
   1799         When checking if the loader is the main resource loader make sure that the loader's frame is the main frame. 
   1800 
   1801         https://bugs.webkit.org/show_bug.cgi?id=26218
   1802 
   1803         * inspector/InspectorController.cpp:
   1804         (WebCore::InspectorController::didLoadResourceFromMemoryCache):
   1805         (WebCore::InspectorController::identifierForInitialRequest):
   1806         (WebCore::InspectorController::isMainResourceLoader):
   1807         * inspector/InspectorController.h:
   1808 
   1809 2009-06-09  Pierre d'Herbemont  <pdherbemont (a] apple.com>
   1810 
   1811         Reviewed by Eric Seidel.
   1812 
   1813         https://bugs.webkit.org/show_bug.cgi?id=26190
   1814 
   1815         Test: media/controls-css-overload.html
   1816 
   1817         * rendering/RenderMedia.cpp:
   1818         (WebCore::RenderMedia::updateControls): Prevent NULL dereference in case containers gets hidden.
   1819 
   1820 2009-06-08  Peter Kasting  <pkasting (a] google.com>
   1821 
   1822         Reviewed by Eric Seidel.
   1823 
   1824         https://bugs.webkit.org/show_bug.cgi?id=25709 part three
   1825         Various minor cleanups to the Skia files.  Mostly non-functional, except
   1826         for two specific changes:
   1827         * JPEGs and PNGs were always marked as transparent; now they are only
   1828           marked as transparent when they actually are.  I doubt this has much
   1829           of an effect but in theory it could be used to optimize their display.
   1830         * Instead of arbitrarily disallowing images over 32 * 1024 * 1024 px^2,
   1831           only disallow images which are so large they will cause overflow in
   1832           other parts of the code.  This should fix the testcase on
   1833           http://code.google.com/p/chromium/issues/detail?id=3643.
   1834 
   1835         * platform/image-decoders/skia/BMPImageReader.h:
   1836         (WebCore::BMPImageReader::setRGBA): Use simpler non-static setRGBA() form
   1837         * platform/image-decoders/skia/GIFImageDecoder.cpp:
   1838         (WebCore::GIFImageDecoder::initFrameBuffer): Remove unneeded code, use more readable setRGBA() form
   1839         (WebCore::GIFImageDecoder::haveDecodedRow): Fix style violation
   1840         * platform/image-decoders/skia/GIFImageDecoder.h: Remove unneeded code
   1841         * platform/image-decoders/skia/ImageDecoder.h:
   1842         (WebCore::RGBA32Buffer::setSize): setSize() should just setStatus() when it fails since all callers were doing it
   1843         (WebCore::ImageDecoder::isOverSize): Ease "oversized" image constraints to allow any image that won't overflow
   1844         * platform/image-decoders/skia/JPEGImageDecoder.cpp:
   1845         (WebCore::JPEGImageDecoder::outputScanlines): Remove unneeded code, mark JPEGs as non-transparent
   1846         * platform/image-decoders/skia/PNGImageDecoder.cpp:
   1847         (WebCore::PNGImageDecoder::decodingFailed): Fix style violation
   1848         (WebCore::PNGImageDecoder::rowAvailable): Mark un-decoded PNGs as non-transparent (this will get reset later as needed)
   1849         * platform/image-decoders/skia/XBMImageDecoder.cpp:
   1850         (WebCore::XBMImageDecoder::frameBufferAtIndex): Remove unneeded code
   1851 
   1852 2009-06-09  Darin Fisher  <darin (a] chromium.org>
   1853 
   1854         Fix Chromium build bustage.
   1855         
   1856         CachedResource.cpp no longer compiles if USE(JSC) is not defined.  The
   1857         problem is that this file is using a macro from StdLibExtras.h without
   1858         including that file.  It just happenes to get that file via a JSC
   1859         specific include.
   1860 
   1861         * loader/CachedResource.cpp:
   1862 
   1863 2009-06-09  Dean McNamee  <deanm (a] chromium.org>
   1864 
   1865         Reviewed by Oliver Hunt.
   1866 
   1867         Make sure the graphics backends are in sync with the canvas lineWidth state.
   1868         https://bugs.webkit.org/show_bug.cgi?id=26187
   1869 
   1870         Test: fast/canvas/canvas-line-width.html
   1871 
   1872         * html/CanvasRenderingContext2D.cpp:
   1873         (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D):
   1874 
   1875 2009-06-09  Michael Nordman  <michaeln (a] google.com>
   1876 
   1877         Reviewed by Eric Seidel.
   1878 
   1879         Proactively cancel pending requests at DocLoader dtor time,
   1880         otherwise crashes can occur. 
   1881 
   1882         https://bugs.webkit.org/show_bug.cgi?id=26230
   1883         http://code.google.com/p/chromium/issues/detail?id=12161
   1884 
   1885         Test: fast/frames/javascript-url-as-framesrc-crash.html
   1886 
   1887         * loader/DocLoader.cpp:
   1888         (WebCore::DocLoader::~DocLoader):
   1889 
   1890 2009-06-09  Eric Seidel  <eric (a] webkit.org>
   1891 
   1892         Reviewed by Darin Adler.
   1893 
   1894         Fix ASSERT seen in shadow tree testing
   1895         https://bugs.webkit.org/show_bug.cgi?id=25092
   1896 
   1897         Test: svg/custom/use-mutation-event-crash.svg
   1898 
   1899         * svg/SVGUseElement.cpp:
   1900         (WebCore::SVGUseElement::instanceForShadowTreeElement):
   1901 
   1902 2009-06-09  Brent Fulgham  <bfulgham (a] webkit.org>
   1903 
   1904         Reviewed by Eric Seidel.
   1905 
   1906         Fixes https://bugs.webkit.org/show_bug.cgi?id=22891
   1907         Scrolling in Windows Cairo Broken if no background color set.
   1908 
   1909         * platform/graphics/cairo/GradientCairo.cpp:
   1910         (WebCore::Gradient::fill):  Use the GraphicsContext save and restore
   1911           methods (rather than the Cairo-only functions) so that the Windows
   1912           device context is kept in sync.
   1913         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   1914         (WebCore::GraphicsContext::GraphicsContext): Add new constructor call
   1915           to sync Windows HDC with Cairo surface.
   1916         * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
   1917         (WebCore::GraphicsContextPlatformPrivate::syncContext): Provide
   1918           declaration for Windows HDC sync method (and stub for non-Windows
   1919           Cairo implementations).
   1920         * platform/graphics/cairo/ImageCairo.cpp:
   1921         (WebCore::BitmapImage::draw): Use GraphicsContext save and restore
   1922           methods (rather than the Cairo-only functions) so that the Windows
   1923           device context is kept in sync.
   1924         * platform/graphics/win/GraphicsContextCairoWin.cpp:
   1925         (WebCore::CairoContextWithHDC): New method to create a valid Cairo
   1926           context for a given HDC.
   1927         (WebCore::GraphicsContext::GraphicsContext): Modify constructor to
   1928           use new CairoContextWithHDC call.
   1929         (WebCore::GraphicsContext::getWindowsContext): Revise to match
   1930           behavior of CG implementation.
   1931         (WebCore::GraphicsContext::releaseWindowsContext): Revise to match
   1932           behavior of CG implementation.
   1933         (WebCore::GraphicsContextPlatformPrivate::concatCTM): Get rid of
   1934           incorrect new HDC, and use object's HDC member for dealing with
   1935           concatCTM operations.
   1936         (WebCore::GraphicsContextPlatformPrivate::syncContext): New method
   1937           to sync Windows HDC with Cairo context.
   1938         * platform/graphics/win/ImageCairoWin.cpp:
   1939         (WebCore::BitmapImage::getHBITMAPOfSize): Revise implementation to
   1940           match CG behavior.
   1941 
   1942 2009-06-09  Jian Li  <jianli (a] chromium.org>
   1943 
   1944         Reviewed by David Levin.
   1945 
   1946         Bug 26196: Fix the problem that worker's importScripts fails if the
   1947         script URL is redirected from different origin.
   1948         https://bugs.webkit.org/show_bug.cgi?id=26196
   1949 
   1950         Test: http/tests/workers/worker-importScripts.html
   1951 
   1952         The fix is to pass an additional enum parameter to the loader in
   1953         order to tell it to perform the redirect origin check or not.
   1954 
   1955         * loader/DocumentThreadableLoader.cpp:
   1956         (WebCore::DocumentThreadableLoader::create):
   1957         (WebCore::DocumentThreadableLoader::DocumentThreadableLoader):
   1958         (WebCore::DocumentThreadableLoader::willSendRequest):
   1959         * loader/DocumentThreadableLoader.h:
   1960         * loader/ThreadableLoader.cpp:
   1961         (WebCore::ThreadableLoader::create):
   1962         (WebCore::ThreadableLoader::loadResourceSynchronously):
   1963         * loader/ThreadableLoader.h:
   1964         (WebCore::):
   1965         * loader/WorkerThreadableLoader.cpp:
   1966         (WebCore::WorkerThreadableLoader::WorkerThreadableLoader):
   1967         (WebCore::WorkerThreadableLoader::loadResourceSynchronously):
   1968         (WebCore::WorkerThreadableLoader::MainThreadBridge::MainThreadBridge):
   1969         (WebCore::WorkerThreadableLoader::MainThreadBridge::mainThreadCreateLoader):
   1970         * loader/WorkerThreadableLoader.h:
   1971         (WebCore::WorkerThreadableLoader::create):
   1972         * workers/WorkerContext.cpp:
   1973         (WebCore::WorkerContext::importScripts):
   1974         * xml/XMLHttpRequest.cpp:
   1975         (WebCore::XMLHttpRequest::loadRequestAsynchronously):
   1976 
   1977 2009-06-09  Anand K. Mistry  <amistry (a] google.com>
   1978 
   1979         Reviewed by Dimitri Glazkov.
   1980 
   1981         Paint bitmaps with the alpha channel in Skia.
   1982         https://bugs.webkit.org/show_bug.cgi?id=26037
   1983 
   1984         Test: fast/canvas/drawImage-with-globalAlpha.html
   1985 
   1986         * platform/graphics/skia/ImageSkia.cpp:
   1987         (WebCore::paintSkBitmap):
   1988         * platform/graphics/skia/PlatformContextSkia.cpp:
   1989         (PlatformContextSkia::getAlpha):
   1990         * platform/graphics/skia/PlatformContextSkia.h:
   1991 
   1992 2009-06-09  Gustavo Noronha Silva  <gustavo.noronha (a] collabora.co.uk>
   1993 
   1994         Reviewed by Xan Lopez.
   1995 
   1996         https://bugs.webkit.org/show_bug.cgi?id=26104
   1997         [GTK] Make NetworkRequest a proper GObject and expose SoupMessage
   1998 
   1999         Refactor how SoupMessage is handled, so that our ResourceRequest
   2000         object doesn't have to store it as a member, which complicates
   2001         managing ResourceRequest's lifetime.
   2002 
   2003         * platform/network/soup/ResourceHandleSoup.cpp:
   2004         (WebCore::ResourceHandle::startHttp):
   2005         * platform/network/soup/ResourceRequest.h:
   2006         (WebCore::ResourceRequest::ResourceRequest):
   2007         (WebCore::ResourceRequest::doUpdatePlatformRequest):
   2008         (WebCore::ResourceRequest::doUpdateResourceRequest):
   2009         * platform/network/soup/ResourceRequestSoup.cpp:
   2010         (WebCore::ResourceRequest::toSoupMessage):
   2011         (WebCore::ResourceRequest::updateFromSoupMessage):
   2012 
   2013 2009-06-09  Simon Hausmann  <simon.hausmann (a] nokia.com>
   2014 
   2015         Fix the Qt build, the time functions moved into the WTF namespace.
   2016 
   2017         * bridge/qt/qt_runtime.cpp:
   2018         (JSC::Bindings::convertValueToQVariant):
   2019         (JSC::Bindings::convertQVariantToValue):
   2020 
   2021 2009-06-08  Brady Eidson  <beidson (a] apple.com>
   2022 
   2023         Reviewed by Antti Koivisto
   2024 
   2025         <rdar://problem/6727495> Repro crash in WebCore::Loader::Host::servePendingRequests() and dupes.
   2026 
   2027         Test: http/tests/loading/deleted-host-in-resource-load-delegate-callback.html
   2028 
   2029         Loader::Host objects were manually managed via new/delete.
   2030         There's a variety of circumstances where a Host might've been deleted while it was still in the middle
   2031         of a resource load delegate callback.
   2032         Changing them to be RefCounted then adding protectors in the callbacks makes this possibility disappear.
   2033 
   2034         At the same time, remove ProcessingResource which was an earlier fix for this same problem that wasn't
   2035         fully implemented.
   2036 
   2037         * loader/loader.cpp:
   2038         (WebCore::Loader::Loader):
   2039         (WebCore::Loader::load):
   2040         (WebCore::Loader::servePendingRequests):
   2041         (WebCore::Loader::resumePendingRequests):
   2042         (WebCore::Loader::cancelRequests):
   2043         (WebCore::Loader::Host::didFinishLoading):
   2044         (WebCore::Loader::Host::didFail):
   2045         (WebCore::Loader::Host::didReceiveResponse):
   2046         (WebCore::Loader::Host::didReceiveData):
   2047         * loader/loader.h:
   2048         (WebCore::Loader::Host::create):
   2049 
   2050 2009-06-08  Dmitry Titov  <dimich (a] chromium.org>
   2051 
   2052         Reviewed by David Levin.
   2053 
   2054         https://bugs.webkit.org/show_bug.cgi?id=26126
   2055         Refactor methods of WorkerMessagingProxy used to talk to main-thread loader into new interface.
   2056 
   2057         Split a couple of methods used to schedule cross-thread tasks between worker thread and loader thread
   2058         implemented on WorkerMessagingProxy into a separate interface so the loading can be implemented in
   2059         Chromium's workers.
   2060 
   2061         No changes in functionality so no tests added.
   2062 
   2063         * GNUmakefile.am:
   2064         * WebCore.vcproj/WebCore.vcproj:
   2065         * WebCore.xcodeproj/project.pbxproj:
   2066         Added WorkerLoaderProxy.h to the bulid.
   2067 
   2068         * bindings/js/WorkerScriptController.cpp:
   2069         (WebCore::WorkerScriptController::evaluate): WorkerThread::workerObjectProxy() now returns & instead of *
   2070         * bindings/v8/WorkerScriptController.cpp:
   2071         (WebCore::WorkerScriptController::evaluate): same.
   2072         * workers/WorkerContext.cpp:
   2073         (WebCore::WorkerContext::~WorkerContext): same.
   2074         (WebCore::WorkerContext::reportException): same.
   2075         (WebCore::WorkerContext::addMessage): same.
   2076         (WebCore::WorkerContext::postMessage): same.
   2077 
   2078         * loader/WorkerThreadableLoader.cpp:
   2079         (WebCore::WorkerThreadableLoader::WorkerThreadableLoader):
   2080         (WebCore::WorkerThreadableLoader::MainThreadBridge::MainThreadBridge):
   2081         (WebCore::WorkerThreadableLoader::MainThreadBridge::destroy):
   2082         (WebCore::WorkerThreadableLoader::MainThreadBridge::cancel):
   2083         (WebCore::WorkerThreadableLoader::MainThreadBridge::didSendData):
   2084         (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveResponse):
   2085         (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveData):
   2086         (WebCore::WorkerThreadableLoader::MainThreadBridge::didFinishLoading):
   2087         (WebCore::WorkerThreadableLoader::MainThreadBridge::didFail):
   2088         (WebCore::WorkerThreadableLoader::MainThreadBridge::didFailRedirectCheck):
   2089         (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveAuthenticationCancellation):
   2090         Use WorkerLoaderProxy instead of WorkerMessagingProxy for the MainThreadBridge.
   2091         Mostly rename.
   2092 
   2093         (WebCore::WorkerThreadableLoader::MainThreadBridge::mainThreadCreateLoader):
   2094         In addition to using WorkerLoaderProxy instead of WorkerMessagingProxy, the check for
   2095         AskedToTerminate is removed. It seems to be an optimization for a very small number of cases
   2096         when worker termination is requested a very short time before the request to load something
   2097         (XHR or importScript) was dispatched on the main thread.
   2098 
   2099         * loader/WorkerThreadableLoader.h:
   2100         Now keeps a pointer to WorkerLoaderProxy rather then to a WorkerMessagingProxy. This allows
   2101         to implement WorkerThreadableLoader for Chromium.
   2102 
   2103         * workers/WorkerLoaderProxy.h: Added.
   2104         (WebCore::WorkerLoaderProxy::~WorkerLoaderProxy):
   2105 
   2106         * workers/WorkerMessagingProxy.cpp:
   2107         (WebCore::WorkerMessagingProxy::startWorkerContext):
   2108         (WebCore::WorkerMessagingProxy::postTaskToLoader): Added ASSERT since this needs to be implemented for nested workers.
   2109         * workers/WorkerMessagingProxy.h:
   2110         Derived from WorkerLoaderProxy, the methods for posting tasks cross-thread are now virtual.
   2111         Removed unused postTaskToWorkerContext() method.
   2112 
   2113         * workers/WorkerThread.cpp:
   2114         (WebCore::WorkerThread::create):
   2115         (WebCore::WorkerThread::WorkerThread):
   2116         * workers/WorkerThread.h:
   2117         (WebCore::WorkerThread::workerLoaderProxy):
   2118         * workers/WorkerThread.cpp:
   2119         (WebCore::WorkerThread::create):
   2120         (WebCore::WorkerThread::WorkerThread):
   2121         (WebCore::WorkerThread::workerThread):
   2122         * workers/WorkerThread.h:
   2123         (WebCore::WorkerThread::workerLoaderProxy):
   2124         (WebCore::WorkerThread::workerObjectProxy):
   2125         WorkerThread gets a new member of type WorkerLoaderProxy&, and accessor.
   2126         Also, existing WorkerObjectProxy* member is now WorkerObjectProxy& because it can't be null.
   2127 
   2128 2009-06-08  Dimitri Glazkov  <dglazkov (a] chromium.org>
   2129 
   2130         Reviewed by Eric Seidel.
   2131 
   2132         https://bugs.webkit.org/show_bug.cgi?id=26238
   2133         Add parseDate helper to HTTPParsers, which uses WTF::parseDateFromNullTerminatedCharacters.
   2134 
   2135         * ForwardingHeaders/runtime/DateMath.h: Removed.
   2136         * ForwardingHeaders/wtf/DateMath.h: Copied from WebCore/ForwardingHeaders/runtime/DateMath.h.
   2137         * platform/network/HTTPParsers.cpp:
   2138         (WebCore::parseDate): Added.
   2139         * platform/network/HTTPParsers.h:
   2140         * platform/network/ResourceResponseBase.cpp:
   2141         (WebCore::parseDateValueInHeader): Changed to use the new helper.
   2142 
   2143 2009-06-08  Adam Langley  <agl (a] google.com>
   2144 
   2145         Reviewed by Eric Siedel.
   2146 
   2147         Chromium Linux ignored the background color on <select>s. Rather
   2148         than encode magic colours, we start with a base color (specified
   2149         via CSS) and derive the other colors from it. Thus, setting the
   2150         CSS background-color now correctly changes the colour of the
   2151         control.
   2152 
   2153         This should not change the appearence controls without
   2154         background-colors. However, <select>s with a background-color
   2155         will now renderer correctly, which may require rebaselining
   2156         pixel tests in the Chromium tree.
   2157 
   2158         https://bugs.webkit.org/show_bug.cgi?id=26030
   2159         http://code.google.com/p/chromium/issues/detail?id=12596
   2160 
   2161         * platform/graphics/Color.cpp:
   2162         (WebCore::Color::getHSL): new member
   2163         * platform/graphics/Color.h:
   2164         * rendering/RenderThemeChromiumLinux.cpp:
   2165         (WebCore::RenderThemeChromiumLinux::systemColor):
   2166         (WebCore::brightenColor):
   2167         (WebCore::paintButtonLike):
   2168 
   2169 2009-06-08  Victor Wang <victorw (a] chromium.org>
   2170 
   2171         Reviewed by Dimitri Glazkov.
   2172 
   2173         https://bugs.webkit.org/show_bug.cgi?id=26087
   2174         Bug 26087: Removing element in JS crashes Chrome tab if it fired the change event
   2175 
   2176         Fix tab crash caused by destroying the popup list that fired the change event on abandon.
   2177 
   2178         If a popup list is abandoned (press a key to jump to an item
   2179         and then use tab or mouse to get away from the select box),
   2180         the current code fires a change event in PopupListBox::updateFromElemt().
   2181         The JS that listens to this event may destroy the object and cause the
   2182         rest of popup list code crashes.
   2183 
   2184         The updateFromElement() is called before abandon() and this causes
   2185         the selected index to be discarded after updateFromElement(). From
   2186         the code comments, this appears to be the reason why valueChanged is
   2187         called in updateFromElement.
   2188 
   2189         Fix the issue by removing the valueChanged call in updateFromElement,
   2190         saving the selected index that we should accept on abandon and pass
   2191         it to the valueChange in abandon().
   2192 
   2193         A manual test has been added.
   2194 
   2195         * manual-tests/chromium: Added.
   2196         * manual-tests/chromium/onchange-reload-popup.html: Added.
   2197         * platform/chromium/PopupMenuChromium.cpp:
   2198         (WebCore::PopupListBox::PopupListBox):
   2199         (WebCore::PopupListBox::handleKeyEvent):
   2200         (WebCore::PopupListBox::abandon):
   2201         (WebCore::PopupListBox::updateFromElement):
   2202 
   2203 2009-06-08  Tor Arne Vestb  <tor.arne.vestbo (a] nokia.com>
   2204 
   2205         Reviewed by Simon Hausmann.
   2206 
   2207         [Qt] Disable a few warnings on Windows
   2208 
   2209         * WebCore.pro:
   2210 
   2211 2009-06-08  Tor Arne Vestb  <tor.arne.vestbo (a] nokia.com>
   2212 
   2213         Reviewed by Simon Hausmann.
   2214 
   2215         [Qt] Don't enable ENABLE_PLUGIN_PACKAGE_SIMPLE_HASH on Windows
   2216         
   2217         This define was brought in after refactoring some code from
   2218         PluginPackage(Qt|Gtk).cpp into the shared PluginPackage.cpp.
   2219 
   2220         * WebCore.pro:
   2221 
   2222 2009-06-08  Tor Arne Vestb  <tor.arne.vestbo (a] nokia.com>
   2223 
   2224         Reviewed by Simon Hausmann.
   2225 
   2226         [Qt] Use $QMAKE_PATH_SEP instead of hardcoded / to fix Windows build
   2227 
   2228         * WebCore.pro:
   2229 
   2230 2009-06-08  Laszlo Gombos  <laszlo.1.gombos (a] nokia.com>
   2231 
   2232         Reviewed by Ariya Hidayat.
   2233 
   2234         [Qt] Build fix when NETSCAPE_PLUGIN_API support is turned off
   2235         https://bugs.webkit.org/show_bug.cgi?id=26244
   2236 
   2237         * WebCore.pro: Define PLUGIN_PACKAGE_SIMPLE_HASH only if
   2238         NETSCAPE_PLUGIN_API is turned on
   2239         * plugins/PluginPackage.cpp: Guard initializeBrowserFuncs()
   2240         * plugins/PluginViewNone.cpp: Match guards with PluginView.h
   2241 
   2242 2009-06-07  Dan Bernstein  <mitz (a] apple.com>
   2243 
   2244         Reviewed by Sam Weinig.
   2245 
   2246         - fix <rdar://problem/6931661> -[WebView _selectionIsAll] returns YES
   2247           when the selection is inside a text field.
   2248 
   2249         * editing/VisibleSelection.cpp:
   2250         (WebCore::VisibleSelection::isAll): Return false if the selection is in
   2251         a shadow tree.
   2252 
   2253 2009-06-07  Gustavo Noronha Silva  <gustavo.noronha (a] collabora.co.uk>
   2254 
   2255         Reviewed by Holger Freyther.
   2256 
   2257         https://bugs.webkit.org/show_bug.cgi?id=26106
   2258         [GTK] Crashes when you keep a combo open during a page transition, then close it
   2259 
   2260         Hide the combo popup and disconnect from its signals during
   2261         PopupMenu destruction to handle this exceptional case with no
   2262         crash.
   2263 
   2264         * platform/gtk/PopupMenuGtk.cpp:
   2265         (WebCore::PopupMenu::~PopupMenu):
   2266         (WebCore::PopupMenu::menuUnmapped):
   2267 
   2268 2009-06-06  Sam Weinig  <sam (a] webkit.org>
   2269 
   2270         Reviewed by Dan Bernstein.
   2271 
   2272         Fix for <rdar://problem/6930540>
   2273         REGRESSION (r43797): Serif and fantasy font-family names are wrong in result of getComputedStyle
   2274 
   2275         Test: fast/css/font-family-builtins.html
   2276 
   2277         * css/CSSComputedStyleDeclaration.cpp:
   2278         (WebCore::identifierForFamily): Fix typo. Fantasy family should be
   2279         -webkit-fantasy not, -webkit-serif.
   2280 
   2281 2009-06-06  Sam Weinig  <sam (a] webkit.org>
   2282 
   2283         Reviewed by Brady Eidson.
   2284 
   2285         Fix for <rdar://problem/6936235>
   2286         Need to support StorageEvent.storageArea to meet the Web Storage spec
   2287 
   2288         * storage/LocalStorageArea.cpp:
   2289         (WebCore::LocalStorageArea::dispatchStorageEvent): Pass the localStorage for
   2290         the frame being dispatched to.
   2291         * storage/SessionStorageArea.cpp:
   2292         (WebCore::SessionStorageArea::dispatchStorageEvent): Ditto, only for sessionStorage.
   2293 
   2294         * storage/StorageEvent.cpp:
   2295         (WebCore::StorageEvent::StorageEvent):
   2296         (WebCore::StorageEvent::initStorageEvent):
   2297         * storage/StorageEvent.h:
   2298         (WebCore::StorageEvent::create):
   2299         (WebCore::StorageEvent::storageArea):
   2300         * storage/StorageEvent.idl:
   2301         Add storageArea member.
   2302 
   2303 2009-06-05  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   2304 
   2305         Reviewed by Anders Carlsson.
   2306 
   2307         Fix WMLInputElement initialization code. Don't call initialize() on attach(), let
   2308         WMLCardElement handle initialization once, after the document has been parsed.
   2309 
   2310         To keep layout tests working introduce a new function in Document.idl: initializeWMLPageState().
   2311         WMLTestCase.js (the wml/ layout test framework) will use it to simulate a regular WML document,
   2312         whose variable state gets initialized on WMLDocument::finishedParsing(). Force initialization
   2313         of the WML variable state, right after the dynamically created elements have been inserted into the tree.
   2314 
   2315         * dom/Document.cpp:
   2316         (WebCore::Document::initializeWMLPageState):
   2317         * dom/Document.h:
   2318         * dom/Document.idl:
   2319         * wml/WMLCardElement.cpp:
   2320         (WebCore::WMLCardElement::handleIntrinsicEventIfNeeded):
   2321         * wml/WMLDocument.cpp:
   2322         (WebCore::WMLDocument::finishedParsing):
   2323         (WebCore::WMLDocument::initialize):
   2324         * wml/WMLDocument.h:
   2325         * wml/WMLInputElement.cpp:
   2326         (WebCore::WMLInputElement::initialize):
   2327         * wml/WMLInputElement.h:
   2328 
   2329 2009-06-05  Sam Weinig  <sam (a] webkit.org>
   2330 
   2331         Reviewed by Anders Carlsson.
   2332 
   2333         Add ononline and onoffline attributes for the <body> element. 
   2334 
   2335         * html/HTMLAttributeNames.in: Added ononlineAttr and onofflineAttr.
   2336         * html/HTMLBodyElement.cpp:
   2337         (WebCore::HTMLBodyElement::parseMappedAttribute): Map ononlineAttr
   2338         and onofflineAttr to window event listeners.
   2339 
   2340 2009-06-05  Tor Arne Vestb  <tor.arne.vestbo (a] nokia.com>
   2341 
   2342         Reviewed by Simon Hausmann.
   2343 
   2344         [Qt] Add missing includes of config.h
   2345 
   2346         * platform/qt/QWebPopup.cpp:
   2347         * platform/text/qt/TextBreakIteratorQt.cpp:
   2348 
   2349 2009-06-05  Fumitoshi Ukai  <ukai (a] google.com>
   2350 
   2351         Reviewed by Dimitri Glazkov.
   2352 
   2353         https://bugs.webkit.org/show_bug.cgi?id=26215
   2354         Try to fix the Chromium build.
   2355 
   2356         * platform/graphics/chromium/GlyphPageTreeNodeChromiumWin.cpp:
   2357         (WebCore::fillBMPGlyphs):
   2358         (WebCore::fillNonBMPGlyphs):
   2359 
   2360 2009-06-05  Shinichiro Hamaji  <hamaji (a] chromium.org>
   2361 
   2362         Bug 26160: Compile fails in MacOSX when GNU fileutils are installed
   2363 
   2364         <https://bugs.webkit.org/show_bug.cgi?id=26160>
   2365 
   2366         Reviewed by Alexey Proskuryakov.
   2367 
   2368         Use /bin/ln instead of ln for cases where this command is used with -h option.
   2369         As this option is not supported by GNU fileutils, this change helps users 
   2370         who have GNU fileutils in their PATH.
   2371 
   2372         * WebCore.xcodeproj/project.pbxproj:
   2373 
   2374 2009-06-03  Ben Murdoch  <benm (a] google.com>
   2375 
   2376         <https://bugs.webkit.org/show_bug.cgi?id=25710> HTML5 Database stops executing transactions if the URL hash changes while a transaction is open and an XHR is in progress.
   2377 
   2378         Reviewed by Alexey Proskuryakov.
   2379 
   2380         Fix a bug that causes database transactions to fail if a history navigation to a hash fragment of the same document is made while resources (e.g. an XHR) are loading
   2381 
   2382         Test: storage/hash-change-with-xhr.html
   2383 
   2384         * loader/DocumentLoader.cpp:
   2385         (WebCore::DocumentLoader::stopLoading):
   2386         * loader/DocumentLoader.h:
   2387         * loader/FrameLoader.cpp:
   2388         (WebCore::FrameLoader::stopLoading):
   2389         (WebCore::FrameLoader::stopAllLoaders):
   2390         * loader/FrameLoader.h:
   2391         * loader/FrameLoaderTypes.h:
   2392         (WebCore::):
   2393         * page/Page.cpp:
   2394         (WebCore::Page::goToItem):
   2395         * WebCore.base.exp:
   2396 
   2397 2009-06-03  Tor Arne Vestb  <tor.arne.vestbo (a] nokia.com>
   2398 
   2399         Reviewed by Simon Hausmann.
   2400 
   2401         [Qt] Make sure the correct config.h is included when shadowbuilding
   2402 
   2403         * WebCore.pro:
   2404 
   2405 2009-06-05  Tor Arne Vestb  <tor.arne.vestbo (a] nokia.com>
   2406 
   2407         Reviewed by Simon Hausmann.
   2408 
   2409         Fix Qt build after r44452
   2410 
   2411         * platform/network/qt/QNetworkReplyHandler.cpp:
   2412         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
   2413 
   2414 2009-06-05  Tor Arne Vestb  <tor.arne.vestbo (a] nokia.com>
   2415 
   2416         Reviewed by Simon Hausmann.
   2417 
   2418         [Qt] Remove some dead code (MenuEventProxy)
   2419 
   2420         * WebCore.pro:
   2421         * platform/ContextMenu.h:
   2422         * platform/qt/ContextMenuQt.cpp:
   2423         * platform/qt/MenuEventProxy.h: Removed.
   2424 
   2425 2009-06-05  Xan Lopez  <xlopez (a] igalia.com>
   2426 
   2427         More build fixes.
   2428 
   2429         * platform/graphics/gtk/GlyphPageTreeNodePango.cpp:
   2430         (WebCore::GlyphPage::fill):
   2431 
   2432 2009-06-05  Xan Lopez  <xlopez (a] igalia.com>
   2433 
   2434         Fix the GTK+ build.
   2435 
   2436         * GNUmakefile.am:
   2437         * platform/graphics/gtk/FontCacheGtk.cpp:
   2438         (WebCore::FontCache::getFontDataForCharacters):
   2439         * platform/graphics/gtk/GlyphPageTreeNodeGtk.cpp:
   2440         (WebCore::GlyphPage::fill):
   2441 
   2442 2009-06-05  Antti Koivisto  <antti (a] apple.com>
   2443 
   2444         Try to fix Windows (and possibly other platforms) build.
   2445 
   2446         Restore ResourceResponseBase::lastModifiedDate() and setLastModifiedDate() removed in previous commit.
   2447         for now since PluginStream used on some platforms expects them and calculations differ from plain 
   2448         Last-modified header value.
   2449         
   2450         Also include <wtf/MathExtras.h> to get isfinite().
   2451 
   2452         * platform/network/ResourceResponseBase.cpp:
   2453         (WebCore::ResourceResponseBase::adopt):
   2454         (WebCore::ResourceResponseBase::copyData):
   2455         (WebCore::ResourceResponseBase::setLastModifiedDate):
   2456         (WebCore::ResourceResponseBase::lastModifiedDate):
   2457         * platform/network/ResourceResponseBase.h:
   2458         * platform/network/cf/ResourceResponseCFNet.cpp:
   2459         (WebCore::ResourceResponse::platformLazyInit):
   2460 
   2461 2009-06-03  Antti Koivisto  <antti (a] apple.com>
   2462 
   2463         Reviewed by Dave Kilzer.
   2464 
   2465         https://bugs.webkit.org/show_bug.cgi?id=13128
   2466         Safari not obeying cache header
   2467         
   2468         Implement RFC 2616 cache expiration calculations in WebKit instead of
   2469         relying on the networking layer.
   2470 
   2471         * ForwardingHeaders/runtime/DateMath.h: Added.
   2472         * WebCore.base.exp:
   2473         * loader/Cache.cpp:
   2474         (WebCore::Cache::revalidationSucceeded):
   2475         * loader/CachedResource.cpp:
   2476         (WebCore::CachedResource::CachedResource):
   2477         (WebCore::CachedResource::isExpired):
   2478         (WebCore::CachedResource::currentAge):
   2479         (WebCore::CachedResource::freshnessLifetime):
   2480         (WebCore::CachedResource::setResponse):
   2481         (WebCore::CachedResource::updateResponseAfterRevalidation):
   2482         (WebCore::CachedResource::mustRevalidate):
   2483         * loader/CachedResource.h:
   2484         * platform/network/ResourceResponseBase.cpp:
   2485         (WebCore::ResourceResponseBase::ResourceResponseBase):
   2486         (WebCore::ResourceResponseBase::adopt):
   2487         (WebCore::ResourceResponseBase::copyData):
   2488         (WebCore::ResourceResponseBase::setHTTPHeaderField):
   2489         (WebCore::ResourceResponseBase::parseCacheControlDirectives):
   2490         (WebCore::ResourceResponseBase::cacheControlContainsNoCache):
   2491         (WebCore::ResourceResponseBase::cacheControlContainsMustRevalidate):
   2492         (WebCore::ResourceResponseBase::cacheControlMaxAge):
   2493         (WebCore::parseDateValueInHeader):
   2494         (WebCore::ResourceResponseBase::date):
   2495         (WebCore::ResourceResponseBase::age):
   2496         (WebCore::ResourceResponseBase::expires):
   2497         (WebCore::ResourceResponseBase::lastModified):
   2498         (WebCore::ResourceResponseBase::isAttachment):
   2499         (WebCore::ResourceResponseBase::compare):
   2500         * platform/network/ResourceResponseBase.h:
   2501         * platform/network/cf/ResourceResponseCFNet.cpp:
   2502         (WebCore::ResourceResponse::platformLazyInit):
   2503         * platform/network/mac/ResourceResponseMac.mm:
   2504         (WebCore::ResourceResponse::platformLazyInit):
   2505 
   2506 2009-06-04  Roland Steiner <rolandsteiner (a] google.com>
   2507 
   2508         Reviewed by Eric Seidel.
   2509 
   2510         Bug 26201: Remove superfluous 'if' statements in RenderTable::addChild
   2511         https://bugs.webkit.org/show_bug.cgi?id=26201
   2512 
   2513         * rendering/RenderTable.cpp:
   2514         (WebCore::RenderTable::addChild): remove superfluous 'if' statements
   2515        
   2516 
   2517 2009-06-04  Roland Steiner <rolandsteiner (a] google.com>
   2518 
   2519         Reviewed by Eric Seidel.
   2520 
   2521         Bug 26202: add macros for primitive values to simplify CSSStyleSelector::applyProperty
   2522         https://bugs.webkit.org/show_bug.cgi?id=26202
   2523 
   2524         * css/CSSStyleSelector.cpp: add HANDLE_INHERIT_AND_INITIAL_AND_PRIMITIVE[_WITH_VALUE] macros
   2525         (WebCore::CSSStyleSelector::applyProperty): use new macros
   2526 
   2527 2009-06-04  Roland Steiner <rolandsteiner (a] google.com>
   2528 
   2529         Reviewed by Eric Seidel
   2530 
   2531         Bug 26203: Move parsing of 'attr(X)' values to own method
   2532         https://bugs.webkit.org/show_bug.cgi?id=26203
   2533 
   2534         * css/CSSParser.cpp:
   2535         (WebCore::CSSParser::parseAttr): new method
   2536         (WebCore::CSSParser::parseContent): use new parseAttr method
   2537         * css/CSSParser.h:
   2538         (WebCore::CSSParser::parseAttr): new method
   2539 
   2540 2009-06-04  Roland Steiner <rolandsteiner (a] google.com>
   2541 
   2542         Reviewed by Eric Seidel.
   2543 
   2544         Bug 26205: RenderTableSection::addChild : correct comment
   2545         https://bugs.webkit.org/show_bug.cgi?id=26205
   2546 
   2547         * rendering/RenderTableSection.cpp:
   2548         (WebCore::RenderTableSection::addChild): correct comment
   2549 
   2550 2009-06-04  Roland Steiner <rolandsteiner (a] google.com>
   2551 
   2552         Reviewed by Eric Seidel.
   2553 
   2554         Bug 26204: RenderBlock : simplify handleSpecialChild, comment correction
   2555         https://bugs.webkit.org/show_bug.cgi?id=26204
   2556 
   2557         * rendering/RenderBlock.cpp:
   2558         (WebCore::RenderBlock::handleSpecialChild): simplify usage
   2559         (WebCore::RenderBlock::handlePositionedChild): simplify usage
   2560         (WebCore::RenderBlock::handleFloatingChild): simplify usage
   2561         (WebCore::RenderBlock::handleRunInChild): simplify usage
   2562         (WebCore::RenderBlock::layoutBlock): correct comment
   2563         (WebCore::RenderBlock::layoutBlockChildren): simplify loop, change call to handleSpecialChild
   2564         * rendering/RenderBlock.h: 
   2565         (WebCore::RenderBlock::handleSpecialChild): change signature
   2566         (WebCore::RenderBlock::handlePositionedChild): change signature
   2567         (WebCore::RenderBlock::handleFloatingChild): change signature
   2568         (WebCore::RenderBlock::handleRunInChild): change signature
   2569 
   2570 2009-06-04  Dan Bernstein  <mitz (a] apple.com>
   2571 
   2572         - retry to fix the Tiger build
   2573 
   2574         * platform/graphics/mac/SimpleFontDataMac.mm:
   2575         (WebCore::initFontData):
   2576 
   2577 2009-06-04  Dan Bernstein  <mitz (a] apple.com>
   2578 
   2579         - try to fix the Tiger build
   2580 
   2581         * platform/graphics/SimpleFontData.h:
   2582 
   2583 2009-06-04  Dan Bernstein  <mitz (a] apple.com>
   2584 
   2585         - try to fix the Leopard and Tiger builds
   2586 
   2587         * platform/graphics/SimpleFontData.h:
   2588 
   2589 2009-06-04  Dan Bernstein  <mitz (a] apple.com>
   2590 
   2591         - try to fix the Windows build
   2592 
   2593         * platform/graphics/win/UniscribeController.cpp:
   2594         (WebCore::UniscribeController::shapeAndPlaceItem):
   2595 
   2596 2009-06-04  Dan Bernstein  <mitz (a] apple.com>
   2597 
   2598         Reviewed by Sam Weinig.
   2599 
   2600         - make SimpleFontData's data members private
   2601         - rename SimpleFontData's m_font member to m_platformData
   2602 
   2603         * platform/graphics/Font.h:
   2604         (WebCore::Font::spaceWidth):
   2605         * platform/graphics/SimpleFontData.cpp:
   2606         (WebCore::SimpleFontData::SimpleFontData):
   2607         * platform/graphics/SimpleFontData.h:
   2608         (WebCore::SimpleFontData::platformData):
   2609         (WebCore::SimpleFontData::spaceWidth):
   2610         (WebCore::SimpleFontData::adjustedSpaceWidth):
   2611         (WebCore::SimpleFontData::syntheticBoldOffset):
   2612         (WebCore::SimpleFontData::spaceGlyph):
   2613         (WebCore::SimpleFontData::getNSFont):
   2614         (WebCore::SimpleFontData::getQtFont):
   2615         (WebCore::SimpleFontData::getWxFont):
   2616         * platform/graphics/WidthIterator.cpp:
   2617         (WebCore::WidthIterator::advance):
   2618         * platform/graphics/cairo/FontCairo.cpp:
   2619         (WebCore::Font::drawGlyphs):
   2620         * platform/graphics/chromium/SimpleFontDataChromiumWin.cpp:
   2621         (WebCore::SimpleFontData::platformInit):
   2622         (WebCore::SimpleFontData::smallCapsFontData):
   2623         (WebCore::SimpleFontData::determinePitch):
   2624         (WebCore::SimpleFontData::platformWidthForGlyph):
   2625         * platform/graphics/chromium/SimpleFontDataLinux.cpp:
   2626         (WebCore::SimpleFontData::platformInit):
   2627         (WebCore::SimpleFontData::smallCapsFontData):
   2628         (WebCore::SimpleFontData::containsCharacters):
   2629         (WebCore::SimpleFontData::platformWidthForGlyph):
   2630         * platform/graphics/gtk/FontGtk.cpp:
   2631         (WebCore::setPangoAttributes):
   2632         * platform/graphics/gtk/SimpleFontDataGtk.cpp:
   2633         (WebCore::SimpleFontData::platformInit):
   2634         (WebCore::SimpleFontData::containsCharacters):
   2635         (WebCore::SimpleFontData::determinePitch):
   2636         (WebCore::SimpleFontData::platformWidthForGlyph):
   2637         (WebCore::SimpleFontData::setFont):
   2638         * platform/graphics/gtk/SimpleFontDataPango.cpp:
   2639         (WebCore::SimpleFontData::platformInit):
   2640         (WebCore::SimpleFontData::containsCharacters):
   2641         (WebCore::SimpleFontData::determinePitch):
   2642         (WebCore::SimpleFontData::platformWidthForGlyph):
   2643         (WebCore::SimpleFontData::setFont):
   2644         * platform/graphics/mac/CoreTextController.cpp:
   2645         (WebCore::CoreTextController::adjustGlyphsAndAdvances):
   2646         * platform/graphics/mac/FontMac.mm:
   2647         (WebCore::Font::drawGlyphs):
   2648         * platform/graphics/mac/FontMacATSUI.mm:
   2649         (WebCore::initializeATSUStyle):
   2650         (WebCore::overrideLayoutOperation):
   2651         (WebCore::ATSULayoutParameters::initialize):
   2652         * platform/graphics/mac/SimpleFontDataMac.mm:
   2653         (WebCore::initFontData):
   2654         (WebCore::SimpleFontData::platformInit):
   2655         (WebCore::SimpleFontData::platformCharWidthInit):
   2656         (WebCore::SimpleFontData::smallCapsFontData):
   2657         (WebCore::SimpleFontData::containsCharacters):
   2658         (WebCore::SimpleFontData::determinePitch):
   2659         (WebCore::SimpleFontData::platformWidthForGlyph):
   2660         (WebCore::SimpleFontData::checkShapesArabic):
   2661         (WebCore::SimpleFontData::getCTFont):
   2662         * platform/graphics/qt/SimpleFontDataQt.cpp:
   2663         (WebCore::SimpleFontData::determinePitch):
   2664         (WebCore::SimpleFontData::platformInit):
   2665         (WebCore::SimpleFontData::platformCharWidthInit):
   2666         * platform/graphics/win/FontCGWin.cpp:
   2667         (WebCore::drawGDIGlyphs):
   2668         (WebCore::Font::drawGlyphs):
   2669         * platform/graphics/win/SimpleFontDataCGWin.cpp:
   2670         (WebCore::SimpleFontData::platformInit):
   2671         (WebCore::SimpleFontData::platformCharWidthInit):
   2672         (WebCore::SimpleFontData::platformWidthForGlyph):
   2673         * platform/graphics/win/SimpleFontDataCairoWin.cpp:
   2674         (WebCore::SimpleFontData::platformInit):
   2675         (WebCore::SimpleFontData::platformDestroy):
   2676         (WebCore::SimpleFontData::platformWidthForGlyph):
   2677         (WebCore::SimpleFontData::setFont):
   2678         * platform/graphics/win/SimpleFontDataWin.cpp:
   2679         (WebCore::SimpleFontData::initGDIFont):
   2680         (WebCore::SimpleFontData::smallCapsFontData):
   2681         (WebCore::SimpleFontData::containsCharacters):
   2682         (WebCore::SimpleFontData::determinePitch):
   2683         (WebCore::SimpleFontData::widthForGDIGlyph):
   2684         (WebCore::SimpleFontData::scriptFontProperties):
   2685         * platform/graphics/wx/SimpleFontDataWx.cpp:
   2686         (WebCore::SimpleFontData::platformInit):
   2687         (WebCore::SimpleFontData::determinePitch):
   2688         (WebCore::SimpleFontData::platformWidthForGlyph):
   2689 
   2690 2009-06-04  Paul Godavari  <paul (a] chromium.org>
   2691 
   2692         Reviewed by Eric Seidel.
   2693 
   2694         Initialize the width of PopupMenuListBox properly for Mac Chromium.
   2695 
   2696         Added a test that works only with this patch applied. The test is
   2697         a manual one, since the hit testing infrastructure in the layout
   2698         tests sends keyboard and mouse events to the main window and not
   2699         the cocoa control that implements the popup up, which means we can't
   2700         select items from the popup up.
   2701 
   2702         https://bugs.webkit.org/show_bug.cgi?id=25904
   2703 
   2704 
   2705         * manual-tests/select-narrow-width.html: Added.
   2706         * platform/chromium/PopupMenuChromium.cpp:
   2707         (WebCore::PopupListBox::PopupListBox):
   2708         (WebCore::PopupContainer::showExternal):
   2709 
   2710 2009-06-04  Brent Fulgham  <bfulgham (a] webkit.org>
   2711 
   2712         Unreviewed Windows build correction.
   2713 
   2714         * WebCore.vcproj/WebCore.vcproj: Add missing 'ReplaceNodeWithSpanCommand.cpp'
   2715           and 'ReplaceNodeWithSpanCommand.h'
   2716 
   2717 2009-02-03  Eric Seidel  <eric (a] webkit.org>
   2718 
   2719         Reviewed by Justin Garcia.
   2720 
   2721         Make sure execCommand("bold") on <b style="text-decoration: underline">test</b>
   2722         only removes the bold and not the underline.
   2723         https://bugs.webkit.org/show_bug.cgi?id=23496
   2724 
   2725         Test: editing/execCommand/convert-style-elements-to-spans.html
   2726 
   2727         * WebCore.xcodeproj/project.pbxproj:
   2728         * css/CSSStyleDeclaration.h:
   2729         (WebCore::CSSStyleDeclaration::isEmpty):
   2730         * dom/NamedAttrMap.h:
   2731         (WebCore::NamedAttrMap::isEmpty):
   2732         * editing/ApplyStyleCommand.cpp:
   2733         (WebCore::isUnstyledStyleSpan):
   2734         (WebCore::isSpanWithoutAttributesOrUnstyleStyleSpan):
   2735         (WebCore::ApplyStyleCommand::applyBlockStyle):
   2736         (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
   2737         (WebCore::ApplyStyleCommand::implicitlyStyledElementShouldBeRemovedWhenApplyingStyle):
   2738         (WebCore::ApplyStyleCommand::replaceWithSpanOrRemoveIfWithoutAttributes):
   2739         (WebCore::ApplyStyleCommand::removeCSSStyle):
   2740         (WebCore::ApplyStyleCommand::applyTextDecorationStyle):
   2741         (WebCore::ApplyStyleCommand::removeInlineStyle):
   2742         (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
   2743         * editing/ApplyStyleCommand.h:
   2744         * editing/CompositeEditCommand.cpp:
   2745         (WebCore::CompositeEditCommand::replaceNodeWithSpanPreservingChildrenAndAttributes):
   2746         * editing/CompositeEditCommand.h:
   2747         * editing/RemoveNodePreservingChildrenCommand.cpp:
   2748         (WebCore::RemoveNodePreservingChildrenCommand::RemoveNodePreservingChildrenCommand):
   2749         * editing/ReplaceNodeWithSpanCommand.cpp: Added.
   2750         (WebCore::ReplaceNodeWithSpanCommand::ReplaceNodeWithSpanCommand):
   2751         (WebCore::swapInNodePreservingAttributesAndChildren):
   2752         (WebCore::ReplaceNodeWithSpanCommand::doApply):
   2753         (WebCore::ReplaceNodeWithSpanCommand::doUnapply):
   2754         * editing/ReplaceNodeWithSpanCommand.h: Added.
   2755         (WebCore::ReplaceNodeWithSpanCommand::create):
   2756 
   2757 2009-06-04  Brent Fulgham  <bfulgham (a] webkit.org>
   2758 
   2759         Unreviewed build fix for Windows Cairo target.
   2760 
   2761         Add missing post-build command to copy history/cf contents
   2762         to output directory.
   2763 
   2764         * WebCore.vcproj/WebCore.vcproj: Update Debug_Cairo and Release_Cairo
   2765           target post-build steps with copy commands.
   2766 
   2767 2009-06-04  Pierre d'Herbemont  <pdherbemont (a] apple.com>
   2768 
   2769         Reviewed by Simon Fraser.
   2770 
   2771         <rdar://problem/6854695> Movie controller thumb fails to scale with full page zoom
   2772         
   2773         Account for zoom level when drawing media controller thumb on Windows.
   2774 
   2775         * rendering/RenderMediaControls.cpp:
   2776         (WebCore::RenderMediaControls::adjustMediaSliderThumbSize):
   2777 
   2778 2009-06-04  David Hyatt  <hyatt (a] apple.com>
   2779 
   2780         Reviewed by Sam Weinig.
   2781 
   2782         Move DOM window focus/blur out of SelectionController and into FocusController.  Make sure it
   2783         fires on the focused frame when the page activation state changes also.  This is covered by an existing
   2784         layout test (albeit badly).  I have modified the test to be correct.
   2785 
   2786         * editing/SelectionController.cpp:
   2787         (WebCore::SelectionController::setFocused):
   2788         * page/FocusController.cpp:
   2789         (WebCore::FocusController::setFocusedFrame):
   2790         (WebCore::FocusController::setActive):
   2791 
   2792 2009-06-04  Albert J. Wong  <ajwong (a] chromium.org>
   2793 
   2794         Reviewed by Eric Seidel.
   2795 
   2796         https://bugs.webkit.org/show_bug.cgi?id=26148
   2797         Adding in empty files to stage the extract of RenderThemeChromiumSkia
   2798         from RenderThemeChromiumLinux and RenderThemeChromiumWindows.
   2799 
   2800         * rendering/RenderThemeChromiumSkia.cpp: Added.
   2801         * rendering/RenderThemeChromiumSkia.h: Added.
   2802 
   2803 2009-06-04  Andrei Popescu <andreip (a] google.com>
   2804 
   2805         Reviewed by Alexey Proskuryakov.
   2806 
   2807         https://bugs.webkit.org/show_bug.cgi?id=25562
   2808         Potential crash after ApplicationCacheStorage::storeNewestCache() fails
   2809 
   2810               Fix the crash by checking the return value of cacheStorage().storeNewestCache(this)
   2811               in WebCore::ApplicationCacheGroup::checkIfLoadIsComplete. If storeNewestCache failed,
   2812               we run the cache failure steps:
   2813 
   2814         1. Fire the error events to all pending master entries, as well any other cache hosts
   2815            currently associated with a cache in this group.
   2816         2. Disassociate the pending master entries from the failed new cache.
   2817         3. Reinstate the old "newest cache", if there was one.
   2818 
   2819         We also introduce two other changes:
   2820 
   2821         1. a mechanism to rollback storageID changes to the in-memory resource
   2822            objects when the storing of an ApplicationCache object fails.
   2823 
   2824         2. defer removing the pending master entries from the list of pending master entries
   2825            until the entire load is complete. This matches the HTML 5 spec better. To track
   2826            if the load is complete we now introduce a counter for those pending master entries
   2827            that haven't yet finshed downloading.
   2828 
   2829         * loader/appcache/ApplicationCacheGroup.cpp:
   2830         (WebCore::ApplicationCacheGroup::ApplicationCacheGroup): initializes the new counter to 0
   2831         (WebCore::ApplicationCacheGroup::selectCache): increments the counter when a new pending
   2832         master entry is added.
   2833         (WebCore::ApplicationCacheGroup::finishedLoadingMainResource): decrements the counter
   2834         instead of removing the pending master entry.
   2835         (WebCore::ApplicationCacheGroup::failedLoadingMainResource): decrements the counter
   2836         instead of removing the pending master entry.
   2837         (WebCore::ApplicationCacheGroup::setNewestCache): removes an assertion that no longer
   2838         holds true. In particular, the newest cache is not necessarily new anymore. We can
   2839         set an old cache as the new cache. This can happen if we failed to store a newly
   2840         downloaded cache to the database and we are now reinstating the former newest cache.
   2841         (WebCore::ApplicationCacheGroup::manifestNotFound): resets the counter to 0.
   2842         (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete): check if the loading is complete
   2843         based on the counter instead of the list of pending master entries. Empty the list of
   2844         master entries if the load is complete.
   2845         * loader/appcache/ApplicationCacheGroup.h: add the new counter.
   2846         * loader/appcache/ApplicationCacheStorage.cpp: introduce the journaling mechanism for
   2847         in-memory resource objects.
   2848         (WebCore::ResourceStorageIDJournal::~ResourceStorageIDJournal):
   2849         (WebCore::ResourceStorageIDJournal::add):
   2850         (WebCore::ResourceStorageIDJournal::commit):
   2851         (WebCore::ResourceStorageIDJournal::Record::Record):
   2852         (WebCore::ResourceStorageIDJournal::Record::restore):
   2853         (WebCore::ApplicationCacheStorage::store): log the changes to the in-memory resource
   2854         objects.
   2855         (WebCore::ApplicationCacheStorage::storeNewestCache): create the journal object.
   2856         * loader/appcache/ApplicationCacheStorage.h:  modify the signature of
   2857         bool store(ApplicationCache*) to add a pointer to the logger object used to
   2858         trace the changes to the storageID of the resource objects.
   2859 
   2860 2009-06-04  Jeremy Orlow  <jorlow (a] chromium.org>
   2861 
   2862         Reviewed by Darin Adler.
   2863 
   2864         https://bugs.webkit.org/show_bug.cgi?id=26154
   2865         Allow underscores in the hostnames we parse out of databaseIdentifiers.
   2866         This code is used for HTML 5 database support.
   2867 
   2868         * page/SecurityOrigin.cpp:
   2869         (WebCore::SecurityOrigin::createFromDatabaseIdentifier):
   2870 
   2871 2009-06-04  Mihnea Ovidenie  <mihnea (a] adobe.com>
   2872 
   2873         Reviewed by Darin Adler.
   2874 
   2875         Bug 26084: Multiple missing images in webkit-mask-image prevent rendering
   2876         https://bugs.webkit.org/show_bug.cgi?id=26084
   2877 
   2878         When painting multiple images, make sure that at least one image is valid before pushing a transparency layer.
   2879 
   2880         Added a manual test.
   2881 
   2882         * manual-tests/mask-composite-missing-images.html: Added.
   2883         * rendering/RenderBox.cpp:
   2884         (WebCore::RenderBox::paintMaskImages):
   2885 
   2886 2009-06-04  Jeremy Orlow  <jorlow (a] chromium.org>
   2887 
   2888         Reviewed by Darin Adler.
   2889 
   2890         https://bugs.webkit.org/show_bug.cgi?id=26180
   2891         Add a fast path for SecurityOrigin::equal. If "other == this" (where
   2892         other is the other security origin), then we really don't need to do
   2893         all the other (expensive) comparisons. We know it's equal.
   2894 
   2895         * page/SecurityOrigin.cpp:
   2896         (WebCore::SecurityOrigin::equal):
   2897 
   2898 2009-06-03  David Hyatt  <hyatt (a] apple.com>
   2899 
   2900         Reviewed by Sam Weinig.
   2901 
   2902         Improvements in how selection behaves with focus/activation and a reversion back to using isActive
   2903         in the scrollbar theme code to remove a Chromium ifdef.
   2904 
   2905         * editing/SelectionController.cpp:
   2906         (WebCore::SelectionController::SelectionController):
   2907         Make the controller set its focused state correctly upon initial creation.
   2908 
   2909         (WebCore::SelectionController::setSelection):
   2910         Make selection willing to shift the focus node if the selection is focused even if the
   2911         selection is not active.  Whether or not the Page is active is irrelevant to focus changes.
   2912 
   2913         (WebCore::SelectionController::setFocused):
   2914         * editing/SelectionController.h:
   2915         (WebCore::SelectionController::isFocused):
   2916         Add a new isFocused() method so that code can check if the Selection is focused without caring
   2917         about the active state.
   2918 
   2919         * page/Frame.cpp:
   2920         (WebCore::Frame::setFocusedNodeIfNeeded):
   2921         Allow focus shifts even when the selection is not active.
   2922 
   2923         * platform/mac/ScrollbarThemeMac.mm:
   2924         (WebCore::ScrollbarThemeMac::paint):
   2925         Revert Dan's change to directly talk to AppKit for checking active state.  Now that the WebCore isActive
   2926         method works, ditch the Chromium-specific #ifdef and go back to the original code.
   2927 
   2928 2009-06-04  Pierre d'Herbemont  <pdherbemont (a] apple.com>
   2929 
   2930         Reviewed by Darin Adler.
   2931 
   2932         Test: media/before-load-member-access.html
   2933         
   2934         https://bugs.webkit.org/show_bug.cgi?id=26081
   2935 
   2936         * html/HTMLMediaElement.cpp:
   2937         (WebCore::HTMLMediaElement::played): Ensure that if m_playedTimeRanges,
   2938         is not initialized we return a valid range, and don't attempt to use it.
   2939 
   2940 2009-06-03  Kenneth Rohde Christiansen  <kenneth.christiansen (a] openbossa.org>
   2941 
   2942         Reviewed by Simon Hausmann.
   2943 
   2944         Implement a way to invalidate the FontCache used by the Qt port.
   2945 
   2946         * platform/graphics/qt/FontCacheQt.cpp:
   2947         (WebCore::FontCache::invalidate):
   2948 
   2949 2009-06-04  Laszlo Gombos  <laszlo.1.gombos (a] nokia.com>
   2950 
   2951         Reviewed by Ariya Hidayat.
   2952 
   2953         https://bugs.webkit.org/show_bug.cgi?id=26015
   2954 
   2955         [Qt] Single-threaded QtWebKit configuration
   2956 
   2957         Turn off Database, DOM storage, icon database and Web Workers support
   2958         when ENABLE_SINGLE_THREADED is turned on.
   2959 
   2960         Set SQLITE_THREADSAFE to false to turn off SQLite mutexes
   2961         when ENABLE_SINGLE_THREADED is turned on.
   2962 
   2963         * WebCore.pro:
   2964 
   2965 2009-06-03  Dan Bernstein  <mitz (a] apple.com>
   2966 
   2967         Reviewed by Sam Weinig.
   2968 
   2969         - add some assertions that Font methods are used on the main thread
   2970 
   2971         * platform/graphics/Font.cpp:
   2972         (WebCore::Font::setShouldUseSmoothing):
   2973         * platform/graphics/Font.h:
   2974         (WebCore::Font::primaryFont):
   2975         * platform/graphics/FontFastPath.cpp:
   2976         (WebCore::Font::glyphDataForCharacter):
   2977 
   2978 2009-06-03  Dan Bernstein  <mitz (a] apple.com>
   2979 
   2980         - Windows build fix
   2981 
   2982         Rolled out apparently-accidental changes to config.h from r44398. These
   2983         were not part of the patch as reviewed.
   2984 
   2985         * config.h:
   2986 
   2987 2009-06-03  Dmitry Titov  <dimich (a] chromium.org>
   2988 
   2989         Not reviewed, Chromium build fix.
   2990 
   2991         https://bugs.webkit.org/show_bug.cgi?id=26177
   2992         Reverting 'private' to 'protected' on 2 classes.
   2993         Chromium glue layer (not yet in Webkit tree) relies on ability to derive
   2994         Chromium-specific platform classes and access the data members.
   2995         See bug for more details.
   2996 
   2997         * platform/PlatformMouseEvent.h:
   2998         * platform/PlatformWheelEvent.h:
   2999 
   3000 2009-06-03  Chris Marrin  <cmarrin (a] apple.com>
   3001 
   3002         Reviewed by Simon Fraser <simonfr (a] apple.com>.
   3003 
   3004         Fixed https://bugs.webkit.org/show_bug.cgi?id=26162
   3005 
   3006         This corrects an error when destroying an animation
   3007         or transition where endAnimation was never getting
   3008         called and therefore the hardware animation was never
   3009         getting removed.
   3010 
   3011         This includes a manual-test since it's really impossible
   3012         to make a meaningful automatic test for an animation
   3013         bug like this.
   3014 
   3015         This has no effect unless accelerated compositing is 
   3016         enabled.
   3017 
   3018         * manual-tests/interrupted-compound-transform.html: Added.
   3019         * page/animation/ImplicitAnimation.cpp:
   3020         (WebCore::ImplicitAnimation::~ImplicitAnimation):
   3021         * page/animation/KeyframeAnimation.cpp:
   3022         (WebCore::KeyframeAnimation::~KeyframeAnimation):
   3023 
   3024 2009-06-03  Adam Langley  <agl (a] google.com>
   3025 
   3026         Reviewed by Eric Seidel.
   3027 
   3028         Make the scrollbar thumb size twice the width for Chromium Linux. This
   3029         matches Firefox on Linux.
   3030 
   3031         This will need layout test pixel results to be rebaselined in the
   3032         Chromium tree.
   3033 
   3034         http://code.google.com/p/chromium/issues/detail?id=12602
   3035         https://bugs.webkit.org/show_bug.cgi?id=26176
   3036 
   3037         * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
   3038         (WebCore::ScrollbarThemeChromiumLinux::minimumThumbLength):
   3039         * platform/chromium/ScrollbarThemeChromiumLinux.h:
   3040 
   3041 2009-06-03  Adam Langley  <agl (a] google.com>
   3042 
   3043         Reviewed by Eric Seidel.
   3044 
   3045         Change Chromium scrollbar theme code to use different classes on
   3046         Windows and Linux rather than suppling symbols. The ScrollbarTheme
   3047         class is already using virtual dispatch, so there's no reason not to.
   3048 
   3049         This should not affect any layout tests.
   3050 
   3051         https://bugs.webkit.org/show_bug.cgi?id=26174
   3052 
   3053         * platform/chromium/ScrollbarThemeChromium.cpp:
   3054         * platform/chromium/ScrollbarThemeChromium.h:
   3055         * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
   3056         (WebCore::ScrollbarTheme::nativeTheme):
   3057         (WebCore::ScrollbarThemeChromiumLinux::scrollbarThickness):
   3058         (WebCore::ScrollbarThemeChromiumLinux::paintTrackPiece):
   3059         (WebCore::ScrollbarThemeChromiumLinux::paintButton):
   3060         (WebCore::ScrollbarThemeChromiumLinux::paintThumb):
   3061         (WebCore::ScrollbarThemeChromiumLinux::buttonSize):
   3062         * platform/chromium/ScrollbarThemeChromiumLinux.h: Added.
   3063         * platform/chromium/ScrollbarThemeChromiumWin.cpp:
   3064         (WebCore::ScrollbarTheme::nativeTheme):
   3065         (WebCore::ScrollbarThemeChromiumWin::scrollbarThickness):
   3066         (WebCore::ScrollbarThemeChromiumWin::invalidateOnMouseEnterExit):
   3067         (WebCore::ScrollbarThemeChromiumWin::shouldSnapBackToDragOrigin):
   3068         (WebCore::ScrollbarThemeChromiumWin::paintTrackPiece):
   3069         (WebCore::ScrollbarThemeChromiumWin::paintButton):
   3070         (WebCore::ScrollbarThemeChromiumWin::paintThumb):
   3071         (WebCore::ScrollbarThemeChromiumWin::getThemeState):
   3072         (WebCore::ScrollbarThemeChromiumWin::getThemeArrowState):
   3073         (WebCore::ScrollbarThemeChromiumWin::getClassicThemeState):
   3074         (WebCore::ScrollbarThemeChromiumWin::buttonSize):
   3075         * platform/chromium/ScrollbarThemeChromiumWin.h: Added.
   3076 
   3077 2009-06-03  Pavel Feldman  <pfeldman (a] chromium.org>
   3078 
   3079         Reviewed by Timothy Hatcher.
   3080 
   3081         Enabling debugger requires that Scripts panel is already attached to the
   3082         render tree. The reason is that recompile events result in script sources
   3083         being added into the source frames. Prior to the global options introduced,
   3084         debugger was enabled from the Scripts panel, so that it was guaranteed to
   3085         exist. The InspectorController::enableDebugger API calls with no inspector
   3086         frontend showing were failing though.
   3087 
   3088         https://bugs.webkit.org/show_bug.cgi?id=26145
   3089 
   3090         * WebCore.base.exp:
   3091         * inspector/InspectorController.cpp:
   3092         (WebCore::InspectorController::setWindowVisible):
   3093         (WebCore::InspectorController::scriptObjectReady):
   3094         (WebCore::InspectorController::enableDebuggerFromFrontend):
   3095         (WebCore::InspectorController::enableDebugger):
   3096         * inspector/InspectorController.h:
   3097         * inspector/InspectorController.idl:
   3098         * inspector/InspectorFrontend.cpp:
   3099         (WebCore::InspectorFrontend::attachDebuggerWhenShown):
   3100         * inspector/InspectorFrontend.h:
   3101         * inspector/front-end/ScriptsPanel.js:
   3102         (WebInspector.ScriptsPanel.prototype.show):
   3103         (WebInspector.ScriptsPanel.prototype.attachDebuggerWhenShown):
   3104         * inspector/front-end/inspector.js:
   3105         (WebInspector.attachDebuggerWhenShown):
   3106 
   3107 2009-06-03  Dan Bernstein  <mitz (a] apple.com>
   3108 
   3109         Reviewed by Anders Carlsson.
   3110 
   3111         - fix a regression from the previous patch
   3112 
   3113         * platform/graphics/Font.cpp: Initialize shouldUseFontSmoothing to true.
   3114 
   3115 2009-06-03  Dan Bernstein  <mitz (a] apple.com>
   3116 
   3117         Reviewed by Anders Carlsson.
   3118 
   3119         - eliminate WebCoreTextRenderer
   3120 
   3121         * WebCore.base.exp: Updated.
   3122         * WebCore.xcodeproj/project.pbxproj: Removed WebCoreTextRenderer.{h,mm}
   3123             and promoted WebFontCache.h to private.
   3124         * platform/graphics/Font.cpp:
   3125         (WebCore::Font::setShouldUseSmoothing): Added this static setter for
   3126             a new file-static boolean.
   3127         (WebCore::Font::shouldUseSmoothing): Added this static getter.
   3128         * platform/graphics/Font.h: Decleared setShouldUseSmoothing() and
   3129             shouldUseSmoothing().
   3130         * platform/graphics/mac/FontMac.mm:
   3131         (WebCore::Font::drawGlyphs): Use Font::shouldUseSmoothing() instead of
   3132         WebCoreShouldUseFontSmoothing().
   3133         * platform/graphics/mac/WebLayer.mm: Removed unneeded #import.
   3134         * platform/mac/WebCoreTextRenderer.h: Removed.
   3135         * platform/mac/WebCoreTextRenderer.mm: Removed.
   3136 
   3137 2009-06-03  David Levin  <levin (a] chromium.org>
   3138 
   3139         Reviewed by Dimitri Glazkov.
   3140 
   3141         v8's ScriptController::evaluate should protect the Frame like the jsc version.
   3142         https://bugs.webkit.org/show_bug.cgi?id=26172
   3143 
   3144         This change is simply copying protections done for Frame in the method
   3145         WebCore::ScriptController::evaluate in the file js/ScriptController.cpp.
   3146 
   3147         * bindings/v8/ScriptController.cpp:
   3148         (WebCore::ScriptController::evaluate):
   3149 
   3150 2009-06-03  Dan Bernstein  <mitz (a] apple.com>
   3151 
   3152         Reviewed by John Sullivan.
   3153 
   3154         - fix <rdar://problem/6841120> Use CTFontManager notifications instead
   3155           of ATS notifications
   3156 
   3157         * platform/graphics/FontCache.h: Made it an error to destroy a
   3158         FontCache instance.
   3159         * platform/graphics/mac/FontCacheMac.mm:
   3160         (WebCore::fontCacheRegisteredFontsChangedNotificationCallback): Added
   3161         this notification callback for the
   3162         kCTFontManagerRegisteredFontsChangedNotification, which calls
   3163         invalidate().
   3164         (WebCore::FontCache::platformInit): Register for
   3165         kCTFontManagerRegisteredFontsChangedNotification.
   3166 
   3167 2009-06-03  Kevin Watters  <kevinwatters (a] gmail.com>
   3168 
   3169         Reviewed by Kevin Ollivier.
   3170 
   3171         Use CGContextShowGlyphsWithAdvances to get more accurate text rendering on Mac.
   3172         
   3173         https://bugs.webkit.org/show_bug.cgi?id=26161
   3174 
   3175         * platform/wx/wxcode/mac/carbon/non-kerned-drawing.cpp:
   3176         (WebCore::drawTextWithSpacing):
   3177 
   3178 2009-06-03  Pavel Feldman  <pfeldman (a] chromium.org>
   3179 
   3180         Reviewed by Timothy Hatcher.
   3181 
   3182         Reorder ResourcesPanel components initialization to unfreeze resource list scroller.
   3183 
   3184         https://bugs.webkit.org/show_bug.cgi?id=26159
   3185 
   3186         * inspector/front-end/ResourcesPanel.js:
   3187         (WebInspector.ResourcesPanel):
   3188 
   3189 2009-06-03  Pavel Feldman  <pfeldman (a] chromium.org>
   3190 
   3191         Reviewed by Timothy Hatcher.
   3192 
   3193         - Fix for crash (preceded by assertion) in InspectorController::didCommitLoad
   3194           when reloading or navigating with the Inspector open.
   3195         - Fix for Inspector's Elements panel being empty when Inspector first appears.
   3196 
   3197         https://bugs.webkit.org/show_bug.cgi?id=26134
   3198         https://bugs.webkit.org/show_bug.cgi?id=26135
   3199 
   3200         * inspector/InspectorController.cpp:
   3201         (WebCore::InspectorController::scriptObjectReady):
   3202         (WebCore::InspectorController::didLoadResourceFromMemoryCache):
   3203         (WebCore::InspectorController::identifierForInitialRequest):
   3204         (WebCore::InspectorController::ensureResourceTrackingSettingsLoaded):
   3205         * inspector/InspectorController.h:
   3206 
   3207 2009-06-03  Adam Roben  <aroben (a] apple.com>
   3208 
   3209         Windows build fix after r44379
   3210 
   3211         * svg/graphics/SVGImage.cpp: Move EmptyClients.h back down below the
   3212         other #includes to fix a compiler warning on Windows.
   3213 
   3214 2009-06-02  Kenneth Rohde Christiansen  <kenneth.christiansen (a] openbossa.org>
   3215 
   3216         Reviewed by Simon Hausmann.
   3217 
   3218         Add workaround for crash in Linux Flash Player when hosted by
   3219         another toolkit than GTK+. Bug fixed at the Flash Player bugzilla,
   3220         issue (FP-2140).
   3221 
   3222         * plugins/qt/PluginViewQt.cpp:
   3223         (WebCore::PluginView::setNPWindowIfNeeded):
   3224 
   3225 2009-06-01  Kenneth Rohde Christiansen  <kenneth.christiansen (a] openbossa.org>
   3226 
   3227         Reviewed by Simon Hausmann.
   3228 
   3229         Refactor the Qt plugin code to use NPP_SetWindow correctly,
   3230         to make resizing of plugins work.
   3231 
   3232         Attention was paid to make sure that the windowed plugins scroll
   3233         synchronized with the page view. A manual test has been added.
   3234 
   3235         * manual-tests/qt/plugin-iframe.html: Added.
   3236         * plugins/PluginView.cpp:
   3237         (WebCore::PluginView::setFrameRect):
   3238         (WebCore::PluginView::frameRectsChanged):
   3239         * plugins/PluginView.h:
   3240         * plugins/qt/PluginContainerQt.cpp:
   3241         (PluginContainerQt::PluginContainerQt):
   3242         * plugins/qt/PluginContainerQt.h:
   3243         * plugins/qt/PluginPackageQt.cpp:
   3244         (WebCore::PluginPackage::load):
   3245         * plugins/qt/PluginViewQt.cpp:
   3246         (WebCore::PluginView::updatePluginWidget):
   3247         (WebCore::PluginView::paint):
   3248         (WebCore::PluginView::setParent):
   3249         (WebCore::PluginView::setNPWindowRect):
   3250         (WebCore::PluginView::setNPWindowIfNeeded):
   3251         (WebCore::PluginView::handlePostReadFile):
   3252         (WebCore::PluginView::getValue):
   3253         (WebCore::PluginView::invalidateRect):
   3254         (WebCore::PluginView::init):
   3255 
   3256 2009-06-02  Darin Adler  <darin (a] apple.com>
   3257 
   3258         Reviewed by David Hyatt.
   3259 
   3260         Bug 26112: viewless WebKit -- make events work
   3261         https://bugs.webkit.org/show_bug.cgi?id=26112
   3262 
   3263         The main fix here is to make mouse and wheel event coordinates in the coordinate
   3264         system of the top level NSView rather than the NSWindow when in the viewless mode.
   3265         This is the design Hyatt chose, but the event part of it wasn't done yet.
   3266 
   3267         Also fix FrameView to do normal reference counting instead of a strange model with
   3268         an explicit deref near creation time.
   3269 
   3270         * WebCore.base.exp: Updated.
   3271 
   3272         * page/EventHandler.cpp:
   3273         (WebCore::EventHandler::eventLoopHandleMouseUp): Moved this function into the file
   3274         to reduce conditionals in the header.
   3275         (WebCore::EventHandler::eventLoopHandleMouseDragged): Ditto.
   3276 
   3277         * page/EventHandler.h: Reduced includes. Fixed formatting of Objective-C types.
   3278         Made currentNSEvent a static member function. Added sendContextMenuEvent and
   3279         eventMayStartDrag functions that takes NSEvent * so the conversion to PlatformMouseEvent
   3280         can be done here rather than in WebKit. Reduced #if by making eventLoopHandleMouseUp and
   3281         eventLoopHandleMouseDragged unconditional.
   3282 
   3283         * page/Frame.cpp:
   3284         (WebCore::Frame::setView): Made this take a PassRefPtr since it takes ownership.
   3285         (WebCore::Frame::createView): Changed to use RefPtr and FrameView::create and remove
   3286         the explicit deref.
   3287 
   3288         * page/Frame.h: Changed setView to take a PassRefPtr.
   3289 
   3290         * page/FrameTree.cpp: Added newly-needed include.
   3291 
   3292         * page/FrameView.cpp:
   3293         (WebCore::FrameView::FrameView): Got rid of one of the two constructors, and removed
   3294         the initialization of m_refCount and call to show from the reamining one.
   3295         (WebCore::FrameView::create): Added two create functions that do what the two
   3296         constructors did before, except that they return a PassRefPtr to make sure the
   3297         reference counting is handled correctly.
   3298         (WebCore::FrameView::~FrameView): Removed assertion from when FrameView implemented
   3299         its own reference counting.
   3300 
   3301         * page/FrameView.h: Inherit from RefCounted for reference counting. Made the
   3302         constructor private and added create functions. Got rid of the hand-implemented
   3303         reference counting in this class.
   3304 
   3305         * page/mac/EventHandlerMac.mm:
   3306         (WebCore::currentNSEventSlot): Renamed currentEvent to currentNSEventSlot to
   3307         make it more clear how it relates to currentNSEvent.
   3308         (WebCore::EventHandler::currentNSEvent): Updated.
   3309         (WebCore::CurrentEventScope::CurrentEventScope): Added. Use to set/reset the
   3310         current event in a foolproof way.
   3311         (WebCore::CurrentEventScope::~CurrentEventScope): Ditto.
   3312         (WebCore::EventHandler::wheelEvent): Use CurrentEventScope. Pass the platform
   3313         window in when constructing the PlatformWheelEvent.
   3314         (WebCore::EventHandler::keyEvent): Use CurrentEventScope.
   3315         (WebCore::lastEventIsMouseUp): Use currentNSEvent.
   3316         (WebCore::EventHandler::passMouseDownEventToWidget): Ditto.
   3317         (WebCore::EventHandler::eventLoopHandleMouseDragged): Ditto.
   3318         (WebCore::EventHandler::eventLoopHandleMouseUp): Ditto.
   3319         (WebCore::EventHandler::passSubframeEventToSubframe): Use
   3320         currentPlatformMouseEvent to get a mouse event that has the appropriate
   3321         platform window passed to create it.
   3322         (WebCore::EventHandler::passWheelEventToWidget): Ditto.
   3323         (WebCore::EventHandler::mouseDown): Ditto.
   3324         (WebCore::EventHandler::mouseDragged): Ditto.
   3325         (WebCore::EventHandler::mouseUp): Ditto.
   3326         (WebCore::EventHandler::mouseMoved): Ditto.
   3327         (WebCore::EventHandler::currentPlatformMouseEvent): Added. Passes the
   3328         platform window that's now needed to create a PlatformMouseEvent.
   3329         (WebCore::EventHandler::sendContextMenuEvent): Added.
   3330         (WebCore::EventHandler::eventMayStartDrag): Added.
   3331 
   3332         * platform/HostWindow.h: Removed unneeded includes and constructor definition.
   3333 
   3334         * platform/PlatformMouseEvent.h: Sorted things in alphabetical order.
   3335         Changed Mac constructor to take a windowView as well as the event. This is
   3336         needed in viewless mode, since the "window" is actually an NSView, so the
   3337         event has to know which view to compute the coordinates with. Made the
   3338         same change to pointForEvent.
   3339         * platform/PlatformWheelEvent.h: Ditto.
   3340 
   3341         * platform/mac/PlatformMouseEventMac.mm:
   3342         (WebCore::pointForEvent): Convert point from window coordinates to view
   3343         coordinates if a windowView is passed in. This is used in viewless mode.
   3344         (WebCore::PlatformMouseEvent::PlatformMouseEvent): Ditto.
   3345         * platform/mac/WheelEventMac.mm:
   3346         (WebCore::PlatformWheelEvent::PlatformWheelEvent): Ditto.
   3347 
   3348         * platform/mac/WidgetMac.mm:
   3349         (WebCore::Widget::convertFromContainingWindow): Fixed case where there
   3350         is no platform widget and no parent. Before it would yield unpredictable
   3351         results because of dispatching to a nil object and returning a structure.
   3352         Now it returns the point without changing coordinates at all, which is what
   3353         we need for this case in viewless mode.
   3354 
   3355         * rendering/RenderApplet.cpp: Removed unneeded includes.
   3356         (WebCore::RenderApplet::intrinsicSize): Use widget function.
   3357         (WebCore::RenderApplet::createWidgetIfNecessary): Ditto.
   3358 
   3359         * rendering/RenderApplet.h: Make more things private. Get rid of unneeded
   3360         explicit destructor.
   3361 
   3362         * rendering/RenderFrame.cpp: Removed unneeded includes.
   3363         (WebCore::RenderFrame::edgeInfo): Updated to use node function so header
   3364         doesn't have to define element function.
   3365         (WebCore::RenderFrame::viewCleared): Ditto. Also changed to use widget
   3366         function.
   3367 
   3368         * rendering/RenderFrame.h: Removed unneeded includes. Made some things
   3369         private. Got rid of element function.
   3370 
   3371         * rendering/RenderPart.cpp: Removed unneeded includes.
   3372         (WebCore::RenderPart::~RenderPart): Changed to use clearWidget function.
   3373         (WebCore::RenderPart::setWidget): Changed to use widget function.
   3374         (WebCore::RenderPart::deleteWidget): Changed to use passed-in widget.
   3375         This is now only called by the clearWidget function.
   3376 
   3377         * rendering/RenderPart.h: Removed unneeded forward declarations.
   3378         Made more functions private. Updated deleteWidget to take widget argument.
   3379 
   3380         * rendering/RenderPartObject.cpp:
   3381         (WebCore::RenderPartObject::~RenderPartObject): use frameView function
   3382         instead of getting at m_view directly.
   3383         (WebCore::RenderPartObject::updateWidget): Ditto.
   3384         (WebCore::RenderPartObject::layout): Ditto. Same for widget and m_widget.
   3385         (WebCore::RenderPartObject::viewCleared): Ditto.
   3386 
   3387         * rendering/RenderPartObject.h: Made some functions private.
   3388 
   3389         * rendering/RenderWidget.cpp:
   3390         (WebCore::RenderWidget::RenderWidget): Initialize m_frameView with
   3391         construction syntax instead of assignment.
   3392         (WebCore::RenderWidget::destroy): Updated for name change of m_view
   3393         to m_frameView.
   3394         (WebCore::RenderWidget::~RenderWidget): Use clearWidget to delete
   3395         the widget.
   3396         (WebCore::RenderWidget::setWidget): Use clearWidget.
   3397         (WebCore::RenderWidget::paint): Updated for name change of m_view
   3398         to m_frameView.
   3399         (WebCore::RenderWidget::deleteWidget): Changed to use passed-in widget.
   3400 
   3401         * rendering/RenderWidget.h: Made many functions protected, others
   3402         private and made all data members private.
   3403 
   3404         * svg/animation/SMILTime.h: Removed unhelpful max and min functions. These
   3405         just do what std::max and std::min will already do automatically for this
   3406         type, so they are not helpful.
   3407 
   3408         * svg/graphics/SVGImage.cpp:
   3409         (WebCore::SVGImage::SVGImage): Removed unneeded initial values for types
   3410         that initialize to zero without anything explicit.
   3411         (WebCore::SVGImage::~SVGImage): Update since m_frame and m_frameView are
   3412         no longer stored.
   3413         (WebCore::SVGImage::setContainerSize): Ditto.
   3414         (WebCore::SVGImage::usesContainerSize): Ditto.
   3415         (WebCore::SVGImage::size): Ditto.
   3416         (WebCore::SVGImage::hasRelativeWidth): Ditto.
   3417         (WebCore::SVGImage::hasRelativeHeight): Ditto.
   3418         (WebCore::SVGImage::draw): Ditto.
   3419         (WebCore::SVGImage::nativeImageForCurrentFrame): Ditto.
   3420         (WebCore::SVGImage::dataChanged): Ditto.
   3421 
   3422         * svg/graphics/SVGImage.h: Removed unneeded includes and unneeded data
   3423         members m_document, m_frame, m_frameView, and m_minSize.
   3424 
   3425 2009-06-02  Adam Langley  <agl (a] google.com>
   3426 
   3427         Reviewed by Eric Seidel.
   3428 
   3429         The previous code was assuming that we'll be painting buttons on the scrollbar
   3430         which isn't true on Linux. To reproduce, resize a page with scrollbars until
   3431         they are less than two widths high.
   3432 
   3433         This will need pixel test baselines to be updated in the Chromium tree.
   3434 
   3435         * platform/chromium/ScrollbarThemeChromium.cpp: move this function...
   3436         * platform/chromium/ScrollbarThemeChromiumWin.cpp:
   3437         (WebCore::ScrollbarThemeChromium::trackRect): ... to here
   3438         * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
   3439         (WebCore::ScrollbarThemeChromium::trackRect): add an alternative which
   3440         doesn't remove the track when the scrollbar is less than two widths
   3441         high.
   3442 
   3443 2009-06-02  Mark Rowe  <mrowe (a] apple.com>
   3444 
   3445         Reviewed by Anders Carlsson.
   3446 
   3447         Remove workaround that was added to address <rdar://problem/5488678> as it no longer affects our Tiger builds.
   3448 
   3449         * Configurations/Base.xcconfig:
   3450 
   3451 2009-06-02  Eric Seidel  <eric (a] webkit.org>
   3452 
   3453         Reviewed by Maciej Stachowiak.
   3454 
   3455         Insert*List on an stand-alone image in a content editable region ASSERTS
   3456         ASSERTION FAILED: isStartOfParagraph(startOfParagraphToMove)
   3457         https://bugs.webkit.org/show_bug.cgi?id=19066
   3458 
   3459         Attempt to fix this by noticing that we inserted the list inside
   3460         the selection which includes the image, and re-adjust the selection
   3461         to not include the list before trying to move the image into
   3462         the list item.
   3463         
   3464         Test: editing/execCommand/list-wrapping-image-crash.html
   3465 
   3466         * editing/InsertListCommand.cpp:
   3467         (WebCore::InsertListCommand::doApply):
   3468 
   3469 2009-06-02  Eric Seidel  <eric (a] webkit.org>
   3470 
   3471         Reviewed by Darin Adler.
   3472 
   3473         Rename PositionIterator members in hope of further clarity
   3474         https://bugs.webkit.org/show_bug.cgi?id=24854
   3475 
   3476         Rename m_parent to m_anchorNode (since although it's always the parent
   3477         of the previous m_child member, it is not always the parent of the effective position)
   3478         Rename m_child to m_nodeAfterPositionInAnchor to make clear that it's the node
   3479         directly following the position.  This member is often NULL, but is always
   3480         a child of m_parent, now m_anchorNode if set.
   3481         Rename m_offset to m_offsetInAnchor (since it's interpreted relative to m_anchorNode)
   3482 
   3483         * dom/PositionIterator.cpp:
   3484         (WebCore::PositionIterator::operator Position):
   3485         (WebCore::PositionIterator::increment):
   3486         (WebCore::PositionIterator::decrement):
   3487         (WebCore::PositionIterator::atStart):
   3488         (WebCore::PositionIterator::atEnd):
   3489         (WebCore::PositionIterator::atStartOfNode):
   3490         (WebCore::PositionIterator::atEndOfNode):
   3491         (WebCore::PositionIterator::isCandidate):
   3492         * dom/PositionIterator.h:
   3493         (WebCore::PositionIterator::PositionIterator):
   3494         (WebCore::PositionIterator::node):
   3495         (WebCore::PositionIterator::offsetInLeafNode):
   3496 
   3497 2009-06-02  Julien Chaffraix  <jchaffraix (a] webkit.org>
   3498 
   3499         Reviewed by Eric Seidel.
   3500 
   3501         Bug 17167: Failures in fast/dom/Node/initial-values.html
   3502 
   3503         This partly solve a compatibility issue with other browsers. It will also
   3504         make us more consistent while handling XHTML element.
   3505 
   3506         The issue is that when we create an XHTML element inside an HTML document
   3507         (as it is the case when calling createElementNS), we default to the HTML
   3508         behaviour in nodeName. As we cannot test if an HTMLElement is an XHTML
   3509         element, our fix is to check whether it has a prefix and then default
   3510         to XML behaviour for nodeName.
   3511 
   3512         * html/HTMLElement.cpp:
   3513         (WebCore::HTMLElement::nodeName): Add a prefix check before
   3514         returning the uppercase tagName (HTML behaviour).
   3515 
   3516 2009-06-02  Eric Seidel  <eric (a] webkit.org>
   3517 
   3518         Reviewed by Maciej Stachowiak.
   3519 
   3520         Add a compareBoundaryPoints which takes RangeBoundaryPoints
   3521         https://bugs.webkit.org/show_bug.cgi?id=25500
   3522 
   3523         I noticed the need for this function when removing compareBoundaryPoints(Position, Position)
   3524         This patch is almost entirely minus lines.
   3525 
   3526         No functional changes, thus no tests.
   3527 
   3528         * dom/Range.cpp:
   3529         (WebCore::Range::setStart):
   3530         (WebCore::Range::setEnd):
   3531         (WebCore::Range::compareBoundaryPoints):
   3532         (WebCore::Range::boundaryPointsValid):
   3533         * dom/Range.h:
   3534 
   3535 2009-06-02  Eric Seidel  <eric (a] webkit.org>
   3536 
   3537         Reviewed by Maciej Stachowiak.
   3538 
   3539         Remove Range::compareBoundaryPoints(Position, Position) per Darin's suggestion in bug 25056
   3540         https://bugs.webkit.org/show_bug.cgi?id=25500
   3541 
   3542         Darin indicated the Range should deal only with primitive DOM node/offset
   3543         pairs, and that Position (which is a more robust editing construct) should have
   3544         its own comparison functions and that Range.h should not mention Position at all.
   3545 
   3546         Turns out that Position already has a comparePositions() function (which knows
   3547         how to additionally handled positions in shadow trees).  So I've just changed
   3548         all callers of compareBoundaryPoints(Position, Position) to use the existing
   3549         comparePositions() function.  I've also added a comparePositions which takes
   3550         VisiblePositions for convenience.
   3551 
   3552         * dom/Range.cpp:
   3553         * dom/Range.h:
   3554         * editing/ApplyStyleCommand.cpp:
   3555         (WebCore::ApplyStyleCommand::updateStartEnd):
   3556         (WebCore::ApplyStyleCommand::applyBlockStyle):
   3557         (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
   3558         (WebCore::ApplyStyleCommand::applyInlineStyle):
   3559         (WebCore::ApplyStyleCommand::applyInlineStyleToRange):
   3560         (WebCore::ApplyStyleCommand::removeInlineStyle):
   3561         (WebCore::ApplyStyleCommand::nodeFullySelected):
   3562         (WebCore::ApplyStyleCommand::nodeFullyUnselected):
   3563         * editing/CompositeEditCommand.cpp:
   3564         (WebCore::CompositeEditCommand::deleteInsignificantText):
   3565         (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary):
   3566         (WebCore::CompositeEditCommand::moveParagraphs):
   3567         * editing/DeleteSelectionCommand.cpp:
   3568         (WebCore::DeleteSelectionCommand::initializeStartEnd):
   3569         (WebCore::DeleteSelectionCommand::handleGeneralDelete):
   3570         (WebCore::DeleteSelectionCommand::mergeParagraphs):
   3571         * editing/SelectionController.cpp:
   3572         (WebCore::SelectionController::nodeWillBeRemoved):
   3573         * editing/VisibleSelection.cpp:
   3574         (WebCore::VisibleSelection::toNormalizedRange):
   3575         * editing/htmlediting.cpp:
   3576         (WebCore::comparePositions):
   3577         * editing/htmlediting.h:
   3578         * page/EventHandler.cpp:
   3579         (WebCore::EventHandler::handleMousePressEventSingleClick):
   3580 
   3581 2009-06-02  Albert J. Wong  <ajwong (a] chromium.org>
   3582 
   3583         Reviewed by Dimitri Glazkov.
   3584 
   3585         https://bugs.webkit.org/show_bug.cgi?id=26122
   3586         Upstream v8_utility.h functions into V8Utilities.h.  This patch has
   3587         some transitional code to make upstreaming easier.  This code will
   3588         be deleted in a few days.
   3589 
   3590         * bindings/v8/ScriptFunctionCall.cpp:
   3591         (WebCore::ScriptFunctionCall::construct): NewInstance -> newInstance.
   3592         * bindings/v8/V8Utilities.h:
   3593         (WebCore::AllowAllocation::AllowAllocation): Function added.
   3594         (WebCore::AllowAllocation::~AllowAllocation): Function added.
   3595         (WebCore::SafeAllocation::NewInstance): Function added.
   3596         * bindings/v8/WorkerContextExecutionProxy.cpp:
   3597         (WebCore::WorkerContextExecutionProxy::initContextIfNeeded):
   3598         NewInstance -> newInstance.
   3599         (WebCore::WorkerContextExecutionProxy::toV8): NewInstance ->
   3600         newInstance.
   3601 
   3602 2009-06-02  Dan Bernstein  <mitz (a] apple.com>
   3603 
   3604         Reviewed by John Sullivan.
   3605 
   3606         - fix <rdar://problem/6940747> Search fields focus ring is outset
   3607 
   3608         * rendering/RenderThemeWin.cpp:
   3609         (WebCore::RenderThemeWin::adjustSearchFieldStyle): Set the focused
   3610         search field outline offset to -2.
   3611 
   3612 2009-06-02  Sam Weinig  <sam (a] webkit.org>
   3613 
   3614         Reviewed by Alexey Proskuryakov.
   3615 
   3616         Add list of unimplemented event handlers to DOMWindow.
   3617 
   3618         * page/DOMWindow.idl:
   3619 
   3620 2009-06-02  Alexey Proskuryakov  <ap (a] webkit.org>
   3621 
   3622         Reviewed by Sam Weinig.
   3623 
   3624         https://bugs.webkit.org/show_bug.cgi?id=26133
   3625         Adapt and import py-dom-xpath tests
   3626 
   3627         Tests: fast/xpath/py-dom-xpath/abbreviations.html
   3628                fast/xpath/py-dom-xpath/axes.html
   3629                fast/xpath/py-dom-xpath/data.html
   3630                fast/xpath/py-dom-xpath/expressions.html
   3631                fast/xpath/py-dom-xpath/functions.html
   3632                fast/xpath/py-dom-xpath/nodetests.html
   3633                fast/xpath/py-dom-xpath/paths.html
   3634                fast/xpath/py-dom-xpath/predicates.html
   3635 
   3636         Fix bugs found with this test suite:
   3637         - name and local-name were incorrect for processing instructions (XPath expanded-name
   3638         doesn't match DOM exactly);
   3639         - name, local-name and namespace functions should crash on attribute nodes;
   3640         - attemps to make node sets from other types were not detected as errors.
   3641 
   3642         No performance impact.
   3643 
   3644         * xml/XPathExpressionNode.h: Track type conversion errors that happen during evaluation.
   3645         An error won't stop evaluation, but an exception will be raised afterwards. We could also
   3646         detect conversion errors at compile time, but not if we're going to support XPath variables
   3647         (which is unnecessary for XPathEvaluator, but will be necessary if we decide to make our own
   3648         XSLT one day).
   3649 
   3650         * xml/XPathExpression.cpp: (WebCore::XPathExpression::evaluate): Check whether a type
   3651         conversion exception occurred during evaluation, and raise an excpetion if it did.
   3652 
   3653         * xml/XPathFunctions.cpp:
   3654         (WebCore::XPath::expandedNameLocalPart):
   3655         (WebCore::XPath::expandedName):
   3656         XPath name(), local-name() and namespace-uri() functions are defined in terms of expanded-name,
   3657         which doesn't match anything available via DOM exactly. Calculate the expanded name properly.
   3658         (WebCore::XPath::FunNamespaceURI::evaluate): This function could crash if used with an
   3659         attribute node, because it released what was possibly the only reference to attribute node
   3660         before using it. Changed the function to avoid such situation.
   3661         (WebCore::XPath::FunLocalName::evaluate): Ditto. Also, used the new expandedNameLocalPart()
   3662         to work properly with processing instruction nodes.
   3663         (WebCore::XPath::FunName::evaluate): Ditto (using expandedName()).
   3664         (WebCore::XPath::FunCount::evaluate): Signal an error if the argument is not a node-set
   3665         (by using toNodeSet unconditionally, which will raise an error, and return an empty set).
   3666 
   3667         * xml/XPathPath.cpp: (WebCore::XPath::Filter::evaluate): Signal an error if the expression
   3668         evaluation result is not a node-set.
   3669 
   3670         * xml/XPathPath.h: (WebCore::XPath::Filter::resultType): A Filter's result is actually
   3671         always a node-set (this is not so for FilterExpr production in the spec, but is for us,
   3672         because we don't naively map BNF productions to classes).
   3673 
   3674         * xml/XPathPredicate.cpp: (WebCore::XPath::Union::evaluate): Signal an error if either side
   3675         is not a node-set.
   3676 
   3677         * xml/XPathStep.cpp: Removed an unnecesary include.
   3678 
   3679         * xml/XPathValue.cpp:
   3680         (WebCore::XPath::Value::toNodeSet): Signal an error if conversion fails.
   3681         (WebCore::XPath::Value::modifiableNodeSet): Ditto.
   3682         (WebCore::XPath::Value::toNumber): Don't allow inputs that don't match XPath Number production
   3683         (in particular, those using exponential notation).
   3684 
   3685 2009-06-01  Sam Weinig  <sam (a] webkit.org>
   3686 
   3687         Reviewed by Brady Eidson.
   3688 
   3689         Part of https://bugs.webkit.org/show_bug.cgi?id=26100
   3690         Add missing event handler properties to the DOMWindow
   3691 
   3692         Added oncontextmenu, oninput, and onmessage event handlers to
   3693         the DOMWindow. Aditionally, the onloadstart, onprogress, onstalled,
   3694         and onsuspend event handlers were implemented but not added to
   3695         DOMWindow.idl.
   3696 
   3697         * page/DOMWindow.cpp:
   3698         (WebCore::DOMWindow::oninput):
   3699         (WebCore::DOMWindow::setOninput):
   3700         (WebCore::DOMWindow::onmessage):
   3701         (WebCore::DOMWindow::setOnmessage):
   3702         (WebCore::DOMWindow::oncontextmenu):
   3703         (WebCore::DOMWindow::setOncontextmenu):
   3704         * page/DOMWindow.h:
   3705         * page/DOMWindow.idl:
   3706 
   3707 2009-06-01  Jeremy Orlow  <jorlow (a] chromium.org>
   3708 
   3709         Reviewed by Darin Adler.  Landed by Adam Barth.
   3710 
   3711         https://bugs.webkit.org/show_bug.cgi?id=26123
   3712 
   3713         Remove a redundant checkEncodedString call when constructing a
   3714         KURL object from a string.
   3715 
   3716         * platform/KURL.cpp:
   3717         (WebCore::KURL::KURL):
   3718 
   3719 2009-06-01  Dimitri Glazkov  <dglazkov (a] chromium.org>
   3720 
   3721         Unreviewed, build fix.
   3722 
   3723         Reposition platform guard, improperly placed by http://trac.webkit.org/changeset/44340
   3724         Bad Dimitri.
   3725 
   3726         * platform/KeyboardCodes.h: Repositioned the guard to avoid nested
   3727             WebCore namespace declarations.
   3728 
   3729 2009-06-01  Dimitri Glazkov  <dglazkov (a] chromium.org>
   3730 
   3731         Unreviewed, build fix.
   3732 
   3733         * platform/KeyboardCodes.h: Integrated contents of platform/chromium/KeyboardCodes.h
   3734             with a stern FIXME.
   3735         * platform/chromium/KeyboardCodes.h: Removed.
   3736 
   3737 2009-06-01  Nikolas Zimmermann  <zimmermann (a] kde.org>
   3738 
   3739         Reviewed by Eric Seidel.
   3740 
   3741         Fix assertion error in --filters enabled debug builds.
   3742         Instead of using RefPtr<AtomicStringImpl> as keys for the hash maps in SVGFilterBuilder, just use AtomicString objects.
   3743 
   3744         * svg/graphics/filters/SVGFilterBuilder.cpp:
   3745         (WebCore::SVGFilterBuilder::SVGFilterBuilder):
   3746         (WebCore::SVGFilterBuilder::add):
   3747         (WebCore::SVGFilterBuilder::getEffectById):
   3748         * svg/graphics/filters/SVGFilterBuilder.h:
   3749 
   3750 2009-06-01  Nikolas Zimmermann  <zimmermann (a] kde.org>
   3751 
   3752         Reviewed by Eric Seidel.
   3753 
   3754         Fix --filters enabled build on Mac.
   3755         Remove unnecessary 'boundingBox' parameter from finishRenderSVGContent() method.
   3756         Kill several warnings, to make build pass.
   3757 
   3758         * rendering/RenderPath.cpp:
   3759         (WebCore::RenderPath::paint):
   3760         * rendering/RenderSVGContainer.cpp:
   3761         (WebCore::RenderSVGContainer::paint):
   3762         * rendering/RenderSVGImage.cpp:
   3763         (WebCore::RenderSVGImage::paint):
   3764         * rendering/RenderSVGRoot.cpp:
   3765         (WebCore::RenderSVGRoot::paint):
   3766         * rendering/SVGRenderSupport.cpp:
   3767         (WebCore::SVGRenderBase::finishRenderSVGContent):
   3768         * rendering/SVGRenderSupport.h:
   3769         * rendering/SVGRootInlineBox.cpp:
   3770         (WebCore::SVGRootInlineBoxPaintWalker::chunkEndCallback):
   3771         * svg/SVGFEGaussianBlurElement.cpp:
   3772         (WebCore::SVGFEGaussianBlurElement::setStdDeviation):
   3773         * svg/graphics/filters/SVGFEFlood.cpp:
   3774         (WebCore::FEFlood::FEFlood):
   3775 
   3776 2009-06-01  Dimitri Glazkov  <dglazkov (a] chromium.org>
   3777 
   3778         Reviewed by Dave Hyatt.
   3779 
   3780         Fix Chromium build by adding an #ifdef, restoring the code path to that
   3781         before http://trac.webkit.org/changeset/44287.
   3782 
   3783         * platform/mac/ScrollbarThemeMac.mm:
   3784         (WebCore::ScrollbarThemeMac::paint): Added an #ifdef.
   3785 
   3786 2009-06-01  Dirk Schulze  <krit (a] webkit.org>
   3787 
   3788         Reviewed by Nikolas Zimmermann.
   3789 
   3790         Remove last pieces of the old SVG filter system. They are not
   3791         usable with our current filter system. The new filter effects
   3792         will replace the functionality step by step.
   3793 
   3794         * GNUmakefile.am:
   3795         * WebCore.pro:
   3796         * WebCore.vcproj/WebCore.vcproj:
   3797         * WebCore.xcodeproj/project.pbxproj:
   3798         * svg/graphics/cairo: Removed.
   3799         * svg/graphics/cairo/SVGResourceFilterCairo.cpp: Removed.
   3800         * svg/graphics/cg: Removed.
   3801         * svg/graphics/cg/SVGResourceFilterCg.cpp: Removed.
   3802         * svg/graphics/cg/SVGResourceFilterCg.mm: Removed.
   3803         * svg/graphics/filters/SVGFilterEffect.cpp: Removed.
   3804         * svg/graphics/filters/SVGFilterEffect.h: Removed.
   3805         * svg/graphics/filters/cg: Removed.
   3806         * svg/graphics/filters/cg/SVGFEHelpersCg.h: Removed.
   3807         * svg/graphics/filters/cg/SVGFEHelpersCg.mm: Removed.
   3808         * svg/graphics/filters/cg/SVGFilterEffectCg.mm: Removed.
   3809         * svg/graphics/filters/cg/WKArithmeticFilter.cikernel: Removed.
   3810         * svg/graphics/filters/cg/WKArithmeticFilter.h: Removed.
   3811         * svg/graphics/filters/cg/WKArithmeticFilter.m: Removed.
   3812         * svg/graphics/filters/cg/WKComponentMergeFilter.cikernel: Removed.
   3813         * svg/graphics/filters/cg/WKComponentMergeFilter.h: Removed.
   3814         * svg/graphics/filters/cg/WKComponentMergeFilter.m: Removed.
   3815         * svg/graphics/filters/cg/WKDiffuseLightingFilter.cikernel: Removed.
   3816         * svg/graphics/filters/cg/WKDiffuseLightingFilter.h: Removed.
   3817         * svg/graphics/filters/cg/WKDiffuseLightingFilter.m: Removed.
   3818         * svg/graphics/filters/cg/WKDiscreteTransferFilter.cikernel: Removed.
   3819         * svg/graphics/filters/cg/WKDiscreteTransferFilter.h: Removed.
   3820         * svg/graphics/filters/cg/WKDiscreteTransferFilter.m: Removed.
   3821         * svg/graphics/filters/cg/WKDisplacementMapFilter.cikernel: Removed.
   3822         * svg/graphics/filters/cg/WKDisplacementMapFilter.h: Removed.
   3823         * svg/graphics/filters/cg/WKDisplacementMapFilter.m: Removed.
   3824         * svg/graphics/filters/cg/WKDistantLightFilter.cikernel: Removed.
   3825         * svg/graphics/filters/cg/WKDistantLightFilter.h: Removed.
   3826         * svg/graphics/filters/cg/WKDistantLightFilter.m: Removed.
   3827         * svg/graphics/filters/cg/WKGammaTransferFilter.cikernel: Removed.
   3828         * svg/graphics/filters/cg/WKGammaTransferFilter.h: Removed.
   3829         * svg/graphics/filters/cg/WKGammaTransferFilter.m: Removed.
   3830         * svg/graphics/filters/cg/WKIdentityTransferFilter.h: Removed.
   3831         * svg/graphics/filters/cg/WKIdentityTransferFilter.m: Removed.
   3832         * svg/graphics/filters/cg/WKLinearTransferFilter.cikernel: Removed.
   3833         * svg/graphics/filters/cg/WKLinearTransferFilter.h: Removed.
   3834         * svg/graphics/filters/cg/WKLinearTransferFilter.m: Removed.
   3835         * svg/graphics/filters/cg/WKNormalMapFilter.cikernel: Removed.
   3836         * svg/graphics/filters/cg/WKNormalMapFilter.h: Removed.
   3837         * svg/graphics/filters/cg/WKNormalMapFilter.m: Removed.
   3838         * svg/graphics/filters/cg/WKPointLightFilter.cikernel: Removed.
   3839         * svg/graphics/filters/cg/WKPointLightFilter.h: Removed.
   3840         * svg/graphics/filters/cg/WKPointLightFilter.m: Removed.
   3841         * svg/graphics/filters/cg/WKSpecularLightingFilter.cikernel: Removed.
   3842         * svg/graphics/filters/cg/WKSpecularLightingFilter.h: Removed.
   3843         * svg/graphics/filters/cg/WKSpecularLightingFilter.m: Removed.
   3844         * svg/graphics/filters/cg/WKSpotLightFilter.cikernel: Removed.
   3845         * svg/graphics/filters/cg/WKSpotLightFilter.h: Removed.
   3846         * svg/graphics/filters/cg/WKSpotLightFilter.m: Removed.
   3847         * svg/graphics/filters/cg/WKTableTransferFilter.cikernel: Removed.
   3848         * svg/graphics/filters/cg/WKTableTransferFilter.h: Removed.
   3849         * svg/graphics/filters/cg/WKTableTransferFilter.m: Removed.
   3850         * svg/graphics/mac: Removed.
   3851         * svg/graphics/mac/SVGResourceFilterPlatformDataMac.h: Removed.
   3852         * svg/graphics/mac/SVGResourceFilterPlatformDataMac.mm: Removed.
   3853         * svg/graphics/qt: Removed.
   3854         * svg/graphics/qt/SVGResourceFilterQt.cpp: Removed.
   3855         * svg/graphics/skia: Removed.
   3856         * svg/graphics/skia/SVGResourceFilterSkia.cpp: Removed.
   3857 
   3858 2009-06-01  Dmitry Titov  <dimich (a] chromium.org>
   3859 
   3860         Fix the previous checkin (ttp://trac.webkit.org/changeset/44327).
   3861         This adds a comment suggested during review.
   3862 
   3863         * platform/ThreadGlobalData.cpp:
   3864         (WebCore::ThreadGlobalData::~ThreadGlobalData): Add comment clarifying the change.
   3865 
   3866 2009-06-01  Dmitry Titov  <dimich (a] chromium.org>
   3867 
   3868         Reviewed by Darin Adler.
   3869 
   3870         https://bugs.webkit.org/show_bug.cgi?id=25973
   3871         Avoid calling CurrentThread() in thread-specific destructors in OSX Chromium.
   3872         Pthreads invoke thread-specific destructors after WTF::detachThread() is called and ThreadIdentifier
   3873         for the thread removed from the WTF thread map. Calling CurrentThread() in such destructor causes
   3874         the ThreadIdentifier to be re-created and inserted into the map again. Since Pthreads on OSX reuse
   3875         the pthread_t between threads, the next created thread will have the same pthread_t and cause an assert
   3876         in establishIdentifierForPthreadHandle() since the id is already in the map.
   3877 
   3878         The behavior is covered by existing test LayoutTests/fast/workers/worker-terminate.html, which currently fails
   3879         on OSX Chromium and will stop failing after this change.
   3880 
   3881         * platform/ThreadGlobalData.h:
   3882         * platform/ThreadGlobalData.cpp:
   3883         (WebCore::ThreadGlobalData::~ThreadGlobalData):
   3884         Store the result of "isMainThread()" in a member variable during construction of thread-specific data
   3885         to avoid calling IsMainThread() in destructor, since the latter calls CurrentThread() in OSX Chromium.
   3886 
   3887 2009-06-01  David Levin  <levin (a] chromium.org>
   3888 
   3889         Reviewed by Darin Alder and Maciej Stachowiak.
   3890 
   3891         Bug 26057: StringImpl should share buffers with UString.
   3892         https://bugs.webkit.org/show_bug.cgi?id=26057
   3893 
   3894         This change results in the following performance improvements:
   3895         On http://www.hixie.ch/tests/adhoc/perf/dom/artificial/core/001.html
   3896         the time went from 78ms to 40ms for append (other times remained constant).
   3897 
   3898         On http://www.hixie.ch/tests/adhoc/perf/dom/artificial/core/002.html,
   3899         the time went from 3900ms to 2600ms.
   3900 
   3901         For http://dromaeo.com/?dom, the time for DomModification improved by ~6%.
   3902         Other tests in dom seemed to be faster across several runs but within the
   3903         margin of error (except DOM Attributes which was slightly ~1.5% worse).
   3904 
   3905         Existing tests cover this code and there is no new functionality
   3906         that is exposed to test.
   3907 
   3908         * platform/text/AtomicString.cpp:
   3909         (WebCore::AtomicString::add):
   3910         * platform/text/String.cpp:
   3911         (WebCore::String::String):
   3912         (WebCore::String::operator UString):
   3913         * platform/text/StringImpl.cpp:
   3914         (WebCore::StringImpl::StringImpl):
   3915         (WebCore::StringImpl::~StringImpl):
   3916         (WebCore::StringImpl::create): Consumes a shared buffer.
   3917         (WebCore::StringImpl::ustring): Shares the StringImpl's buffer with the UString.
   3918         (WebCore::StringImpl::sharedBuffer): Exposes the buffer that may be shared.
   3919         * platform/text/StringImpl.h:
   3920         (WebCore::StringImpl::hasTerminatingNullCharacter):
   3921         (WebCore::StringImpl::inTable):
   3922         (WebCore::StringImpl::setInTable): Converted the bools to be inside of PtrAndFlags
   3923         to avoid growing StringImpl in size.
   3924 
   3925 2009-06-01  Dimitri Glazkov  <dglazkov (a] chromium.org>
   3926 
   3927         Unreviewed, build fix.
   3928 
   3929         V8 bindings follow-up to to DOMWindow-related cleanup:
   3930         http://trac.webkit.org/changeset/44215
   3931 
   3932         * bindings/v8/ScriptController.cpp: Removed disconnectFrame(), relocated
   3933             its body to destructor.
   3934         * bindings/v8/ScriptController.h: Removed disconnectFrame() decl.
   3935 
   3936 2009-05-28  Pavel Feldman  <pfeldman (a] chromium.org>
   3937 
   3938         Reviewed by Timothy Hatcher.
   3939 
   3940         - Add panel enabler to the resources panel.
   3941         - Add session / always options into the panel enabler.
   3942         - Make enabled status for three panels sticky (globally).
   3943         - Persist enabled status using InspectorController::Settings
   3944         - Make InspectorController produce no network-related overhead when
   3945           resources panel is not enabled.
   3946 
   3947         https://bugs.webkit.org/show_bug.cgi?id=26046
   3948 
   3949         * inspector/InspectorController.cpp:
   3950         (WebCore::InspectorController::InspectorController):
   3951         (WebCore::InspectorController::setWindowVisible):
   3952         (WebCore::InspectorController::populateScriptObjects):
   3953         (WebCore::InspectorController::identifierForInitialRequest):
   3954         (WebCore::InspectorController::willSendRequest):
   3955         (WebCore::InspectorController::didReceiveResponse):
   3956         (WebCore::InspectorController::didReceiveContentLength):
   3957         (WebCore::InspectorController::didFinishLoading):
   3958         (WebCore::InspectorController::didFailLoading):
   3959         (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
   3960         (WebCore::InspectorController::scriptImported):
   3961         (WebCore::InspectorController::enableResourceTracking):
   3962         (WebCore::InspectorController::disableResourceTracking):
   3963         (WebCore::InspectorController::startUserInitiatedProfiling):
   3964         (WebCore::InspectorController::enableProfiler):
   3965         (WebCore::InspectorController::disableProfiler):
   3966         (WebCore::InspectorController::enableDebugger):
   3967         (WebCore::InspectorController::disableDebugger):
   3968         * inspector/InspectorController.h:
   3969         (WebCore::InspectorController::Setting::Setting):
   3970         (WebCore::InspectorController::resourceTrackingEnabled):
   3971         * inspector/InspectorController.idl:
   3972         * inspector/InspectorFrontend.cpp:
   3973         (WebCore::InspectorFrontend::resourceTrackingWasEnabled):
   3974         (WebCore::InspectorFrontend::resourceTrackingWasDisabled):
   3975         * inspector/InspectorFrontend.h:
   3976         * inspector/front-end/PanelEnablerView.js:
   3977         (WebInspector.PanelEnablerView.enableOption):
   3978         (WebInspector.PanelEnablerView):
   3979         (WebInspector.PanelEnablerView.prototype._windowResized):
   3980         (WebInspector.PanelEnablerView.prototype.alwaysWasChosen):
   3981         * inspector/front-end/ProfilesPanel.js:
   3982         (WebInspector.ProfilesPanel.prototype._enableProfiling):
   3983         (WebInspector.ProfilesPanel.prototype._toggleProfiling):
   3984         * inspector/front-end/ResourcesPanel.js:
   3985         (WebInspector.ResourcesPanel):
   3986         (WebInspector.ResourcesPanel.prototype.get statusBarItems):
   3987         (WebInspector.ResourcesPanel.prototype.resourceTrackingWasEnabled):
   3988         (WebInspector.ResourcesPanel.prototype.resourceTrackingWasDisabled):
   3989         (WebInspector.ResourcesPanel.prototype.reset):
   3990         (WebInspector.ResourcesPanel.prototype._updateSidebarWidth):
   3991         (WebInspector.ResourcesPanel.prototype._enableResourceTracking):
   3992         (WebInspector.ResourcesPanel.prototype._toggleResourceTracking):
   3993         * inspector/front-end/ScriptsPanel.js:
   3994         (WebInspector.ScriptsPanel.prototype._enableDebugging):
   3995         (WebInspector.ScriptsPanel.prototype._toggleDebugging):
   3996         * inspector/front-end/inspector.css:
   3997         * inspector/front-end/inspector.js:
   3998         (WebInspector.resourceTrackingWasEnabled):
   3999         (WebInspector.resourceTrackingWasDisabled):
   4000 
   4001 2009-06-01  Drew Wilson  <atwilson (a] google.com>
   4002 
   4003         Reviewed by Darin Adler.  Landed (and tweaked) by Adam Barth.
   4004 
   4005         https://bugs.webkit.org/show_bug.cgi?id=25902
   4006 
   4007         Added WorkerContext.close()
   4008 
   4009         Test: fast/workers/worker-close.html
   4010 
   4011         * workers/WorkerContext.cpp:
   4012         (WebCore::WorkerContext::close):
   4013         * workers/WorkerContext.h:
   4014         * workers/WorkerContext.idl:
   4015         * workers/WorkerMessagingProxy.cpp:
   4016         (WebCore::WorkerMessagingProxy::workerContextDestroyedInternal):
   4017 
   4018 2009-06-01  Alexey Proskuryakov  <ap (a] webkit.org>
   4019 
   4020         Reviewed by Darin Adler.
   4021 
   4022         https://bugs.webkit.org/show_bug.cgi?id=12471
   4023         XPathResult not invalidated for documents retrieved via XMLHttpRequest
   4024 
   4025         Test: fast/xpath/detached-subtree-invalidate-iterator.html and existing tests in dom/svg/level3/xpath.
   4026 
   4027         Use DOM tree version instead of DOMSubtreeModified events to invalidate, which is more
   4028         reliable and much faster.
   4029 
   4030         * xml/XPathExpression.cpp:
   4031         (WebCore::XPathExpression::evaluate):
   4032         * xml/XPathResult.cpp:
   4033         (WebCore::XPathResult::XPathResult):
   4034         (WebCore::XPathResult::~XPathResult):
   4035         (WebCore::XPathResult::invalidIteratorState):
   4036         (WebCore::XPathResult::iterateNext):
   4037         * xml/XPathResult.h:
   4038         (WebCore::XPathResult::create):
   4039 
   4040 2009-06-01  Brett Wilson  <brettw (a] chromium.org>
   4041 
   4042         Reviewed by Darin Adler.  Landed by Adam Barth.
   4043 
   4044         https://bugs.webkit.org/show_bug.cgi?id=25750
   4045 
   4046         Test: fast/transforms/bounding-rect-zoom.html
   4047 
   4048         Make getClientRects and getBoundingClientRect account for ther zoom
   4049         factor.
   4050 
   4051         * dom/Element.cpp:
   4052         (WebCore::adjustFloatPointForAbsoluteZoom):
   4053         (WebCore::adjustFloatQuadForAbsoluteZoom):
   4054         (WebCore::adjustIntRectForAbsoluteZoom):
   4055         (WebCore::Element::getClientRects):
   4056         (WebCore::Element::getBoundingClientRect):
   4057 
   4058 2009-06-01  Tony Chang  <tony (a] chromium.org>
   4059 
   4060         Reviewed by Dimitri Glazkov.  Landed by Adam Barth.
   4061 
   4062         https://bugs.webkit.org/show_bug.cgi?id=26026
   4063 
   4064         Fix an infinite loop when using the keyboard in Chromium select
   4065         popups.
   4066 
   4067         Not testable since it involves sending a keyboard event to
   4068         the popup, which is not possible (eventSender sends the key
   4069         events through webview, we want to go through the webwidget).
   4070 
   4071         * platform/chromium/PopupMenuChromium.cpp:
   4072 
   4073 2009-06-01  Nate Chapin  <japhet (a] google.com>
   4074 
   4075         Reviewed by Dimitri Glazkov.  Landed by Adam Barth.
   4076 
   4077         If a url with an anchor is being loaded, ensure that the anchor remains locked in view until the page
   4078         has finished loading compeltely or the user has manually scrolled.  Refreshing an anchor url after
   4079         scrolling to a new location on the page will still result in jumping to the new location.
   4080         
   4081         https://bugs.webkit.org/show_bug.cgi?id=26034
   4082 
   4083         * loader/FrameLoader.cpp:
   4084         (WebCore::FrameLoader::gotoAnchor): Set anchor lock after navigating to anchor.
   4085         (WebCore::FrameLoader::completed): Release anchor lock.
   4086         * page/FrameView.cpp:
   4087         (WebCore::FrameView::FrameView): Ensure anchor lock starts unset.
   4088         (WebCore::FrameView::reset): Ensure anchor lock starts unset.
   4089         (WebCore::FrameView::layout): If anchor lock is set, force a gotoAnchor() after layout.
   4090         (WebCore::FrameView::scrollRectIntoViewRecursively): Release anchor lock if a programmatic scroll begins.
   4091         (WebCore::FrameView::setWasScrolledByUser): Release anchor lock if user manually scrolls.
   4092         (WebCore::FrameView::setScrollPosition): Release anchor lock if a programmatic scroll begins.
   4093         * page/FrameView.h:
   4094         (WebCore::FrameView::lockedToAnchor): Added.
   4095         (WebCore::FrameView::setLockedToAnchor): Added.
   4096 
   4097 2009-05-31  Dirk Schulze  <krit (a] webkit.org>
   4098 
   4099         Reviewed by Nikolas Zimmermann.
   4100 
   4101         WebKit needs cross-platform filter system
   4102         [https://bugs.webkit.org/show_bug.cgi?id=19991]
   4103 
   4104         A short clean-up. FilterBuilder is SVG specific. Move it
   4105         to svg/graphics/filters and rename it to SVGFilterBuilder. 
   4106 
   4107         * GNUmakefile.am:
   4108         * WebCore.pro:
   4109         * WebCore.xcodeproj/project.pbxproj:
   4110         * svg/FilterBuilder.cpp: Removed.
   4111         * svg/FilterBuilder.h: Removed.
   4112         * svg/SVGFilterElement.cpp:
   4113         * svg/SVGFilterPrimitiveStandardAttributes.h:
   4114         * svg/graphics/SVGResourceFilter.cpp:
   4115         (WebCore::SVGResourceFilter::SVGResourceFilter):
   4116         * svg/graphics/SVGResourceFilter.h:
   4117         (WebCore::SVGResourceFilter::builder):
   4118         * svg/graphics/filters/SVGFilterBuilder.cpp: Added.
   4119         (WebCore::SVGFilterBuilder::SVGFilterBuilder):
   4120         (WebCore::SVGFilterBuilder::add):
   4121         (WebCore::SVGFilterBuilder::getEffectById):
   4122         (WebCore::SVGFilterBuilder::clearEffects):
   4123         * svg/graphics/filters/SVGFilterBuilder.h: Added.
   4124         (WebCore::SVGFilterBuilder::lastEffect):
   4125 
   4126 2009-05-31  Alexey Proskuryakov  <ap (a] webkit.org>
   4127 
   4128         Reviewed by Darin Adler.
   4129 
   4130         https://bugs.webkit.org/show_bug.cgi?id=13233
   4131         Need to implement an optimizing XPath evaluator
   4132 
   4133         Avoid sorting results of hierarchical paths that are naturally sorted. On a flat data structure
   4134         with 128K nodes and a simple XPath expression, this changes evaluation time from 1.5 minutes
   4135         to 33 ms.
   4136 
   4137         * xml/XPathNodeSet.h: Keep track of whether subtrees rooted at nodes in set are disjoint,
   4138         which is useful for optimization.
   4139         (WebCore::XPath::NodeSet::NodeSet): Removed, it was identical to compiler generated one.
   4140         (WebCore::XPath::NodeSet::operator=): Ditto.
   4141         (WebCore::XPath::NodeSet::swap): Ditto.
   4142         (WebCore::XPath::NodeSet::isSorted): Single element sets are always sorted, even if sort()
   4143         was never called.
   4144         (WebCore::XPath::NodeSet::markSubtreesDisjoint): Just like being sorted, the new flag is
   4145         maintained by callers.
   4146         (WebCore::XPath::NodeSet::subtreesAreDisjoint): A single element set only has one subtree.
   4147         Currently, the only way for a set to gain this flag is to be produced from a single element
   4148         set with a hierarchical location path.
   4149 
   4150         * xml/XPathPath.cpp: (WebCore::XPath::LocationPath::evaluate): Use the new flag to avoid
   4151         maintaining a set of unique nodes, and to avoid sorting the result.
   4152 
   4153 2009-05-31  Alexey Proskuryakov  <ap (a] webkit.org>
   4154 
   4155         Reviewed by Darin Adler.
   4156 
   4157         https://bugs.webkit.org/show_bug.cgi?id=13233
   4158         Need to implement an optimizing XPath evaluator
   4159 
   4160         This patch adds some infrastructure and simple optimizations. Namely,
   4161         - we now avoid building a full NodeSet just to evaluate a predicate in some cases;
   4162         - "/descendant-or-self::node()/child::" is optimized to iterate the tree once when possible;
   4163 
   4164         * xml/XPathExpressionNode.cpp:
   4165         (WebCore::XPath::Expression::Expression):
   4166         * xml/XPathExpressionNode.h:
   4167         (WebCore::XPath::Expression::addSubExpression):
   4168         (WebCore::XPath::Expression::isContextNodeSensitive):
   4169         (WebCore::XPath::Expression::isContextPositionSensitive):
   4170         (WebCore::XPath::Expression::isContextSizeSensitive):
   4171         (WebCore::XPath::Expression::setIsContextNodeSensitive):
   4172         (WebCore::XPath::Expression::setIsContextPositionSensitive):
   4173         (WebCore::XPath::Expression::setIsContextSizeSensitive):
   4174         XPath expression now knows its result type, and whether evaluation depends on context.
   4175 
   4176         * xml/XPathFunctions.cpp:
   4177         (WebCore::XPath::FunLast::resultType):
   4178         (WebCore::XPath::FunLast::FunLast):
   4179         (WebCore::XPath::FunPosition::resultType):
   4180         (WebCore::XPath::FunPosition::FunPosition):
   4181         (WebCore::XPath::FunCount::resultType):
   4182         (WebCore::XPath::FunId::resultType):
   4183         (WebCore::XPath::FunLocalName::resultType):
   4184         (WebCore::XPath::FunLocalName::FunLocalName):
   4185         (WebCore::XPath::FunNamespaceURI::resultType):
   4186         (WebCore::XPath::FunNamespaceURI::FunNamespaceURI):
   4187         (WebCore::XPath::FunName::resultType):
   4188         (WebCore::XPath::FunName::FunName):
   4189         (WebCore::XPath::FunString::resultType):
   4190         (WebCore::XPath::FunString::FunString):
   4191         (WebCore::XPath::FunConcat::resultType):
   4192         (WebCore::XPath::FunStartsWith::resultType):
   4193         (WebCore::XPath::FunContains::resultType):
   4194         (WebCore::XPath::FunSubstringBefore::resultType):
   4195         (WebCore::XPath::FunSubstringAfter::resultType):
   4196         (WebCore::XPath::FunSubstring::resultType):
   4197         (WebCore::XPath::FunStringLength::resultType):
   4198         (WebCore::XPath::FunStringLength::FunStringLength):
   4199         (WebCore::XPath::FunNormalizeSpace::resultType):
   4200         (WebCore::XPath::FunNormalizeSpace::FunNormalizeSpace):
   4201         (WebCore::XPath::FunTranslate::resultType):
   4202         (WebCore::XPath::FunBoolean::resultType):
   4203         (WebCore::XPath::FunNot::resultType):
   4204         (WebCore::XPath::FunTrue::resultType):
   4205         (WebCore::XPath::FunFalse::resultType):
   4206         (WebCore::XPath::FunLang::resultType):
   4207         (WebCore::XPath::FunLang::FunLang):
   4208         (WebCore::XPath::FunNumber::resultType):
   4209         (WebCore::XPath::FunNumber::FunNumber):
   4210         (WebCore::XPath::FunSum::resultType):
   4211         (WebCore::XPath::FunFloor::resultType):
   4212         (WebCore::XPath::FunCeiling::resultType):
   4213         (WebCore::XPath::FunRound::resultType):
   4214         (WebCore::XPath::Function::setArguments):
   4215         Set optimization details for the expression. Normally, a function does not introduce context
   4216         node set dependency, but some use context node as default argument, or otherwise use the context.
   4217 
   4218         * xml/XPathFunctions.h: Tweaked style.
   4219 
   4220         * xml/XPathPath.cpp:
   4221         (WebCore::XPath::Filter::Filter): A filter is as context node set sensitive as its expression is.
   4222         (WebCore::XPath::LocationPath::LocationPath): A location path can only be context node sensitive,
   4223         and only if the path relative.
   4224         (WebCore::XPath::LocationPath::appendStep): Invoke compile-time Step optimizations.
   4225         (WebCore::XPath::LocationPath::insertFirstStep): Ditto.
   4226         (WebCore::XPath::Path::Path): A path is as context node set sensitive as its filter is.
   4227 
   4228         * xml/XPathPath.h:
   4229         (WebCore::XPath::Filter::resultType): Result type of a filter is the same as of its expression
   4230         (useful filters return NodeSets, of course).
   4231         (WebCore::XPath::LocationPath::setAbsolute): An absolute location path if context node set
   4232         insensitive.
   4233         (WebCore::XPath::LocationPath::resultType): A path's result is always a node set.
   4234         (WebCore::XPath::Path::resultType): Ditto.
   4235 
   4236         * xml/XPathPredicate.h:
   4237         (WebCore::XPath::Number::resultType): Return a proper result type.
   4238         (WebCore::XPath::StringExpression::resultType): Ditto.
   4239         (WebCore::XPath::Negative::resultType): Ditto.
   4240         (WebCore::XPath::NumericOp::resultType): Ditto.
   4241         (WebCore::XPath::EqTestOp::resultType): Ditto.
   4242         (WebCore::XPath::LogicalOp::resultType): Ditto.
   4243         (WebCore::XPath::Union::resultType): Ditto.
   4244         (WebCore::XPath::Predicate::isContextPositionSensitive): A predicate can be context position
   4245         sensitive even if its expression is not, because e.g. [5] is a shortcut for [position()=5].
   4246         (WebCore::XPath::Predicate::isContextSizeSensitive): This matches expression result.
   4247 
   4248         * xml/XPathStep.h:
   4249         (WebCore::XPath::Step::NodeTest::Kind): Removed unused ElementNodeTest, which was previously
   4250         borrowed from XPath 2.0 to express some optimizations.
   4251         (WebCore::XPath::Step::NodeTest::mergedPredicates): To avoid building a huge node set and
   4252         filtering it with predicates, we now try to apply predicates while enumerating an axis.
   4253         (WebCore::XPath::Step::nodeTest): Expose m_nodeTest.
   4254 
   4255         * xml/XPathStep.cpp:
   4256         (WebCore::XPath::Step::~Step): The step owns NodeTest merged predicates, so it is still
   4257         possible to copy NodeTests.
   4258         (WebCore::XPath::Step::optimize): Merge predicates into NodeTest if possible.
   4259         (WebCore::XPath::optimizeStepPair): Optimize some expressions containing "//".
   4260         (WebCore::XPath::Step::predicatesAreContextListInsensitive): The above optimization is only
   4261         possible if there are no context sensitive predicates for "//".
   4262         (WebCore::XPath::Step::evaluate): Track context position for the first merged predicate.
   4263         (WebCore::XPath::nodeMatchesBasicTest): Check whether the node matches node test, ignoring
   4264         merged predicates.
   4265         (WebCore::XPath::nodeMatches): Additionally check merged predicates, and update position.
   4266         (WebCore::XPath::Step::nodesInAxis): Check merged predicates in optimized attribute code
   4267         path.
   4268 
   4269         * xml/XPathVariableReference.h: (WebCore::XPath::VariableReference::resultType): Variable
   4270         references are not used with XPathEvaluator, so we'll only need them if we decide to
   4271         reimplement XSLT. The type of variable reference is not known at compile time.
   4272 
   4273 2009-05-31  Sam Weinig  <sam (a] webkit.org>
   4274 
   4275         Rubber-stamped by Dan Bernstein.
   4276 
   4277         Remove unused JSEventTargetBase.h
   4278 
   4279         * GNUmakefile.am:
   4280         * WebCore.vcproj/WebCore.vcproj:
   4281         * WebCore.xcodeproj/project.pbxproj:
   4282         * bindings/js/JSEventTargetBase.h: Removed.
   4283 
   4284 2009-05-31  Sam Weinig  <sam (a] webkit.org>
   4285 
   4286         Reviewed by Dan Bernstein.
   4287 
   4288         Part of https://bugs.webkit.org/show_bug.cgi?id=26100
   4289         Add missing event handler properties to the DOMWindow
   4290 
   4291         Add missing oncanplay, oncanplaythrough, ondurationchange, onemptied,
   4292         onended, onloadeddata, onloadedmetadata, onpause, onplay, onplaying,
   4293         onratechange, onseeked, onseeking, ontimeupdate, onvolumechange,
   4294         onwaiting, onloadstart, onprogress, onstalled, onsuspend, ondrag,
   4295         ondragend, ondragenter, ondragleave, ondragover, ondragstart and 
   4296         ondrop event handlers to the DOMWindow.
   4297 
   4298         * page/DOMWindow.cpp:
   4299         (WebCore::DOMWindow::ondrag):
   4300         (WebCore::DOMWindow::setOndrag):
   4301         (WebCore::DOMWindow::ondragend):
   4302         (WebCore::DOMWindow::setOndragend):
   4303         (WebCore::DOMWindow::ondragenter):
   4304         (WebCore::DOMWindow::setOndragenter):
   4305         (WebCore::DOMWindow::ondragleave):
   4306         (WebCore::DOMWindow::setOndragleave):
   4307         (WebCore::DOMWindow::ondragover):
   4308         (WebCore::DOMWindow::setOndragover):
   4309         (WebCore::DOMWindow::ondragstart):
   4310         (WebCore::DOMWindow::setOndragstart):
   4311         (WebCore::DOMWindow::ondrop):
   4312         (WebCore::DOMWindow::setOndrop):
   4313         (WebCore::DOMWindow::oncanplay):
   4314         (WebCore::DOMWindow::setOncanplay):
   4315         (WebCore::DOMWindow::oncanplaythrough):
   4316         (WebCore::DOMWindow::setOncanplaythrough):
   4317         (WebCore::DOMWindow::ondurationchange):
   4318         (WebCore::DOMWindow::setOndurationchange):
   4319         (WebCore::DOMWindow::onemptied):
   4320         (WebCore::DOMWindow::setOnemptied):
   4321         (WebCore::DOMWindow::onended):
   4322         (WebCore::DOMWindow::setOnended):
   4323         (WebCore::DOMWindow::onloadeddata):
   4324         (WebCore::DOMWindow::setOnloadeddata):
   4325         (WebCore::DOMWindow::onloadedmetadata):
   4326         (WebCore::DOMWindow::setOnloadedmetadata):
   4327         (WebCore::DOMWindow::onpause):
   4328         (WebCore::DOMWindow::setOnpause):
   4329         (WebCore::DOMWindow::onplay):
   4330         (WebCore::DOMWindow::setOnplay):
   4331         (WebCore::DOMWindow::onplaying):
   4332         (WebCore::DOMWindow::setOnplaying):
   4333         (WebCore::DOMWindow::onratechange):
   4334         (WebCore::DOMWindow::setOnratechange):
   4335         (WebCore::DOMWindow::onseeked):
   4336         (WebCore::DOMWindow::setOnseeked):
   4337         (WebCore::DOMWindow::onseeking):
   4338         (WebCore::DOMWindow::setOnseeking):
   4339         (WebCore::DOMWindow::ontimeupdate):
   4340         (WebCore::DOMWindow::setOntimeupdate):
   4341         (WebCore::DOMWindow::onvolumechange):
   4342         (WebCore::DOMWindow::setOnvolumechange):
   4343         (WebCore::DOMWindow::onwaiting):
   4344         (WebCore::DOMWindow::setOnwaiting):
   4345         (WebCore::DOMWindow::onloadstart):
   4346         (WebCore::DOMWindow::setOnloadstart):
   4347         (WebCore::DOMWindow::onprogress):
   4348         (WebCore::DOMWindow::setOnprogress):
   4349         (WebCore::DOMWindow::onstalled):
   4350         (WebCore::DOMWindow::setOnstalled):
   4351         (WebCore::DOMWindow::onsuspend):
   4352         (WebCore::DOMWindow::setOnsuspend):
   4353         * page/DOMWindow.h:
   4354         * page/DOMWindow.idl:
   4355 
   4356 2009-05-31  Sam Weinig  <sam (a] webkit.org>
   4357 
   4358         Reviewed by Anders Carlsson.
   4359 
   4360         Part of https://bugs.webkit.org/show_bug.cgi?id=26100
   4361         Add missing event handler properties to the DOMWindow
   4362 
   4363         Add missing onstorage event handler to the DOMWindow.
   4364 
   4365         * page/DOMWindow.cpp:
   4366         (WebCore::DOMWindow::onstorage):
   4367         (WebCore::DOMWindow::setOnstorage):
   4368         * page/DOMWindow.h:
   4369         * page/DOMWindow.idl:
   4370 
   4371 2009-05-30  Sam Weinig  <sam (a] webkit.org>
   4372 
   4373         Reviewed by Mark Rowe.
   4374 
   4375         Fix for https://bugs.webkit.org/show_bug.cgi?id=26110
   4376         Update online/offline events to match the current spec.
   4377         - Also adds window.ononline and window.onoffline event handler
   4378           properties.
   4379 
   4380         * page/DOMWindow.cpp:
   4381         (WebCore::DOMWindow::onoffline):
   4382         (WebCore::DOMWindow::setOnoffline):
   4383         (WebCore::DOMWindow::ononline):
   4384         (WebCore::DOMWindow::setOnonline):
   4385         * page/DOMWindow.h:
   4386         * page/DOMWindow.idl:
   4387         * page/Page.cpp:
   4388         (WebCore::networkStateChanged):
   4389 
   4390 2009-05-31  Dirk Schulze  <krit (a] webkit.org>
   4391 
   4392         Reviewed by Nikolas Zimmermann.
   4393 
   4394         WebKit needs cross-platform filter system
   4395         [https://bugs.webkit.org/show_bug.cgi?id=19991]
   4396 
   4397         Make use of the new filter system in WebCore for SVG. Deleted Mac bindings
   4398         and replace it by a platform independent code. Calculation of subRegions
   4399         is missing but needed for a first filter effect.
   4400 
   4401         * GNUmakefile.am:
   4402         * WebCore.pro:
   4403         * WebCore.vcproj/WebCore.vcproj:
   4404         * WebCore.xcodeproj/project.pbxproj:
   4405         * platform/graphics/filters/Filter.h:
   4406         (WebCore::Filter::~Filter):
   4407         (WebCore::Filter::setSourceImage):
   4408         * rendering/SVGRenderSupport.cpp:
   4409         (WebCore::SVGRenderBase::prepareToRenderSVGContent):
   4410         (WebCore::SVGRenderBase::finishRenderSVGContent):
   4411         * svg/FilterBuilder.h:
   4412         (WebCore::FilterBuilder::lastEffect):
   4413         * svg/SVGFEBlendElement.cpp:
   4414         (WebCore::SVGFEBlendElement::SVGFEBlendElement):
   4415         (WebCore::SVGFEBlendElement::build):
   4416         * svg/SVGFEBlendElement.h:
   4417         * svg/SVGFEColorMatrixElement.cpp:
   4418         (WebCore::SVGFEColorMatrixElement::SVGFEColorMatrixElement):
   4419         (WebCore::SVGFEColorMatrixElement::build):
   4420         * svg/SVGFEColorMatrixElement.h:
   4421         * svg/SVGFEComponentTransferElement.cpp:
   4422         (WebCore::SVGFEComponentTransferElement::SVGFEComponentTransferElement):
   4423         (WebCore::SVGFEComponentTransferElement::build):
   4424         * svg/SVGFEComponentTransferElement.h:
   4425         * svg/SVGFECompositeElement.cpp:
   4426         (WebCore::SVGFECompositeElement::SVGFECompositeElement):
   4427         (WebCore::SVGFECompositeElement::build):
   4428         * svg/SVGFECompositeElement.h:
   4429         * svg/SVGFEDiffuseLightingElement.cpp:
   4430         (WebCore::SVGFEDiffuseLightingElement::SVGFEDiffuseLightingElement):
   4431         (WebCore::SVGFEDiffuseLightingElement::build):
   4432         * svg/SVGFEDiffuseLightingElement.h:
   4433         * svg/SVGFEDisplacementMapElement.cpp:
   4434         (WebCore::SVGFEDisplacementMapElement::SVGFEDisplacementMapElement):
   4435         (WebCore::SVGFEDisplacementMapElement::build):
   4436         * svg/SVGFEDisplacementMapElement.h:
   4437         * svg/SVGFEFloodElement.cpp:
   4438         (WebCore::SVGFEFloodElement::SVGFEFloodElement):
   4439         (WebCore::SVGFEFloodElement::build):
   4440         * svg/SVGFEFloodElement.h:
   4441         * svg/SVGFEGaussianBlurElement.cpp:
   4442         (WebCore::SVGFEGaussianBlurElement::SVGFEGaussianBlurElement):
   4443         (WebCore::SVGFEGaussianBlurElement::build):
   4444         * svg/SVGFEGaussianBlurElement.h:
   4445         * svg/SVGFEImageElement.cpp:
   4446         (WebCore::SVGFEImageElement::SVGFEImageElement):
   4447         (WebCore::SVGFEImageElement::notifyFinished):
   4448         (WebCore::SVGFEImageElement::build):
   4449         * svg/SVGFEImageElement.h:
   4450         * svg/SVGFEMergeElement.cpp:
   4451         (WebCore::SVGFEMergeElement::SVGFEMergeElement):
   4452         (WebCore::SVGFEMergeElement::build):
   4453         * svg/SVGFEMergeElement.h:
   4454         * svg/SVGFEOffsetElement.cpp:
   4455         (WebCore::SVGFEOffsetElement::SVGFEOffsetElement):
   4456         (WebCore::SVGFEOffsetElement::build):
   4457         * svg/SVGFEOffsetElement.h:
   4458         * svg/SVGFESpecularLightingElement.cpp:
   4459         (WebCore::SVGFESpecularLightingElement::SVGFESpecularLightingElement):
   4460         (WebCore::SVGFESpecularLightingElement::build):
   4461         * svg/SVGFESpecularLightingElement.h:
   4462         * svg/SVGFETileElement.cpp:
   4463         (WebCore::SVGFETileElement::SVGFETileElement):
   4464         (WebCore::SVGFETileElement::build):
   4465         * svg/SVGFETileElement.h:
   4466         * svg/SVGFETurbulenceElement.cpp:
   4467         (WebCore::SVGFETurbulenceElement::SVGFETurbulenceElement):
   4468         (WebCore::SVGFETurbulenceElement::build):
   4469         * svg/SVGFETurbulenceElement.h:
   4470         * svg/SVGFilterElement.cpp:
   4471         (WebCore::SVGFilterElement::canvasResource):
   4472         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
   4473         (WebCore::SVGFilterPrimitiveStandardAttributes::setStandardAttributes):
   4474         * svg/SVGFilterPrimitiveStandardAttributes.h:
   4475         (WebCore::SVGFilterPrimitiveStandardAttributes::contextElement):
   4476         * svg/graphics/SVGResourceFilter.cpp:
   4477         (WebCore::SVGResourceFilter::SVGResourceFilter):
   4478         (WebCore::SVGResourceFilter::addFilterEffect):
   4479         (WebCore::SVGResourceFilter::filterBBoxForItemBBox):
   4480         (WebCore::SVGResourceFilter::prepareFilter):
   4481         (WebCore::SVGResourceFilter::applyFilter):
   4482         (WebCore::SVGResourceFilter::externalRepresentation):
   4483         * svg/graphics/SVGResourceFilter.h:
   4484         (WebCore::SVGResourceFilter::filterBoundingBox):
   4485         (WebCore::SVGResourceFilter::setFilterBoundingBox):
   4486         (WebCore::SVGResourceFilter::itemBoundingBox):
   4487         (WebCore::SVGResourceFilter::setItemBoundingBox):
   4488         (WebCore::SVGResourceFilter::builder):
   4489 
   4490 2009-05-31  Dirk Schulze  <krit (a] webkit.org>
   4491 
   4492         Reviewed by Nikolas Zimmermann.
   4493 
   4494         WebKit needs cross-platform filter system
   4495         [https://bugs.webkit.org/show_bug.cgi?id=19991]
   4496 
   4497         Adding 'in1' attribute support for <feFlood>, as specified in SVG 1.1.
   4498         This change helps creating test cases, once filters are activated.
   4499 
   4500         * svg/SVGFEFloodElement.cpp:
   4501         (WebCore::SVGFEFloodElement::SVGFEFloodElement):
   4502         (WebCore::SVGFEFloodElement::parseMappedAttribute):
   4503         (WebCore::SVGFEFloodElement::build):
   4504         * svg/SVGFEFloodElement.h:
   4505         * svg/SVGFEFloodElement.idl:
   4506         * svg/graphics/filters/SVGFEFlood.cpp:
   4507         (WebCore::FEFlood::FEFlood):
   4508         (WebCore::FEFlood::create):
   4509         * svg/graphics/filters/SVGFEFlood.h:
   4510 
   4511 2009-05-31  Dirk Schulze  <krit (a] webkit.org>
   4512 
   4513         Reviewed by Nikolas Zimmermann.
   4514 
   4515         WebKit needs cross-platform filter system
   4516         [https://bugs.webkit.org/show_bug.cgi?id=19991]
   4517 
   4518         Replace all occurrences of SVGResourceFilter by Filter. This is the last 
   4519         step for a SVG independent filter system. Every other part of WebCore can
   4520         use the filter system by creating a new Filter object.
   4521 
   4522         * GNUmakefile.am:
   4523         * WebCore.pro:
   4524         * WebCore.xcodeproj/project.pbxproj:
   4525         * platform/graphics/filters/FEBlend.cpp:
   4526         (WebCore::FEBlend::apply):
   4527         * platform/graphics/filters/FEBlend.h:
   4528         * platform/graphics/filters/FEColorMatrix.cpp:
   4529         (WebCore::FEColorMatrix::apply):
   4530         * platform/graphics/filters/FEColorMatrix.h:
   4531         * platform/graphics/filters/FEComponentTransfer.cpp:
   4532         (WebCore::FEComponentTransfer::apply):
   4533         * platform/graphics/filters/FEComponentTransfer.h:
   4534         * platform/graphics/filters/FEComposite.cpp:
   4535         (WebCore::FEComposite::apply):
   4536         * platform/graphics/filters/FEComposite.h:
   4537         * platform/graphics/filters/Filter.h: Added.
   4538         (WebCore::Filter::setSourceImage):
   4539         (WebCore::Filter::sourceImage):
   4540         * platform/graphics/filters/FilterEffect.h:
   4541         * platform/graphics/filters/SourceAlpha.cpp:
   4542         (WebCore::SourceAlpha::apply):
   4543         * platform/graphics/filters/SourceAlpha.h:
   4544         * platform/graphics/filters/SourceGraphic.cpp:
   4545         (WebCore::SourceGraphic::apply):
   4546         * platform/graphics/filters/SourceGraphic.h:
   4547         * svg/Filter.cpp: Removed.
   4548         * svg/Filter.h: Removed.
   4549         * svg/graphics/filters/SVGFEConvolveMatrix.cpp:
   4550         (WebCore::FEConvolveMatrix::apply):
   4551         * svg/graphics/filters/SVGFEConvolveMatrix.h:
   4552         * svg/graphics/filters/SVGFEDiffuseLighting.cpp:
   4553         (WebCore::FEDiffuseLighting::apply):
   4554         * svg/graphics/filters/SVGFEDiffuseLighting.h:
   4555         * svg/graphics/filters/SVGFEDisplacementMap.cpp:
   4556         (WebCore::FEDisplacementMap::apply):
   4557         * svg/graphics/filters/SVGFEDisplacementMap.h:
   4558         * svg/graphics/filters/SVGFEFlood.cpp:
   4559         (WebCore::FEFlood::apply):
   4560         * svg/graphics/filters/SVGFEFlood.h:
   4561         * svg/graphics/filters/SVGFEGaussianBlur.cpp:
   4562         (WebCore::FEGaussianBlur::apply):
   4563         * svg/graphics/filters/SVGFEGaussianBlur.h:
   4564         * svg/graphics/filters/SVGFEImage.cpp:
   4565         (WebCore::FEImage::apply):
   4566         * svg/graphics/filters/SVGFEImage.h:
   4567         * svg/graphics/filters/SVGFEMerge.cpp:
   4568         (WebCore::FEMerge::apply):
   4569         * svg/graphics/filters/SVGFEMerge.h:
   4570         * svg/graphics/filters/SVGFEMorphology.cpp:
   4571         (WebCore::FEMorphology::apply):
   4572         * svg/graphics/filters/SVGFEMorphology.h:
   4573         * svg/graphics/filters/SVGFEOffset.cpp:
   4574         (WebCore::FEOffset::apply):
   4575         * svg/graphics/filters/SVGFEOffset.h:
   4576         * svg/graphics/filters/SVGFESpecularLighting.cpp:
   4577         (WebCore::FESpecularLighting::apply):
   4578         * svg/graphics/filters/SVGFESpecularLighting.h:
   4579         * svg/graphics/filters/SVGFETile.cpp:
   4580         (WebCore::FETile::apply):
   4581         * svg/graphics/filters/SVGFETile.h:
   4582         * svg/graphics/filters/SVGFETurbulence.cpp:
   4583         (WebCore::FETurbulence::apply):
   4584         * svg/graphics/filters/SVGFETurbulence.h:
   4585         * svg/graphics/filters/SVGFilter.cpp: Added.
   4586         (WebCore::SVGFilter::SVGFilter):
   4587         (WebCore::SVGFilter::calculateEffectSubRegion):
   4588         (WebCore::SVGFilter::create):
   4589         * svg/graphics/filters/SVGFilter.h: Added.
   4590 
   4591 2009-05-30  Kevin Ollivier  <kevino (a] theolliviers.com>
   4592 
   4593         Build fix for platforms without plugins support.
   4594 
   4595         * plugins/PluginViewNone.cpp:
   4596         (WebCore::PluginView::userAgentStatic):
   4597         (WebCore::PluginView::getValueStatic):
   4598 
   4599 2009-05-30  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   4600 
   4601         Reviewed by Darin Adler.
   4602 
   4603         Fixes: https://bugs.webkit.org/show_bug.cgi?id=25979
   4604 
   4605         Fix regression, local WML files won't load anymore, as the mimetype isn't correctly detected.    
   4606         Bug filed at <rdar://problem/6917571> to cover this CFNetwork limitation.
   4607 
   4608         * platform/network/mac/ResourceHandleMac.mm:
   4609         (-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]):
   4610 
   4611 2009-05-29  Sam Weinig  <sam (a] webkit.org>
   4612 
   4613         Reviewed by Anders Carlsson.
   4614 
   4615         Fix for https://bugs.webkit.org/show_bug.cgi?id=26091
   4616         Make storage events match the current spec.
   4617         - Storage event listeners are added to the window.
   4618         - Storage events are dispatched to the window.
   4619 
   4620         Updated existing tests.
   4621 
   4622         * dom/Document.cpp:
   4623         (WebCore::Document::dispatchWindowEvent):
   4624         * dom/Document.h:
   4625         * dom/Node.cpp:
   4626         * dom/Node.h:
   4627         * html/HTMLBodyElement.cpp:
   4628         (WebCore::HTMLBodyElement::parseMappedAttribute):
   4629         * storage/LocalStorageArea.cpp:
   4630         (WebCore::LocalStorageArea::dispatchStorageEvent):
   4631         * storage/SessionStorageArea.cpp:
   4632         (WebCore::SessionStorageArea::dispatchStorageEvent):
   4633 
   4634 2009-05-30  Darin Adler  <darin (a] apple.com>
   4635 
   4636         Reviewed by Adele Peterson.
   4637 
   4638         Bug 26097: REGRESSION (r44283): Tab key doesn't work when focus is on a <select> element
   4639 
   4640         Test: fast/forms/focus-control-to-page.html
   4641 
   4642         * dom/SelectElement.h: Made destructor protected. Tweaked a bit.
   4643 
   4644         * html/HTMLSelectElement.cpp: Removed unneeded includes.
   4645         (WebCore::HTMLSelectElement::remove): Removed unneeded range check of the
   4646         result of optionToListIndex.
   4647         (WebCore::HTMLSelectElement::parseMappedAttribute): Removed code to set the
   4648         unused attribute, m_minwidth.
   4649         (WebCore::HTMLSelectElement::defaultEventHandler): The actual bug fix.
   4650         Call through to the base class defaultEventHandler if the event hasn't
   4651         been handled yet.
   4652 
   4653         * html/HTMLSelectElement.h: Removed unneeded includes. Made a lot more functions
   4654         private. Removed unused minWidth function and m_minwidth data member.
   4655 
   4656 2009-05-30  Fridrich Strba  <fridrich.strba (a] bluewin.ch>
   4657 
   4658         Reviewed by Holger Freyther.
   4659 
   4660         The two KeyboardCodes.h files are basically identical and the
   4661         qt one is properly #ifdef-ed for different win32 systems. Share
   4662         them between Qt and Gtk implementations.
   4663 
   4664         * GNUmakefile.am:
   4665         * platform/KeyboardCodes.h: Copied from WebCore/platform/qt/KeyboardCodes.h.
   4666         * platform/gtk/KeyboardCodes.h: Removed.
   4667         * platform/qt/KeyboardCodes.h: Removed.
   4668 
   4669 2009-05-30  Jeremy Orlow  <jorlow (a] chromium.org>
   4670 
   4671         Reviewed by Sam Weinig.
   4672 
   4673         LocalStorage and SessionStorage's implicit setters do not correctly 
   4674         handle null.  The custom JS bindings should convert to strings
   4675         unconditionally and not try to handle null specially.
   4676         https://bugs.webkit.org/show_bug.cgi?id=25970
   4677 
   4678         Tests: storage/domstorage/localstorage/string-conversion.html
   4679                storage/domstorage/sessionstorage/string-conversion.html
   4680 
   4681         * bindings/js/JSStorageCustom.cpp:
   4682         (WebCore::JSStorage::customPut):
   4683 
   4684 2009-05-30  Dan Bernstein  <mitz (a] apple.com>
   4685 
   4686         Reviewed by Darin Adler.
   4687 
   4688         - fix <rdar://problem/6935192> REGRESSION (Safari 3-TOT): Scroll
   4689           bars in key window draw as inactive if the WebView is not active
   4690 
   4691         Test: platform/mac/scrollbars/key-window-not-first-responder.html
   4692 
   4693         * platform/mac/ScrollbarThemeMac.mm:
   4694         (WebCore::ScrollbarThemeMac::paint): Use the window's key state instead
   4695         of the WebView's first responder state to switch between active and
   4696         inactive state.
   4697 
   4698 2009-05-30  Dan Bernstein  <mitz (a] apple.com>
   4699 
   4700         Reviewed by Simon Fraser.
   4701 
   4702         - fix https://bugs.webkit.org/show_bug.cgi?id=18445
   4703           <rdar://problem/5931174> Assertion failure in CSSGradientValue::image
   4704           with -webkit-gradient as body's background
   4705 
   4706         Test: fast/backgrounds/body-generated-image-propagated-to-root.html
   4707 
   4708         * rendering/RenderBoxModelObject.cpp:
   4709         (WebCore::RenderBoxModelObject::paintFillLayerExtended): Check if this
   4710         is the root element painting a background layer propagated from the
   4711         body, and if it is, use the body's renderer as the client to
   4712         StyleImage::image().
   4713 
   4714 2009-05-30  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   4715 
   4716         Unreviewed build fix for AXObjectCache.
   4717 
   4718         For !HAVE(ACCESSIBILITY) postNotification was defined twice. Move
   4719         that into the #ifdef.
   4720 
   4721         * accessibility/AXObjectCache.cpp:
   4722 
   4723 2009-05-29  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   4724 
   4725         Reviewed by George Staikos.
   4726 
   4727         Fixes: https://bugs.webkit.org/show_bug.cgi?id=26072
   4728 
   4729         Add support for the last missing WML element: <select>. This patch adds WMLSelectElement, providing
   4730         the same functionality HTMLSelectElement has. The WML specific features will follow soon.
   4731     
   4732         Add simple testcase covering <select> element rendering: fast/wml/select.wml
   4733 
   4734         * GNUmakefile.am:
   4735         * WebCore.pro:
   4736         * WebCore.vcproj/WebCore.vcproj:
   4737         * WebCore.xcodeproj/project.pbxproj:
   4738         * dom/OptionElement.cpp:
   4739         (WebCore::OptionElement::optionIndex):
   4740         (WebCore::isOptionElement):
   4741         * dom/OptionElement.h:
   4742         * dom/OptionGroupElement.cpp:
   4743         (WebCore::isOptionGroupElement):
   4744         * dom/OptionGroupElement.h:
   4745         * dom/SelectElement.cpp:
   4746         (WebCore::SelectElement::accessKeySetSelectedIndex):
   4747         (WebCore::toSelectElement):
   4748         * dom/SelectElement.h:
   4749         * html/HTMLOptionElement.cpp:
   4750         (WebCore::HTMLOptionElement::index):
   4751         * html/HTMLSelectElement.cpp:
   4752         (WebCore::HTMLSelectElement::accessKeySetSelectedIndex):
   4753         * rendering/RenderListBox.cpp:
   4754         (WebCore::RenderListBox::paintItemForeground):
   4755         * rendering/RenderMenuList.cpp:
   4756         (WebCore::RenderMenuList::itemIsEnabled):
   4757         (WebCore::RenderMenuList::itemIsLabel):
   4758         * wml/WMLFormControlElement.cpp:
   4759         (WebCore::WMLFormControlElement::attach):
   4760         (WebCore::WMLFormControlElement::recalcStyle):
   4761         * wml/WMLFormControlElement.h:
   4762         * wml/WMLInputElement.cpp:
   4763         (WebCore::WMLInputElement::attach):
   4764         * wml/WMLOptGroupElement.cpp:
   4765         (WebCore::WMLOptGroupElement::insertBefore):
   4766         (WebCore::WMLOptGroupElement::replaceChild):
   4767         (WebCore::WMLOptGroupElement::removeChild):
   4768         (WebCore::WMLOptGroupElement::appendChild):
   4769         (WebCore::WMLOptGroupElement::removeChildren):
   4770         (WebCore::ownerSelectElement):
   4771         (WebCore::WMLOptGroupElement::accessKeyAction):
   4772         (WebCore::WMLOptGroupElement::childrenChanged):
   4773         (WebCore::WMLOptGroupElement::parseMappedAttribute):
   4774         (WebCore::WMLOptGroupElement::attach):
   4775         (WebCore::WMLOptGroupElement::detach):
   4776         (WebCore::WMLOptGroupElement::recalcSelectOptions):
   4777         * wml/WMLOptionElement.cpp:
   4778         (WebCore::ownerSelectElement):
   4779         (WebCore::WMLOptionElement::accessKeyAction):
   4780         (WebCore::WMLOptionElement::childrenChanged):
   4781         (WebCore::WMLOptionElement::parseMappedAttribute):
   4782         (WebCore::WMLOptionElement::attach):
   4783         (WebCore::WMLOptionElement::detach):
   4784         (WebCore::WMLOptionElement::insertedIntoDocument):
   4785         * wml/WMLSelectElement.cpp: Added.
   4786         (WebCore::WMLSelectElement::WMLSelectElement):
   4787         (WebCore::WMLSelectElement::~WMLSelectElement):
   4788         (WebCore::WMLSelectElement::formControlType):
   4789         (WebCore::WMLSelectElement::isKeyboardFocusable):
   4790         (WebCore::WMLSelectElement::isMouseFocusable):
   4791         (WebCore::WMLSelectElement::selectAll):
   4792         (WebCore::WMLSelectElement::recalcStyle):
   4793         (WebCore::WMLSelectElement::dispatchFocusEvent):
   4794         (WebCore::WMLSelectElement::dispatchBlurEvent):
   4795         (WebCore::WMLSelectElement::selectedIndex):
   4796         (WebCore::WMLSelectElement::setSelectedIndex):
   4797         (WebCore::WMLSelectElement::saveFormControlState):
   4798         (WebCore::WMLSelectElement::restoreFormControlState):
   4799         (WebCore::WMLSelectElement::childrenChanged):
   4800         (WebCore::WMLSelectElement::parseMappedAttribute):
   4801         (WebCore::WMLSelectElement::createRenderer):
   4802         (WebCore::WMLSelectElement::appendFormData):
   4803         (WebCore::WMLSelectElement::optionToListIndex):
   4804         (WebCore::WMLSelectElement::listToOptionIndex):
   4805         (WebCore::WMLSelectElement::reset):
   4806         (WebCore::WMLSelectElement::defaultEventHandler):
   4807         (WebCore::WMLSelectElement::accessKeyAction):
   4808         (WebCore::WMLSelectElement::setActiveSelectionAnchorIndex):
   4809         (WebCore::WMLSelectElement::setActiveSelectionEndIndex):
   4810         (WebCore::WMLSelectElement::updateListBoxSelection):
   4811         (WebCore::WMLSelectElement::listBoxOnChange):
   4812         (WebCore::WMLSelectElement::menuListOnChange):
   4813         (WebCore::WMLSelectElement::activeSelectionStartListIndex):
   4814         (WebCore::WMLSelectElement::activeSelectionEndListIndex):
   4815         (WebCore::WMLSelectElement::accessKeySetSelectedIndex):
   4816         (WebCore::WMLSelectElement::setRecalcListItems):
   4817         (WebCore::WMLSelectElement::scrollToSelection):
   4818         (WebCore::WMLSelectElement::insertedIntoTree):
   4819         * wml/WMLSelectElement.h: Added.
   4820         (WebCore::WMLSelectElement::canSelectAll):
   4821         (WebCore::WMLSelectElement::canStartSelection):
   4822         (WebCore::WMLSelectElement::size):
   4823         (WebCore::WMLSelectElement::multiple):
   4824         (WebCore::WMLSelectElement::listItems):
   4825         * wml/WMLTagNames.in:
   4826 
   4827 2009-05-29  David Levin  <levin (a] chromium.org>
   4828 
   4829         Reviewed by NOBODY (build fix for windows).
   4830 
   4831         http://trac.webkit.org/changeset/44279 left in a "Vector<WCHAR> localeNameBuf"
   4832         that it was trying to replace.  Resulting in this variable being defined twice (and
   4833         the second time incorrectly).
   4834 
   4835         * platform/win/Language.cpp:
   4836         (WebCore::localeInfo):
   4837 
   4838 2009-05-29  Takeshi Yoshino  <tyoshino (a] google.com>
   4839 
   4840         Reviewed by Darin Alder.
   4841 
   4842         https://bugs.webkit.org/show_bug.cgi?id=26018
   4843 
   4844         Fix behavior of the Element View of the Web Inspector for double
   4845         clicking the element outline tree.
   4846 
   4847         Double clicking the element outline tree should
   4848         1) on attribute: enter attribute editing mode
   4849         2) on text: enter text editing mode
   4850         3) otherwise: change root node to the parent element of double clicked
   4851            element.
   4852 
   4853         Now, 3) is broken. For example, clicking <html> clears the element
   4854         outline view.
   4855 
   4856         rootDOMNode should be updated to this.representedObject.parentNode, not
   4857         this.parent.representedObject which is parent inside the element
   4858         outline tree itself.
   4859 
   4860         * inspector/front-end/ElementsTreeOutline.js:
   4861         (WebInspector.ElementsTreeElement.prototype.ondblclick):
   4862 
   4863 2009-05-29  David Moore  <davemoore (a] google.com>
   4864 
   4865         Reviewed by Darin Alder.
   4866 
   4867         https://bugs.webkit.org/show_bug.cgi?id=26001
   4868         Change many of the uses of String::adopt() to String::createUninitialized().
   4869         This allows those strings to use an inlined buffer for their characters.
   4870 
   4871         * dom/StyleElement.cpp:
   4872         Loop over nodes to precompute length of string and then
   4873         write the characters into the allocated inline buffer
   4874         (WebCore::StyleElement::process):
   4875         * dom/Text.cpp:
   4876         Loop over nodes to precompute length of string and then
   4877         write the characters into the allocated inline buffer
   4878         (WebCore::Text::wholeText):
   4879         (WebCore::Text::rendererIsNeeded):
   4880         (WebCore::Text::createRenderer):
   4881         (WebCore::Text::createWithLengthLimit):
   4882         (WebCore::Text::formatForDebugger):
   4883         * platform/text/String.cpp:
   4884         (WebCore::String::append):
   4885         (WebCore::String::insert):
   4886         (WebCore::String::truncate):
   4887         (WebCore::String::remove):
   4888         * platform/text/StringBuilder.cpp:
   4889         (WebCore::StringBuilder::toString):
   4890         * platform/text/StringImpl.cpp:
   4891         (WebCore::StringImpl::lower):
   4892         (WebCore::StringImpl::upper):
   4893         (WebCore::StringImpl::secure):
   4894         (WebCore::StringImpl::foldCase):
   4895         (WebCore::StringImpl::replace):
   4896         * platform/text/TextCodecLatin1.cpp:
   4897         (WebCore::TextCodecLatin1::decode):
   4898         * platform/text/TextCodecUserDefined.cpp:
   4899         (WebCore::TextCodecUserDefined::decode):
   4900         * platform/win/Language.cpp:
   4901         (WebCore::localeInfo):
   4902 
   4903 2009-05-29  Takeshi Yoshino  <tyoshino (a] google.com>
   4904 
   4905         Reviewed by Darin Alder.
   4906 
   4907         Bug 25911: Apply href in base elements to anchors shown on the source viewer
   4908         https://bugs.webkit.org/show_bug.cgi?id=25911
   4909 
   4910         In rendering HTML sources, parse base elements to apply the base URI to
   4911         anchors shown on the source viewer.
   4912 
   4913         This issue was originally reported to the Chromium issue tracker.
   4914         http://code.google.com/p/chromium/issues/detail?id=2418
   4915 
   4916         Test: fast/frames/viewsource-link-on-href-value.html
   4917 
   4918         * html/HTMLViewSourceDocument.cpp:
   4919         (WebCore::HTMLViewSourceDocument::addViewSourceToken):
   4920 
   4921 2009-05-29  Rob Buis  <rwlbuis (a] gmail.com>
   4922 
   4923         Reviewed by David Hyatt.
   4924 
   4925         https://bugs.webkit.org/show_bug.cgi?id=22429
   4926         document.styleSheets collection ignores media=presentation
   4927 
   4928         Ensure that stylesheets though <link> show up in document.styleSheets regardless of media attribute.
   4929 
   4930         Test: fast/css/sheet-collection-link.html
   4931 
   4932         * html/HTMLLinkElement.cpp:
   4933         (WebCore::HTMLLinkElement::process):
   4934 
   4935 2009-05-29  Jian Li  <jianli (a] chromium.org>
   4936 
   4937         Reviewed by Dimitri Glazkov.
   4938 
   4939         https://bugs.webkit.org/show_bug.cgi?id=26069
   4940         Fix a crash in custom V8 bindings code for XMLHttpRequest.
   4941 
   4942         Test: fast/xmlhttprequest/xmlhttprequest-open-after-iframe-onload-remove-self.html
   4943 
   4944         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
   4945         (WebCore::CALLBACK_FUNC_DECL):
   4946 
   4947 2009-05-29  David Levin  <levin (a] chromium.org>
   4948 
   4949         Reviewed by Darin Adler.
   4950 
   4951         Bug 26074: SQLTransaction::executeSQL does an unnecessary call to String::copy.
   4952         https://bugs.webkit.org/show_bug.cgi?id=26074
   4953 
   4954         The constructor for SQLStatement already does a copy for this string.
   4955 
   4956         * storage/SQLTransaction.cpp:
   4957         (WebCore::SQLTransaction::executeSQL):
   4958 
   4959 2009-05-29  Darin Adler  <darin (a] apple.com>
   4960 
   4961         Fix build; the new Cairo code compiled on Windows only.
   4962 
   4963         * platform/graphics/gtk/FontPlatformData.h: Added syntheticBold
   4964         and syntheticOblique functions as in the Windows version to make it
   4965         easier to use this cross-platform. Later we can make data members
   4966         private as in the Windows version.
   4967         * platform/graphics/mac/FontPlatformData.h: Ditto.
   4968 
   4969 2009-05-29  Alexander Macdonald  <alexmac (a] adobe.com>
   4970 
   4971         Reviewed by Darin Adler.
   4972 
   4973         Added support for synthetic bold/oblique font rendering
   4974         on platforms that use cairo.
   4975 
   4976         * platform/graphics/SimpleFontData.h:
   4977         * platform/graphics/cairo/FontCairo.cpp:
   4978         (WebCore::Font::drawGlyphs):
   4979         * platform/graphics/gtk/SimpleFontDataGtk.cpp:
   4980         (WebCore::SimpleFontData::platformInit):
   4981         * platform/graphics/gtk/SimpleFontDataPango.cpp:
   4982         (WebCore::SimpleFontData::platformInit):
   4983         * platform/graphics/win/SimpleFontDataCairoWin.cpp:
   4984         (WebCore::SimpleFontData::platformInit):
   4985 
   4986 2009-05-29  Chris Fleizach  <cfleizach (a] apple.com>
   4987 
   4988         Reviewed by Beth Dakin.
   4989 
   4990         Bug 26024: AX: possible to fail assertion because AXPostNotification calls accessibilityIsIgnored
   4991         https://bugs.webkit.org/show_bug.cgi?id=26024
   4992 
   4993         AX notifications are posted after a one shot timer so that notifications are not performed mid-layout.
   4994         Consolidated postNotification and postNotificationToElement into one method.
   4995 
   4996         * accessibility/AXObjectCache.cpp:
   4997         (WebCore::AXObjectCache::AXObjectCache):
   4998         (WebCore::AXObjectCache::notificationPostTimerFired):
   4999         (WebCore::AXObjectCache::postNotification):
   5000         (WebCore::AXObjectCache::selectedChildrenChanged):
   5001         * accessibility/AXObjectCache.h:
   5002         (WebCore::AXObjectCache::postNotification):
   5003         (WebCore::AXObjectCache::postPlatformNotification):
   5004         * accessibility/AccessibilityRenderObject.cpp:
   5005         (WebCore::AccessibilityRenderObject::handleActiveDescendantChanged):
   5006         * accessibility/chromium/AXObjectCacheChromium.cpp:
   5007         (WebCore::AXObjectCache::postPlatformNotification):
   5008         * accessibility/gtk/AXObjectCacheAtk.cpp:
   5009         (WebCore::AXObjectCache::postPlatformNotification):
   5010         * accessibility/mac/AXObjectCacheMac.mm:
   5011         (WebCore::AXObjectCache::postPlatformNotification):
   5012         * accessibility/win/AXObjectCacheWin.cpp:
   5013         (WebCore::AXObjectCache::postPlatformNotification):
   5014         * dom/Document.cpp:
   5015         (WebCore::Document::implicitClose):
   5016         * editing/Editor.cpp:
   5017         (WebCore::Editor::respondToChangedContents):
   5018         * editing/mac/SelectionControllerMac.mm:
   5019         (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
   5020         * page/FrameView.cpp:
   5021         (WebCore::FrameView::layout):
   5022         * rendering/RenderTextControl.cpp:
   5023         (WebCore::RenderTextControl::setInnerTextValue):
   5024 
   5025 2009-05-29  Brent Fulgham  <bfulgham (a] webkit.org>
   5026 
   5027         Reviewed by Adam Roben.
   5028 
   5029         Build fix for Windows Cairo target.
   5030         https://bugs.webkit.org/show_bug.cgi?id=25972
   5031 
   5032         Compiler mistakenly selects SMILTime min/max instead of STL version,
   5033         resulting in a build error.  This change makes the meaning of the
   5034         min/max explicit and avoids the problem.
   5035 
   5036         * html/TimeRanges.h:
   5037         (WebCore::TimeRanges::Range::unionWithOverlappingOrContiguousRange):
   5038 
   5039 2009-05-29  Gustavo Noronha Silva  <gns (a] gnome.org>
   5040 
   5041         Reviewed by Jan Alonzo.
   5042 
   5043         Make SoupMessage a member of ResourceRequest, instead of creating
   5044         it in startHttp. Implement updating of ResourceRequest from
   5045         SoupMessage, and vice versa.
   5046 
   5047         * GNUmakefile.am:
   5048         * platform/network/soup/ResourceHandleSoup.cpp:
   5049         (WebCore::ResourceHandle::~ResourceHandle):
   5050         (WebCore::gotHeadersCallback):
   5051         (WebCore::ResourceHandle::startHttp):
   5052         * platform/network/soup/ResourceRequest.h:
   5053         (WebCore::ResourceRequest::ResourceRequest):
   5054         (WebCore::ResourceRequest::~ResourceRequest):
   5055         * platform/network/soup/ResourceRequestSoup.cpp: Added.
   5056         (WTF::SoupURI):
   5057         (WebCore::ResourceRequest::soupMessage):
   5058         (WebCore::ResourceRequest::ResourceRequest):
   5059         (WebCore::ResourceRequest::doUpdateResourceRequest):
   5060         (WebCore::ResourceRequest::doUpdatePlatformRequest):
   5061 
   5062 2009-05-28  Dmitry Titov  <dimich (a] chromium.org>
   5063 
   5064         Reviewed by Dimitri Glazkov.
   5065 
   5066         https://bugs.webkit.org/show_bug.cgi?id=26068
   5067         V8: Remove the remaining b8::Locker usage in worker code.
   5068         This completes the fix for https://bugs.webkit.org/show_bug.cgi?id=25944,
   5069         since the patches for enabling timers and that bug have "crossed in the queue".
   5070         Existing LayoutTests/fast/workers/worker-timeout.html covers this fix (will start work in Chromium).
   5071 
   5072         * bindings/v8/ScheduledAction.cpp:
   5073         (WebCore::ScheduledAction::execute):
   5074 
   5075 2009-05-28  Gustavo Noronha Silva  <gustavo.noronha (a] collabora.co.uk>
   5076 
   5077         Reviewed by Xan Lopez.
   5078 
   5079         Simplify the Accept-Encoding header we are sending out, for it
   5080         seems some servers do not enjoy parsing the full, explicit
   5081         version.
   5082 
   5083         * platform/network/soup/ResourceHandleSoup.cpp:
   5084         (WebCore::ResourceHandle::startHttp):
   5085 
   5086 2009-05-28  Dirk Schulze  <krit (a] webkit.org>
   5087 
   5088         Reviewed by Nikolas Zimmermann.
   5089 
   5090         Added a new build flag --filters. This replaces the old --svg-filters and enables
   5091         other parts of WebKit to use some basic filters of platform/graphics/filters if needed.
   5092         This patch also fixes a bug in dom/DOMImplementation.cpp where we used SVG_FILTER. This flag
   5093         doesn't exist and was replaced by FILTERS as well as all SVG_FILTERS occurrences.
   5094         Filters are not working yet. This patch is just a preperation. Filters are deactivated by
   5095         default. 
   5096 
   5097         * Configurations/FeatureDefines.xcconfig:
   5098         * DerivedSources.make:
   5099         * GNUmakefile.am:
   5100         * WebCore.pro:
   5101         * bindings/objc/DOM.mm:
   5102         (WebCore::createElementClassMap):
   5103         * dom/DOMImplementation.cpp:
   5104         (WebCore::isSVG10Feature):
   5105         (WebCore::isSVG11Feature):
   5106         * page/DOMWindow.idl:
   5107         * platform/graphics/filters/FEBlend.cpp:
   5108         * platform/graphics/filters/FEBlend.h:
   5109         * platform/graphics/filters/FEColorMatrix.cpp:
   5110         * platform/graphics/filters/FEColorMatrix.h:
   5111         * platform/graphics/filters/FEComponentTransfer.cpp:
   5112         * platform/graphics/filters/FEComponentTransfer.h:
   5113         * platform/graphics/filters/FEComposite.cpp:
   5114         * platform/graphics/filters/FEComposite.h:
   5115         * platform/graphics/filters/FilterEffect.cpp:
   5116         * platform/graphics/filters/FilterEffect.h:
   5117         * platform/graphics/filters/SourceAlpha.cpp:
   5118         * platform/graphics/filters/SourceAlpha.h:
   5119         * platform/graphics/filters/SourceGraphic.cpp:
   5120         * platform/graphics/filters/SourceGraphic.h:
   5121         * rendering/RenderSVGContainer.cpp:
   5122         (WebCore::RenderSVGContainer::selfWillPaint):
   5123         * rendering/RenderSVGModelObject.cpp:
   5124         * rendering/RenderSVGRoot.cpp:
   5125         (WebCore::RenderSVGRoot::selfWillPaint):
   5126         * rendering/SVGRenderSupport.cpp:
   5127         (WebCore::SVGRenderBase::prepareToRenderSVGContent):
   5128         (WebCore::SVGRenderBase::finishRenderSVGContent):
   5129         (WebCore::SVGRenderBase::filterBoundingBoxForRenderer):
   5130         * svg/Filter.cpp:
   5131         * svg/Filter.h:
   5132         * svg/FilterBuilder.cpp:
   5133         * svg/FilterBuilder.h:
   5134         * svg/SVGComponentTransferFunctionElement.cpp:
   5135         * svg/SVGComponentTransferFunctionElement.h:
   5136         * svg/SVGComponentTransferFunctionElement.idl:
   5137         * svg/SVGFEBlendElement.cpp:
   5138         * svg/SVGFEBlendElement.h:
   5139         * svg/SVGFEBlendElement.idl:
   5140         * svg/SVGFEColorMatrixElement.cpp:
   5141         * svg/SVGFEColorMatrixElement.h:
   5142         * svg/SVGFEColorMatrixElement.idl:
   5143         * svg/SVGFEComponentTransferElement.cpp:
   5144         * svg/SVGFEComponentTransferElement.h:
   5145         * svg/SVGFEComponentTransferElement.idl:
   5146         * svg/SVGFECompositeElement.cpp:
   5147         * svg/SVGFECompositeElement.h:
   5148         * svg/SVGFECompositeElement.idl:
   5149         * svg/SVGFEDiffuseLightingElement.cpp:
   5150         * svg/SVGFEDiffuseLightingElement.h:
   5151         * svg/SVGFEDiffuseLightingElement.idl:
   5152         * svg/SVGFEDisplacementMapElement.cpp:
   5153         * svg/SVGFEDisplacementMapElement.h:
   5154         * svg/SVGFEDisplacementMapElement.idl:
   5155         * svg/SVGFEDistantLightElement.cpp:
   5156         * svg/SVGFEDistantLightElement.h:
   5157         * svg/SVGFEDistantLightElement.idl:
   5158         * svg/SVGFEFloodElement.cpp:
   5159         * svg/SVGFEFloodElement.h:
   5160         * svg/SVGFEFloodElement.idl:
   5161         * svg/SVGFEFuncAElement.cpp:
   5162         * svg/SVGFEFuncAElement.h:
   5163         * svg/SVGFEFuncAElement.idl:
   5164         * svg/SVGFEFuncBElement.cpp:
   5165         * svg/SVGFEFuncBElement.h:
   5166         * svg/SVGFEFuncBElement.idl:
   5167         * svg/SVGFEFuncGElement.cpp:
   5168         * svg/SVGFEFuncGElement.h:
   5169         * svg/SVGFEFuncGElement.idl:
   5170         * svg/SVGFEFuncRElement.cpp:
   5171         * svg/SVGFEFuncRElement.h:
   5172         * svg/SVGFEFuncRElement.idl:
   5173         * svg/SVGFEGaussianBlurElement.cpp:
   5174         * svg/SVGFEGaussianBlurElement.h:
   5175         * svg/SVGFEGaussianBlurElement.idl:
   5176         * svg/SVGFEImageElement.cpp:
   5177         * svg/SVGFEImageElement.h:
   5178         * svg/SVGFEImageElement.idl:
   5179         * svg/SVGFELightElement.cpp:
   5180         * svg/SVGFELightElement.h:
   5181         * svg/SVGFEMergeElement.cpp:
   5182         * svg/SVGFEMergeElement.h:
   5183         * svg/SVGFEMergeElement.idl:
   5184         * svg/SVGFEMergeNodeElement.cpp:
   5185         * svg/SVGFEMergeNodeElement.h:
   5186         * svg/SVGFEMergeNodeElement.idl:
   5187         * svg/SVGFEOffsetElement.cpp:
   5188         * svg/SVGFEOffsetElement.h:
   5189         * svg/SVGFEOffsetElement.idl:
   5190         * svg/SVGFEPointLightElement.cpp:
   5191         * svg/SVGFEPointLightElement.h:
   5192         * svg/SVGFEPointLightElement.idl:
   5193         * svg/SVGFESpecularLightingElement.cpp:
   5194         * svg/SVGFESpecularLightingElement.h:
   5195         * svg/SVGFESpecularLightingElement.idl:
   5196         * svg/SVGFESpotLightElement.cpp:
   5197         * svg/SVGFESpotLightElement.h:
   5198         * svg/SVGFESpotLightElement.idl:
   5199         * svg/SVGFETileElement.cpp:
   5200         * svg/SVGFETileElement.h:
   5201         * svg/SVGFETileElement.idl:
   5202         * svg/SVGFETurbulenceElement.cpp:
   5203         * svg/SVGFETurbulenceElement.h:
   5204         * svg/SVGFETurbulenceElement.idl:
   5205         * svg/SVGFilterElement.cpp:
   5206         * svg/SVGFilterElement.h:
   5207         * svg/SVGFilterElement.idl:
   5208         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
   5209         * svg/SVGFilterPrimitiveStandardAttributes.h:
   5210         * svg/graphics/SVGResourceFilter.cpp:
   5211         * svg/graphics/SVGResourceFilter.h:
   5212         * svg/graphics/cairo/SVGResourceFilterCairo.cpp:
   5213         * svg/graphics/cg/SVGResourceFilterCg.cpp:
   5214         * svg/graphics/cg/SVGResourceFilterCg.mm:
   5215         * svg/graphics/filters/SVGDistantLightSource.h:
   5216         * svg/graphics/filters/SVGFEConvolveMatrix.cpp:
   5217         * svg/graphics/filters/SVGFEConvolveMatrix.h:
   5218         * svg/graphics/filters/SVGFEDiffuseLighting.cpp:
   5219         * svg/graphics/filters/SVGFEDiffuseLighting.h:
   5220         * svg/graphics/filters/SVGFEDisplacementMap.cpp:
   5221         * svg/graphics/filters/SVGFEDisplacementMap.h:
   5222         * svg/graphics/filters/SVGFEFlood.cpp:
   5223         * svg/graphics/filters/SVGFEFlood.h:
   5224         * svg/graphics/filters/SVGFEGaussianBlur.cpp:
   5225         * svg/graphics/filters/SVGFEGaussianBlur.h:
   5226         * svg/graphics/filters/SVGFEImage.cpp:
   5227         * svg/graphics/filters/SVGFEImage.h:
   5228         * svg/graphics/filters/SVGFEMerge.cpp:
   5229         * svg/graphics/filters/SVGFEMerge.h:
   5230         * svg/graphics/filters/SVGFEMorphology.cpp:
   5231         * svg/graphics/filters/SVGFEMorphology.h:
   5232         * svg/graphics/filters/SVGFEOffset.cpp:
   5233         * svg/graphics/filters/SVGFEOffset.h:
   5234         * svg/graphics/filters/SVGFESpecularLighting.cpp:
   5235         * svg/graphics/filters/SVGFESpecularLighting.h:
   5236         * svg/graphics/filters/SVGFETile.cpp:
   5237         * svg/graphics/filters/SVGFETile.h:
   5238         * svg/graphics/filters/SVGFETurbulence.cpp:
   5239         * svg/graphics/filters/SVGFETurbulence.h:
   5240         * svg/graphics/filters/SVGFilterEffect.cpp:
   5241         * svg/graphics/filters/SVGFilterEffect.h:
   5242         * svg/graphics/filters/SVGLightSource.cpp:
   5243         * svg/graphics/filters/SVGLightSource.h:
   5244         * svg/graphics/filters/SVGPointLightSource.h:
   5245         * svg/graphics/filters/SVGSpotLightSource.h:
   5246         * svg/graphics/filters/cg/SVGFEHelpersCg.h:
   5247         * svg/graphics/filters/cg/SVGFEHelpersCg.mm:
   5248         * svg/graphics/filters/cg/SVGFilterEffectCg.mm:
   5249         * svg/graphics/filters/cg/WKArithmeticFilter.h:
   5250         * svg/graphics/filters/cg/WKArithmeticFilter.m:
   5251         * svg/graphics/filters/cg/WKComponentMergeFilter.h:
   5252         * svg/graphics/filters/cg/WKComponentMergeFilter.m:
   5253         * svg/graphics/filters/cg/WKDiffuseLightingFilter.h:
   5254         * svg/graphics/filters/cg/WKDiffuseLightingFilter.m:
   5255         * svg/graphics/filters/cg/WKDiscreteTransferFilter.h:
   5256         * svg/graphics/filters/cg/WKDiscreteTransferFilter.m:
   5257         * svg/graphics/filters/cg/WKDisplacementMapFilter.h:
   5258         * svg/graphics/filters/cg/WKDisplacementMapFilter.m:
   5259         * svg/graphics/filters/cg/WKDistantLightFilter.h:
   5260         * svg/graphics/filters/cg/WKDistantLightFilter.m:
   5261         * svg/graphics/filters/cg/WKGammaTransferFilter.h:
   5262         * svg/graphics/filters/cg/WKGammaTransferFilter.m:
   5263         * svg/graphics/filters/cg/WKIdentityTransferFilter.h:
   5264         * svg/graphics/filters/cg/WKIdentityTransferFilter.m:
   5265         * svg/graphics/filters/cg/WKLinearTransferFilter.h:
   5266         * svg/graphics/filters/cg/WKLinearTransferFilter.m:
   5267         * svg/graphics/filters/cg/WKNormalMapFilter.h:
   5268         * svg/graphics/filters/cg/WKNormalMapFilter.m:
   5269         * svg/graphics/filters/cg/WKPointLightFilter.h:
   5270         * svg/graphics/filters/cg/WKPointLightFilter.m:
   5271         * svg/graphics/filters/cg/WKSpecularLightingFilter.h:
   5272         * svg/graphics/filters/cg/WKSpecularLightingFilter.m:
   5273         * svg/graphics/filters/cg/WKSpotLightFilter.h:
   5274         * svg/graphics/filters/cg/WKSpotLightFilter.m:
   5275         * svg/graphics/filters/cg/WKTableTransferFilter.h:
   5276         * svg/graphics/filters/cg/WKTableTransferFilter.m:
   5277         * svg/graphics/mac/SVGResourceFilterPlatformDataMac.h:
   5278         * svg/graphics/mac/SVGResourceFilterPlatformDataMac.mm:
   5279         * svg/graphics/qt/SVGResourceFilterQt.cpp:
   5280         * svg/graphics/skia/SVGResourceFilterSkia.cpp:
   5281         * svg/svgtags.in:
   5282 
   5283 2009-05-28  Brett Wilson  <brettw (a] chromium.org>
   5284 
   5285         Unreviewed, build fix.
   5286 
   5287         https://bugs.webkit.org/show_bug.cgi?id=26067
   5288 
   5289         Add casts for scale function to make more explicit what is happening
   5290         and fix a compiler warning.
   5291 
   5292         * platform/graphics/IntSize.h:
   5293         (WebCore::IntSize::scale):
   5294 
   5295 2009-05-28  Sam Weinig  <sam (a] webkit.org>
   5296 
   5297         Reviewed by Darin Adler.
   5298 
   5299         Remove the returnValueSlot concept from JSDOMWindowBase. Now that windows
   5300         are not cleared on navigation it is no longer necessary.
   5301 
   5302         * bindings/js/JSDOMWindowBase.cpp:
   5303         (WebCore::JSDOMWindowBase::JSDOMWindowBaseData::JSDOMWindowBaseData):
   5304         (WebCore::JSDOMWindowBase::willRemoveFromWindowShell):
   5305         * bindings/js/JSDOMWindowBase.h:
   5306         * bindings/js/JSDOMWindowCustom.cpp:
   5307         (WebCore::JSDOMWindow::showModalDialog):
   5308 
   5309 2009-05-19  Xan Lopez  <xlopez (a] igalia.com>
   5310 
   5311         Reviewed by Jan Alonzo and Gustavo Noronha.
   5312 
   5313         https://bugs.webkit.org/show_bug.cgi?id=25415
   5314         [GTK][ATK] Please implement support for get_text_at_offset
   5315 
   5316         Implement atk_text_get_text_{at,after,before}_offset.
   5317 
   5318         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
   5319 
   5320 2009-05-28  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   5321 
   5322         Rubber-stamped by Darin Adler.
   5323 
   5324         Remove unnecessary destructor from InputElementData/OptionElementData.
   5325 
   5326         * dom/InputElement.cpp:
   5327         * dom/InputElement.h:
   5328         * dom/OptionElement.cpp:
   5329         * dom/OptionElement.h:
   5330 
   5331 2009-05-28  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   5332 
   5333         Reviewed by Darin Adler.
   5334 
   5335         Fixes: https://bugs.webkit.org/show_bug.cgi?id=26062
   5336 
   5337         Refactor code from all virtual methods in HTMLSelectElement (that are also needed for WMLSelectElement)
   5338         in the recently introduced SelectElement abstract base class. Follow the same design sheme that InputElement uses.
   5339 
   5340         A follow-up patch can now easily add WMLSelectElement.
   5341 
   5342         * dom/OptionElement.h:
   5343         * dom/SelectElement.cpp:
   5344         (WebCore::SelectElement::selectAll):
   5345         (WebCore::SelectElement::saveLastSelection):
   5346         (WebCore::isOptionElement):
   5347         (WebCore::isOptionGroupElement):
   5348         (WebCore::SelectElement::nextSelectableListIndex):
   5349         (WebCore::SelectElement::previousSelectableListIndex):
   5350         (WebCore::SelectElement::setActiveSelectionAnchorIndex):
   5351         (WebCore::SelectElement::setActiveSelectionEndIndex):
   5352         (WebCore::SelectElement::updateListBoxSelection):
   5353         (WebCore::SelectElement::listBoxOnChange):
   5354         (WebCore::SelectElement::menuListOnChange):
   5355         (WebCore::SelectElement::scrollToSelection):
   5356         (WebCore::SelectElement::recalcStyle):
   5357         (WebCore::SelectElement::setRecalcListItems):
   5358         (WebCore::SelectElement::recalcListItems):
   5359         (WebCore::SelectElement::selectedIndex):
   5360         (WebCore::SelectElement::setSelectedIndex):
   5361         (WebCore::SelectElement::optionToListIndex):
   5362         (WebCore::SelectElement::listToOptionIndex):
   5363         (WebCore::SelectElement::dispatchFocusEvent):
   5364         (WebCore::SelectElement::dispatchBlurEvent):
   5365         (WebCore::SelectElement::deselectItems):
   5366         (WebCore::SelectElement::saveFormControlState):
   5367         (WebCore::SelectElement::restoreFormControlState):
   5368         (WebCore::SelectElement::parseMultipleAttribute):
   5369         (WebCore::SelectElement::appendFormData):
   5370         (WebCore::SelectElement::reset):
   5371         (WebCore::SelectElement::menuListDefaultEventHandler):
   5372         (WebCore::SelectElement::listBoxDefaultEventHandler):
   5373         (WebCore::SelectElement::defaultEventHandler):
   5374         (WebCore::SelectElement::lastSelectedListIndex):
   5375         (WebCore::stripLeadingWhiteSpace):
   5376         (WebCore::SelectElement::typeAheadFind):
   5377         (WebCore::SelectElement::insertedIntoTree):
   5378         (WebCore::SelectElementData::SelectElementData):
   5379         (WebCore::SelectElementData::checkListItems):
   5380         (WebCore::SelectElementData::listItems):
   5381         * dom/SelectElement.h:
   5382         (WebCore::SelectElementData::multiple):
   5383         (WebCore::SelectElementData::setMultiple):
   5384         (WebCore::SelectElementData::size):
   5385         (WebCore::SelectElementData::setSize):
   5386         (WebCore::SelectElementData::usesMenuList):
   5387         (WebCore::SelectElementData::lastOnChangeIndex):
   5388         (WebCore::SelectElementData::setLastOnChangeIndex):
   5389         (WebCore::SelectElementData::lastOnChangeSelection):
   5390         (WebCore::SelectElementData::activeSelectionState):
   5391         (WebCore::SelectElementData::setActiveSelectionState):
   5392         (WebCore::SelectElementData::activeSelectionAnchorIndex):
   5393         (WebCore::SelectElementData::setActiveSelectionAnchorIndex):
   5394         (WebCore::SelectElementData::activeSelectionEndIndex):
   5395         (WebCore::SelectElementData::setActiveSelectionEndIndex):
   5396         (WebCore::SelectElementData::cachedStateForActiveSelection):
   5397         (WebCore::SelectElementData::shouldRecalcListItems):
   5398         (WebCore::SelectElementData::setShouldRecalcListItems):
   5399         (WebCore::SelectElementData::rawListItems):
   5400         (WebCore::SelectElementData::repeatingChar):
   5401         (WebCore::SelectElementData::setRepeatingChar):
   5402         (WebCore::SelectElementData::lastCharTime):
   5403         (WebCore::SelectElementData::setLastCharTime):
   5404         (WebCore::SelectElementData::typedString):
   5405         (WebCore::SelectElementData::setTypedString):
   5406         * html/HTMLOptionElement.h:
   5407         * html/HTMLSelectElement.cpp:
   5408         (WebCore::HTMLSelectElement::HTMLSelectElement):
   5409         (WebCore::HTMLSelectElement::recalcStyle):
   5410         (WebCore::HTMLSelectElement::formControlType):
   5411         (WebCore::HTMLSelectElement::selectedIndex):
   5412         (WebCore::HTMLSelectElement::deselectItems):
   5413         (WebCore::HTMLSelectElement::setSelectedIndex):
   5414         (WebCore::HTMLSelectElement::activeSelectionStartListIndex):
   5415         (WebCore::HTMLSelectElement::activeSelectionEndListIndex):
   5416         (WebCore::HTMLSelectElement::saveFormControlState):
   5417         (WebCore::HTMLSelectElement::restoreFormControlState):
   5418         (WebCore::HTMLSelectElement::parseMappedAttribute):
   5419         (WebCore::HTMLSelectElement::canSelectAll):
   5420         (WebCore::HTMLSelectElement::selectAll):
   5421         (WebCore::HTMLSelectElement::createRenderer):
   5422         (WebCore::HTMLSelectElement::appendFormData):
   5423         (WebCore::HTMLSelectElement::optionToListIndex):
   5424         (WebCore::HTMLSelectElement::listToOptionIndex):
   5425         (WebCore::HTMLSelectElement::recalcListItems):
   5426         (WebCore::HTMLSelectElement::setRecalcListItems):
   5427         (WebCore::HTMLSelectElement::reset):
   5428         (WebCore::HTMLSelectElement::dispatchFocusEvent):
   5429         (WebCore::HTMLSelectElement::dispatchBlurEvent):
   5430         (WebCore::HTMLSelectElement::defaultEventHandler):
   5431         (WebCore::HTMLSelectElement::setActiveSelectionAnchorIndex):
   5432         (WebCore::HTMLSelectElement::setActiveSelectionEndIndex):
   5433         (WebCore::HTMLSelectElement::updateListBoxSelection):
   5434         (WebCore::HTMLSelectElement::menuListOnChange):
   5435         (WebCore::HTMLSelectElement::listBoxOnChange):
   5436         (WebCore::HTMLSelectElement::saveLastSelection):
   5437         (WebCore::HTMLSelectElement::setOption):
   5438         (WebCore::HTMLSelectElement::scrollToSelection):
   5439         (WebCore::HTMLSelectElement::insertedIntoTree):
   5440         * html/HTMLSelectElement.h:
   5441         (WebCore::HTMLSelectElement::size):
   5442         (WebCore::HTMLSelectElement::multiple):
   5443         (WebCore::HTMLSelectElement::listItems):
   5444         * wml/WMLOptionElement.cpp:
   5445         (WebCore::WMLOptionElement::text):
   5446         * wml/WMLOptionElement.h:
   5447 
   5448 
   5449         * dom/OptionElement.h:
   5450         * dom/SelectElement.cpp:
   5451         (WebCore::SelectElement::selectAll):
   5452         (WebCore::SelectElement::saveLastSelection):
   5453         (WebCore::isOptionElement):
   5454         (WebCore::isOptionGroupElement):
   5455         (WebCore::SelectElement::nextSelectableListIndex):
   5456         (WebCore::SelectElement::previousSelectableListIndex):
   5457         (WebCore::SelectElement::setActiveSelectionAnchorIndex):
   5458         (WebCore::SelectElement::setActiveSelectionEndIndex):
   5459         (WebCore::SelectElement::updateListBoxSelection):
   5460         (WebCore::SelectElement::listBoxOnChange):
   5461         (WebCore::SelectElement::menuListOnChange):
   5462         (WebCore::SelectElement::scrollToSelection):
   5463         (WebCore::SelectElement::recalcStyle):
   5464         (WebCore::SelectElement::setRecalcListItems):
   5465         (WebCore::SelectElement::recalcListItems):
   5466         (WebCore::SelectElement::selectedIndex):
   5467         (WebCore::SelectElement::setSelectedIndex):
   5468         (WebCore::SelectElement::optionToListIndex):
   5469         (WebCore::SelectElement::listToOptionIndex):
   5470         (WebCore::SelectElement::dispatchFocusEvent):
   5471         (WebCore::SelectElement::dispatchBlurEvent):
   5472         (WebCore::SelectElement::deselectItems):
   5473         (WebCore::SelectElement::saveFormControlState):
   5474         (WebCore::SelectElement::restoreFormControlState):
   5475         (WebCore::SelectElement::parseMultipleAttribute):
   5476         (WebCore::SelectElement::appendFormData):
   5477         (WebCore::SelectElement::reset):
   5478         (WebCore::SelectElement::menuListDefaultEventHandler):
   5479         (WebCore::SelectElement::listBoxDefaultEventHandler):
   5480         (WebCore::SelectElement::defaultEventHandler):
   5481         (WebCore::SelectElement::lastSelectedListIndex):
   5482         (WebCore::stripLeadingWhiteSpace):
   5483         (WebCore::SelectElement::typeAheadFind):
   5484         (WebCore::SelectElement::insertedIntoTree):
   5485         (WebCore::SelectElementData::SelectElementData):
   5486         (WebCore::SelectElementData::~SelectElementData):
   5487         (WebCore::SelectElementData::checkListItems):
   5488         (WebCore::SelectElementData::listItems):
   5489         * dom/SelectElement.h:
   5490         (WebCore::SelectElementData::multiple):
   5491         (WebCore::SelectElementData::setMultiple):
   5492         (WebCore::SelectElementData::size):
   5493         (WebCore::SelectElementData::setSize):
   5494         (WebCore::SelectElementData::usesMenuList):
   5495         (WebCore::SelectElementData::lastOnChangeIndex):
   5496         (WebCore::SelectElementData::setLastOnChangeIndex):
   5497         (WebCore::SelectElementData::lastOnChangeSelection):
   5498         (WebCore::SelectElementData::activeSelectionState):
   5499         (WebCore::SelectElementData::setActiveSelectionState):
   5500         (WebCore::SelectElementData::activeSelectionAnchorIndex):
   5501         (WebCore::SelectElementData::setActiveSelectionAnchorIndex):
   5502         (WebCore::SelectElementData::activeSelectionEndIndex):
   5503         (WebCore::SelectElementData::setActiveSelectionEndIndex):
   5504         (WebCore::SelectElementData::cachedStateForActiveSelection):
   5505         (WebCore::SelectElementData::shouldRecalcListItems):
   5506         (WebCore::SelectElementData::setShouldRecalcListItems):
   5507         (WebCore::SelectElementData::rawListItems):
   5508         (WebCore::SelectElementData::repeatingChar):
   5509         (WebCore::SelectElementData::setRepeatingChar):
   5510         (WebCore::SelectElementData::lastCharTime):
   5511         (WebCore::SelectElementData::setLastCharTime):
   5512         (WebCore::SelectElementData::typedString):
   5513         (WebCore::SelectElementData::setTypedString):
   5514         * html/HTMLOptionElement.h:
   5515         * html/HTMLSelectElement.cpp:
   5516         (WebCore::HTMLSelectElement::HTMLSelectElement):
   5517         (WebCore::HTMLSelectElement::recalcStyle):
   5518         (WebCore::HTMLSelectElement::formControlType):
   5519         (WebCore::HTMLSelectElement::selectedIndex):
   5520         (WebCore::HTMLSelectElement::deselectItems):
   5521         (WebCore::HTMLSelectElement::setSelectedIndex):
   5522         (WebCore::HTMLSelectElement::activeSelectionStartListIndex):
   5523         (WebCore::HTMLSelectElement::activeSelectionEndListIndex):
   5524         (WebCore::HTMLSelectElement::saveFormControlState):
   5525         (WebCore::HTMLSelectElement::restoreFormControlState):
   5526         (WebCore::HTMLSelectElement::parseMappedAttribute):
   5527         (WebCore::HTMLSelectElement::canSelectAll):
   5528         (WebCore::HTMLSelectElement::selectAll):
   5529         (WebCore::HTMLSelectElement::createRenderer):
   5530         (WebCore::HTMLSelectElement::appendFormData):
   5531         (WebCore::HTMLSelectElement::optionToListIndex):
   5532         (WebCore::HTMLSelectElement::listToOptionIndex):
   5533         (WebCore::HTMLSelectElement::recalcListItems):
   5534         (WebCore::HTMLSelectElement::setRecalcListItems):
   5535         (WebCore::HTMLSelectElement::reset):
   5536         (WebCore::HTMLSelectElement::dispatchFocusEvent):
   5537         (WebCore::HTMLSelectElement::dispatchBlurEvent):
   5538         (WebCore::HTMLSelectElement::defaultEventHandler):
   5539         (WebCore::HTMLSelectElement::setActiveSelectionAnchorIndex):
   5540         (WebCore::HTMLSelectElement::setActiveSelectionEndIndex):
   5541         (WebCore::HTMLSelectElement::updateListBoxSelection):
   5542         (WebCore::HTMLSelectElement::menuListOnChange):
   5543         (WebCore::HTMLSelectElement::listBoxOnChange):
   5544         (WebCore::HTMLSelectElement::saveLastSelection):
   5545         (WebCore::HTMLSelectElement::setOption):
   5546         (WebCore::HTMLSelectElement::scrollToSelection):
   5547         (WebCore::HTMLSelectElement::insertedIntoTree):
   5548         * html/HTMLSelectElement.h:
   5549         (WebCore::HTMLSelectElement::size):
   5550         (WebCore::HTMLSelectElement::multiple):
   5551         (WebCore::HTMLSelectElement::listItems):
   5552         * wml/WMLOptionElement.cpp:
   5553         (WebCore::WMLOptionElement::text):
   5554         * wml/WMLOptionElement.h:
   5555 
   5556 2009-05-28  Adam Roben  <aroben (a] apple.com>
   5557 
   5558         Don't try to use the new combobox parts on Vista in Classic mode
   5559 
   5560         Fixes:
   5561         <rdar://problem/6929277> REGRESSION (r42289+r42350): Windows Classic
   5562         theme: drop down lists in Preferences get a line/square
   5563         <rdar://problem/6929298> REGRESSION (r42289): Windows Classic: drop
   5564         down lists are black with a circle on many sites
   5565 
   5566         Reviewed by Steve Falkenburg.
   5567 
   5568         * rendering/RenderThemeWin.cpp:
   5569         (WebCore::RenderThemeWin::paintMenuList): Only use the new combobox
   5570         parts when we have a theme (i.e., when we're not in Classic mode).
   5571         When we don't have a theme, fall back to the pre-r42289 code.
   5572 
   5573 2009-05-27  Peter Kasting  <pkasting (a] google.com>
   5574 
   5575         Reviewed by Simon Fraser.
   5576 
   5577         https://bugs.webkit.org/show_bug.cgi?id=25659
   5578         Avoid calling frameCount() unnecessarily (which could lead to extra
   5579         GIF decoding).
   5580 
   5581         * platform/graphics/BitmapImage.cpp:
   5582         (WebCore::BitmapImage::destroyDecodedDataIfNecessary):
   5583 
   5584 2009-05-28  Simon Fraser  <simon.fraser (a] apple.com>
   5585 
   5586         Reviewed by Oliver Hunt.
   5587         
   5588         https://bugs.webkit.org/show_bug.cgi?id=8736
   5589 
   5590         Tests: fast/borders/border-radius-constraints.html
   5591                fast/borders/border-radius-split-inline.html
   5592                
   5593         When the sum of the corner radii on a side exceed the length of the side,
   5594         reduce the radii according to CSS 3 rules.
   5595         
   5596         Add RenderStyle::getBorderRadiiForRect() to fetch corner radii, applying
   5597         the constraints. Use that for painting borders, box-shadow, clipping replaced
   5598         elements
   5599 
   5600         * platform/graphics/IntSize.h:
   5601         (WebCore::IntSize::scale):
   5602         Add a scale method that scales by a float (using C rounding rules, like IntRect::scale()).
   5603 
   5604         * platform/graphics/Path.cpp:
   5605         Make the QUARTER const static.
   5606 
   5607         * rendering/RenderBox.cpp:
   5608         (WebCore::RenderBox::pushContentsClip):
   5609         Use getBorderRadiiForRect to fetch border radii.
   5610 
   5611         * rendering/RenderBoxModelObject.cpp:
   5612         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
   5613         Use getBorderRadiiForRect to fetch border radii.
   5614 
   5615         (WebCore::RenderBoxModelObject::paintBorder):
   5616         Use getBorderRadiiForRect to fetch border radii, and fix a bug when drawing
   5617         borders for split inlines, which used to apply the radii for each segment,
   5618         and no longer does.
   5619 
   5620         (WebCore::RenderBoxModelObject::paintBoxShadow):
   5621         Use getBorderRadiiForRect to fetch border radii.
   5622 
   5623         * rendering/RenderReplaced.cpp:
   5624         (WebCore::RenderReplaced::paint):
   5625         Use getBorderRadiiForRect to fetch border radii for clipping.
   5626 
   5627         * rendering/RenderWidget.cpp:
   5628         (WebCore::RenderWidget::paint):
   5629         Use getBorderRadiiForRect to fetch border radii for clipping.
   5630 
   5631         * rendering/style/RenderStyle.h:
   5632         * rendering/style/RenderStyle.cpp:
   5633         (WebCore::RenderStyle::getBorderRadiiForRect):
   5634         New bottleneck method to fetch corner radiil given a rect, applying the constraint
   5635         rules.
   5636 
   5637 2009-05-28  Alexey Proskuryakov  <ap (a] webkit.org>
   5638 
   5639         Reviewed by Darin Adler.
   5640 
   5641         https://bugs.webkit.org/show_bug.cgi?id=26005
   5642         Optimization for XPath //* does not preserve context size
   5643 
   5644         Test: fast/xpath/position.html
   5645 
   5646         Fixed the bug by removing the incorrect optimization, and made enough micro-optimizations to
   5647         get a performance progression on my tests.
   5648 
   5649         * xml/XPathPath.h: Removed broken optimizeStepPair().
   5650 
   5651         * xml/XPathPath.cpp:
   5652         (WebCore::XPath::LocationPath::evaluate): Style fix.
   5653         (WebCore::XPath::LocationPath::appendStep): Don't call optimizeStepPair().
   5654         (WebCore::XPath::LocationPath::insertFirstStep): Ditto.
   5655         (WebCore::XPath::Path::Path): Style fix.
   5656 
   5657         * xml/XPathStep.cpp:
   5658         (WebCore::XPath::primaryNodeType): Turned this member function into a static inline helper.
   5659         (WebCore::XPath::nodeMatches): Ditto. Don't check for namespace axis, which is unsupported
   5660         (and might never be).
   5661         (WebCore::XPath::Step::nodesInAxis): Updated for the new nodeMatches() signature.
   5662 
   5663         * xml/XPathStep.h:
   5664         (WebCore::XPath::Step::NodeTest::data):
   5665         (WebCore::XPath::Step::NodeTest::namespaceURI):
   5666         Made these data members AtomicString to avoid repeated conversions. This is the biggest
   5667         performance win here.
   5668 
   5669         * xml/XPathUtil.cpp: (WebCore::XPath::stringValue): Reserve some capacity upfront.
   5670 
   5671 2009-05-28  Stephen White  <senorblanco (a] chromium.org>
   5672 
   5673         Reviewed by Dimitri Glazkov.
   5674 
   5675         When creating a linear or radial gradient with a single stop
   5676         at offset 1.0, the Skia layer was allocating 3 stops, but only
   5677         filling 2, leaving one uninitialized.  Only 2 stops are necessary
   5678         in this case, at offsets (0.0, 1.0).
   5679 
   5680         http://bugs.webkit.org/show_bug.cgi?id=26063
   5681 
   5682         Covered by: LayoutTests/svg/W3C-SVG-1.1/pservers-grad-16-b.svg
   5683                     LayoutTests/svg/custom/gradient-stop-corner-cases.svg
   5684                     LayoutTests/svg/custom/js-late-gradient-and-object-creation.svg
   5685 
   5686         * platform/graphics/skia/GradientSkia.cpp:
   5687         (WebCore::totalStopsNeeded):
   5688 
   5689 2009-05-28  Yury Semikhatsky  <yurys (a] chromium.org>
   5690 
   5691         Reviewed by Timothy Hatcher.
   5692 
   5693         https://bugs.webkit.org/show_bug.cgi?id=26041
   5694         Allow adding resource source to WebInspector.SourceFrame asynchronously.
   5695 
   5696         Provide common implementation for InspectorController::addResourceSourceToFrame and
   5697         InspectorController::addSourceToFrame methods.
   5698 
   5699         * bindings/js/JSInspectorControllerCustom.cpp:
   5700         * bindings/v8/custom/V8InspectorControllerCustom.cpp:
   5701         * inspector/InspectorController.cpp:
   5702         (WebCore::InspectorController::addResourceSourceToFrame):
   5703         * inspector/InspectorController.h:
   5704         * inspector/InspectorController.idl:
   5705         * inspector/front-end/SourceFrame.js:
   5706         (WebInspector.SourceFrame.prototype.revealLine):
   5707         (WebInspector.SourceFrame.prototype.highlightLine):
   5708         (WebInspector.SourceFrame.prototype._loaded):
   5709         (WebInspector.SourceFrame.prototype._isContentLoaded):
   5710         * inspector/front-end/SourceView.js:
   5711         (WebInspector.SourceView.prototype.setupSourceFrameIfNeeded):
   5712         (WebInspector.SourceView.prototype._contentLoaded):
   5713 
   5714 2009-05-28  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   5715 
   5716         Reviewed by Xan Lopez.
   5717 
   5718         After r44177 we had a problem when increasing the size
   5719         of the window the scrollbars stayed and were not hidden.
   5720         This was due WebCore giving up on the Scrollbar as it became
   5721         unnecessary but the GtkAdjustment remained unchanged.
   5722         So from the point of view of the GtkScrolledWindow scrolling
   5723         was still necessary and the GtkScrollbar kept being displayed.
   5724 
   5725         Solve the issue by resetting the GtkAdjustment in the
   5726         destructor of ScrollbarGtk.
   5727 
   5728         * platform/gtk/ScrollbarGtk.cpp:
   5729         (ScrollbarGtk::~ScrollbarGtk):
   5730 
   5731 2009-05-28  Adam Barth  <abarth (a] webkit.org>
   5732 
   5733         Reviewed by Darin Adler.
   5734 
   5735         Clean up window.open()'s use of lexical and dynamic scope.
   5736 
   5737         (Added one unreviewed tweak: use dynamicFrame instead of lexicalFrame
   5738         for DOMWindow::allowPopUp.)
   5739 
   5740         Test: http/tests/security/frameNavigation/context-for-window-open.html
   5741 
   5742         * bindings/js/JSDOMBinding.cpp:
   5743         (WebCore::toDynamicFrame):
   5744         (WebCore::processingUserGesture):
   5745         (WebCore::completeURL):
   5746         * bindings/js/JSDOMBinding.h:
   5747         * bindings/js/JSDOMWindowCustom.cpp:
   5748         (WebCore::createWindow):
   5749         (WebCore::JSDOMWindow::open):
   5750         (WebCore::JSDOMWindow::showModalDialog):
   5751         * bindings/v8/custom/V8DOMWindowCustom.cpp:
   5752         (WebCore::CALLBACK_FUNC_DECL):
   5753         (WebCore::createWindow):
   5754 
   5755 2009-05-27  Alexey Proskuryakov  <ap (a] webkit.org>
   5756 
   5757         Reviewed by Oliver Hunt.
   5758 
   5759         https://bugs.webkit.org/show_bug.cgi?id=26056
   5760         XPath string() function can be very slow
   5761 
   5762         * xml/XPathUtil.cpp: (WebCore::XPath::stringValue): Use an intermediate Vector when appending.
   5763 
   5764 2009-05-27  Dan Bernstein  <mitz (a] apple.com>
   5765 
   5766         Reviewed by Sam Weinig.
   5767 
   5768         - fix <rdar://problem/6927761> <isindex> placeholder text is unstylable
   5769           and initially not visible
   5770 
   5771         Test: fast/forms/isindex-placeholder.html
   5772 
   5773         * css/html4.css: Added a default style for <isindex> placeholder text.
   5774         * html/HTMLInputElement.cpp:
   5775         (WebCore::HTMLInputElement::parseMappedAttribute): Changed to call
   5776         the new protected function updatePlaceholderVisibility().
   5777         * html/HTMLInputElement.h:
   5778         (WebCore::HTMLInputElement::updatePlaceholderVisibility): Added this
   5779         protected function to allow HTMLIsIndexElement::parseMappedAttribute()
   5780         to invoke InputElement::updatePlaceholderVisibility().
   5781         * html/HTMLIsIndexElement.cpp:
   5782         (WebCore::HTMLIsIndexElement::parseMappedAttribute): Call
   5783         updatePlaceholderVisibility() when parsing the placeholder attribute.
   5784         * rendering/RenderTextControlSingleLine.cpp:
   5785         (WebCore::RenderTextControlSingleLine::createInnerTextStyle): If there
   5786         is no placeholder pseudo-element style, use the normal style.
   5787 
   5788 2009-05-27  Sam Weinig  <sam (a] webkit.org>
   5789 
   5790         Reviewed by Maciej Stachowiak.
   5791 
   5792         More cleanup of DOMWindow related functions.
   5793 
   5794         * bindings/js/JSDOMWindowBase.cpp:
   5795         (WebCore::JSDOMWindowBase::willRemoveFromWindowShell): Renamed from JSDOMWindowBase::clear()
   5796         * bindings/js/JSDOMWindowBase.h:
   5797 
   5798         * bindings/js/JSDOMWindowCustom.cpp:
   5799         (WebCore::JSDOMWindow::showModalDialog): Update Comment.
   5800 
   5801         * bindings/js/JSDOMWindowShell.cpp:
   5802         * bindings/js/JSDOMWindowShell.h:
   5803         Remove JSDOMWindowShell::clear().  It was unused.
   5804 
   5805         * bindings/js/ScriptController.cpp:
   5806         (WebCore::ScriptController::clearWindowShell):
   5807 
   5808 2009-05-27  Sam Weinig  <sam (a] webkit.org>
   5809 
   5810         Reviewed by David Hyatt.
   5811 
   5812         Miscellaneous cleanup of DOMWindow related functions.
   5813 
   5814         * bindings/js/JSDOMGlobalObject.cpp:
   5815         (WebCore::JSDOMGlobalObject::~JSDOMGlobalObject): Fix poorly named variables.
   5816         * bindings/js/JSDOMWindowBase.cpp:
   5817         (WebCore::JSDOMWindowBase::supportsProfiling): Don't jump through hoops
   5818         checking for null frames if the build does not support profiling.
   5819         (WebCore::JSDOMWindowBase::clear): Use setCurrentEvent(0) instead of calling
   5820         clearHelperObjectProperties().  It is clearer.
   5821         * bindings/js/JSDOMWindowBase.h:
   5822         Removed now unused clearHelperObjectProperties() function, empty disconnectFrame()
   5823         function, and the empty destructor.
   5824         * bindings/js/JSDOMWindowShell.cpp:
   5825         * bindings/js/JSDOMWindowShell.h:
   5826         Remove disconnectFrame() which only called JSDOMWindowBase::disconnectFrame(), which
   5827         is a no-op.
   5828         * page/Frame.cpp:
   5829         (WebCore::Frame::~Frame):
   5830         (WebCore::Frame::pageDestroyed):
   5831         Remove calls to JSDOMWindowShell::disconnectFrame() which only called
   5832         JSDOMWindowBase::disconnectFrame(), which is a no-op.
   5833 
   5834 2009-05-27  Dimitri Glazkov  <dglazkov (a] chromium.org>
   5835 
   5836         Unreviewed, build fix.
   5837 
   5838         https://bugs.webkit.org/show_bug.cgi?id=25974
   5839         Remove extra qualifiers from the ScheduledAction decl.
   5840 
   5841         * bindings/v8/ScheduledAction.h: Removed extraneous class qualifiers.
   5842 
   5843 2009-05-27  Gustavo Noronha Silva  <gustavo.noronha (a] collabora.co.uk>
   5844 
   5845         Unreviewed make distcheck fix. One more missing file.
   5846 
   5847         * GNUmakefile.am:
   5848 
   5849 2009-05-27  Antonio Gomes   <antonio.gomes (a] openbossa.org>
   5850 
   5851         Reviewed by Simon Hausmann.
   5852 
   5853         [Qt] Fixed trunk build on Linux after r44126.
   5854 
   5855         * WebCore.pro:
   5856 
   5857 2009-05-27  Eric Carlson  <eric.carlson (a] apple.com>
   5858 
   5859         Reviewed by Oliver Hunt.
   5860 
   5861         <rdar://problem/6926046> REGRESSION (r43972): http://www.youtube.com/html5 crashes on open
   5862 
   5863         * platform/graphics/MediaPlayer.cpp:
   5864         (WebCore::MediaPlayer::load): Don't look for a media engine based on an empty MIME type.
   5865 
   5866 2009-05-27  David Levin  <levin (a] chromium.org>
   5867 
   5868         Reviewed by Maciej Stachowiak.
   5869 
   5870         Bug 26029: FrameLoader::canLoad should allow calls with just a security origin
   5871         https://bugs.webkit.org/show_bug.cgi?id=26029
   5872 
   5873         No functional changes, so no tests.
   5874 
   5875         * loader/FrameLoader.cpp:
   5876         (WebCore::FrameLoader::canLoad):
   5877         * loader/FrameLoader.h:
   5878 
   5879 2009-05-27  Gustavo Noronha Silva  <gustavo.noronha (a] collabora.co.uk>
   5880 
   5881         Unreviewed build fix.
   5882 
   5883         Remove file that does not exist from the build.
   5884 
   5885         * GNUmakefile.am:
   5886 
   5887 2009-05-27  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   5888 
   5889         Reviewed by Darin Adler.
   5890 
   5891         Remove two unneeded protected constructors, these classes have pure-virtual functions, and can't be constructed anyway.
   5892 
   5893         * dom/InputElement.h:
   5894         * dom/OptionGroupElement.h:
   5895 
   5896 2009-05-27  Alexey Proskuryakov  <ap (a] webkit.org>
   5897 
   5898         Reviewed by Darin Adler.
   5899 
   5900         https://bugs.webkit.org/show_bug.cgi?id=17725
   5901         XPath should be case insensitive for HTML
   5902 
   5903         Test: fast/xpath/node-name-case-sensitivity.html
   5904 
   5905         * xml/XPathStep.cpp: (WebCore::XPath::Step::nodeMatches): Made node name check case insensitive
   5906         for HTML elements in HTML documents.
   5907 
   5908 2009-05-27  John Sullivan  <sullivan (a] apple.com>
   5909 
   5910         fixed <rdar://problem/6925482> repro crash in WebCore::DragController::dragExited dropping 
   5911         bookmarks (at least) over Top Sites (at least)
   5912 
   5913         Reviewed by Kevin Decker
   5914 
   5915         * page/DragController.cpp:
   5916         (WebCore::DragController::dragExited):
   5917         nil check m_documentUnderMouse and take the "local file" case if it's nil
   5918 
   5919 2009-05-27  Fridrich Strba  <fridrich.strba (a] bluewin.ch>
   5920 
   5921         Reviewed by Gustavo Noronha.
   5922 
   5923         When building on window, consider Windows specific files.
   5924 
   5925         * GNUmakefile.am:
   5926 
   5927 2009-05-27  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   5928 
   5929         Reviewed by George Staikos.
   5930 
   5931         Fixes: https://bugs.webkit.org/show_bug.cgi?id=26031
   5932 
   5933         InputElementData is too heavy, save storing two pointers by passing them
   5934         directly to the static helper functions (the only place which needs them). 
   5935 
   5936         * dom/InputElement.cpp:
   5937         (WebCore::InputElement::dispatchFocusEvent):
   5938         (WebCore::InputElement::dispatchBlurEvent):
   5939         (WebCore::InputElement::updatePlaceholderVisibility):
   5940         (WebCore::InputElement::updateFocusAppearance):
   5941         (WebCore::InputElement::updateSelectionRange):
   5942         (WebCore::InputElement::aboutToUnload):
   5943         (WebCore::InputElement::setValueFromRenderer):
   5944         (WebCore::InputElement::constrainValue):
   5945         (WebCore::InputElement::handleBeforeTextInsertedEvent):
   5946         (WebCore::InputElement::parseSizeAttribute):
   5947         (WebCore::InputElement::parseMaxLengthAttribute):
   5948         (WebCore::InputElement::updateValueIfNeeded):
   5949         (WebCore::InputElement::notifyFormStateChanged):
   5950         (WebCore::InputElementData::InputElementData):
   5951         * dom/InputElement.h:
   5952         * html/HTMLInputElement.cpp:
   5953         (WebCore::HTMLInputElement::HTMLInputElement):
   5954         (WebCore::HTMLInputElement::updateFocusAppearance):
   5955         (WebCore::HTMLInputElement::aboutToUnload):
   5956         (WebCore::HTMLInputElement::dispatchFocusEvent):
   5957         (WebCore::HTMLInputElement::dispatchBlurEvent):
   5958         (WebCore::HTMLInputElement::setInputType):
   5959         (WebCore::HTMLInputElement::setSelectionRange):
   5960         (WebCore::HTMLInputElement::parseMappedAttribute):
   5961         (WebCore::HTMLInputElement::setValue):
   5962         (WebCore::HTMLInputElement::setValueFromRenderer):
   5963         (WebCore::HTMLInputElement::setFileListFromRenderer):
   5964         (WebCore::HTMLInputElement::defaultEventHandler):
   5965         (WebCore::HTMLInputElement::constrainValue):
   5966         * wml/WMLInputElement.cpp:
   5967         (WebCore::WMLInputElement::WMLInputElement):
   5968         (WebCore::WMLInputElement::dispatchFocusEvent):
   5969         (WebCore::WMLInputElement::dispatchBlurEvent):
   5970         (WebCore::WMLInputElement::updateFocusAppearance):
   5971         (WebCore::WMLInputElement::aboutToUnload):
   5972         (WebCore::WMLInputElement::setValue):
   5973         (WebCore::WMLInputElement::setValueFromRenderer):
   5974         (WebCore::WMLInputElement::parseMappedAttribute):
   5975         (WebCore::WMLInputElement::defaultEventHandler):
   5976         (WebCore::WMLInputElement::constrainValue):
   5977 
   5978 2009-05-27  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   5979 
   5980         Reviewed by George Staikos.
   5981 
   5982         Fixes: https://bugs.webkit.org/show_bug.cgi?id=26033
   5983 
   5984         OptionElementData saves an Element pointer, which is unnessary.
   5985         Just pass it to the static function calls directly.
   5986 
   5987         * dom/OptionElement.cpp:
   5988         (WebCore::OptionElement::setSelectedState):
   5989         (WebCore::OptionElement::collectOptionText):
   5990         (WebCore::OptionElement::collectOptionTextRespectingGroupLabel):
   5991         (WebCore::OptionElement::collectOptionValue):
   5992         (WebCore::OptionElementData::OptionElementData):
   5993         * dom/OptionElement.h:
   5994         * html/HTMLOptionElement.cpp:
   5995         (WebCore::HTMLOptionElement::HTMLOptionElement):
   5996         (WebCore::HTMLOptionElement::text):
   5997         (WebCore::HTMLOptionElement::value):
   5998         (WebCore::HTMLOptionElement::setSelected):
   5999         (WebCore::HTMLOptionElement::setSelectedState):
   6000         (WebCore::HTMLOptionElement::textIndentedToRespectGroupLabel):
   6001         * wml/WMLOptionElement.cpp:
   6002         (WebCore::WMLOptionElement::WMLOptionElement):
   6003         (WebCore::WMLOptionElement::setSelectedState):
   6004         (WebCore::WMLOptionElement::value):
   6005         (WebCore::WMLOptionElement::textIndentedToRespectGroupLabel):
   6006 
   6007 2009-05-27  Fridrich Strba  <fridrich.strba (a] bluewin.ch>
   6008 
   6009         Reviewed by Maciej Stachowiak.
   6010 
   6011         When building with MinGW, don't use the __declspec(dl{import,export})
   6012         decorations and rely on the linker to use its nifty auto-import feature.
   6013         It is extremely hard to get the decorations right with MinGW in general
   6014         and impossible in WebKit, where the resulting shared library is linking 
   6015         together some static libraries.
   6016 
   6017         * config.h:
   6018 
   6019 2009-05-26  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   6020 
   6021         Reviewed by Xan Lopez.
   6022 
   6023         https://bugs.webkit.org/show_bug.cgi?id=25613
   6024 
   6025         Add a WebCore::Widget that can embed GtkWidget with and
   6026         without a GdkWindow. This can be used to embed any GtkWidget.
   6027 
   6028         Some bits are directly copied from the Scrollbar implementation
   6029         but can not be easily shared here.
   6030 
   6031         * GNUmakefile.am:
   6032         * platform/gtk/GtkPluginWidget.cpp: Added.
   6033         (WebCore::GtkPluginWidget::GtkPluginWidget):
   6034         (WebCore::GtkPluginWidget::invalidateRect):
   6035         (WebCore::GtkPluginWidget::frameRectsChanged):
   6036         (WebCore::GtkPluginWidget::paint):
   6037         * platform/gtk/GtkPluginWidget.h: Added.
   6038 
   6039 2009-05-26  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   6040 
   6041         Reviewed by Gustavo Noronha.
   6042 
   6043         https://bugs.webkit.org/show_bug.cgi?id=25613.
   6044 
   6045         Implement Widget::setIsSelected for Gtk+ by searching
   6046         for a property of the name "webkit-widget-is-selected" and if
   6047         such property exists we are going to set it. We expect
   6048         the property to take a boolean.
   6049 
   6050         * platform/gtk/WidgetGtk.cpp:
   6051         (WebCore::Widget::setIsSelected):
   6052 
   6053 2009-05-26  Sam Weinig  <sam (a] webkit.org>
   6054 
   6055         Reviewed by Brady Eidson.
   6056 
   6057         Fix for <rdar://problem/6916371>
   6058         iWeb 'Announce' button does nothing after publishing to MobileMe
   6059 
   6060         Add ability to force content sniffing for all urls (including file: urls)
   6061 
   6062         * WebCore.base.exp:
   6063         * platform/network/ResourceHandle.cpp:
   6064         (WebCore::ResourceHandle::shouldContentSniffURL):
   6065         (WebCore::ResourceHandle::forceContentSniffing):
   6066         * platform/network/ResourceHandle.h:
   6067 
   6068 2009-05-26  Laszlo Gombos  <laszlo.1.gombos (a] nokia.com>
   6069 
   6070         Reviewed by Holger Freyther.
   6071 
   6072         https://bugs.webkit.org/show_bug.cgi?id=25996
   6073 
   6074         [Qt] Dead-code stripping for unix
   6075 
   6076         * WebCore.pro: Turn on GCC dead-code stripping flags for Unix
   6077 
   6078 2009-05-10  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   6079 
   6080         Reviewed by Dave Hyatt.
   6081 
   6082         https://bugs.webkit.org/show_bug.cgi?id=25646
   6083 
   6084         [GTK] Send onscroll events for the main FrameView
   6085 
   6086         WebKit/GTK+ is currently not sending any onscroll
   6087         events for a frame with external adjustments. This is
   6088         due the fact that the value-changed signal of the GtkAdjustment
   6089         is handled by WebCore::ScrollView directly and is not going through
   6090         the WebCore::Scrollbar -> WebCore::ScrollbarClient ->
   6091         WebCore::FrameView::valueChanged -> WebCore::ScrollView::valueChanged
   6092         path.
   6093 
   6094         Fix the above problem by wrapping the GtkAdjustment we get
   6095         assigned from GTK+ in a ScrollbarGtk that will not have any
   6096         visual appearance. Remove code from ScrollView that knows
   6097         about adjustments and create a special case for
   6098         WebCore::ScrollView::createScrollbar that will create such
   6099         a special WebCore::ScrollbarGtk.
   6100 
   6101         * platform/ScrollView.cpp: Remove adjustment code
   6102         (WebCore::ScrollView::setHasHorizontalScrollbar):
   6103         (WebCore::ScrollView::setHasVerticalScrollbar):
   6104         (WebCore::ScrollView::updateScrollbars):
   6105         (WebCore::ScrollView::wheelEvent):
   6106         * platform/ScrollView.h: Remove adjustment code
   6107         * platform/gtk/ScrollViewGtk.cpp:
   6108         (WebCore::ScrollView::platformDestroy):
   6109         (WebCore::ScrollView::createScrollbar):
   6110         (WebCore::ScrollView::setGtkAdjustments):
   6111         * platform/gtk/ScrollbarGtk.cpp:
   6112         (ScrollbarGtk::createScrollbar): Special case.
   6113         (ScrollbarGtk::ScrollbarGtk):  New ctor and work on the adjustment
   6114         (ScrollbarGtk::~ScrollbarGtk): Disconnect signal
   6115         (ScrollbarGtk::frameRectsChanged): Do nothing when we lack a platformWidget
   6116         * platform/gtk/ScrollbarGtk.h:
   6117 
   6118 2009-05-26  Cameron Zwarich  <zwarich (a] apple.com>
   6119 
   6120         Reviewed by Maciej Stachowiak.
   6121 
   6122         Bug 26035: Make ImageSource::frameHasAlphaAtIndex() return false for JPEGs with CG
   6123         <https://bugs.webkit.org/show_bug.cgi?id=26035>
   6124         <rdar://problem/6924087>
   6125 
   6126         * platform/graphics/cg/ImageSourceCG.cpp:
   6127         (WebCore::ImageSource::frameHasAlphaAtIndex): return false if the image
   6128         is JPEG, there is no image type, or m_decoder is null.
   6129 
   6130 2009-05-26  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   6131 
   6132         Unreviewed build fix for the JPEGImageDecoder.
   6133 
   6134         Revision 44167 removed stdio.h from the included headers and
   6135         this will lead to an error that FILE is not known inside the
   6136         jpeglib.h Put back the stdio.h include.
   6137 
   6138         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
   6139 
   6140 2009-05-26  Yichao Yin  <yichao.yin (a] torchmobile.com.cn>
   6141 
   6142         Reviewed by Maciej Stachowiak.
   6143 
   6144         Fix the crash issue while running layout tests after enalbed XHTMLMP
   6145         https://bugs.webkit.org/show_bug.cgi?id=26017
   6146 
   6147         * dom/Document.cpp:
   6148         (WebCore::Document::isXHTMLMPDocument):
   6149 
   6150 2009-05-26  Anders Carlsson  <andersca (a] apple.com>
   6151 
   6152         Reviewed by Dan Bernstein.
   6153 
   6154         <rdar://problem/6901751> 
   6155         REGRESSION (r35515): Tiger crash painting the selection on registration page of car2go.com
   6156         
   6157         Don't use the WKCGContextIsSafeToClip function; it wasn't working correctly. Instead, just disable
   6158         the improved selection drawing on Tiger.
   6159         
   6160         * WebCore.Tiger.exp:
   6161         * platform/graphics/cg/GraphicsContextCG.cpp:
   6162         (WebCore::GraphicsContext::fillPath):
   6163         (WebCore::GraphicsContext::strokePath):
   6164         (WebCore::GraphicsContext::fillRect):
   6165         (WebCore::GraphicsContext::clip):
   6166         (WebCore::GraphicsContext::clipOut):
   6167         (WebCore::GraphicsContext::clipOutEllipseInRect):
   6168         (WebCore::GraphicsContext::clipPath):
   6169         (WebCore::GraphicsContext::addInnerRoundedRectClip):
   6170         (WebCore::GraphicsContext::strokeRect):
   6171         * platform/mac/WebCoreSystemInterface.h:
   6172         * platform/mac/WebCoreSystemInterface.mm:
   6173         * rendering/RenderBlock.cpp:
   6174         (WebCore::RenderBlock::fillSelectionGaps):
   6175 
   6176 2009-05-26  Peter Kasting  <pkasting (a] google.com>
   6177 
   6178         Reviewed by Eric Seidel.
   6179 
   6180         https://bugs.webkit.org/show_bug.cgi?id=25709 part two
   6181         Mostly cosmetic changes, mainly to get image decoders for Cairo build to
   6182         comply with WebKit style guidelines:
   6183         * Fix header guard names
   6184         * Fix initializer list wrapping
   6185         * Fix class/function "{" wrapping
   6186         * Fix wrapping of long boolean expressions
   6187         * Fix whitespace around operators
   6188         * Eliminate whitespace on otherwise-blank lines
   6189         * No {} on single-line conditional arms
   6190         * Use 0 instead of NULL
   6191         * Don't #include "config.h" in headers
   6192 
   6193         Also a few non-cosmetic changes:
   6194         * Remove unneeded #ifdef protecting the contents of these files.  The
   6195           platforms listed don't match who uses these files anymore (even
   6196           without considering Skia), and platforms which don't use them at all
   6197           (like CG) aren't harmed by the files, since they don't have
   6198           equivalently-named classes.  It's simpler to just ditch these.
   6199         * Convert a use of Vector<>& into SharedBuffer*, since that's how the
   6200           data is really stored anyway.
   6201         * Use size() instead of m_size, for consistency with Skia code, and
   6202           future-proofing (if a particular decoder wants to specialize this).
   6203         * Move an ASSERT that was slightly more aggressive than necessary.
   6204         * Change variable names/types for clarity/accuracy and to match Skia.
   6205         * Remove unnecessary macro magic to work around a problem which no
   6206           longer exists in the third-party JPEG headers.
   6207         * Stop silencing a portability warning about setjmp (the vcproj/vsprops
   6208           are the right place for this)
   6209         * In Skia code, don't explicitly check |m_failed| before calling
   6210           isSizeAvailable(), which itself checks |m_failed|.
   6211 
   6212         * platform/image-decoders/ImageDecoder.h: Fix header guards, "{" wrapping.
   6213         (WebCore::RGBA32Buffer::):
   6214         (WebCore::RGBA32Buffer::RGBA32Buffer): Fix initializer list wrapping.
   6215         (WebCore::ImageDecoder::ImageDecoder): Fix initializer list wrapping.
   6216         * platform/image-decoders/bmp/BMPImageDecoder.cpp: Remove unneeded #ifdef.
   6217         * platform/image-decoders/bmp/BMPImageDecoder.h: Fix header guards, "{" wrapping.
   6218         * platform/image-decoders/gif/GIFImageDecoder.cpp: Remove unneeded #ifdef, fix "{" wrapping.
   6219         (WebCore::GIFImageDecoderPrivate::GIFImageDecoderPrivate): Use an initializer instead of a block-level statement.
   6220         (WebCore::GIFImageDecoderPrivate::decode): Expect a SharedBuffer.
   6221         (WebCore::GIFImageDecoderPrivate::getColorMap):
   6222         (WebCore::GIFImageDecoder::GIFImageDecoder): Fix initializer list wrapping.
   6223         (WebCore::GIFImageDecoder::frameCount): Add comment.
   6224         (WebCore::GIFImageDecoder::frameBufferAtIndex): Explicitly cast, fix whitespace around operators.
   6225         (WebCore::GIFImageDecoder::decode): Pass a SharedBuffer.
   6226         (WebCore::GIFImageDecoder::initFrameBuffer): Use size() instead of m_size, move ASSERT, fix boolean wrapping, fix indenting.
   6227         (WebCore::GIFImageDecoder::prepEmptyFrameBuffer): Use size() instead of m_size.
   6228         (WebCore::GIFImageDecoder::haveDecodedRow): Use size() instead of m_size, eliminate unneeded whitespace, change variable name.
   6229         (WebCore::GIFImageDecoder::frameComplete): Use size() instead of m_size, no {} on single-line conditional arms, fix boolean wrapping.
   6230         * platform/image-decoders/gif/GIFImageDecoder.h: Fix header guards, "{" wrapping.
   6231         * platform/image-decoders/gif/GIFImageReader.cpp: Remove unneeded #ifdef.
   6232         (GIFImageReader::read):
   6233         * platform/image-decoders/gif/GIFImageReader.h: Fix header guards, change variable type.
   6234         * platform/image-decoders/ico/ICOImageDecoder.cpp: Remove unneeded #ifdef.
   6235         * platform/image-decoders/ico/ICOImageDecoder.h: Fix header guards, "{" wrapping.
   6236         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp: Remove unneeded #ifdef, macro magic, silencing of warning.
   6237         (WebCore::JPEGImageDecoder::outputScanlines): Use size() instead of m_size, change variable name.
   6238         * platform/image-decoders/jpeg/JPEGImageDecoder.h: Fix header guards, "{" wrapping.
   6239         * platform/image-decoders/png/PNGImageDecoder.cpp: Remove unneeded #ifdef, silencing of warning, change variable type.
   6240         (WebCore::PNGImageReader::PNGImageReader): Fix initializer list wrapping.
   6241         (WebCore::PNGImageReader::close): Add comment, zero another member for consistency.
   6242         (WebCore::PNGImageDecoder::PNGImageDecoder): Fix indenting.
   6243         (WebCore::PNGImageDecoder::decodingFailed): Define in .cpp, not .h.
   6244         (WebCore::PNGImageDecoder::rowAvailable):
   6245         * platform/image-decoders/png/PNGImageDecoder.h: Fix header guards, "{" wrapping.
   6246         * platform/image-decoders/skia/GIFImageDecoder.cpp:
   6247         (WebCore::GIFImageDecoder::isSizeAvailable): Don't check m_failed unnecessarily.
   6248         (WebCore::GIFImageDecoder::frameBufferAtIndex): Fix whitespace around operators.
   6249         * platform/image-decoders/skia/GIFImageReader.h: "unsigned" is sufficient to convey "unsigned int".
   6250         * platform/image-decoders/skia/ImageDecoder.h: Remove unnecessary #includes.
   6251         (WebCore::ImageDecoder::ImageDecoder): Fix initializer list wrapping.
   6252         * platform/image-decoders/skia/JPEGImageDecoder.cpp:
   6253         (WebCore::JPEGImageReader::JPEGImageReader): Use 0 instead of NULL.
   6254         (WebCore::JPEGImageDecoder::isSizeAvailable): Don't check m_failed unnecessarily.
   6255         * platform/image-decoders/skia/PNGImageDecoder.cpp:
   6256         (WebCore::PNGImageReader::PNGImageReader): Fix initializer list wrapping.
   6257         (WebCore::PNGImageDecoder::PNGImageDecoder): Fix indenting.
   6258         (WebCore::PNGImageDecoder::isSizeAvailable): Don't check m_failed unnecessarily.
   6259         (WebCore::rowAvailable):
   6260         * platform/image-decoders/skia/XBMImageDecoder.h: Don't #include config.h.
   6261         * platform/image-decoders/xbm/XBMImageDecoder.cpp: Remove unneeded #ifdef.
   6262         * platform/image-decoders/xbm/XBMImageDecoder.h: Fix header guards, "{" wrapping.
   6263 
   6264 2009-05-26  Jian Li  <jianli (a] chromium.org>
   6265 
   6266         Reviewed by Dimitri Glazkov.
   6267 
   6268         https://bugs.webkit.org/show_bug.cgi?id=25944
   6269         Remove the uses of V8 Locker in worker execution code. No additional test is needed.
   6270         The normal WebKit layout tests should cover it. However, layout tests that start
   6271         multiple workers will fail to pass due to test shell limitation in Chromium. To cover
   6272         this, UI tests will be added (http://code.google.com/p/chromium/issues/detail?id=12554).
   6273 
   6274         * bindings/v8/V8WorkerContextEventListener.cpp:
   6275         (WebCore::V8WorkerContextEventListener::handleEvent):
   6276         * bindings/v8/WorkerContextExecutionProxy.cpp:
   6277         (WebCore::WorkerContextExecutionProxy::dispose):
   6278         (WebCore::WorkerContextExecutionProxy::initV8IfNeeded):
   6279         (WebCore::WorkerContextExecutionProxy::evaluate):
   6280         (WebCore::WorkerContextExecutionProxy::findOrCreateEventListenerHelper):
   6281         (WebCore::WorkerContextExecutionProxy::RemoveEventListener):
   6282 
   6283 2009-05-26  Dmitry Titov  <dimich (a] chromium.org>
   6284 
   6285         Reviewed by Dimitri Glazkov.
   6286 
   6287         https://bugs.webkit.org/show_bug.cgi?id=25974
   6288         Enable timers in Chromuim workers.
   6289 
   6290         * bindings/v8/ScheduledAction.cpp:
   6291         (WebCore::ScheduledAction::execute): Added function which can execute a callback using WorkerContext.
   6292         * bindings/v8/ScheduledAction.h:
   6293         (WebCore::ScheduledAction::ScheduledAction): added url parameter to capture the worker's location.
   6294         * bindings/v8/custom/V8WorkerContextCustom.cpp:
   6295         (WebCore::SetTimeoutOrInterval): replaced NotImplemented with code to create ScheduledAction and DOMTimer.
   6296         Also, removed declarations for clearTimeout/clearInterval callbacks since they are now directly generated from IDL.
   6297 
   6298 2009-05-26  Dimitri Glazkov  <dglazkov (a] chromium.org>
   6299 
   6300         Unreviewed, build fix.
   6301 
   6302         https://bugs.webkit.org/show_bug.cgi?id=23649
   6303         Update V8 bindings to match SQLTransactionErrorCallback change.
   6304 
   6305         * bindings/v8/custom/V8CustomSQLTransactionErrorCallback.cpp:
   6306         (WebCore::V8CustomSQLTransactionErrorCallback::handleEvent): Changed to return void.
   6307         * bindings/v8/custom/V8CustomSQLTransactionErrorCallback.h: Ditto.
   6308 
   6309 2009-05-26  Dirk Schulze  <krit (a] webkit.org>
   6310 
   6311         Reviewed by Nikolas Zimmermann.
   6312 
   6313         Move FilterEffect to platform/graphics/filters. First step to get an
   6314         SVG independent filter system.
   6315 
   6316         * GNUmakefile.am:
   6317         * WebCore.pro:
   6318         * WebCore.xcodeproj/project.pbxproj:
   6319         * platform/graphics/filters/FilterEffect.cpp: Added.
   6320         (WebCore::FilterEffect::FilterEffect):
   6321         (WebCore::FilterEffect::~FilterEffect):
   6322         (WebCore::FilterEffect::externalRepresentation):
   6323         * platform/graphics/filters/FilterEffect.h: Added.
   6324         (WebCore::FilterEffect::xBoundingBoxMode):
   6325         (WebCore::FilterEffect::setXBoundingBoxMode):
   6326         (WebCore::FilterEffect::yBoundingBoxMode):
   6327         (WebCore::FilterEffect::setYBoundingBoxMode):
   6328         (WebCore::FilterEffect::widthBoundingBoxMode):
   6329         (WebCore::FilterEffect::setWidthBoundingBoxMode):
   6330         (WebCore::FilterEffect::heightBoundingBoxMode):
   6331         (WebCore::FilterEffect::setHeightBoundingBoxMode):
   6332         (WebCore::FilterEffect::subRegion):
   6333         (WebCore::FilterEffect::setSubRegion):
   6334         (WebCore::FilterEffect::resultImage):
   6335         (WebCore::FilterEffect::setEffectBuffer):
   6336         * svg/FilterEffect.cpp: Removed.
   6337         * svg/FilterEffect.h: Removed.
   6338 
   6339 2009-05-26  Dimitri Glazkov  <dglazkov (a] chromium.org>
   6340 
   6341         Reviewed by Maciej Stachowiak.
   6342 
   6343         https://bugs.webkit.org/show_bug.cgi?id=23649
   6344         Update SQLTransactionErrorCallback to not return a value per changes in
   6345         HTML5 spec.
   6346 
   6347         Test: storage/transaction-error-callback.html
   6348 
   6349         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
   6350         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
   6351         * bindings/js/JSCustomSQLTransactionErrorCallback.h:
   6352         * storage/SQLTransaction.cpp:
   6353         (WebCore::SQLTransaction::SQLTransaction):
   6354         (WebCore::SQLTransaction::postflightAndCommit):
   6355         (WebCore::SQLTransaction::handleTransactionError):
   6356         (WebCore::SQLTransaction::deliverTransactionErrorCallback):
   6357         (WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback):
   6358         * storage/SQLTransaction.h:
   6359         * storage/SQLTransactionErrorCallback.h:
   6360 
   6361 2009-05-26  David Hyatt  <hyatt (a] apple.com>
   6362 
   6363         Reviewed by Darin Adler.
   6364 
   6365         Fix for https://bugs.webkit.org/show_bug.cgi?id=25969
   6366 
   6367         Detect the case where we can fit without scrollbars when the view shrinks, so that we don't mistakenly
   6368         continue to show scrollbars.
   6369 
   6370         Added two tests in fast/dynamic.
   6371 
   6372         * platform/ScrollView.cpp:
   6373         (WebCore::ScrollView::updateScrollbars):
   6374 
   6375 2009-05-26  Chris Fleizach  <cfleizach (a] apple.com>
   6376 
   6377         Reviewed by Mark Rowe.
   6378 
   6379         Bug 25801: change AccessibilityAria -> AccessibilityARIA
   6380         https://bugs.webkit.org/show_bug.cgi?id=25801
   6381 
   6382         * GNUmakefile.am:
   6383         * WebCore.order:
   6384         * WebCore.pro:
   6385         * WebCore.vcproj/WebCore.vcproj:
   6386         * WebCore.xcodeproj/project.pbxproj:
   6387         * WebCoreSources.bkl:
   6388         * accessibility/AXObjectCache.cpp:
   6389         (WebCore::AXObjectCache::getOrCreate):
   6390         * accessibility/AccessibilityARIAGrid.cpp: Copied from WebCore/accessibility/AccessibilityAriaGrid.cpp.
   6391         (WebCore::AccessibilityARIAGrid::AccessibilityARIAGrid):
   6392         (WebCore::AccessibilityARIAGrid::~AccessibilityARIAGrid):
   6393         (WebCore::AccessibilityARIAGrid::create):
   6394         (WebCore::AccessibilityARIAGrid::addChild):
   6395         (WebCore::AccessibilityARIAGrid::addChildren):
   6396         (WebCore::AccessibilityARIAGrid::cellForColumnAndRow):
   6397         * accessibility/AccessibilityARIAGrid.h: Copied from WebCore/accessibility/AccessibilityAriaGrid.h.
   6398         * accessibility/AccessibilityARIAGridCell.cpp: Copied from WebCore/accessibility/AccessibilityAriaGridCell.cpp.
   6399         (WebCore::AccessibilityARIAGridCell::AccessibilityARIAGridCell):
   6400         (WebCore::AccessibilityARIAGridCell::~AccessibilityARIAGridCell):
   6401         (WebCore::AccessibilityARIAGridCell::create):
   6402         (WebCore::AccessibilityARIAGridCell::parentTable):
   6403         (WebCore::AccessibilityARIAGridCell::rowIndexRange):
   6404         (WebCore::AccessibilityARIAGridCell::columnIndexRange):
   6405         * accessibility/AccessibilityARIAGridCell.h: Copied from WebCore/accessibility/AccessibilityAriaGridCell.h.
   6406         * accessibility/AccessibilityARIAGridRow.cpp: Copied from WebCore/accessibility/AccessibilityAriaGridRow.cpp.
   6407         (WebCore::AccessibilityARIAGridRow::AccessibilityARIAGridRow):
   6408         (WebCore::AccessibilityARIAGridRow::~AccessibilityARIAGridRow):
   6409         (WebCore::AccessibilityARIAGridRow::create):
   6410         (WebCore::AccessibilityARIAGridRow::parentTable):
   6411         (WebCore::AccessibilityARIAGridRow::headerObject):
   6412         * accessibility/AccessibilityARIAGridRow.h: Copied from WebCore/accessibility/AccessibilityAriaGridRow.h.
   6413         * accessibility/AccessibilityAriaGrid.cpp: Removed.
   6414         * accessibility/AccessibilityAriaGrid.h: Removed.
   6415         * accessibility/AccessibilityAriaGridCell.cpp: Removed.
   6416         * accessibility/AccessibilityAriaGridCell.h: Removed.
   6417         * accessibility/AccessibilityAriaGridRow.cpp: Removed.
   6418         * accessibility/AccessibilityAriaGridRow.h: Removed.
   6419 
   6420 2009-05-26  Stephen White  <senorblanco (a] chromium.org>
   6421 
   6422         Reviewed by Dimitri Glazkov.
   6423 
   6424         https://bugs.webkit.org/show_bug.cgi?id=26012
   6425 
   6426         Fix the Skia path to normalize the given source rect when
   6427         drawing patterns, so it accepts negative width/height (as CG does).
   6428         Fixes Chromium bug http://www.crbug.com/6167.
   6429         * platform/graphics/skia/ImageSkia.cpp:
   6430         (WebCore::Image::drawPattern):
   6431 
   6432 2009-05-26  Pavel Feldman  <pfeldman (a] chromium.org>
   6433 
   6434         Reviewed by Timothy Hatcher.
   6435 
   6436         Serialize calls to WebInspector. This is the first step where method 
   6437         calls are being serialized to arrays (not yet JSON stringified ones) and 
   6438         are being dispatched on the client. This change also allows client to override 
   6439         InspectorFrontend, so that the serialized calls can be made on a given object
   6440         instead of in-process WebInspector global. This will be the main control flow
   6441         when InspectorController is decoupled from the in-process frontend.
   6442 
   6443         https://bugs.webkit.org/show_bug.cgi?id=26010
   6444 
   6445         * inspector/InspectorController.cpp:
   6446         (WebCore::InspectorController::scriptObjectReady):
   6447         (WebCore::InspectorController::overrideFrontendObject):
   6448         (WebCore::InspectorController::show):
   6449         (WebCore::InspectorController::populateScriptObjects):
   6450         * inspector/InspectorController.h:
   6451         * inspector/InspectorFrontend.cpp:
   6452         (WebCore::InspectorFrontend::addMessageToConsole):
   6453         (WebCore::InspectorFrontend::addResource):
   6454         (WebCore::InspectorFrontend::updateResource):
   6455         (WebCore::InspectorFrontend::removeResource):
   6456         (WebCore::InspectorFrontend::updateFocusedNode):
   6457         (WebCore::InspectorFrontend::setAttachedWindow):
   6458         (WebCore::InspectorFrontend::inspectedWindowScriptObjectCleared):
   6459         (WebCore::InspectorFrontend::showPanel):
   6460         (WebCore::InspectorFrontend::populateInterface):
   6461         (WebCore::InspectorFrontend::reset):
   6462         (WebCore::InspectorFrontend::debuggerWasEnabled):
   6463         (WebCore::InspectorFrontend::debuggerWasDisabled):
   6464         (WebCore::InspectorFrontend::profilerWasEnabled):
   6465         (WebCore::InspectorFrontend::profilerWasDisabled):
   6466         (WebCore::InspectorFrontend::parsedScriptSource):
   6467         (WebCore::InspectorFrontend::failedToParseScriptSource):
   6468         (WebCore::InspectorFrontend::addProfile):
   6469         (WebCore::InspectorFrontend::setRecordingProfile):
   6470         (WebCore::InspectorFrontend::pausedScript):
   6471         (WebCore::InspectorFrontend::resumedScript):
   6472         (WebCore::InspectorFrontend::addDatabase):
   6473         (WebCore::InspectorFrontend::addDOMStorage):
   6474         (WebCore::InspectorFrontend::newFunctionCall):
   6475         (WebCore::InspectorFrontend::callSimpleFunction):
   6476         * inspector/InspectorFrontend.h:
   6477         * inspector/front-end/inspector.js:
   6478         (WebInspector.dispatch):
   6479 
   6480 2009-05-25  Alexey Proskuryakov  <ap (a] webkit.org>
   6481 
   6482         Reviewed by Darin Adler.
   6483 
   6484         <rdar://problem/6918671> REGRESSION (r41700): Crashes in debug DumpRenderTree at RefCountedBase::ref().
   6485 
   6486         * dom/QualifiedName.cpp: (WebCore::QualifiedName::QualifiedName):
   6487         * dom/QualifiedName.h: (WebCore::QualifiedName::QualifiedNameImpl::QualifiedNameImpl):
   6488         Adjust empty namespace before QNameComponentsTranslator black magic, not after.
   6489 
   6490 2009-05-25  David Levin  <levin (a] chromium.org>
   6491 
   6492         Reviewed by Maciej Stachowiak and Oliver Hunt.
   6493 
   6494         Added forwarding headers.
   6495 
   6496         * ForwardingHeaders/wtf/CrossThreadRefCounted.h: Added.
   6497         * ForwardingHeaders/wtf/OwnFastMallocPtr.h: Added.
   6498 
   6499 2009-05-25  Anders Carlsson  <andersca (a] apple.com>
   6500 
   6501         Reviewed by Sam Weinig.
   6502 
   6503         - WebCore side of <rdar://problem/6914001>.
   6504 
   6505         Add a new m_allowPopupsFromPlugin flag.
   6506         
   6507         * bindings/js/ScriptController.cpp:
   6508         (WebCore::ScriptController::ScriptController):
   6509         (WebCore::ScriptController::processingUserGesture):
   6510         * bindings/js/ScriptController.h:
   6511         (WebCore::ScriptController::setAllowPopupsFromPlugin):
   6512         (WebCore::ScriptController::allowPopupsFromPlugin):
   6513 
   6514 2009-05-25  Adam Barth  <abarth (a] webkit.org>
   6515 
   6516         Reviewed by Sam Weinig.
   6517 
   6518         https://bugs.webkit.org/show_bug.cgi?id=26006
   6519 
   6520         Sort out our use of dynamicGlobalObject and lexicalGlobalObject for
   6521         window.location.  The correct use appears to be as follows:
   6522 
   6523         1) Use dynamicGlobalObject to find the user gesture.
   6524         2) Use dynamicGlobalObject to complete URLs.
   6525         3) Use lexicalGlobalObject to find the referrer.
   6526         4) Use lexicalGlobalObject for the frame navigation checks.
   6527         5) Use lexicalGlobalObject for the XSS checks.
   6528 
   6529         Tests: http/tests/security/frameNavigation/context-for-location-assign.html
   6530                http/tests/security/frameNavigation/context-for-location-href.html
   6531                http/tests/security/frameNavigation/context-for-location.html
   6532 
   6533         * bindings/js/JSDOMBinding.cpp:
   6534         (WebCore::shouldAllowNavigation):
   6535         (WebCore::toLexicalFrame):
   6536         (WebCore::processingUserGesture):
   6537         (WebCore::completeURL):
   6538         * bindings/js/JSDOMBinding.h:
   6539         * bindings/js/JSDOMWindowCustom.cpp:
   6540         (WebCore::JSDOMWindow::setLocation):
   6541         * bindings/js/JSLocationCustom.cpp:
   6542         (WebCore::navigateIfAllowed):
   6543         (WebCore::JSLocation::setHref):
   6544         (WebCore::JSLocation::replace):
   6545         (WebCore::JSLocation::reload):
   6546         (WebCore::JSLocation::assign):
   6547         (WebCore::JSLocation::toString):
   6548         (WebCore::JSLocationPrototype::customPut):
   6549         * bindings/v8/V8Utilities.cpp:
   6550         (WebCore::processingUserGesture):
   6551         (WebCore::shouldAllowNavigation):
   6552         (WebCore::completeURL):
   6553         (WebCore::navigateIfAllowed):
   6554         * bindings/v8/V8Utilities.h:
   6555         * bindings/v8/custom/V8DOMWindowCustom.cpp:
   6556         (WebCore::V8Custom::WindowSetLocation):
   6557         * bindings/v8/custom/V8LocationCustom.cpp:
   6558         (WebCore::ACCESSOR_SETTER):
   6559         (WebCore::CALLBACK_FUNC_DECL):
   6560 
   6561 2009-05-25  Fridrich Strba  <fridrich.strba (a] bluewin.ch>
   6562 
   6563         Reviewed by Maciej Stachowiak.
   6564 
   6565         With Windows compilers older then MSVC 2005, the functions
   6566         gmtime_s and localtime_s don't exist. The gmtime and localtime are
   6567         on Windows always thread safe. So use them in the cases where
   6568         gmtime_s and localtime_s are not present.
   6569 
   6570         * loader/FTPDirectoryDocument.cpp:
   6571         * loader/FTPDirectoryParser.cpp:
   6572 
   6573 2009-05-25  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   6574 
   6575         Reviewed by Simon Hausmann.
   6576 
   6577         Follow up on r44120. PluginPackageMac.cpp is used
   6578         by Qt on Mac and contained a copy of the m_browserFunc
   6579         assignments and ::equal, ::hash and ::compareFileVersion.
   6580         Change it to use the ones from PluginPackage.cpp as well.
   6581 
   6582         * plugins/mac/PluginPackageMac.cpp:
   6583         (WebCore::PluginPackage::load):
   6584 
   6585 2009-05-25  Simon Hausmann  <simon.hausmann (a] nokia.com>
   6586 
   6587         Reviewed by Tor Arne Vestb.
   6588 
   6589         https://bugs.webkit.org/show_bug.cgi?id=25612
   6590 
   6591         Support conditionals in the tag factories, by placing
   6592         feature #ifdefs around the individual factory functions
   6593         and the registration.
   6594 
   6595         Made the Audio and Video elements conditional in the tag factories
   6596 
   6597         * html/HTMLTagNames.in:
   6598         * dom/make_names.pl:
   6599 
   6600 2009-05-25  Simon Hausmann  <simon.hausmann (a] nokia.com>
   6601 
   6602         Fix the Gtk build when video is disabled.
   6603 
   6604         * GNUmakefile.am: Always generate and compile the IDL files for the media
   6605         elements. They contain proper feature #ifdefs.
   6606 
   6607 2009-05-25  Simon Hausmann  <simon.hausmann (a] nokia.com>
   6608 
   6609         Fix the Qt build when video is disabled.
   6610 
   6611         * WebCore.pro: Always generate the IDL files for the media elements. They
   6612         contain proper ENABLE(VIDEO) #ifdefs.
   6613 
   6614 2009-05-25  Adam Barth  <abarth (a] webkit.org>
   6615 
   6616         Reviewed by Maciej Stachowiak.
   6617 
   6618         https://bugs.webkit.org/show_bug.cgi?id=26004
   6619 
   6620         The origin for postMessage should follow lexical scope, not dynamic
   6621         scope.  Yes, this is a super-obscure corner case.
   6622 
   6623         Test: http/tests/security/postMessage/origin-follows-lexical-scope.html
   6624 
   6625         * bindings/js/JSDOMWindowCustom.cpp:
   6626         (WebCore::JSDOMWindow::postMessage):
   6627         * bindings/v8/custom/V8DOMWindowCustom.cpp:
   6628         (WebCore::CALLBACK_FUNC_DECL):
   6629 
   6630 2009-05-24  Darin Fisher  <darin (a] chromium.org>
   6631 
   6632         Reviewed by Mark Rowe.
   6633 
   6634         Fix build bustage related to PassOwnPtr changes.
   6635 
   6636         https://bugs.webkit.org/show_bug.cgi?id=25999
   6637 
   6638         * platform/graphics/chromium/TransparencyWin.cpp:
   6639 
   6640 2009-05-24  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   6641 
   6642         Reviewed by Maciej Stachowiak.
   6643 
   6644         https://bugs.webkit.org/show_bug.cgi?id=25988
   6645 
   6646         Minor cleanup in PluginPackage::hash. Let the compiler
   6647         figure out the size of the array. Do not have it in the
   6648         definition and specially not the in the call to
   6649         StringImpl::hash.
   6650 
   6651         * plugins/PluginPackage.cpp:
   6652         (WebCore::PluginPackage::hash):
   6653 
   6654 2009-05-24  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   6655 
   6656         Reviewed by Maciej Stachowiak.
   6657 
   6658         https://bugs.webkit.org/show_bug.cgi?id=25988
   6659 
   6660         Move ::hash, ::equal and ::compareFileVersion from
   6661         the duplicated copies in PluginPackageQt.cpp and
   6662         PluginPackageGtk to PluginPackage.cpp. We need to #ifdef
   6663         this for the PluginPackageWin version. Use the new style
   6664         ENABLE() for this feature/policy and enable it in the Gtk+
   6665         and Qt buildsystem.
   6666 
   6667         * GNUmakefile.am:
   6668         * WebCore.pro:
   6669         * plugins/PluginPackage.cpp:
   6670         (WebCore::PluginPackage::hash):
   6671         (WebCore::PluginPackage::equal):
   6672         (WebCore::PluginPackage::compareFileVersion):
   6673         * plugins/gtk/PluginPackageGtk.cpp:
   6674         * plugins/qt/PluginPackageQt.cpp:
   6675 
   6676 2009-05-24  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   6677 
   6678         Reviewed by Maciej Stachowiak.
   6679 
   6680         https://bugs.webkit.org/show_bug.cgi?id=25988
   6681 
   6682         So far the initialization of the browserfuncs struct
   6683         is done in PluginPackageQt, PluginPackageGtk and
   6684         PluginPackageWin there is no need for this duplication.
   6685 
   6686         The PluginPackageWin version got copied to PluginPackage
   6687 
   6688         * plugins/PluginPackage.cpp:
   6689         (WebCore::PluginPackage::initializeBrowserFuncs):
   6690         * plugins/PluginPackage.h:
   6691         * plugins/gtk/PluginPackageGtk.cpp:
   6692         (WebCore::PluginPackage::load):
   6693         * plugins/qt/PluginPackageQt.cpp:
   6694         (WebCore::PluginPackage::load):
   6695         * plugins/win/PluginPackageWin.cpp:
   6696         (WebCore::PluginPackage::load):
   6697 
   6698 2009-05-24  Dirk Schulze  <krit (a] webkit.org>
   6699 
   6700         Reviewed by Nikolas Zimmermann.
   6701 
   6702         WebKit needs cross-platform filter system
   6703         [https://bugs.webkit.org/show_bug.cgi?id=19991]
   6704 
   6705         Added standard input for filter system.
   6706 
   6707         No testcases were added. Filter system is still off.
   6708 
   6709         * GNUmakefile.am:
   6710         * WebCore.pro:
   6711         * WebCore.xcodeproj/project.pbxproj:
   6712         * platform/graphics/filters/SourceAlpha.cpp: Added.
   6713         (WebCore::SourceAlpha::create):
   6714         (WebCore::SourceAlpha::effectName):
   6715         (WebCore::SourceAlpha::apply):
   6716         (WebCore::SourceAlpha::dump):
   6717         * platform/graphics/filters/SourceAlpha.h: Added.
   6718         (WebCore::SourceAlpha::SourceAlpha):
   6719         * platform/graphics/filters/SourceGraphic.cpp: Added.
   6720         (WebCore::SourceGraphic::create):
   6721         (WebCore::SourceGraphic::effectName):
   6722         (WebCore::SourceGraphic::apply):
   6723         (WebCore::SourceGraphic::dump):
   6724         * platform/graphics/filters/SourceGraphic.h: Added.
   6725         (WebCore::SourceGraphic::SourceGraphic):
   6726         * svg/FilterBuilder.cpp: Added.
   6727         (WebCore::FilterBuilder::FilterBuilder):
   6728         (WebCore::FilterBuilder::add):
   6729         (WebCore::FilterBuilder::getEffectById):
   6730         (WebCore::FilterBuilder::clearEffects):
   6731         * svg/FilterBuilder.h:
   6732 
   6733 2009-05-24  Simon Hausmann  <simon.hausmann (a] nokia.com>
   6734 
   6735         Reviewed by Maciej Stachowiak.
   6736 
   6737         https://bugs.webkit.org/show_bug.cgi?id=25612
   6738 
   6739         Add support conditionals in the JSC bindings generator code for attributes,
   6740         by placing feature #ifdefs around the setters/getters.
   6741 
   6742         Made the audio and video element specific DOM attributes conditional
   6743         in the generated code, by moving the #ifdefs from the IDL files into
   6744         the generated code. This allows for re-using the same generated code
   6745         with or without ENABLE(VIDEO).
   6746 
   6747         * page/DOMWindow.idl:
   6748         * bindings/scripts/CodeGeneratorJS.pm:
   6749 
   6750 2009-05-23  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   6751 
   6752         Unreviewed build fix for Qt. Change signature to have PassOwnPtr.
   6753 
   6754         * platform/text/qt/TextCodecQt.cpp:
   6755         (WebCore::newTextCodecQt):
   6756 
   6757 2009-05-23  Dan Bernstein  <mitz (a] apple.com>
   6758 
   6759         Reviewed by Darin Adler.
   6760 
   6761         - clean up ColorMac a little
   6762 
   6763         * platform/graphics/mac/ColorMac.h: Whitespace change.
   6764         * platform/graphics/mac/ColorMac.mm: Removed redundant #import
   6765         statements and sorted the remaining ones.
   6766         (WebCore::makeRGBAFromNSColor): Replaced four Objective-C method calls
   6767         with a single call and removed redundant casts to int.
   6768         (WebCore::nsColor): Removed ".0f" from number literals used as CGFloats.
   6769         In one case, this avoids an intermediate conversion to float before
   6770         conversion to double on 64-bit.
   6771         (WebCore::CGColorFromNSColor): Replaced four Objective-C method calls
   6772         with a single call.
   6773         (WebCore::focusRingColor):
   6774         (+[WebCoreControlTintObserver controlTintDidChange]): Whitespace change.
   6775 
   6776 2009-05-23  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   6777 
   6778         Reviewed by Xan Lopez.
   6779 
   6780         [Gtk] ROLE_ROW_HEADER should not be used for list item bullets/numbers
   6781         https://bugs.webkit.org/show_bug.cgi?id=25900
   6782 
   6783         Use ATK_ROLE_TEXT for ListMarkerRole.
   6784 
   6785         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
   6786         (atkRole):
   6787 
   6788 2009-05-23  David Kilzer  <ddkilzer (a] apple.com>
   6789 
   6790         Reformat WebCore::requiresContextForWordBoundary()
   6791 
   6792         * platform/text/TextBoundaries.h:
   6793         (WebCore::requiresContextForWordBoundary):
   6794 
   6795 2009-05-23  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   6796 
   6797         Not reviewed. Roll out ResourceHandle patch, that I accidently included in my last commit.
   6798 
   6799         * platform/network/ResourceHandle.cpp:
   6800         (WebCore::ResourceHandle::shouldContentSniffURL):
   6801 
   6802 2009-05-23  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   6803 
   6804         Reviewed by Darin Adler.
   6805 
   6806         Fixes: https://bugs.webkit.org/show_bug.cgi?id=23808
   6807 
   6808         After a long journey, add the last missing ABC to share form control element support with HTMLSelectElement.
   6809         RenderListBox/RenderMenuList operates on SelectElement instead of HTMLSelectElement now, querying selected index etc.
   6810         This makes it possible to use these render objects for ie. WML, as it's done before for input & option elements.
   6811 
   6812         WMLSelectElement will be created soon, in a follow-up patch, adding more methods to SelectElement, sharing code between
   6813         HTMLSelectElement/WMLSelectElement.
   6814 
   6815         * GNUmakefile.am:
   6816         * WebCore.pro:
   6817         * WebCore.vcproj/WebCore.vcproj:
   6818         * WebCore.xcodeproj/project.pbxproj:
   6819         * WebCoreSources.bkl:
   6820         * accessibility/AccessibilityListBox.cpp:
   6821         (WebCore::AccessibilityListBox::addChildren):
   6822         (WebCore::AccessibilityListBox::doAccessibilityHitTest):
   6823         * accessibility/AccessibilityListBoxOption.cpp:
   6824         (WebCore::AccessibilityListBoxOption::listBoxOptionIndex):
   6825         * accessibility/AccessibilityRenderObject.cpp:
   6826         (WebCore::AccessibilityRenderObject::actionElement):
   6827         * dom/Element.h:
   6828         (WebCore::Element::isFormControlElement):
   6829         (WebCore::Element::dispatchFormControlChangeEvent):
   6830         * dom/SelectElement.cpp: Added.
   6831         (WebCore::toSelectElement):
   6832         * dom/SelectElement.h: Added.
   6833         (WebCore::SelectElement::~SelectElement):
   6834         * html/HTMLFormControlElement.cpp:
   6835         (WebCore::HTMLFormControlElement::dispatchFormControlChangeEvent):
   6836         * html/HTMLFormControlElement.h:
   6837         * html/HTMLInputElement.cpp:
   6838         (WebCore::HTMLInputElement::setChecked):
   6839         (WebCore::HTMLInputElement::defaultEventHandler):
   6840         * html/HTMLOptionElement.cpp:
   6841         (WebCore::HTMLOptionElement::index):
   6842         * html/HTMLSelectElement.cpp:
   6843         (WebCore::HTMLSelectElement::selectedIndex):
   6844         (WebCore::HTMLSelectElement::lastSelectedListIndex):
   6845         (WebCore::HTMLSelectElement::deselectItems):
   6846         (WebCore::HTMLSelectElement::setSelectedIndex):
   6847         (WebCore::HTMLSelectElement::length):
   6848         (WebCore::HTMLSelectElement::remove):
   6849         (WebCore::HTMLSelectElement::value):
   6850         (WebCore::HTMLSelectElement::setValue):
   6851         (WebCore::HTMLSelectElement::saveFormControlState):
   6852         (WebCore::HTMLSelectElement::restoreFormControlState):
   6853         (WebCore::HTMLSelectElement::selectAll):
   6854         (WebCore::HTMLSelectElement::appendFormData):
   6855         (WebCore::HTMLSelectElement::optionToListIndex):
   6856         (WebCore::HTMLSelectElement::listToOptionIndex):
   6857         (WebCore::HTMLSelectElement::recalcListItems):
   6858         (WebCore::HTMLSelectElement::reset):
   6859         (WebCore::HTMLSelectElement::dispatchFocusEvent):
   6860         (WebCore::HTMLSelectElement::dispatchBlurEvent):
   6861         (WebCore::HTMLSelectElement::menuListDefaultEventHandler):
   6862         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
   6863         (WebCore::HTMLSelectElement::setActiveSelectionAnchorIndex):
   6864         (WebCore::HTMLSelectElement::updateListBoxSelection):
   6865         (WebCore::HTMLSelectElement::menuListOnChange):
   6866         (WebCore::HTMLSelectElement::listBoxOnChange):
   6867         (WebCore::HTMLSelectElement::saveLastSelection):
   6868         (WebCore::HTMLSelectElement::typeAheadFind):
   6869         (WebCore::HTMLSelectElement::nextSelectableListIndex):
   6870         (WebCore::HTMLSelectElement::previousSelectableListIndex):
   6871         (WebCore::HTMLSelectElement::setLength):
   6872         (WebCore::HTMLSelectElement::checkListItems):
   6873         * html/HTMLSelectElement.h:
   6874         (WebCore::HTMLSelectElement::size):
   6875         (WebCore::HTMLSelectElement::multiple):
   6876         (WebCore::HTMLSelectElement::listItems):
   6877         (WebCore::HTMLSelectElement::setActiveSelectionEndIndex):
   6878         * platform/network/ResourceHandle.cpp:
   6879         (WebCore::ResourceHandle::shouldContentSniffURL):
   6880         * rendering/RenderFileUploadControl.cpp:
   6881         (WebCore::RenderFileUploadControl::valueChanged):
   6882         * rendering/RenderListBox.cpp:
   6883         (WebCore::RenderListBox::RenderListBox):
   6884         (WebCore::RenderListBox::updateFromElement):
   6885         (WebCore::RenderListBox::scrollToRevealSelection):
   6886         (WebCore::RenderListBox::size):
   6887         (WebCore::RenderListBox::numItems):
   6888         (WebCore::RenderListBox::paintItemForeground):
   6889         (WebCore::RenderListBox::paintItemBackground):
   6890         (WebCore::RenderListBox::panScroll):
   6891         (WebCore::RenderListBox::autoscroll):
   6892         (WebCore::RenderListBox::stopAutoscroll):
   6893         (WebCore::RenderListBox::valueChanged):
   6894         (WebCore::RenderListBox::nodeAtPoint):
   6895         * rendering/RenderListBox.h:
   6896         * rendering/RenderMenuList.cpp:
   6897         (WebCore::RenderMenuList::RenderMenuList):
   6898         (WebCore::RenderMenuList::updateOptionsWidth):
   6899         (WebCore::RenderMenuList::updateFromElement):
   6900         (WebCore::RenderMenuList::setTextFromOption):
   6901         (WebCore::RenderMenuList::showPopup):
   6902         (WebCore::RenderMenuList::valueChanged):
   6903         (WebCore::RenderMenuList::itemText):
   6904         (WebCore::RenderMenuList::itemIsEnabled):
   6905         (WebCore::RenderMenuList::itemStyle):
   6906         (WebCore::RenderMenuList::itemBackgroundColor):
   6907         (WebCore::RenderMenuList::listSize):
   6908         (WebCore::RenderMenuList::selectedIndex):
   6909         (WebCore::RenderMenuList::itemIsSeparator):
   6910         (WebCore::RenderMenuList::itemIsLabel):
   6911         (WebCore::RenderMenuList::itemIsSelected):
   6912         (WebCore::RenderMenuList::setTextFromItem):
   6913         * rendering/RenderMenuList.h:
   6914         * rendering/RenderSlider.cpp:
   6915         (WebCore::RenderSlider::setValueForPosition):
   6916 
   6917 2009-05-23  David Kilzer  <ddkilzer (a] apple.com>
   6918 
   6919         Fix Gtk/Qt builds for PassOwnPtr
   6920 
   6921         * platform/graphics/cairo/ImageCairo.cpp:
   6922         (WebCore::Image::drawPattern): Use an OwnPtr<ImageBuffer>
   6923         instead of an std::auto_ptr<ImageBuffer> to store the result of
   6924         ImageBuffer::create() now that it returns a
   6925         PassOwnPtr<ImageBuffer>.
   6926         * platform/graphics/qt/PathQt.cpp:
   6927         (WebCore::Path::strokeContains): Ditto.
   6928         (WebCore::Path::strokeBoundingRect): Ditto.
   6929 
   6930 2009-05-23  David Kilzer  <ddkilzer (a] apple.com>
   6931 
   6932         Part 2 of 2: Bug 25495: Implement PassOwnPtr and replace uses of std::auto_ptr
   6933 
   6934         <https://bugs.webkit.org/show_bug.cgi?id=25495>
   6935 
   6936         Reviewed by Oliver Hunt.
   6937 
   6938         No test cases added since there is no change in behavior.
   6939 
   6940         * WebCore.base.exp: Updated export for
   6941         HistoryItem::setRedirectURLs() which now takes a PassOwnPtr.
   6942         * dom/Node.cpp:
   6943         (WebCore::Node::childNodes): Use NodeListsNodeData::create()
   6944         instead of new NodeListsNodeData.
   6945         (WebCore::Node::registerDynamicNodeList): Ditto.
   6946         (WebCore::Node::getElementsByTagNameNS): Ditto.
   6947         (WebCore::Node::getElementsByName): Ditto.
   6948         (WebCore::Node::getElementsByClassName): Ditto.
   6949         * dom/NodeRareData.h:
   6950         (WebCore::NodeListsNodeData::create): Added.  Implements
   6951         create() pattern popularized by RefCounted classes.
   6952         (WebCore::NodeListsNodeData::NodeListsNodeData): Declared
   6953         private constructor.
   6954         (WebCore::NodeRareData::setNodeLists): Now takes a PassOwnPtr<>
   6955         instead of an auto_ptr<>.
   6956         * history/HistoryItem.cpp:
   6957         (WebCore::HistoryItem::setRedirectURLs): Ditto.
   6958         * history/HistoryItem.h:
   6959         (WebCore::HistoryItem::setRedirectURLs): Ditto.
   6960         * html/CanvasRenderingContext2D.cpp:
   6961         (WebCore::CanvasRenderingContext2D::drawTextInternal): Use
   6962         OwnPtr<> instead of auto_ptr<> for stack variable.
   6963         * html/HTMLCanvasElement.cpp:
   6964         (WebCore::HTMLCanvasElement::createImageBuffer): Updated to use
   6965         assignment operator now that ImageBuffer::create() returns a
   6966         PassOwnPtr<>.
   6967         * loader/EmptyClients.h:
   6968         (WebCore::EmptyChromeClient::createHTMLParserQuirks): Return a
   6969         PassOwnPtr<> instead of a raw HTMLParserQuirks pointer.
   6970         * page/ChromeClient.h:
   6971         (WebCore::ChromeClient::createHTMLParserQuirks): Ditto.
   6972         * platform/graphics/GeneratedImage.cpp:
   6973         (WebCore::GeneratedImage::drawPattern): Use OwnPtr<> instead of
   6974         auto_ptr<> for stack variable.
   6975         * platform/graphics/ImageBuffer.h:
   6976         (WebCore::ImageBuffer::create): Return PassOwnPtr<> instead of
   6977         auto_ptr<>.  Use OwnPtr<> instead of auto_ptr<> for stack
   6978         variable.
   6979         * platform/mac/ScrollbarThemeMac.mm:
   6980         (WebCore::ScrollbarThemeMac::paint): Use OwnPtr<> instead of
   6981         auto_ptr<> for stack variable.
   6982         * platform/text/TextCodec.h:
   6983         (WebCore::NewTextCodecFunction): Return PassOwnPtr<> instead of
   6984         auto_ptr<>.
   6985         * platform/text/TextCodecICU.cpp:
   6986         (WebCore::newTextCodecICU): Ditto.
   6987         * platform/text/TextCodecLatin1.cpp:
   6988         (WebCore::newStreamingTextDecoderWindowsLatin1): Ditto.
   6989         * platform/text/TextCodecUTF16.cpp:
   6990         (WebCore::newStreamingTextDecoderUTF16LE): Ditto.
   6991         (WebCore::newStreamingTextDecoderUTF16BE): Ditto.
   6992         * platform/text/TextCodecUserDefined.cpp:
   6993         (WebCore::newStreamingTextDecoderUserDefined): Ditto.
   6994         * platform/text/TextEncodingRegistry.cpp:
   6995         (WebCore::newTextCodec): Ditto.
   6996         * platform/text/TextEncodingRegistry.h:
   6997         (WebCore::newTextCodec): Ditto.
   6998         * platform/text/mac/TextCodecMac.cpp:
   6999         (WebCore::newTextCodecMac): Ditto.
   7000         * rendering/RenderBoxModelObject.cpp:
   7001         (WebCore::RenderBoxModelObject::paintFillLayerExtended): Use
   7002         OwnPtr<> instead of auto_ptr<> for stack variable.
   7003         * svg/SVGMaskElement.cpp:
   7004         (WebCore::SVGMaskElement::drawMaskerContent): Ditto.  Return
   7005         OwnPtr<> instead of auto_ptr<>.
   7006         * svg/SVGMaskElement.h:
   7007         (WebCore::SVGMaskElement::drawMaskerContent): Return OwnPtr<>
   7008         instead of auto_ptr<>.
   7009         * svg/SVGPatternElement.cpp:
   7010         (WebCore::SVGPatternElement::buildPattern): Use OwnPtr<> instead
   7011         of auto_ptr<> for stack variable.
   7012         * svg/graphics/SVGImage.cpp:
   7013         (WebCore::SVGImage::nativeImageForCurrentFrame): Updated to use
   7014         assignment operator now that ImageBuffer::create() returns a
   7015         PassOwnPtr<>.
   7016         * svg/graphics/SVGPaintServerGradient.cpp:
   7017         (WebCore::createMaskAndSwapContextForTextGradient): Use OwnPtr<>
   7018         instead of auto_ptr<> for stack variable.
   7019         * svg/graphics/SVGPaintServerPattern.cpp:
   7020         (WebCore::SVGPaintServerPattern::setTile): Updated to take a
   7021         PassOwnPtr<> instead of an auto_ptr<>.
   7022         (WebCore::SVGPaintServerPattern::setup): Use OwnPtr<> instead of
   7023         auto_ptr<> for stack variable.
   7024         * svg/graphics/SVGPaintServerPattern.h:
   7025         (WebCore::SVGPaintServerPattern::setTile): Updated to take a
   7026         PassOwnPtr<> instead of an auto_ptr<>.
   7027         * svg/graphics/SVGResourceMasker.cpp:
   7028         (WebCore::SVGResourceMasker::applyMask): Updated to use
   7029         assignment operator now that SVGMaskElement::drawMaskerContent()
   7030         returns a PassOwnPtr<>.  Use OwnPtr<> instead of auto_ptr<> for
   7031         stack variable.
   7032 
   7033 2009-05-23  David Kilzer  <ddkilzer (a] apple.com>
   7034 
   7035         Part 1 of 2: Bug 25495: Implement PassOwnPtr and replace uses of std::auto_ptr
   7036 
   7037         <https://bugs.webkit.org/show_bug.cgi?id=25495>
   7038 
   7039         Reviewed by Oliver Hunt.
   7040 
   7041         * ForwardingHeaders/wtf/OwnPtrCommon.h: Added.
   7042         * ForwardingHeaders/wtf/PassOwnPtr.h: Added.
   7043         * WebCore.vcproj/WebCore.vcproj: Added OwnPtrCommon.h and
   7044         PassOwnPtr.h.
   7045 
   7046 2009-05-23  David Kilzer  <ddkilzer (a] apple.com>
   7047 
   7048         Fix Mac builds by backing out r44093
   7049 
   7050         * bindings/js/JSCustomPositionCallback.cpp:
   7051         * bindings/js/JSCustomPositionCallback.h:
   7052         * bindings/js/JSCustomPositionErrorCallback.cpp:
   7053         * bindings/js/JSCustomPositionErrorCallback.h:
   7054         * bindings/js/JSGeolocationCustom.cpp:
   7055         * page/Geolocation.cpp:
   7056         * page/Geolocation.idl:
   7057         * page/Geoposition.cpp:
   7058         * page/Geoposition.h:
   7059         * page/Geoposition.idl:
   7060         * page/Navigator.cpp:
   7061         (WebCore::Navigator::disconnectFrame):
   7062         (WebCore::Navigator::geolocation):
   7063         * page/PositionError.idl:
   7064         * platform/GeolocationService.cpp:
   7065         (WebCore::GeolocationService::create):
   7066 
   7067 2009-05-23  Laszlo Gombos  <laszlo.1.gombos (a] nokia.com>
   7068 
   7069         Reviewed by Eric Seidel.
   7070 
   7071         Add GEOLOCATION guards around Geolocation API code
   7072         https://bugs.webkit.org/show_bug.cgi?id=25756
   7073 
   7074         * bindings/js/JSCustomPositionCallback.cpp:
   7075         * bindings/js/JSCustomPositionCallback.h:
   7076         * bindings/js/JSCustomPositionErrorCallback.cpp:
   7077         * bindings/js/JSCustomPositionErrorCallback.h:
   7078         * bindings/js/JSGeolocationCustom.cpp:
   7079         * page/Geolocation.cpp:
   7080         * page/Geolocation.idl:
   7081         * page/Geoposition.cpp:
   7082         * page/Geoposition.h:
   7083         * page/Geoposition.idl:
   7084         * page/Navigator.cpp:
   7085         (WebCore::Navigator::disconnectFrame):
   7086         (WebCore::Navigator::geolocation):
   7087         * page/PositionError.idl:
   7088         * platform/GeolocationService.cpp:
   7089 
   7090 2009-05-23  David Kilzer  <ddkilzer (a] apple.com>
   7091 
   7092         Rename startupdateStyleIfNeededDispatcher to startUpdateStyleIfNeededDispatcher
   7093 
   7094         In r42377, startUpdateRenderingDispatcher() was renamed to
   7095         startupdateStyleIfNeededDispatcher(), but the camelCase "U" was
   7096         dropped.  This change restores it.
   7097 
   7098         * WebCore.order:
   7099         * page/animation/AnimationController.cpp:
   7100         (WebCore::AnimationControllerPrivate::startUpdateStyleIfNeededDispatcher):
   7101         (WebCore::AnimationControllerPrivate::addEventToDispatch):
   7102         (WebCore::AnimationControllerPrivate::addNodeChangeToDispatch):
   7103         (WebCore::AnimationControllerPrivate::pauseAnimationAtTime):
   7104         (WebCore::AnimationControllerPrivate::pauseTransitionAtTime):
   7105         * page/animation/AnimationControllerPrivate.h:
   7106 
   7107 2009-05-23  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   7108 
   7109         Unreviewed build-fix for Qt. Disable SVG Filters.
   7110 
   7111         SVG Filters can not be built right now and Qt should not have
   7112         them enabled anyway as they do not carry out any filtering.
   7113 
   7114         * WebCore.pro:
   7115 
   7116 2009-05-23  Dirk Schulze  <krit (a] webkit.org>
   7117 
   7118         Unreviewed build-fix for gtk. Remove source input files
   7119         for SVG filter system from the build for the moment and
   7120         add them later again.
   7121 
   7122         * GNUmakefile.am:
   7123 
   7124 2009-05-23  Dirk Schulze  <krit (a] webkit.org>
   7125 
   7126         Reviewed by Eric Seidel.
   7127 
   7128         WebKit needs cross-platform filter system
   7129         [https://bugs.webkit.org/show_bug.cgi?id=19991]
   7130 
   7131         Preparing Filter primitves for the new filter system.
   7132 
   7133         No testcases were added. SVG filters are off by default.
   7134 
   7135         * GNUmakefile.am:
   7136         * platform/graphics/filters/FEBlend.cpp:
   7137         (WebCore::FEBlend::apply):
   7138         * platform/graphics/filters/FEBlend.h:
   7139         * platform/graphics/filters/FEColorMatrix.cpp:
   7140         (WebCore::FEColorMatrix::apply):
   7141         * platform/graphics/filters/FEColorMatrix.h:
   7142         * platform/graphics/filters/FEComponentTransfer.cpp:
   7143         (WebCore::FEComponentTransfer::apply):
   7144         * platform/graphics/filters/FEComponentTransfer.h:
   7145         * platform/graphics/filters/FEComposite.cpp:
   7146         (WebCore::FEComposite::apply):
   7147         * platform/graphics/filters/FEComposite.h:
   7148         * svg/Filter.h:
   7149         * svg/FilterBuilder.h:
   7150         (WebCore::FilterBuilder::lastFilter):
   7151         * svg/FilterEffect.cpp:
   7152         (WebCore::FilterEffect::FilterEffect):
   7153         * svg/FilterEffect.h:
   7154         (WebCore::FilterEffect::xBoundingBoxMode):
   7155         (WebCore::FilterEffect::setXBoundingBoxMode):
   7156         (WebCore::FilterEffect::yBoundingBoxMode):
   7157         (WebCore::FilterEffect::setYBoundingBoxMode):
   7158         (WebCore::FilterEffect::widthBoundingBoxMode):
   7159         (WebCore::FilterEffect::setWidthBoundingBoxMode):
   7160         (WebCore::FilterEffect::heightBoundingBoxMode):
   7161         (WebCore::FilterEffect::setHeightBoundingBoxMode):
   7162         (WebCore::FilterEffect::subRegion):
   7163         (WebCore::FilterEffect::setSubRegion):
   7164         (WebCore::FilterEffect::resultImage):
   7165         (WebCore::FilterEffect::setEffectBuffer):
   7166         * svg/graphics/filters/SVGFEConvolveMatrix.cpp:
   7167         (WebCore::FEConvolveMatrix::apply):
   7168         * svg/graphics/filters/SVGFEConvolveMatrix.h:
   7169         * svg/graphics/filters/SVGFEDiffuseLighting.cpp:
   7170         (WebCore::FEDiffuseLighting::apply):
   7171         * svg/graphics/filters/SVGFEDiffuseLighting.h:
   7172         * svg/graphics/filters/SVGFEDisplacementMap.cpp:
   7173         (WebCore::FEDisplacementMap::apply):
   7174         * svg/graphics/filters/SVGFEDisplacementMap.h:
   7175         * svg/graphics/filters/SVGFEFlood.cpp:
   7176         (WebCore::FEFlood::apply):
   7177         * svg/graphics/filters/SVGFEFlood.h:
   7178         * svg/graphics/filters/SVGFEGaussianBlur.cpp:
   7179         (WebCore::FEGaussianBlur::apply):
   7180         * svg/graphics/filters/SVGFEGaussianBlur.h:
   7181         * svg/graphics/filters/SVGFEImage.cpp:
   7182         (WebCore::FEImage::apply):
   7183         * svg/graphics/filters/SVGFEImage.h:
   7184         * svg/graphics/filters/SVGFEMerge.cpp:
   7185         (WebCore::FEMerge::apply):
   7186         * svg/graphics/filters/SVGFEMerge.h:
   7187         * svg/graphics/filters/SVGFEMorphology.cpp:
   7188         (WebCore::FEMorphology::apply):
   7189         * svg/graphics/filters/SVGFEMorphology.h:
   7190         * svg/graphics/filters/SVGFEOffset.cpp:
   7191         (WebCore::FEOffset::apply):
   7192         * svg/graphics/filters/SVGFEOffset.h:
   7193         * svg/graphics/filters/SVGFESpecularLighting.cpp:
   7194         (WebCore::FESpecularLighting::apply):
   7195         * svg/graphics/filters/SVGFESpecularLighting.h:
   7196         * svg/graphics/filters/SVGFETile.cpp:
   7197         (WebCore::FETile::apply):
   7198         * svg/graphics/filters/SVGFETile.h:
   7199         * svg/graphics/filters/SVGFETurbulence.cpp:
   7200         (WebCore::FETurbulence::apply):
   7201         * svg/graphics/filters/SVGFETurbulence.h:
   7202 
   7203 2009-05-22  Dirk Schulze  <krit (a] webkit.org>
   7204 
   7205         Unreviewed build-fix for gtk. Breakage caused by a wrong call of ImageBuffer.
   7206 
   7207         * platform/graphics/cairo/ImageCairo.cpp:
   7208         (WebCore::Image::drawPattern):
   7209 
   7210 2009-05-22  Dirk Schulze  <vbs85 (a] gmx.de>
   7211 
   7212         Reviewed by Eric Seidel.
   7213 
   7214         Added the use of tileRect() for a correct drawing of
   7215         border-images.
   7216 
   7217         Testcases for border-image are in fast/borders like
   7218         border-image-01.html and will be activated for cairo, once
   7219         gtk supports pixel tests.
   7220 
   7221         https://bugs.webkit.org/show_bug.cgi?id=19652
   7222         [CAIRO] wrong drawing of border-image
   7223 
   7224         * platform/graphics/cairo/ImageCairo.cpp:
   7225         (WebCore::Image::drawPattern):
   7226 
   7227 2009-05-22  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   7228 
   7229         Reviewed by Maciej Stachowiak.
   7230 
   7231         https://bugs.webkit.org/show_bug.cgi?id=25684
   7232 
   7233         Ask the Scrollbar for the orientation.
   7234 
   7235         Use Scrollbar::orientation to figure out the
   7236         direction of scrolling.
   7237 
   7238         * platform/ScrollView.cpp:
   7239         (WebCore::ScrollView::valueChanged):
   7240 
   7241 2009-05-22  Darin Adler  <darin (a] apple.com>
   7242 
   7243         Reviewed by Dan Bernstein.
   7244 
   7245         <rdar://problem/6916082> Incorrect handling of % as CSS value.
   7246 
   7247         Test: fast/css/percent-character-as-value.html
   7248 
   7249         * css/CSSGrammar.y: Make a stray % character reliably cause
   7250         CSS parsing to succeed, but the CSS value to be ignored because
   7251         of incorrect type. A type of 0 has this effect.
   7252 
   7253 2009-05-22  Brent Fulgham  <bfulgham (a] webkit.org>
   7254 
   7255         Reviewed by Adam Roben.
   7256 
   7257         https://bugs.webkit.org/show_bug.cgi?id=25971
   7258         Correct a handful of build errors in the Windows Cairo variant
   7259         due to missing VIDEO support.
   7260 
   7261         * WebCore.vcproj/WebCore.vcproj: Exclude RenderMediaControls for
   7262           the Cairo-based Windows target.
   7263         * rendering/RenderThemeWin.cpp: Avoid #include of RenderMediaControls
   7264           for non-VIDEO builds.
   7265 
   7266 2009-05-22  David Kilzer  <ddkilzer (a] apple.com>
   7267 
   7268         One <limits> is enough
   7269 
   7270         * html/HTMLMediaElement.cpp: Removed duplicate #include <limits>.
   7271 
   7272 2009-05-22  Jon Honeycutt  <jhoneycutt (a] apple.com>
   7273 
   7274         <rdar://problem/6915957> REGRESSION: Hang when leaving page with VLC
   7275         plug-in
   7276 
   7277         Reviewed by Steve Falkenburg.
   7278 
   7279         * plugins/win/PluginPackageWin.cpp:
   7280         (WebCore::PluginPackage::determineQuirks):
   7281         Look for the VLC plug-in's new name.
   7282 
   7283 2009-05-22  Adam Barth  <abarth (a] webkit.org>
   7284 
   7285         Reviewed by Darin Fisher.
   7286 
   7287         https://bugs.webkit.org/show_bug.cgi?id=25966
   7288 
   7289         Remove redudant member from Chromium's ResourceRequest.  We already
   7290         have this data in the cross-platform ResourceRequestBase.  Also, rename
   7291         ChromiumBridge parameter to be consistant with the new name for this
   7292         piece of data.
   7293 
   7294         * platform/chromium/ChromiumBridge.h:
   7295         * platform/network/chromium/ResourceRequest.h:
   7296 
   7297 2009-05-22  Kevin Watters  <kevinwatters (a] gmail.com>
   7298 
   7299         Reviewed by Kevin Ollivier.
   7300 
   7301         Only account for overhang for multi-character strings.
   7302         
   7303         https://bugs.webkit.org/show_bug.cgi?id=25961
   7304 
   7305         * platform/wx/wxcode/win/fontprops.cpp:
   7306         (GetTextExtent):
   7307 
   7308 2009-05-22  Kevin Ollivier  <kevino (a] theolliviers.com>
   7309 
   7310         wx build fix. Switch to CURL cookies so we can benefit from API updates.
   7311 
   7312         * platform/wx/TemporaryLinkStubs.cpp:
   7313         * webcore-wx.bkl:
   7314 
   7315 2009-05-22  Peter Kasting  <pkasting (a] google.com>
   7316 
   7317         Reviewed by Darin Fisher.
   7318 
   7319         https://bugs.webkit.org/show_bug.cgi?id=25709 part one
   7320         Indent contents of namespaces in header files, to comply with the
   7321         style guide.  No functional change.
   7322 
   7323         * platform/image-decoders/ImageDecoder.h:
   7324         (WebCore::RGBA32Buffer::):
   7325         (WebCore::RGBA32Buffer::RGBA32Buffer):
   7326         (WebCore::RGBA32Buffer::clear):
   7327         (WebCore::RGBA32Buffer::bytes):
   7328         (WebCore::RGBA32Buffer::rect):
   7329         (WebCore::RGBA32Buffer::height):
   7330         (WebCore::RGBA32Buffer::status):
   7331         (WebCore::RGBA32Buffer::duration):
   7332         (WebCore::RGBA32Buffer::disposalMethod):
   7333         (WebCore::RGBA32Buffer::hasAlpha):
   7334         (WebCore::RGBA32Buffer::setRect):
   7335         (WebCore::RGBA32Buffer::ensureHeight):
   7336         (WebCore::RGBA32Buffer::setStatus):
   7337         (WebCore::RGBA32Buffer::setDuration):
   7338         (WebCore::RGBA32Buffer::setDisposalMethod):
   7339         (WebCore::RGBA32Buffer::setHasAlpha):
   7340         (WebCore::RGBA32Buffer::setRGBA):
   7341         (WebCore::ImageDecoder::m_failed):
   7342         (WebCore::ImageDecoder::~ImageDecoder):
   7343         (WebCore::ImageDecoder::setData):
   7344         (WebCore::ImageDecoder::size):
   7345         (WebCore::ImageDecoder::frameCount):
   7346         (WebCore::ImageDecoder::repetitionCount):
   7347         (WebCore::ImageDecoder::supportsAlpha):
   7348         (WebCore::ImageDecoder::failed):
   7349         (WebCore::ImageDecoder::setFailed):
   7350         (WebCore::ImageDecoder::clearFrameBufferCache):
   7351         * platform/image-decoders/bmp/BMPImageDecoder.h:
   7352         (WebCore::BMPImageDecoder::filenameExtension):
   7353         * platform/image-decoders/gif/GIFImageDecoder.h:
   7354         (WebCore::GIFImageDecoder::filenameExtension):
   7355         (WebCore::GIFImageDecoder::frameDurationAtIndex):
   7356         (WebCore::GIFImageDecoder::):
   7357         * platform/image-decoders/ico/ICOImageDecoder.h:
   7358         (WebCore::ICOImageDecoder::filenameExtension):
   7359         * platform/image-decoders/jpeg/JPEGImageDecoder.h:
   7360         (WebCore::JPEGImageDecoder::filenameExtension):
   7361         (WebCore::JPEGImageDecoder::supportsAlpha):
   7362         (WebCore::JPEGImageDecoder::reader):
   7363         (WebCore::JPEGImageDecoder::setSize):
   7364         * platform/image-decoders/png/PNGImageDecoder.h:
   7365         (WebCore::PNGImageDecoder::filenameExtension):
   7366         (WebCore::PNGImageDecoder::reader):
   7367         (WebCore::PNGImageDecoder::decodingFailed):
   7368         * platform/image-decoders/xbm/XBMImageDecoder.h:
   7369         (WebCore::XBMImageDecoder::filenameExtension):
   7370 
   7371 2009-05-22  Dominik Rttsches  <dominik.roettsches (a] access-company.com>
   7372 
   7373         Reviewed by Gustavo Noronha.
   7374 
   7375         https://bugs.webkit.org/show_bug.cgi?id=15914
   7376         [GTK] Implement Unicode functionality using GLib
   7377 
   7378         Minor changes that allow building a hybrid version of WebKit
   7379         that has WTF Unicode backend based on GLib functions while
   7380         text codecs and TextBreakIterator remain based on ICU.
   7381 
   7382         Fixed some includes that were assuming a WTF ICU backend and
   7383         introduced temporary usage of WTF_USE_GLIB_ICU_UNICODE_HYBRID
   7384         macro.
   7385 
   7386         * platform/ThreadGlobalData.cpp:
   7387         (WebCore::ThreadGlobalData::ThreadGlobalData):
   7388         (WebCore::ThreadGlobalData::~ThreadGlobalData):
   7389         * platform/ThreadGlobalData.h:
   7390         * platform/text/TextBoundariesICU.cpp:
   7391         * platform/text/TextCodecICU.h:
   7392         * platform/text/TextEncoding.cpp:
   7393         (WebCore::TextEncoding::encode):
   7394         * platform/text/TextEncodingRegistry.cpp:
   7395         (WebCore::buildBaseTextCodecMaps):
   7396         (WebCore::extendTextCodecMaps):
   7397 
   7398 2009-05-22  Adam Barth  <abarth (a] webkit.org>
   7399 
   7400         Reviewed by Maciej Stachowiak.
   7401 
   7402         https://bugs.webkit.org/show_bug.cgi?id=25955
   7403 
   7404         Remove the policyBaseURL parameter from setCookie.  This parameter is
   7405         redundant with the document parameter.
   7406 
   7407         * WebCore.base.exp:
   7408         * WebCore.order:
   7409         * dom/Document.cpp:
   7410         (WebCore::Document::setCookie):
   7411         * platform/CookieJar.h:
   7412         * platform/mac/CookieJar.mm:
   7413         (WebCore::setCookies):
   7414         * platform/network/chromium/CookieJarChromium.cpp:
   7415         (WebCore::setCookies):
   7416         * platform/network/curl/CookieJarCurl.cpp:
   7417         (WebCore::setCookies):
   7418         * platform/network/soup/CookieJarSoup.cpp:
   7419         (WebCore::setCookies):
   7420         * platform/network/win/CookieJarCFNetWin.cpp:
   7421         (WebCore::setCookies):
   7422         * platform/network/win/CookieJarWin.cpp:
   7423         (WebCore::setCookies):
   7424         * platform/qt/CookieJarQt.cpp:
   7425         (WebCore::setCookies):
   7426 
   7427 2009-05-22  Adam Barth  <abarth (a] webkit.org>
   7428 
   7429         Reviewed by Maciej Stachowiak.
   7430 
   7431         https://bugs.webkit.org/show_bug.cgi?id=25955
   7432 
   7433         Rename policyBaseURL and mainDocumentURL to firstPartyForCookies.  The
   7434         previous names were confusing and inaccurate.
   7435 
   7436         * WebCore.order:
   7437         * dom/Document.cpp:
   7438         (WebCore::Document::setCookie):
   7439         * dom/Document.h:
   7440         (WebCore::Document::firstPartyForCookies):
   7441         (WebCore::Document::setFirstPartyForCookies):
   7442         * loader/FrameLoader.cpp:
   7443         (WebCore::FrameLoader::begin):
   7444         (WebCore::FrameLoader::updateFirstPartyForCookies):
   7445         (WebCore::FrameLoader::setFirstPartyForCookies):
   7446         (WebCore::FrameLoader::open):
   7447         (WebCore::FrameLoader::addExtraFieldsToRequest):
   7448         (WebCore::FrameLoader::loadResourceSynchronously):
   7449         * loader/FrameLoader.h:
   7450         * loader/MainResourceLoader.cpp:
   7451         (WebCore::MainResourceLoader::willSendRequest):
   7452         (WebCore::ResourceRequestBase::adopt):
   7453         (WebCore::ResourceRequestBase::copyData):
   7454         (WebCore::ResourceRequestBase::firstPartyForCookies):
   7455         (WebCore::ResourceRequestBase::setFirstPartyForCookies):
   7456         (WebCore::equalIgnoringHeaderFields):
   7457         * platform/network/ResourceRequestBase.h:
   7458         * platform/network/cf/ResourceRequestCFNet.cpp:
   7459         (WebCore::ResourceRequest::doUpdatePlatformRequest):
   7460         (WebCore::ResourceRequest::doUpdateResourceRequest):
   7461         * platform/network/chromium/CookieJarChromium.cpp:
   7462         (WebCore::setCookies):
   7463         * platform/network/mac/ResourceRequestMac.mm:
   7464         (WebCore::ResourceRequest::doUpdateResourceRequest):
   7465         (WebCore::ResourceRequest::doUpdatePlatformRequest):
   7466         * platform/network/ResourceRequestBase.cpp:
   7467         (WebCore::ResourceRequestBase::firstPartyForCookies):
   7468         (WebCore::ResourceRequestBase::setFirstPartyForCookies):
   7469         * platform/network/chromium/CookieJarChromium.cpp:
   7470         (WebCore::setCookies):
   7471         * platform/network/curl/CookieJarCurl.cpp:
   7472         (WebCore::setCookies):
   7473         * platform/network/soup/CookieJarSoup.cpp:
   7474         (WebCore::setCookies):
   7475         * platform/network/win/CookieJarCFNetWin.cpp:
   7476         (WebCore::setCookies):
   7477         * platform/network/win/CookieJarWin.cpp:
   7478         (WebCore::setCookies):
   7479         * platform/qt/CookieJarQt.cpp:
   7480         (WebCore::setCookies):
   7481 
   7482 2009-05-22  Pavel Feldman  <pfeldman (a] chromium.org>
   7483 
   7484         Fix the call to editingCancelled to be this._editingCancelled, since
   7485         editingCancelled doesn't exist and throws an exception.
   7486 
   7487         <https://bugs.webkit.org/show_bug.cgi?id=24881>
   7488 
   7489         Reviewed by Timothy Hatcher.
   7490 
   7491         * inspector/front-end/ElementsTreeOutline.js:
   7492         (WebInspector.ElementsTreeElement.prototype._attributeEditingCommitted):
   7493 
   7494 2009-05-22  Alexey Proskuryakov  <ap (a] webkit.org>
   7495 
   7496         Reviewed by Eric Seidel.
   7497 
   7498         https://bugs.webkit.org/show_bug.cgi?id=25928
   7499         Several errors detected by cppcheck
   7500 
   7501         Fix all (the only one) problem in cross-platform code found by the tool. Port maintainers
   7502         should take a look at other reports.
   7503 
   7504         * css/CSSParser.cpp: (WebCore::CSSParser::addProperty): Don't leak the property even if there
   7505         are billions of those.
   7506 
   7507 2009-05-22  Shinichiro Hamaji  <hamaji (a] google.com>
   7508 
   7509         Reviewed by Oliver Hunt.
   7510 
   7511         Remove optimization path alpha=0 case from GraphicContext(CG|Skia).
   7512         This optimization doesn't make sense for some composite mode (e.g., 'copy' operation).
   7513 
   7514         https://bugs.webkit.org/show_bug.cgi?id=25956
   7515 
   7516         * platform/graphics/cg/GraphicsContextCG.cpp:
   7517         (WebCore::GraphicsContext::drawRect):
   7518         (WebCore::GraphicsContext::drawLine):
   7519         (WebCore::GraphicsContext::strokeArc):
   7520         (WebCore::GraphicsContext::drawConvexPolygon):
   7521         (WebCore::GraphicsContext::fillPath):
   7522         (WebCore::GraphicsContext::strokePath):
   7523         (WebCore::GraphicsContext::fillRect):
   7524         (WebCore::GraphicsContext::fillRoundedRect):
   7525         (WebCore::GraphicsContext::strokeRect):
   7526         * platform/graphics/skia/GraphicsContextSkia.cpp:
   7527         (WebCore::GraphicsContext::drawConvexPolygon):
   7528         (WebCore::GraphicsContext::drawEllipse):
   7529         (WebCore::GraphicsContext::fillPath):
   7530         (WebCore::GraphicsContext::fillRect):
   7531         (WebCore::GraphicsContext::strokePath):
   7532         (WebCore::GraphicsContext::strokeRect):
   7533 
   7534 2009-05-22  Xan Lopez  <xlopez (a] igalia.com>
   7535 
   7536         Unreviewed build fix.
   7537 
   7538         Revert the whole thing, since we can't figure out a way to make it
   7539         work in all platforms.
   7540 
   7541         * rendering/SVGInlineTextBox.cpp:
   7542         (WebCore::pathForDecoration):
   7543         * svg/SVGLength.cpp:
   7544         (WebCore::SVGLength::PercentageOfViewport):
   7545 
   7546 2009-05-22  Xan Lopez  <xlopez (a] igalia.com>
   7547 
   7548         Try to fix Windows build.
   7549 
   7550         Apparently it can't tell if '1.0f' is float or double, so cast to
   7551         float.
   7552 
   7553         * rendering/SVGInlineTextBox.cpp:
   7554         (WebCore::pathForDecoration):
   7555 
   7556 2009-05-22  Xan Lopez  <xlopez (a] igalia.com>
   7557 
   7558         Try to fix breakage from the previous patch.
   7559 
   7560         * rendering/SVGInlineTextBox.cpp:
   7561         (WebCore::pathForDecoration):
   7562         * svg/SVGLength.cpp:
   7563         (WebCore::SVGLength::PercentageOfViewport):
   7564 
   7565 2009-05-15  Fridrich Strba  <fridrich.strba (a] bluewin.ch>
   7566 
   7567         Reviewed by Maciej Stachowiak.
   7568 
   7569         https://bugs.webkit.org/show_bug.cgi?id=25805
   7570         In debug build, mingw win32 build has problems with powf
   7571 
   7572         Change C-style calls to powf and sqrtf to C++-style calls to
   7573         overloaded pow and sqrt. This solves also a problem with mingw
   7574         compiler during the debug build.
   7575 
   7576         * rendering/SVGInlineTextBox.cpp:
   7577         (WebCore::pathForDecoration):
   7578         * svg/SVGLength.cpp:
   7579         (WebCore::SVGLength::PercentageOfViewport):
   7580 
   7581 2009-05-21  Stephanie Lewis  <slewis (a] apple.com>
   7582 
   7583         Reviewed by Mark Rowe.
   7584 
   7585         <rdar://problem/6913680> Update image caching options.
   7586         Disable extra ImageIO cache because we already handle caching decoded image data.
   7587 
   7588         * platform/graphics/cg/ImageSourceCG.cpp:
   7589         (WebCore::imageSourceOptions):
   7590 
   7591 2009-05-21  Albert J. Wong  <ajwong (a] chromium.org>
   7592 
   7593         Reviewed by Eric Seidel.
   7594 
   7595         Bug 25903: Create a default UI theme for media controls in Chromium.
   7596         https://bugs.webkit.org/show_bug.cgi?id=25903
   7597 
   7598         Implement a default UI for chromium.  Add a style sheet for Chromium
   7599         media controls with good defaults and implemented basic draw functions
   7600         for play/pause & mute buttons.
   7601 
   7602         * css/mediaControlsChromium.css: Added.
   7603         * rendering/RenderThemeChromiumLinux.cpp:
   7604         (WebCore::RenderThemeChromiumWin::extraMediaControlsStyleSheet): Export
   7605         our custom media controls style sheet.
   7606         (WebCore::RenderThemeChromiumLinux::paintMediaButtonInternal): Paint
   7607         buttons respecting chromium media controls color scheme.
   7608         (WebCore::RenderThemeChromiumLinux::paintMediaPlayButton): Paint logic
   7609         specific to play/pause button.
   7610         (WebCore::RenderThemeChromiumLinux::paintMediaMuteButton): Paint
   7611         specific to mute button.
   7612         * rendering/RenderThemeChromiumLinux.h: Appropriate header changes.
   7613         * rendering/RenderThemeChromiumWin.cpp:
   7614         (WebCore::RenderThemeChromiumWin::extraMediaControlsStyleSheet): Export
   7615         our custom media controls style sheet.
   7616         (WebCore::RenderThemeChromiumWin::paintMediaButtonInternal): Paint
   7617         buttons respecting chromium media controls color scheme.
   7618         (WebCore::RenderThemeChromiumWin::paintMediaPlayButton): Paint logic
   7619         specific to play/pause button.
   7620         (WebCore::RenderThemeChromiumWin::paintMediaMuteButton): Paint specific
   7621         to mute button.
   7622         (WebCore::RenderThemeChromiumWin::setDefaultFontSize): Appropriate
   7623         header changes.
   7624         * rendering/RenderThemeChromiumWin.h:
   7625 
   7626 2009-05-21  Kevin Watters  <kevinwatters (a] gmail.com>
   7627 
   7628         Reviewed by Kevin Ollivier.
   7629 
   7630         When stripping the query from a file:// URL, do not leave a trailing question mark.
   7631         
   7632         https://bugs.webkit.org/show_bug.cgi?id=25940
   7633 
   7634         * platform/network/curl/ResourceHandleManager.cpp:
   7635         (WebCore::ResourceHandleManager::initializeHandle):
   7636 
   7637 2009-05-21  Kevin Watters  <kevinwatters (a] gmail.com>
   7638 
   7639         Reviewed by Kevin Ollivier.
   7640 
   7641         Notify ImageObserver::didDraw to help the cache purge alive resources.
   7642 
   7643         https://bugs.webkit.org/show_bug.cgi?id=25942
   7644 
   7645         * platform/graphics/wx/ImageWx.cpp:
   7646         (WebCore::BitmapImage::draw):
   7647         (WebCore::BitmapImage::drawPattern):
   7648 
   7649 2009-05-21  Evan Martin  <evan (a] chromium.org>
   7650 
   7651         Reviewed by Eric Seidel.
   7652 
   7653         Flesh out font fallback for Chromium's Skia port.
   7654         getLastResortFallbackFont should fall back on well-known fonts.
   7655         https://bugs.webkit.org/show_bug.cgi?id=25860
   7656 
   7657         * platform/graphics/chromium/FontCacheLinux.cpp:
   7658         (WebCore::FontCache::getLastResortFallbackFont): try known font names.
   7659 
   7660 2009-05-21  Dan Bernstein  <mitz (a] apple.com>
   7661 
   7662         Reviewed by John Sullivan.
   7663 
   7664         - speculative fix for <rdar://problem/6890716> crash at
   7665           FontCache::purgeInactiveFontData + 199
   7666 
   7667         * platform/graphics/FontCache.cpp:
   7668         (WebCore::FontCache::purgeInactiveFontData): Deleting a SimpleFontData
   7669         can cause releaseFontData() to be called, which modifies
   7670         gInactiveFontData. Therefore, avoid deleting SimpleFontData instances
   7671         while iterating over gInactiveFontData and delete them afterwards.
   7672 
   7673 2009-05-21  Geoffrey Garen  <ggaren (a] apple.com>
   7674 
   7675         Reviewed by Sam Weinig.
   7676         
   7677         Test for <rdar://problem/6910832> | https://bugs.webkit.org/show_bug.cgi?id=25907
   7678         Incorrect URL returned to the DOM while the user drags a file
   7679 
   7680         * page/DragController.cpp:
   7681         (WebCore::DragController::dragExited):
   7682         (WebCore::DragController::tryDHTMLDrag): Don't base our decision on KURL,
   7683         since that only looks at the text of the document's URL. Do base our
   7684         decision on the securityOrigin(), which knows more about the document's
   7685         actual origin.
   7686 
   7687 2009-05-21  Dan Bernstein  <mitz (a] apple.com>
   7688 
   7689         Rubber-stamped by Mark Rowe.
   7690 
   7691         - fix https://bugs.webkit.org/show_bug.cgi?id=25947
   7692           Assertion failure in FrameLoader::transitionToCommitted on launch in
   7693           Safari with r43985
   7694 
   7695         Rolled out r43979.
   7696 
   7697         * platform/MIMETypeRegistry.cpp:
   7698         (WebCore::initializeSupportedNonImageMimeTypes):
   7699         (WebCore::MIMETypeRegistry::isSupportedNonImageMIMEType):
   7700 
   7701 2009-05-21  Sam Weinig  <sam (a] webkit.org>
   7702 
   7703         Reviewed by Brady Eidson and Mark Rowe.
   7704 
   7705         Fix for <rdar://problem/6901522>
   7706         REGRESSION: Office 2008: Preview with browser is not shown, and Finder window is in the front of Safari
   7707 
   7708         If the NSURLRequest is annotated with a "ForceHTMLMIMEType" property, force
   7709         the MIME type to be text/html.
   7710 
   7711         * platform/network/mac/ResourceHandleMac.mm:
   7712         (-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]):
   7713 
   7714 2009-05-21  Kevin Ollivier  <kevino (a] theolliviers.com>
   7715 
   7716         Blind windows fix after last commit.
   7717 
   7718         * platform/Logging.cpp:
   7719         (WebCore::getChannelFromName):
   7720 
   7721 2009-05-21  Kevin Watters  <kevinwatters (a] gmail.com>
   7722 
   7723         Reviewed by Kevin Ollivier.
   7724 
   7725         Use an environment variable to control which logs are on and off.
   7726         Also, make a generic function for translating channel name to its log.
   7727         
   7728         https://bugs.webkit.org/show_bug.cgi?id=25936
   7729 
   7730         * platform/Logging.cpp:
   7731         (WebCore::getChannelFromName):
   7732         * platform/Logging.h:
   7733         * platform/wx/LoggingWx.cpp:
   7734         (WebCore::InitializeLoggingChannelsIfNecessary):
   7735 
   7736 2009-05-21  David Levin  <levin (a] chromium.org>
   7737 
   7738         Reviewed by Darin Fisher.
   7739 
   7740         Bug 25946: Chromium needs MIMETypeRegistry::getMediaMIMETypeForExtension implementation.
   7741         https://bugs.webkit.org/show_bug.cgi?id=25946
   7742 
   7743         A very simple implementation to keep it working.  A bug has been filed in the chromium db
   7744         (http://code.google.com/p/chromium/issues/detail?id=12441) to investigate doing something more
   7745         complete.
   7746 
   7747         * platform/chromium/MimeTypeRegistryChromium.cpp:
   7748         (WebCore::MIMETypeRegistry::getMediaMIMETypeForExtension):
   7749 
   7750 2009-05-20  Siddhartha Chattopadhyaya  <sidchat (a] google.com>
   7751 
   7752         Reviewed by Justin Garcia.
   7753         
   7754         Add automatic spell correction support in WebKit
   7755 
   7756         https://bugs.webkit.org/show_bug.cgi?id=24953
   7757 
   7758         * editing/Editor.cpp:
   7759         (WebCore::findFirstMisspellingInRange):
   7760         (WebCore::Editor::advanceToNextMisspelling):
   7761         (WebCore::Editor::markMisspellingsAfterTypingToPosition):
   7762         (WebCore::markAllMisspellingsInRange):
   7763         (WebCore::markMisspellingsOrBadGrammar):
   7764         (WebCore::Editor::markMisspellings):
   7765         (WebCore::Editor::markBadGrammar):
   7766         (WebCore::Editor::markMisspellingsAndBadGrammar):
   7767         * editing/Editor.h:
   7768         * loader/EmptyClients.h:
   7769         (WebCore::EmptyEditorClient::getAutoCorrectSuggestionForMisspelledWord):
   7770         * page/EditorClient.h:
   7771 
   7772 2009-05-21  Christian Dywan  <christian (a] twotoasts.de>
   7773 
   7774         Reviewed by Darin Adler.
   7775 
   7776         Text files which have sub MIME types are treated as not displayable
   7777         http://bugs.webkit.org/show_bug.cgi?id=24903
   7778 
   7779         * platform/MIMETypeRegistry.cpp:
   7780         (WebCore::initializeSupportedNonImageMimeTypes):
   7781         (WebCore::MIMETypeRegistry::isSupportedNonImageMIMEType): Regard any
   7782         MIME type beginning with "text/" as supported and remove all "text/"
   7783         types from the list.
   7784 
   7785 2009-05-21  Alexey Proskuryakov  <ap (a] webkit.org>
   7786 
   7787         Reviewed by David Kilzer.
   7788 
   7789         https://bugs.webkit.org/show_bug.cgi?id=25890
   7790         Implement Network logging channel on Mac
   7791 
   7792         * platform/network/mac/ResourceHandleMac.mm:
   7793         (WebCore::ResourceHandle::~ResourceHandle):
   7794         (WebCore::ResourceHandle::start):
   7795         (WebCore::ResourceHandle::cancel):
   7796         (WebCore::ResourceHandle::setDefersLoading):
   7797         (-[WebCoreResourceHandleAsDelegate connection:willSendRequest:redirectResponse:]):
   7798         (-[WebCoreResourceHandleAsDelegate connectionShouldUseCredentialStorage:]):
   7799         (-[WebCoreResourceHandleAsDelegate connection:didReceiveAuthenticationChallenge:]):
   7800         (-[WebCoreResourceHandleAsDelegate connection:didCancelAuthenticationChallenge:]):
   7801         (-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]):
   7802         (-[WebCoreResourceHandleAsDelegate connection:didReceiveData:lengthReceived:]):
   7803         (-[WebCoreResourceHandleAsDelegate connection:willStopBufferingData:]):
   7804         (-[WebCoreResourceHandleAsDelegate connection:didSendBodyData:totalBytesWritten:totalBytesExpectedToWrite:]):
   7805         (-[WebCoreResourceHandleAsDelegate connectionDidFinishLoading:]):
   7806         (-[WebCoreResourceHandleAsDelegate connection:didFailWithError:]):
   7807         (-[WebCoreResourceHandleAsDelegate connection:willCacheResponse:]):
   7808         Added logging for async requests (as these are most interesting).
   7809 
   7810 2009-05-21  Eric Carlson  <eric.carlson (a] apple.com>
   7811 
   7812         Reviewed by David Kilzer.
   7813 
   7814         <rdar://problem/6902197> WebCore doesn't know about all of the MIME types supported by QTKit
   7815         
   7816         Add a static table to map from some common file extensions to their MIME types so it
   7817         is possible to detect support even when the platform mapping is incomplete. Use the
   7818         table to lookup types not found by UTI on the OSX, and when looking for a media engine
   7819         with a generic or missing type.
   7820 
   7821         * platform/MIMETypeRegistry.cpp:
   7822         (WebCore::initializeMediaTypeMaps): New, initialize the mediaMIMETypeForExtensionMap.
   7823         (WebCore::MIMETypeRegistry::getMediaMIMETypeForExtension): New. Look for the specified
   7824         MIME type in the static mapping table if the platform specific getMIMETypeForExtension
   7825         doesn't find a match.
   7826         * platform/MIMETypeRegistry.h: Declare getMediaMIMETypeForExtension.
   7827 
   7828         * platform/graphics/MediaPlayer.cpp:
   7829         (WebCore::MediaPlayer::load): When the type passed is empty, "application/octet-stream", or
   7830         "text/plain", try to look it up based on the file extension with getMediaMIMETypeForExtension.
   7831 
   7832         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   7833         (WebCore::addFileTypesToCache): See if getMediaMIMETypeForExtension can map from file extension
   7834         to MIME type if UTI fails.
   7835 
   7836 2009-05-21  Eric Seidel  <eric (a] webkit.org>
   7837 
   7838         Reviewed by Alexey Proskuryakov.
   7839 
   7840         Clean up DragController
   7841         https://bugs.webkit.org/show_bug.cgi?id=25926
   7842 
   7843         I renamed m_document to m_documentUnderMouse to better document what it does
   7844         I could call it m_lastDocumentUnderMouse to be most-accurate, but this seemed
   7845         long enough.
   7846 
   7847         I also saw copy/paste code involving clearing the selection when moving out of
   7848         one document and into another.  I moved that code into a function called
   7849         mouseMovedIntoDocument.
   7850 
   7851         I also got rid of a couple needless null-checks after confirming via source
   7852         inspection they were not ever possible.
   7853         In Mac WebKit it's not possible to have a Page that doesn't have a mainFrame()
   7854         I left an ASSERT(m_page->mainFrame()) in case some other port ever violates this.
   7855         It's also not possible to return a document from documentAtPoint that is not
   7856         in a frame (as such a document would not be rendered).
   7857 
   7858         No functional changes, thus no tests.
   7859 
   7860         * page/DragController.cpp:
   7861         (WebCore::DragController::DragController):
   7862         (WebCore::DragController::dragIsMove):
   7863         (WebCore::DragController::dragExited):
   7864         (WebCore::DragController::performDrag):
   7865         (WebCore::DragController::mouseMovedIntoDocument):
   7866         (WebCore::DragController::dragEnteredOrUpdated):
   7867         (WebCore::DragController::tryDocumentDrag):
   7868         (WebCore::DragController::operationForLoad):
   7869         (WebCore::DragController::concludeEditDrag):
   7870         (WebCore::DragController::canProcessDrag):
   7871         (WebCore::DragController::tryDHTMLDrag):
   7872         (WebCore::DragController::placeDragCaret):
   7873         * page/DragController.h:
   7874         (WebCore::DragController::documentUnderMouse):
   7875 
   7876 2009-05-21  Eric Seidel  <eric (a] webkit.org>
   7877 
   7878         Reviewed by Alexey Proskuryakov.
   7879 
   7880         Rename DragController::dragOperation() to sourceDragOperation() for clarity
   7881         Remove unused setDragOperation()
   7882 
   7883         There are two times DragOperation is used.  The source specifies
   7884         what drag operations it supports (in a mask) and the destination
   7885         picks a subset of those as DragOperations it supports if a drop were
   7886         to occur.  I was confused when I first saw this accessor as to which
   7887         it meant.  It turns out that this is only used when WebKit starts a
   7888         drag, and we keep it around so that we can provide this information
   7889         to other Mac OS X applications when they ask.  I've renamed the method
   7890         for clarity so the next person in this code will be less confused.
   7891 
   7892         No functional changes, thus no tests.
   7893 
   7894         * page/DragController.h:
   7895         (WebCore::DragController::sourceDragOperation):
   7896 
   7897 2009-05-21  Dan Bernstein  <mitz (a] apple.com>
   7898 
   7899         Reviewed by Anders Carlsson.
   7900 
   7901         - WebCore part of <rdar://problem/6901751> REGRESSION (r35515): Tiger
   7902           crash painting the selection on registration page of car2go.com
   7903 
   7904         A bug in old versions of Core Graphics causes memory corruption to occur
   7905         when clipping under certain conditions. Make the clipping functions
   7906         fail silently under those conditions.
   7907 
   7908         Test: fast/block/float/selection-gap-clip-out-tiger-crash.html
   7909 
   7910         * WebCore.Tiger.exp: Added wkCGContextIsSafeToClip
   7911         * platform/graphics/cg/GraphicsContextCG.cpp:
   7912         (WebCore::safeCGContextClip): Added a wrapper around CGContextClip that,
   7913         on Tiger, bails out if wkCGContextIsSafeToClip() returns false.
   7914         (WebCore::safeCGContextEOClip): Ditto for CGContextEOClip.
   7915         (WebCore::safeCGContextClipToRect): Ditto for CGContextClipToRect.
   7916         (WebCore::GraphicsContext::fillPath): Changed to call the safe variants
   7917         of CGContextClip, CGContextEOClip and CGContextClipToRect.
   7918         (WebCore::GraphicsContext::strokePath): Ditto.
   7919         (WebCore::GraphicsContext::fillRect): Ditto.
   7920         (WebCore::GraphicsContext::clip): Ditto.
   7921         (WebCore::GraphicsContext::clipOut): Ditto.
   7922         (WebCore::GraphicsContext::clipOutEllipseInRect): Ditto.
   7923         (WebCore::GraphicsContext::clipPath): Ditto.
   7924         (WebCore::GraphicsContext::addInnerRoundedRectClip): Ditto.
   7925         (WebCore::GraphicsContext::strokeRect): Ditto.
   7926         * platform/mac/WebCoreSystemInterface.h: Added wkCGContextIsSafeToClip.
   7927         * platform/mac/WebCoreSystemInterface.mm: Added wkCGContextIsSafeToClip.
   7928 
   7929 2009-05-21  Xan Lopez  <xlopez (a] igalia.com>
   7930 
   7931         Unreviewed build fix.
   7932 
   7933         https://bugs.webkit.org/show_bug.cgi?id=25910
   7934         WebkitGTK r43960 cannot compile
   7935 
   7936         Do not include local copy of guriescape header, which was
   7937         removed. We now use the copy in glib.
   7938 
   7939         * platform/gtk/FileSystemGtk.cpp:
   7940 
   7941 2009-05-20  Adam Barth  <abarth (a] webkit.org>
   7942 
   7943         Reviewed by Dimitri Glazkov.
   7944 
   7945         https://bugs.webkit.org/show_bug.cgi?id=25706
   7946 
   7947         It turns out the CurrentContext wasn't currect either because it gave
   7948         us the frame for the write() function itself.  We actually want the
   7949         *calling* context.
   7950 
   7951         * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
   7952         (WebCore::CALLBACK_FUNC_DECL):
   7953 
   7954 2009-05-20  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   7955 
   7956         Reviewed by Gustavo Noronha.
   7957 
   7958         [GTK] Implement Image::loadPlatformResource.
   7959 
   7960         Install the four resources we are using. For the icons
   7961         where an icon name is specified by freedeskop.org try to
   7962         map the WebCore name to that name and fallback to the
   7963         internal icon. For everything else use the internal icon
   7964         name. Remove the temporary link stub as this is not
   7965         required any more.
   7966 
   7967         * GNUmakefile.am: Install the png files, set DATA_DIR again
   7968         * Resources/panIcon.png: Copied from WebKit/win/WebKit.vcproj/panIcon.png.
   7969         * platform/graphics/gtk/ImageGtk.cpp:
   7970         (WTF::GtkIconInfo): Add template specialization for GtkIconInfo
   7971         (WebCore::getIconFileNameOrFallback): Use GtkIconTheme to get the icon
   7972         (WebCore::loadResourceIntoSharedBuffer):
   7973         (WebCore::Image::loadPlatformResource): Implement
   7974         * platform/gtk/TemporaryLinkStubs.cpp: Remove link stub
   7975 
   7976 2009-05-20  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   7977 
   7978         Reviewed by Gustavo Noronha.
   7979 
   7980         https://bugs.webkit.org/show_bug.cgi?id=19357
   7981 
   7982         [GTK] The Gtk+ port wants to have a themable
   7983         urlIcon too.
   7984 
   7985         * loader/icon/IconDatabase.cpp:
   7986 
   7987 2009-05-20  Stephanie Lewis  <slewis (a] apple.com>
   7988 
   7989         Update the order files.  <rdar://problem/6881750> Generate new order files.
   7990 
   7991         * WebCore.order:
   7992 
   7993 2009-05-20  Mark Rowe  <mrowe (a] apple.com>
   7994 
   7995         Reviewed by Gavin Barraclough.
   7996 
   7997         Fix some assertion failures in plug-in tests on the Windows debug build bot.
   7998 
   7999         * plugins/PluginStream.cpp:
   8000         (WebCore::PluginStream::startStream): Switch to using protocolIsJavaScript.
   8001         * plugins/PluginView.cpp:
   8002         (WebCore::scriptStringIfJavaScriptURL): Ditto.
   8003 
   8004 2009-05-20  Brady Eidson  <beidson (a] apple.com>
   8005 
   8006         Reviewed by Darin Adler.
   8007 
   8008         More protocolInHTTPFamily() cleanup.
   8009 
   8010         * xml/XMLHttpRequest.cpp:
   8011         (WebCore::XMLHttpRequest::send):
   8012 
   8013 2009-05-20  Sam Weinig  <sam (a] webkit.org>
   8014 
   8015         Reviewed by Oliver Hunt.
   8016 
   8017         Fix for <rdar://problem/6905475>
   8018         Office 2008: Entourage: Crash when you switch to "My Day" view
   8019 
   8020         The host function callback callObjCFallbackObject was not annotated
   8021         with JSC_HOST_CALL which meant that when it was called by the JIT, which
   8022         expects the JSC_HOST_CALL calling convention, the arguments are not in the
   8023         expected places.
   8024 
   8025         * bridge/objc/objc_runtime.mm:
   8026         (JSC::Bindings::callObjCFallbackObject): Added missing JSC_HOST_CALL
   8027         annotation on callObjCFallbackObject.
   8028 
   8029 2009-05-20  David Levin  <levin (a] chromium.org>
   8030 
   8031         Not Reviewed, build fix.
   8032 
   8033         Need to disable this assert while the chormium code is fixed for it.
   8034 
   8035         * platform/KURLGoogle.cpp:
   8036         (WebCore::KURL::protocolIs):
   8037 
   8038 2009-05-20  David Levin  <levin (a] chromium.org>
   8039 
   8040         Not Reviewed, build fix.
   8041 
   8042         Change KURLGoogle.cpp to mirror the KURL.cpp changes done in
   8043         http://trac.webkit.org/changeset/43929.  Fix assert placement.
   8044 
   8045         * platform/KURLGoogle.cpp:
   8046         (WebCore::KURL::protocolIs):
   8047         (WebCore::protocolIs):
   8048 
   8049 2009-05-20  Nate Chapin  <japhet (a] google.com>
   8050 
   8051         Reviewed by Dimitri Glazkov.
   8052 
   8053         Upstream V8 bindings for V8DomWindow.
   8054         https://bugs.webkit.org/show_bug.cgi?id=25869
   8055 
   8056         * bindings/v8/custom/V8DOMWindowCustom.cpp:
   8057         (WebCore::V8Custom::WindowSetTimeoutImpl): Moved from v8_custom.cpp.
   8058         (WebCore::isAscii): Moved from v8_custom.cpp.
   8059         (WebCore::convertBase64): Moved from v8_custom.cpp.
   8060         (WebCore::CALLBACK_FUNC_DECL): Moved from v8_custom.cpp.
   8061         (WebCore::eventNameFromAttributeName): Moved from v8_custom.cpp.
   8062         (WebCore::ACCESSOR_SETTER): Moved from v8_custom.cpp.
   8063         (WebCore::ACCESSOR_GETTER): Moved from v8_custom.cpp.
   8064         (WebCore::NAMED_ACCESS_CHECK): Moved from v8_custom.cpp.
   8065         (WebCore::INDEXED_ACCESS_CHECK): Moved from v8_custom.cpp.
   8066 
   8067 2009-05-21  Christian Dywan  <christian (a] twotoasts.de>
   8068 
   8069         Reviewed by Jan Alonzo.
   8070 
   8071         * platform/network/soup/ResourceHandleSoup.cpp:
   8072         (WebCore::parseDataUrl): Always use Glib Base64 decoding.
   8073 
   8074 2009-05-21  Christian Dywan  <christian (a] twotoasts.de>
   8075 
   8076         Rubberstamped by Gustavo Noronha.
   8077 
   8078         * platform/network/curl/ResourceHandleManager.cpp:
   8079         (WebCore::parseDataUrl): Remove Gtk/ Glib Base64 decoding.
   8080 
   8081 2009-05-20  Christian Dywan  <christian (a] twotoasts.de>
   8082 
   8083         Reviewed by Gustavo Noronha.
   8084 
   8085         * GNUmakefile.am:
   8086         * platform/gtk/guriescape.c:
   8087         * platform/gtk/guriescape.h: Remove copies of g_uri_escape_string and
   8088         g_uri_unescape_string now that we require Glib 2.16.
   8089 
   8090 2009-05-20  David Levin  <levin (a] chromium.org>
   8091 
   8092         Not Reviewed, build fix.
   8093 
   8094         Change KURLGoogle.cpp to mirror the KURL.cpp changes done in
   8095         http://trac.webkit.org/changeset/43929.
   8096 
   8097         * platform/KURLGoogle.cpp:
   8098         (WebCore::protocolIsJavaScript):
   8099         (WebCore::protocolIs):
   8100 
   8101 2009-05-20  Brady Eidson  <beidson (a] apple.com>
   8102 
   8103         Rubberstamped by Sam Weinig
   8104 
   8105         At all call sites that check if a KURL has either the http or https protocol,
   8106         use the KURL::protocolInHTTPFamily() accessor, instead.
   8107 
   8108         * loader/FrameLoader.cpp:
   8109         (WebCore::FrameLoader::iconURL):
   8110         (WebCore::FrameLoader::didOpenURL):
   8111         (WebCore::FrameLoader::open):
   8112 
   8113         * loader/appcache/ApplicationCache.cpp:
   8114         (WebCore::ApplicationCache::requestIsHTTPOrHTTPSGet):
   8115 
   8116         * loader/loader.cpp:
   8117         (WebCore::Loader::load):
   8118 
   8119         * xml/XMLHttpRequest.cpp:
   8120         (WebCore::XMLHttpRequest::send):
   8121 
   8122 2009-05-20  Brady Eidson  <beidson (a] apple.com>
   8123 
   8124         Reviewed by Darin Adler.
   8125 
   8126         Fix <rdar://problem/6904941> and https://bugs.webkit.org/show_bug.cgi?id=25300
   8127 
   8128         KURL parsing changes back in r30243 and r30815 made javascript urls that use the form
   8129         "javascript://" be detected as invalid hierarchical URLs.  When a KURL is marked as
   8130         invalid, you can no longer ask it a question such as "is your protocol javascript?"
   8131         Therefore FrameLoader wouldn't recognize them as javascript URLs and instead try to
   8132         navigate to them.
   8133 
   8134         URL parsing rules aside, such URLs are in use in the wild (Microsoft's Virtual Earth 
   8135         being a high profile example) and actually represent valid javascript.
   8136 
   8137         Whenever checking for javascript urls, the new protocolIsJavaScript() should be used
   8138         as it functions on a String which doesn't have to pass KURLs parsing rules. 
   8139 
   8140         Test: fast/loader/javascript-url-hierarchical-execution.html
   8141 
   8142         * bindings/js/JSAttrCustom.cpp:
   8143         (WebCore::JSAttr::setValue): Use protocolIsJavaScript().
   8144         * bindings/js/JSDOMWindowCustom.cpp:
   8145         (WebCore::JSDOMWindow::setLocation): Ditto.
   8146         (WebCore::createWindow): Ditto.
   8147         (WebCore::JSDOMWindow::open): Ditto.
   8148         * bindings/js/JSElementCustom.cpp:
   8149         (WebCore::allowSettingSrcToJavascriptURL): Ditto.
   8150         * bindings/js/JSHTMLFrameElementCustom.cpp:
   8151         (WebCore::allowSettingJavascriptURL): Ditto.
   8152         * bindings/js/JSHTMLIFrameElementCustom.cpp:
   8153         (WebCore::JSHTMLIFrameElement::setSrc): Ditto.
   8154         * bindings/js/JSLocationCustom.cpp:
   8155         (WebCore::navigateIfAllowed): Ditto.
   8156         (WebCore::JSLocation::reload): Ditto.
   8157         * editing/markup.cpp:
   8158         (WebCore::appendQuotedURLAttributeValue): Ditto.
   8159         * html/HTMLAnchorElement.cpp:
   8160         (WebCore::HTMLAnchorElement::parseMappedAttribute): Ditto.
   8161         * loader/FrameLoader.cpp:
   8162         (WebCore::FrameLoader::requestFrame): Ditto.
   8163         (WebCore::FrameLoader::submitForm): Ditto.
   8164         (WebCore::FrameLoader::executeIfJavaScriptURL): Ditto.
   8165         
   8166         * platform/KURL.cpp:
   8167         (WebCore::KURL::init): Use protocolIsJavaScript().
   8168         (WebCore::KURL::protocolIs): ASSERT that the protocol being asked about is not javascript.
   8169            Such checks should go through protocolIsJavaScript() instead.
   8170         (WebCore::encodeRelativeString): Use protocolIsJavaScript().
   8171         (WebCore::protocolIsJavaScript):
   8172         * platform/KURL.h:
   8173 
   8174 2009-05-20  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   8175 
   8176         Reviewed by Anders Carlsson.
   8177 
   8178         https://bugs.webkit.org/show_bug.cgi?id=24510
   8179 
   8180         Fix a bug where the browserfuncs were not properly assigned,
   8181         make hasproperty use _NP_HasProperty and hasmethod _NP_HasMethod.
   8182 
   8183         Test: plugins/netscape-invoke-browserfuncs.html
   8184 
   8185         * plugins/gtk/PluginPackageGtk.cpp:
   8186         (WebCore::PluginPackage::load): Fix assignment
   8187         * plugins/qt/PluginPackageQt.cpp:
   8188         (WebCore::PluginPackage::load): Fix assignment
   8189 
   8190 2009-05-20  Sam Weinig  <sam (a] webkit.org>
   8191 
   8192         Reviewed by Timothy Hatcher.
   8193 
   8194         Make absoluteRectsForRange and absoluteQuadsForRange non-virtual
   8195         and only exist on RenderText.
   8196 
   8197         * dom/Range.cpp:
   8198         (WebCore::Range::textRects):
   8199         * inspector/InspectorController.cpp:
   8200         (WebCore::InspectorController::drawNodeHighlight): Use absoluteQuads instead
   8201         of absoluteQuadsForRange since no range is being specifiec.
   8202         * rendering/RenderObject.cpp:
   8203         * rendering/RenderObject.h:
   8204         * rendering/RenderText.h:
   8205 
   8206 2009-05-20  Xan Lopez  <xlopez (a] igalia.com>
   8207 
   8208         Reviewed by Gustavo Noronha.
   8209 
   8210         Implement AtkObject::focus-event and
   8211         AtkObject::state-changed:focused signal emission.
   8212 
   8213         Adds a new handleFocusedUIElementChangedWithRenderers, only in the
   8214         GTK port, called at the same point than
   8215         handleFocusedUIElementChanged but with two parameters, the old and
   8216         the newly focused RenderObjects. We need this, since the ATK
   8217         signals require us to pass the objects involved in the focus
   8218         change as arguments.
   8219 
   8220         * accessibility/AXObjectCache.h:
   8221         * accessibility/gtk/AXObjectCacheAtk.cpp:
   8222         (WebCore::AXObjectCache::handleFocusedUIElementChangedWithRenderers):
   8223         * dom/Document.cpp:
   8224         (WebCore::Document::setFocusedNode):
   8225 
   8226 2009-05-20  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   8227 
   8228         Reviewed by Darin Adler.
   8229 
   8230         https://bugs.webkit.org/show_bug.cgi?id=25834
   8231 
   8232         Make ChromeClient a interface again
   8233 
   8234         With recent additions to ChromeClient.h empty defaults were
   8235         added. This is bad for porters as these changes go unnoticed
   8236         and at runtime no notImplemented warning is logged and grepping
   8237         for notImplemented will not show anything. Change this Client
   8238         to be like the other Clients again and always have pure virtuals
   8239         (but for stuff inside #ifdef PLATFORM(MAC)).
   8240 
   8241         Update the various WebKit/* implementations to compile again.
   8242 
   8243         * loader/EmptyClients.h: Add empty defaults
   8244         (WebCore::EmptyChromeClient::setCursor):
   8245         (WebCore::EmptyChromeClient::scrollRectIntoView):
   8246         (WebCore::EmptyChromeClient::requestGeolocationPermissionForFrame):
   8247         * page/ChromeClient.h: Make methods pure virtual
   8248 
   8249 2009-05-19  Kenneth Rohde Christiansen  <kenneth.christiansen (a] openbossa.org>
   8250 
   8251         Reviewed by Simon Hausmann.
   8252 
   8253         Fix a bug where a non visible plugin would show it self in a
   8254         sibling frame. The problem was due to our clipping. In Qt,
   8255         if setMask is set with an empty QRegion, no clipping will
   8256         be performed, so in that case we hide the PluginContainer
   8257 
   8258         Added manual test.
   8259 
   8260         * plugins/qt/PluginContainerQt.cpp:
   8261         (PluginContainerQt::adjustGeometry):
   8262         * manual-tests/qt/plugin-sibling-frame-include.html
   8263         * manual-tests/qt/plugin-sibling-frame.html
   8264 
   8265 2009-05-19  Kenneth Rohde Christiansen  <kenneth.christiansen (a] openbossa.org>
   8266 
   8267         Reviewed by Simon Hausmann.
   8268 
   8269         Do not call the parent implementation (Widget::) in show() and hide()
   8270         of the PluginViewQt, as it always changes the visible state of the
   8271         platformWidget (equal to the platformPluginWidget in the Qt port),
   8272         thus ignoring the isParentVisible() test.
   8273 
   8274         * plugins/qt/PluginViewQt.cpp:
   8275         (WebCore::PluginView::show):
   8276         (WebCore::PluginView::hide):
   8277 
   8278 2009-05-20  Yichao Yin  <yichao.yin (a] torchmobile.com.cn>
   8279 
   8280         Reviewed by George Staikos.
   8281 
   8282         https://bugs.webkit.org/show_bug.cgi?id=23452
   8283         Change the implementation of HTMLNoScriptElement to avoid the pain of 
   8284         adding virtual function for XHTMLMP support
   8285 
   8286         Includes changes suggested by Simon Fraser.
   8287 
   8288         * dom/Node.cpp:
   8289         (WebCore::Node::styleForRenderer):
   8290         * dom/Node.h:
   8291         * html/HTMLNoScriptElement.cpp:
   8292         * html/HTMLNoScriptElement.h:
   8293 
   8294 2009-05-20  Kevin Ollivier  <kevino (a] theolliviers.com>
   8295 
   8296         CURL backend build fix. Make sure URL is always set.
   8297         
   8298         * platform/network/curl/ResourceHandleManager.cpp:
   8299         (WebCore::ResourceHandleManager::downloadTimerCallback):
   8300 
   8301 2009-05-20  Yongjun Zhang  <yongjun.zhang (a] nokia.com>
   8302 
   8303         Reviewed by George Staikos.
   8304 
   8305         Fix Qt WebKit build break in Mac OS.
   8306 
   8307         * platform/FileSystem.h:
   8308 
   8309 2009-05-20  Gustavo Noronha Silva  <gustavo.noronha (a] collabora.co.uk>
   8310 
   8311         Rubber-stamped by Eric Seidel.
   8312 
   8313         Enable code that was commented out waiting for a way to get a
   8314         GdkPixbuf from an image, effectively enabling copying images to
   8315         the clipboard.
   8316 
   8317         * platform/gtk/PasteboardGtk.cpp:
   8318         (WebCore::Pasteboard::writeImage):
   8319 
   8320 2009-05-20  Xan Lopez  <xlopez (a] igalia.com>
   8321 
   8322         Reviewed by Jan Alonzo.
   8323 
   8324         https://bugs.webkit.org/show_bug.cgi?id=25414
   8325         [GTK] ROLE_PANEL should not be used for paragraphs and list items.
   8326 
   8327         Implement Atk list item role for list items.
   8328 
   8329         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
   8330         (webkit_accessible_get_role):
   8331 
   8332 2009-05-20  Xan Lopez  <xlopez (a] igalia.com>
   8333 
   8334         Reviewed by Jan Alonzo.
   8335 
   8336         https://bugs.webkit.org/show_bug.cgi?id=25414
   8337         [GTK] ROLE_PANEL should not be used for paragraphs and list items.
   8338 
   8339         Implement Atk paragraph role for paragraph elements.
   8340 
   8341         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
   8342         (webkit_accessible_get_role):
   8343 
   8344 2009-05-20  Eric Seidel  <eric (a] webkit.org>
   8345 
   8346         Fix bug URL in ChangeLogs in r43903.
   8347         https://bugs.webkit.org/show_bug.cgi?id=25742
   8348 
   8349 2009-05-20  Takeshi Yoshino <tyoshino (a] google.com>
   8350 
   8351         Reviewed by Eric Seidel.
   8352 
   8353         Bug 24539: Fix RenderThemeChromiumWin::paintTextFieldInternal() not to hide background image.
   8354         https://bugs.webkit.org/show_bug.cgi?id=25742
   8355 
   8356         Fix RenderThemeChromiumWin::paintTextFieldInternal().
   8357 
   8358         We shouldn't paint the content area of text fields when o->style() has
   8359         background image or transparent background color. paintTextFieldInternal() is
   8360         used for painting inner area of HTML option elements by Chromium.
   8361 
   8362         When we pass fillContentArea = true to ChromiumBridge::paintTextField, it hides
   8363         the background image rendered by RenderBoxModelObject. So, we should set
   8364         fillContentArea = false in such case.
   8365 
   8366         Besides, when background-color:transparent is specified for CSS property,
   8367         o->style().backgroundColor returns black color with alpha channel == 0. But
   8368         since ThemeEngine for Windows behind ChromiumBridge::paintTextField cannot
   8369         recognize alpha channel, it fills the rect with black. I made workaround to set
   8370         fillContentArea = false when alpha channel == 0 to avoid this.
   8371 
   8372         And more, I'd like to fallback the color passed to ChromiumBridge to white when
   8373         o->style()->backgroundColor() is invalid.
   8374 
   8375         * rendering/RenderThemeChromiumWin.cpp:
   8376         (WebCore::RenderThemeChromiumWin::paintTextFieldInternal):
   8377 
   8378 2009-05-20  Shinichiro Hamaji  <hamaji (a] google.com>
   8379 
   8380         Reviewed by Eric Seidel.
   8381 
   8382         https://bugs.webkit.org/show_bug.cgi?id=25417
   8383         Map CompositeCopy to Skia's kSrc_Mode composite operation.
   8384 
   8385         Test: fast/canvas/canvas-composite-alpha.html
   8386 
   8387         * platform/graphics/skia/SkiaUtils.cpp:
   8388         (WebCore::):
   8389 
   8390 2009-05-20  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   8391 
   8392         Rubber-stamped by Xan Lopez.
   8393 
   8394         Remove misplaced extern "C"
   8395 
   8396         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
   8397 
   8398 2009-05-20  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   8399 
   8400         Reviewed by Xan Lopez.
   8401 
   8402         [GTK] Expose password field with role of PASSWORD_TEXT
   8403         https://bugs.webkit.org/show_bug.cgi?id=25682
   8404 
   8405         Check if input type is a password field and return
   8406         ATK_ROLE_PASSWORD_TEXT if it is.
   8407 
   8408         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
   8409 
   8410 2009-05-20  Laszlo Gombos  <laszlo.1.gombos (a] nokia.com>
   8411 
   8412         Reviewed by George Staikos.
   8413 
   8414         BUG 25845: [Qt] Fix QtWebKit pkgconfig dependencies
   8415         <https://bugs.webkit.org/show_bug.cgi?id=25845>
   8416 
   8417         * WebCore.pro: Remove QtDBus; remove QtXml if Qt >= 4.4
   8418 
   8419 2009-05-20  Laszlo Gombos  <laszlo.1.gombos (a] nokia.com>
   8420 
   8421         Reviewed by George Staikos.
   8422 
   8423         BUG 25843: [Qt] Remove qt-port build flag
   8424         <https://bugs.webkit.org/show_bug.cgi?id=25843>
   8425 
   8426         * bridge/testbindings.pro:
   8427 
   8428 2009-05-20  Laszlo Gombos  <laszlo.1.gombos (a] nokia.com>
   8429 
   8430         Reviewed by George Staikos.
   8431 
   8432         https://bugs.webkit.org/show_bug.cgi?id=25824
   8433 
   8434         [Qt] Cleanup - move files exclusive to JAVASCRIPT_DEBUGGER
   8435         and WORKERS under the appropriate build section
   8436 
   8437         * WebCore.pro:
   8438 
   8439 2009-05-20  Ariya Hidayat  <ariya.hidayat (a] nokia.com>
   8440 
   8441         Unreviewed Qt build fix, after r43892.
   8442 
   8443         * platform/graphics/qt/ImageQt.cpp: included ImageObservser.h
   8444 
   8445 2009-05-20  Yongjun Zhang  <yongjun.zhang (a] nokia.com>
   8446 
   8447         Reviewed by Simon Hausmann.
   8448 
   8449         https://bugs.webkit.org/show_bug.cgi?id=25856
   8450         [Qt] notify an image has been drawn, to help Cache purge alive decoded data.
   8451 
   8452         * platform/graphics/qt/ImageQt.cpp:
   8453         (WebCore::Image::drawPattern):
   8454         (WebCore::BitmapImage::draw):
   8455 
   8456 2009-05-20  David Levin  <levin (a] chromium.org>
   8457 
   8458         Reviewed by NOBODY, layout tests fix.
   8459 
   8460         https://bugs.webkit.org/show_bug.cgi?id=23727
   8461         This reverts commit r43888.
   8462 
   8463         Once that change was checked in many of the fast/flexbox0*.html        
   8464         tests (and others) started failing.
   8465 
   8466         * WebCore.pro:
   8467         * css/CSSParser.cpp:
   8468         (WebCore::CSSParser::parseValue):
   8469         * css/CSSPropertyNames.in:
   8470         * css/CSSStyleSelector.cpp:
   8471         (WebCore::CSSStyleSelector::applyProperty):
   8472         * css/CSSValueKeywords.in:
   8473         * rendering/RenderMarquee.cpp:
   8474         (WebCore::RenderMarquee::updateMarqueePosition):
   8475         (WebCore::RenderMarquee::timerFired):
   8476 
   8477 2009-05-19  Yichao Yin <yichao.yin (a] torchmobile.com.cn>
   8478 
   8479         Reviewed by George Staikos.
   8480 
   8481         Add XHTMLMP support to Webkit
   8482         Update the configure files for building XHTMLMP-enabled WebKit on different platform
   8483         https://bugs.webkit.org/show_bug.cgi?id=23452
   8484 
   8485         * GNUmakefile.am:
   8486         * WebCore.pro:
   8487         * WebCore.vcproj/WebCore.vcproj:
   8488         * WebCoreSources.bkl:
   8489 
   8490 2009-05-19  Antti Koivisto  <antti (a] apple.com>
   8491 
   8492         I can't figure out how to make this not timing dependent, making it manual test instead.
   8493 
   8494         * manual-tests/preload-scanner-entities.html: Added.
   8495 
   8496 2009-05-19  Brady Eidson  <beidson (a] apple.com>
   8497 
   8498         Reviewed by Antti Koivisto. 
   8499 
   8500         <rdar://problem/6886382> REGRESSION (Safari 4PB -> ToT): HTTP cache revalidation broken.
   8501 
   8502         This was caused in http://trac.webkit.org/changeset/41425, which fixed an image caching bug
   8503         in QuickLooks (rdar://problem/6619630).
   8504 
   8505         We need to respect the DocumentLoader's request cache policy when deciding the cache policy
   8506         for subresources, but the check (originally removed in r39304 and added back in in the same
   8507         place in r41424) needs to be tweaked and relocated a bit.
   8508 
   8509         * loader/FrameLoader.cpp:
   8510         (WebCore::FrameLoader::subresourceCachePolicy): Renamed from cachePolicy().  Move checking
   8511           the DocumentLoader's request to a more appropriate place. Add code to handle the recently 
   8512           added FIXME regarding POSTs. Add a new FIXME describing a great way to make this code 
   8513           cleaner in the future.
   8514         * loader/FrameLoader.h:
   8515 
   8516         * loader/DocLoader.cpp:
   8517         (WebCore::DocLoader::cachePolicy): Calls the newly renamed subresourceCachePolicy().
   8518 
   8519 2009-05-19  Chris Fleizach  <cfleizach (a] apple.com>
   8520 
   8521         Reviewed by Beth Dakin.
   8522 
   8523         Bug 25872: aria-labeledby appends all siblings instead of all children to aria name
   8524         https://bugs.webkit.org/show_bug.cgi?id=25872
   8525 
   8526         When setting the aria-labeledby text it should stay within the element identified by the id
   8527         when searching through the sibling list.
   8528   
   8529         This also removes an outdated assert in getDocumentLinks. Its possible for the document to
   8530         think an element is a link, but accessibility can treat it differently (eg. its ARIA role is different).
   8531 
   8532         Test: accessibility/aria-labelledby-stay-within.html
   8533 
   8534         * accessibility/AccessibilityRenderObject.cpp:
   8535         (WebCore::AccessibilityRenderObject::ariaAccessiblityName):
   8536         (WebCore::AccessibilityRenderObject::getDocumentLinks):
   8537 
   8538 2009-05-19  Antti Koivisto  <antti (a] apple.com>
   8539 
   8540         Reviewed by Darin Adler).
   8541         
   8542         <rdar://problem/6902674> REGRESSION: Query parameters are sometimes incorrect in URL (23135)
   8543         
   8544         Push characters back in correct order when entity parsing fails after 3 characters.
   8545 
   8546         Test: fast/tokenizer/preload-scanner-entities.html
   8547 
   8548         * html/PreloadScanner.cpp:
   8549         (WebCore::PreloadScanner::consumeEntity):
   8550 
   8551 2009-05-19  Paul Godavari  <paul (a] chromium.org>
   8552 
   8553         Reviewed by Dimitri Glazkov.
   8554 
   8555         Fix a crash in Mac Chromium when displaying an HTML select element
   8556         with no items.
   8557         https://bugs.webkit.org/show_bug.cgi?id=25874
   8558 
   8559         * platform/chromium/PopupMenuChromium.cpp:
   8560         (WebCore::PopupContainer::showExternal):
   8561 
   8562 2009-05-19  Nate Chapin  <japhet (a] google.com>
   8563 
   8564         Reviewed by Darin Fisher.
   8565 
   8566         Upstream V8 bindings for CanvasRenderingContext2D.
   8567         https://bugs.webkit.org/show_bug.cgi?id=25858
   8568 
   8569         * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp: Moved bindings from v8_custom.cpp.
   8570 
   8571 2009-05-19  Jessie Berlin  <jberlin (a] apple.com>
   8572 
   8573         Reviewed by Mark Rowe.
   8574 
   8575         Windows Build Fix.
   8576 
   8577         * WebCore.vcproj/WebCore.vcproj: Copy accessibility headers from WebCore.
   8578 
   8579 2009-05-19  Timothy Hatcher  <timothy (a] apple.com>
   8580 
   8581         <rdar://problem/6889218> REGRESSION: Some iChat transcript resources are not
   8582         loaded because willSendRequest doesn't happen immediately
   8583 
   8584         Reviewed by Antti Koivisto.
   8585 
   8586         * WebCore.base.exp: Export Loader::servePendingRequests().
   8587 
   8588 2009-05-19  David Levin  <levin (a] chromium.org>
   8589 
   8590         Reviewed by Dimitri Glazkov.
   8591 
   8592         Bug 25859: Need to upstream ScriptController.* for v8.
   8593         https://bugs.webkit.org/show_bug.cgi?id=25859
   8594 
   8595         Fixing the header file (which I accidentally made identical to the cpp file).
   8596 
   8597         * bindings/v8/ScriptController.h:
   8598 
   8599 2009-05-19  Alexey Proskuryakov  <ap (a] webkit.org>
   8600 
   8601         Reviewed by Darin Adler and Brady Eidson.
   8602 
   8603         <rdar://problem/6900582> REGRESSION (r42446?): UA Profiler in http://stevesouders.com/ua/ stalls
   8604 
   8605         The problem was that Document::removeAllEventListeners() was called for a wrong document
   8606         when a CachedFrame was destroyed.
   8607 
   8608         Cannot be tested automatically, because DRT doesn't have a b/f cache.
   8609 
   8610         * dom/Document.cpp: (WebCore::Document::domWindow): Make sure that this doesn't return an
   8611         unrelated window even if document's m_frame pointer is stale.
   8612 
   8613         * history/CachedFrame.cpp: (WebCore::CachedFrame::clear): Added a FIXME about strange behavior.
   8614 
   8615 2009-05-19  Pavel Feldman  <pfeldman (a] chromium.org>
   8616 
   8617         Reviewed by Timothy Hatcher.
   8618 
   8619         Split InspectorController into InspectorController and InspectorFrontend. Latter encapsulates all frontend interaction and is the only entity allowed to make ScriptFunctionCalls. The further plan is to serialize these script function calls.
   8620 
   8621         https://bugs.webkit.org/show_bug.cgi?id=25419
   8622 
   8623         * GNUmakefile.am:
   8624         * WebCore.pro:
   8625         * WebCore.vcproj/WebCore.vcproj:
   8626         * WebCore.xcodeproj/project.pbxproj:
   8627         * WebCoreSources.bkl:
   8628         * inspector/ConsoleMessage.cpp:
   8629         (WebCore::ConsoleMessage::addToConsole):
   8630         * inspector/ConsoleMessage.h:
   8631         * inspector/InspectorController.cpp:
   8632         (WebCore::InspectorController::~InspectorController):
   8633         (WebCore::InspectorController::inspect):
   8634         (WebCore::InspectorController::focusNode):
   8635         (WebCore::InspectorController::setWindowVisible):
   8636         (WebCore::InspectorController::addConsoleMessage):
   8637         (WebCore::InspectorController::setAttachedWindow):
   8638         (WebCore::InspectorController::inspectedWindowScriptObjectCleared):
   8639         (WebCore::InspectorController::scriptObjectReady):
   8640         (WebCore::InspectorController::showPanel):
   8641         (WebCore::InspectorController::close):
   8642         (WebCore::InspectorController::populateScriptObjects):
   8643         (WebCore::InspectorController::resetScriptObjects):
   8644         (WebCore::InspectorController::pruneResources):
   8645         (WebCore::InspectorController::didCommitLoad):
   8646         (WebCore::InspectorController::didLoadResourceFromMemoryCache):
   8647         (WebCore::InspectorController::identifierForInitialRequest):
   8648         (WebCore::InspectorController::willSendRequest):
   8649         (WebCore::InspectorController::didReceiveResponse):
   8650         (WebCore::InspectorController::didReceiveContentLength):
   8651         (WebCore::InspectorController::didFinishLoading):
   8652         (WebCore::InspectorController::didFailLoading):
   8653         (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
   8654         (WebCore::InspectorController::scriptImported):
   8655         (WebCore::InspectorController::didOpenDatabase):
   8656         (WebCore::InspectorController::didUseDOMStorage):
   8657         (WebCore::InspectorController::addScriptProfile):
   8658         (WebCore::InspectorController::toggleRecordButton):
   8659         (WebCore::InspectorController::enableProfiler):
   8660         (WebCore::InspectorController::disableProfiler):
   8661         (WebCore::InspectorController::enableDebugger):
   8662         (WebCore::InspectorController::disableDebugger):
   8663         (WebCore::InspectorController::didParseSource):
   8664         (WebCore::InspectorController::failedToParseSource):
   8665         (WebCore::InspectorController::didPause):
   8666         (WebCore::InspectorController::didContinue):
   8667         * inspector/InspectorController.h:
   8668         * inspector/InspectorDOMStorageResource.cpp:
   8669         (WebCore::InspectorDOMStorageResource::bind):
   8670         * inspector/InspectorDOMStorageResource.h:
   8671         * inspector/InspectorDatabaseResource.cpp:
   8672         (WebCore::InspectorDatabaseResource::bind):
   8673         * inspector/InspectorDatabaseResource.h:
   8674         * inspector/InspectorFrontend.cpp: Added.
   8675         (WebCore::callSimpleFunction):
   8676         (WebCore::InspectorFrontend::InspectorFrontend):
   8677         (WebCore::InspectorFrontend::~InspectorFrontend):
   8678         (WebCore::InspectorFrontend::newJSONObject):
   8679         (WebCore::InspectorFrontend::addMessageToConsole):
   8680         (WebCore::InspectorFrontend::addResource):
   8681         (WebCore::InspectorFrontend::updateResource):
   8682         (WebCore::InspectorFrontend::removeResource):
   8683         (WebCore::InspectorFrontend::updateFocusedNode):
   8684         (WebCore::InspectorFrontend::setAttachedWindow):
   8685         (WebCore::InspectorFrontend::inspectedWindowScriptObjectCleared):
   8686         (WebCore::InspectorFrontend::showPanel):
   8687         (WebCore::InspectorFrontend::populateInterface):
   8688         (WebCore::InspectorFrontend::reset):
   8689         (WebCore::InspectorFrontend::debuggerWasEnabled):
   8690         (WebCore::InspectorFrontend::debuggerWasDisabled):
   8691         (WebCore::InspectorFrontend::profilerWasEnabled):
   8692         (WebCore::InspectorFrontend::profilerWasDisabled):
   8693         (WebCore::InspectorFrontend::parsedScriptSource):
   8694         (WebCore::InspectorFrontend::failedToParseScriptSource):
   8695         (WebCore::InspectorFrontend::addProfile):
   8696         (WebCore::InspectorFrontend::setRecordingProfile):
   8697         (WebCore::InspectorFrontend::pausedScript):
   8698         (WebCore::InspectorFrontend::resumedScript):
   8699         (WebCore::InspectorFrontend::addDatabase):
   8700         (WebCore::InspectorFrontend::addDOMStorage):
   8701         * inspector/InspectorFrontend.h: Added.
   8702         * inspector/InspectorResource.cpp:
   8703         (WebCore::InspectorResource::createScriptObject):
   8704         (WebCore::InspectorResource::updateScriptObject):
   8705         (WebCore::InspectorResource::releaseScriptObject):
   8706         * inspector/InspectorResource.h:
   8707 
   8708 2009-05-19  Pavel Feldman  <pfeldman (a] chromium.org>
   8709 
   8710         Reviewed by Timothy Hatcher.
   8711 
   8712         Introduce JSONObject that wraps ScriptObject and ScriptState* for further serialization
   8713 
   8714         https://bugs.webkit.org/show_bug.cgi?id=25419
   8715 
   8716         * GNUmakefile.am:
   8717         * WebCore.pro:
   8718         * WebCore.vcproj/WebCore.vcproj:
   8719         * WebCore.xcodeproj/project.pbxproj:
   8720         * WebCoreSources.bkl:
   8721         * inspector/ConsoleMessage.cpp:
   8722         (WebCore::ConsoleMessage::addToConsole):
   8723         * inspector/InspectorDOMStorageResource.cpp:
   8724         (WebCore::InspectorDOMStorageResource::bind):
   8725         * inspector/InspectorDatabaseResource.cpp:
   8726         (WebCore::InspectorDatabaseResource::bind):
   8727         * inspector/InspectorResource.cpp:
   8728         (WebCore::populateHeadersObject):
   8729         (WebCore::InspectorResource::createScriptObject):
   8730         (WebCore::InspectorResource::updateScriptObject):
   8731         * inspector/JSONObject.cpp: Added.
   8732         (WebCore::JSONObject::JSONObject):
   8733         (WebCore::JSONObject::set):
   8734         (WebCore::JSONObject::scriptObject):
   8735         (WebCore::JSONObject::createNew):
   8736         * inspector/JSONObject.h: Added.
   8737 
   8738 2009-05-19  Pavel Feldman  <pfeldman (a] chromium.org>
   8739 
   8740         Reviewed by Timothy Hatcher.
   8741 
   8742         Refactor InpectorController so that it does not instantiate resource/console/database/domresource javascript objects. Move instantiation into the javascript.
   8743 
   8744         https://bugs.webkit.org/show_bug.cgi?id=25419
   8745 
   8746         * inspector/ConsoleMessage.cpp:
   8747         (WebCore::ConsoleMessage::addToConsole):
   8748         * inspector/InspectorController.cpp:
   8749         (WebCore::InspectorController::didReceiveResponse):
   8750         (WebCore::InspectorController::didReceiveContentLength):
   8751         (WebCore::InspectorController::didFinishLoading):
   8752         (WebCore::InspectorController::didFailLoading):
   8753         (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
   8754         (WebCore::InspectorController::scriptImported):
   8755         * inspector/InspectorDOMStorageResource.cpp:
   8756         (WebCore::InspectorDOMStorageResource::InspectorDOMStorageResource):
   8757         (WebCore::InspectorDOMStorageResource::bind):
   8758         (WebCore::InspectorDOMStorageResource::unbind):
   8759         * inspector/InspectorDOMStorageResource.h:
   8760         * inspector/InspectorDatabaseResource.cpp:
   8761         (WebCore::InspectorDatabaseResource::InspectorDatabaseResource):
   8762         (WebCore::InspectorDatabaseResource::bind):
   8763         (WebCore::InspectorDatabaseResource::unbind):
   8764         * inspector/InspectorDatabaseResource.h:
   8765         * inspector/InspectorResource.cpp:
   8766         (WebCore::InspectorResource::InspectorResource):
   8767         (WebCore::populateHeadersObject):
   8768         (WebCore::InspectorResource::createScriptObject):
   8769         (WebCore::InspectorResource::updateScriptObject):
   8770         (WebCore::InspectorResource::releaseScriptObject):
   8771         * inspector/InspectorResource.h:
   8772         * inspector/front-end/Console.js:
   8773         (WebInspector.ConsoleMessage):
   8774         * inspector/front-end/inspector.js:
   8775         (WebInspector.addResource):
   8776         (WebInspector.updateResource):
   8777         (WebInspector.removeResource):
   8778         (WebInspector.addDatabase):
   8779         (WebInspector.addDOMStorage):
   8780         (WebInspector.reset):
   8781         (WebInspector.addMessageToConsole):
   8782 
   8783 2009-05-19  Kenneth Rohde Christiansen  <kenneth.christiansen (a] openbossa.org>
   8784 
   8785         Reviewed by Ariya Hidayat.
   8786 
   8787         The Qt port has code that disables scrolling optimizations
   8788         when the root contains native windows, such as windowed plugins.
   8789 
   8790         This code broke when detaching iframes containing windowed
   8791         plugins.
   8792 
   8793         Each ScrollView now knows how many native windows it and its
   8794         children contain, and when it is detached, that number is
   8795         substracted from its old parents.
   8796 
   8797         * platform/ScrollView.cpp:
   8798         (WebCore::ScrollView::scrollContents):
   8799         (WebCore::ScrollView::setParent):
   8800         * platform/ScrollView.h:
   8801         * platform/qt/ScrollViewQt.cpp:
   8802         (WebCore::ScrollView::adjustWidgetsPreventingBlittingCount):
   8803         (WebCore::ScrollView::platformAddChild):
   8804         (WebCore::ScrollView::platformRemoveChild):
   8805 
   8806 2009-05-18  David Kilzer  <ddkilzer (a] apple.com>
   8807 
   8808         Tiger build fix for r43850
   8809 
   8810         * platform/mac/ClipboardMac.mm: Added typedef for NSUinteger
   8811         when building on Tiger.
   8812 
   8813 2009-05-18  Eric Seidel  <eric (a] webkit.org>
   8814 
   8815         Reviewed by Darin Adler.
   8816 
   8817         ClipboardMac cleanup
   8818         https://bugs.webkit.org/show_bug.cgi?id=25847
   8819 
   8820         I'm mostly just moving code, however there are 3 changes I made while moving, detailed below.
   8821 
   8822         No functional changes, so no tests.
   8823 
   8824         * platform/mac/ClipboardMac.mm:
   8825         (WebCore::ClipboardMac::clearData):
   8826         (WebCore::absoluteURLsFromPasteboardFilenames):
   8827           Broke out logic for filenames into its own function to make the caller more readable.
   8828         (WebCore::absoluteURLsFromPasteboard):
   8829           Broke out logic from getData into absoluteURLsFromPasteboard. This returns an NSArray
   8830           so that we can use -[NSArray componentsJoinedByString] in the caller (which is
   8831           cleaner than the manual "\n" addition before).
   8832           This also access to the full list of file urls for future callers.
   8833         (WebCore::ClipboardMac::getData):
   8834           unsigned count = (type == "URL") ? 1 : [fileList count]; is now an
   8835           explicit check for "URL", before it was a check for != "text/uri-list" which
   8836           was much more confusing in my opinion.  text/uri-list and URL are the only
   8837           two types which map to NSURLPboardType in cocoaTypeFromMIMEType().
   8838         (WebCore::ClipboardMac::types):
   8839           I removed an extra if (!types) check, right before [types count].  In Obj-C
   8840           messaging nil will return 0 (size of a pointer), so it's safe to message nil
   8841           here and expect it to return 0.
   8842 
   8843 2009-05-18  David Levin  <levin (a] chromium.org>
   8844 
   8845         Reviewed by Darin Fisher.
   8846 
   8847         Bug 25859: Need to upstream ScriptController.* for v8.
   8848         https://bugs.webkit.org/show_bug.cgi?id=25859
   8849 
   8850         * bindings/v8/ScriptController.cpp: Added.
   8851         * bindings/v8/ScriptController.h: Added.
   8852 
   8853 2009-05-18  Yichao Yin  <yichao.yin (a] torchmobile.com.cn>
   8854 
   8855         Reviewed by George Staikos.
   8856 
   8857         Change ScriptElement to support XHTMLMP in a better way
   8858         https://bugs.webkit.org/show_bug.cgi?id=23452
   8859 
   8860         * dom/ScriptElement.h:
   8861         * html/HTMLScriptElement.h:
   8862         * svg/SVGScriptElement.h:
   8863         (WebCore::SVGScriptElement::shouldExecuteAsJavaScript):
   8864 
   8865 2009-05-18  Kevin Ollivier  <kevino (a] theolliviers.com>
   8866 
   8867         wx build fix, finish up changes after the accessibility dir split.
   8868 
   8869         * webcore-base.bkl:
   8870 
   8871 2009-05-18  Yichao Yin  <yichao.yin (a] torchmobile.com.cn>
   8872 
   8873         Reviewed by George Staikos (and others).
   8874 
   8875         Add XHTMLMP support to Webkit
   8876         https://bugs.webkit.org/show_bug.cgi?id=23452
   8877         XHTMLMP is a strict subset of XHTML 1.1. It extends XHTML Basic and add enhanced
   8878         functionality. Most of the functionalities have already been implemented by Webkit.
   8879         
   8880         The changes include:
   8881         1) Adding <noscript> support
   8882         2) Document conformance validation
   8883         3) User Agent conformance validation
   8884  
   8885         refer to the specification: OMA-WAP-XHTMLMP-V1_1-20061020-A.pdf
   8886 
   8887         Tests: fast/xhtmlmp/check-doctype-declaration.xhtml
   8888                fast/xhtmlmp/check-rootelement.xhtml
   8889                fast/xhtmlmp/noscript-in-multiscripts.xhtml
   8890                fast/xhtmlmp/noscript-nested.xhtml
   8891                fast/xhtmlmp/noscript.xhtml
   8892 
   8893         * dom/DOMImplementation.cpp:
   8894         (WebCore::DOMImplementation::createDocument):
   8895         * dom/Document.cpp:
   8896         (WebCore::Document::Document):
   8897         (WebCore::Document::isXHTMLMPDocument):
   8898         * dom/Document.h:
   8899         (WebCore::Document::shouldProcessNoscriptElement):
   8900         (WebCore::Document::setShouldProcessNoscriptElement):
   8901         * dom/Node.cpp:
   8902         (WebCore::Node::createRendererIfNeeded):
   8903         * dom/Node.h:
   8904         * dom/XMLTokenizer.h:
   8905         (WebCore::XMLTokenizer::setIsXHTMLMPDocument):
   8906         (WebCore::XMLTokenizer::isXHTMLMPDocument):
   8907         * dom/XMLTokenizerLibxml2.cpp:
   8908         (WebCore::XMLTokenizer::XMLTokenizer):
   8909         (WebCore::XMLTokenizer::startElementNs):
   8910         (WebCore::XMLTokenizer::endElementNs):
   8911         (WebCore::XMLTokenizer::endDocument):
   8912         (WebCore::XMLTokenizer::internalSubset):
   8913         (WebCore::getEntityHandler):
   8914         (WebCore::externalSubsetHandler):
   8915         * dom/XMLTokenizerQt.cpp:
   8916         (WebCore::XMLTokenizer::XMLTokenizer):
   8917         (WebCore::XMLTokenizer::parse):
   8918         (WebCore::XMLTokenizer::parseStartElement):
   8919         (WebCore::XMLTokenizer::parseEndElement):
   8920         (WebCore::):
   8921         * dom/make_names.pl:
   8922         * html/HTMLElement.cpp:
   8923         (WebCore::HTMLElement::rendererIsNeeded):
   8924         * html/HTMLNoScriptElement.cpp: Added.
   8925         (WebCore::HTMLNoScriptElement::HTMLNoScriptElement):
   8926         (WebCore::HTMLNoScriptElement::~HTMLNoScriptElement):
   8927         (WebCore::HTMLNoScriptElement::checkDTD):
   8928         (WebCore::HTMLNoScriptElement::attach):
   8929         (WebCore::HTMLNoScriptElement::recalcStyle):
   8930         (WebCore::HTMLNoScriptElement::childShouldCreateRenderer):
   8931         (WebCore::HTMLNoScriptElement::styleForRenderer):
   8932         * html/HTMLNoScriptElement.h: Added.
   8933         (WebCore::HTMLNoScriptElement::rendererIsNeeded):
   8934         * html/HTMLParser.cpp:
   8935         (WebCore::HTMLParser::getNode):
   8936         (WebCore::HTMLParser::isInline):
   8937         * html/HTMLTagNames.in:
   8938         * html/HTMLTokenizer.cpp:
   8939         (WebCore::HTMLTokenizer::scriptHandler):
   8940         (WebCore::HTMLTokenizer::notifyFinished):
   8941         * loader/FrameLoader.cpp:
   8942         (WebCore::FrameLoader::addExtraFieldsToRequest):
   8943         * platform/MIMETypeRegistry.cpp:
   8944         (WebCore::initializeSupportedNonImageMimeTypes):
   8945 
   8946 2009-05-18  Mark Rowe  <mrowe (a] apple.com>
   8947 
   8948         Fix the build.
   8949 
   8950         * WebCore.xcodeproj/project.pbxproj:
   8951 
   8952 2009-05-18  Kenneth Rohde Christiansen  <kenneth.christiansen (a] openbossa.org>
   8953 
   8954         Rubber-stamped by Gustavo Noronha.
   8955 
   8956         Fixed build for the Qt port by adding the WebCore/accessibility
   8957         directory to the includepath.
   8958 
   8959         * WebCore.pro:
   8960 
   8961 2009-05-18  Chris Fleizach  <cfleizach (a] apple.com>
   8962 
   8963         Bug 25776: accessibility should have its own folder in WebCore project
   8964         https://bugs.webkit.org/show_bug.cgi?id=25776
   8965    
   8966         Speculative fix for windows build failure.
   8967 
   8968         * WebCore.vcproj/WebCoreCommon.vsprops:
   8969 
   8970 2009-05-18  David Kilzer  <ddkilzer (a] apple.com>
   8971 
   8972         Bug 20652: WebKit doesn't display favicons with MIME type image/vnd.microsoft.icon
   8973 
   8974         <https://bugs.webkit.org/show_bug.cgi?id=20652>
   8975 
   8976         Reviewed by Darin Adler.
   8977 
   8978         Test: http/tests/misc/favicon-as-image.html
   8979 
   8980         * inspector/front-end/inspector.js: Added
   8981         image/vnd.microsoft.icon to WebInspector.MIMETypes.
   8982         * platform/MIMETypeRegistry.cpp:
   8983         (WebCore::initializeSupportedImageMIMETypes): Added
   8984         image/vnd.microsoft.icon to list of supported image and image
   8985         resource MIME types.
   8986 
   8987 2009-05-18  Chris Fleizach  <cfleizach (a] apple.com>
   8988 
   8989         Reviewed by Sam Weinig.
   8990 
   8991         Bug 25776: accessibility should have its own folder in WebCore project
   8992         https://bugs.webkit.org/show_bug.cgi?id=25776
   8993 
   8994         * GNUmakefile.am:
   8995         * WebCore.pro:
   8996         * WebCore.vcproj/WebCore.vcproj:
   8997         * WebCore.xcodeproj/project.pbxproj:
   8998         * WebCoreSources.bkl:
   8999         * accessibility: Added.
   9000         * accessibility/AXObjectCache.cpp: Copied from WebCore/page/AXObjectCache.cpp.
   9001         * accessibility/AXObjectCache.h: Copied from WebCore/page/AXObjectCache.h.
   9002         * accessibility/AccessibilityAriaGrid.cpp: Copied from WebCore/page/AccessibilityAriaGrid.cpp.
   9003         * accessibility/AccessibilityAriaGrid.h: Copied from WebCore/page/AccessibilityAriaGrid.h.
   9004         * accessibility/AccessibilityAriaGridCell.cpp: Copied from WebCore/page/AccessibilityAriaGridCell.cpp.
   9005         * accessibility/AccessibilityAriaGridCell.h: Copied from WebCore/page/AccessibilityAriaGridCell.h.
   9006         * accessibility/AccessibilityAriaGridRow.cpp: Copied from WebCore/page/AccessibilityAriaGridRow.cpp.
   9007         * accessibility/AccessibilityAriaGridRow.h: Copied from WebCore/page/AccessibilityAriaGridRow.h.
   9008         * accessibility/AccessibilityImageMapLink.cpp: Copied from WebCore/page/AccessibilityImageMapLink.cpp.
   9009         * accessibility/AccessibilityImageMapLink.h: Copied from WebCore/page/AccessibilityImageMapLink.h.
   9010         * accessibility/AccessibilityList.cpp: Copied from WebCore/page/AccessibilityList.cpp.
   9011         * accessibility/AccessibilityList.h: Copied from WebCore/page/AccessibilityList.h.
   9012         * accessibility/AccessibilityListBox.cpp: Copied from WebCore/page/AccessibilityListBox.cpp.
   9013         * accessibility/AccessibilityListBox.h: Copied from WebCore/page/AccessibilityListBox.h.
   9014         * accessibility/AccessibilityListBoxOption.cpp: Copied from WebCore/page/AccessibilityListBoxOption.cpp.
   9015         * accessibility/AccessibilityListBoxOption.h: Copied from WebCore/page/AccessibilityListBoxOption.h.
   9016         * accessibility/AccessibilityObject.cpp: Copied from WebCore/page/AccessibilityObject.cpp.
   9017         * accessibility/AccessibilityObject.h: Copied from WebCore/page/AccessibilityObject.h.
   9018         * accessibility/AccessibilityRenderObject.cpp: Copied from WebCore/page/AccessibilityRenderObject.cpp.
   9019         * accessibility/AccessibilityRenderObject.h: Copied from WebCore/page/AccessibilityRenderObject.h.
   9020         * accessibility/AccessibilityTable.cpp: Copied from WebCore/page/AccessibilityTable.cpp.
   9021         * accessibility/AccessibilityTable.h: Copied from WebCore/page/AccessibilityTable.h.
   9022         * accessibility/AccessibilityTableCell.cpp: Copied from WebCore/page/AccessibilityTableCell.cpp.
   9023         * accessibility/AccessibilityTableCell.h: Copied from WebCore/page/AccessibilityTableCell.h.
   9024         * accessibility/AccessibilityTableColumn.cpp: Copied from WebCore/page/AccessibilityTableColumn.cpp.
   9025         * accessibility/AccessibilityTableColumn.h: Copied from WebCore/page/AccessibilityTableColumn.h.
   9026         * accessibility/AccessibilityTableHeaderContainer.cpp: Copied from WebCore/page/AccessibilityTableHeaderContainer.cpp.
   9027         * accessibility/AccessibilityTableHeaderContainer.h: Copied from WebCore/page/AccessibilityTableHeaderContainer.h.
   9028         * accessibility/AccessibilityTableRow.cpp: Copied from WebCore/page/AccessibilityTableRow.cpp.
   9029         * accessibility/AccessibilityTableRow.h: Copied from WebCore/page/AccessibilityTableRow.h.
   9030         * accessibility/chromium: Added.
   9031         * accessibility/chromium/AXObjectCacheChromium.cpp: Copied from WebCore/page/chromium/AXObjectCacheChromium.cpp.
   9032         * accessibility/chromium/AccessibilityObjectChromium.cpp: Copied from WebCore/page/chromium/AccessibilityObjectChromium.cpp.
   9033         * accessibility/chromium/AccessibilityObjectWrapper.h: Copied from WebCore/page/chromium/AccessibilityObjectWrapper.h.
   9034         * accessibility/gtk: Added.
   9035         * accessibility/gtk/AXObjectCacheAtk.cpp: Copied from WebCore/page/gtk/AXObjectCacheAtk.cpp.
   9036         * accessibility/gtk/AccessibilityObjectAtk.cpp: Copied from WebCore/page/gtk/AccessibilityObjectAtk.cpp.
   9037         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: Copied from WebCore/page/gtk/AccessibilityObjectWrapperAtk.cpp.
   9038         * accessibility/gtk/AccessibilityObjectWrapperAtk.h: Copied from WebCore/page/gtk/AccessibilityObjectWrapperAtk.h.
   9039         * accessibility/mac: Added.
   9040         * accessibility/mac/AXObjectCacheMac.mm: Copied from WebCore/page/mac/AXObjectCacheMac.mm.
   9041         * accessibility/mac/AccessibilityObjectMac.mm: Copied from WebCore/page/mac/AccessibilityObjectMac.mm.
   9042         * accessibility/mac/AccessibilityObjectWrapper.h: Copied from WebCore/page/mac/AccessibilityObjectWrapper.h.
   9043         * accessibility/mac/AccessibilityObjectWrapper.mm: Copied from WebCore/page/mac/AccessibilityObjectWrapper.mm.
   9044         * accessibility/qt: Added.
   9045         * accessibility/qt/AccessibilityObjectQt.cpp: Copied from WebCore/page/qt/AccessibilityObjectQt.cpp.
   9046         * accessibility/win: Added.
   9047         * accessibility/win/AXObjectCacheWin.cpp: Copied from WebCore/page/win/AXObjectCacheWin.cpp.
   9048         * accessibility/win/AccessibilityObjectWin.cpp: Copied from WebCore/page/win/AccessibilityObjectWin.cpp.
   9049         * accessibility/win/AccessibilityObjectWrapperWin.h: Copied from WebCore/page/win/AccessibilityObjectWrapperWin.h.
   9050         * accessibility/wx: Added.
   9051         * accessibility/wx/AccessibilityObjectWx.cpp: Copied from WebCore/page/wx/AccessibilityObjectWx.cpp.
   9052         * page/AXObjectCache.cpp: Removed.
   9053         * page/AXObjectCache.h: Removed.
   9054         * page/AccessibilityAriaGrid.cpp: Removed.
   9055         * page/AccessibilityAriaGrid.h: Removed.
   9056         * page/AccessibilityAriaGridCell.cpp: Removed.
   9057         * page/AccessibilityAriaGridCell.h: Removed.
   9058         * page/AccessibilityAriaGridRow.cpp: Removed.
   9059         * page/AccessibilityAriaGridRow.h: Removed.
   9060         * page/AccessibilityImageMapLink.cpp: Removed.
   9061         * page/AccessibilityImageMapLink.h: Removed.
   9062         * page/AccessibilityList.cpp: Removed.
   9063         * page/AccessibilityList.h: Removed.
   9064         * page/AccessibilityListBox.cpp: Removed.
   9065         * page/AccessibilityListBox.h: Removed.
   9066         * page/AccessibilityListBoxOption.cpp: Removed.
   9067         * page/AccessibilityListBoxOption.h: Removed.
   9068         * page/AccessibilityObject.cpp: Removed.
   9069         * page/AccessibilityObject.h: Removed.
   9070         * page/AccessibilityRenderObject.cpp: Removed.
   9071         * page/AccessibilityRenderObject.h: Removed.
   9072         * page/AccessibilityTable.cpp: Removed.
   9073         * page/AccessibilityTable.h: Removed.
   9074         * page/AccessibilityTableCell.cpp: Removed.
   9075         * page/AccessibilityTableCell.h: Removed.
   9076         * page/AccessibilityTableColumn.cpp: Removed.
   9077         * page/AccessibilityTableColumn.h: Removed.
   9078         * page/AccessibilityTableHeaderContainer.cpp: Removed.
   9079         * page/AccessibilityTableHeaderContainer.h: Removed.
   9080         * page/AccessibilityTableRow.cpp: Removed.
   9081         * page/AccessibilityTableRow.h: Removed.
   9082         * page/chromium/AXObjectCacheChromium.cpp: Removed.
   9083         * page/chromium/AccessibilityObjectChromium.cpp: Removed.
   9084         * page/chromium/AccessibilityObjectWrapper.h: Removed.
   9085         * page/gtk/AXObjectCacheAtk.cpp: Removed.
   9086         * page/gtk/AccessibilityObjectAtk.cpp: Removed.
   9087         * page/gtk/AccessibilityObjectWrapperAtk.cpp: Removed.
   9088         * page/gtk/AccessibilityObjectWrapperAtk.h: Removed.
   9089         * page/mac/AXObjectCacheMac.mm: Removed.
   9090         * page/mac/AccessibilityObjectMac.mm: Removed.
   9091         * page/mac/AccessibilityObjectWrapper.h: Removed.
   9092         * page/mac/AccessibilityObjectWrapper.mm: Removed.
   9093         * page/qt/AccessibilityObjectQt.cpp: Removed.
   9094         * page/win/AXObjectCacheWin.cpp: Removed.
   9095         * page/win/AccessibilityObjectWin.cpp: Removed.
   9096         * page/win/AccessibilityObjectWrapperWin.h: Removed.
   9097         * page/wx/AccessibilityObjectWx.cpp: Removed.
   9098 
   9099 2009-05-18  Gustavo Noronha Silva  <gustavo.noronha (a] collabora.co.uk>
   9100 
   9101         Reviewed by Jan Alonzo.
   9102 
   9103         https://bugs.webkit.org/show_bug.cgi?id=25854
   9104         [GTK] Should tell servers we only support identity as content encoding
   9105 
   9106         Let servers know we only support identity as content
   9107         encoding. We will implement this in libsoup.
   9108 
   9109         * platform/network/soup/ResourceHandleSoup.cpp:
   9110         (WebCore::ResourceHandle::startHttp):
   9111 
   9112 2009-05-18  Alexey Proskuryakov  <ap (a] webkit.org>
   9113 
   9114         Reviewed by Darin Adler.
   9115 
   9116         <rdar://problem/6881160> REGRESSION (r41425): Unable to create battle.net account due to
   9117         CAPTCHA failure.
   9118 
   9119         The problem was that after loading and displaying a CAPTCHA image, it was loaded from
   9120         the server again due to preloading. So, the server expected the last loaded (invisible)
   9121         CAPTCHA text to be typed and posted back.
   9122 
   9123         I don't know how to make tests for preloading.
   9124 
   9125         * loader/DocLoader.cpp: (WebCore::DocLoader::checkForPendingPreloads): There is never a reason
   9126         to preload after loading for real - and if cache policy is CachePolicyReload, that actually
   9127         results in another load from network layer.
   9128 
   9129         * loader/FrameLoader.cpp: (WebCore::FrameLoader::cachePolicy): It's not good for cachePolicy()
   9130         to lie, but I don't know how to re-do r41425 properly. Added a FIXME.
   9131 
   9132 2009-05-18  Ariya Hidayat  <ariya.hidayat (a] nokia.com>
   9133 
   9134         Reviewed by Simon Hausmann.
   9135 
   9136         Done together with Balazs Kelemen  <kelemen.balazs (a] stud.u-szeged.hu>.
   9137 
   9138         https://bugs.webkit.org/show_bug.cgi?id=24551
   9139 
   9140         [Qt] Reuse FontPlatformData for the same FontDescription.
   9141         This effectively prevents growing heap usage for loading every web page.
   9142 
   9143         * platform/graphics/qt/FontCacheQt.cpp:
   9144         (WebCore::qHash): Necessary for FontPlatformDataCache.
   9145         (WebCore::FontCache::getCachedFontPlatformData): Reuse the instance if
   9146         it exists, otherwise create a new one and insert it in the cache.
   9147 
   9148 2009-05-18  Balazs Kelemen  <kelemen.balazs (a] stud.u-szeged.hu>
   9149 
   9150         Reviewed by Ariya Hidayat.
   9151 
   9152         https://bugs.webkit.org/show_bug.cgi?id=24551
   9153 
   9154         [Qt] Fix the leak in FontFallbackList::fontDataAt() function.
   9155         When creating a new instance of SimpleFontData, put it in the font list
   9156         so that it can deleted later on.
   9157 
   9158         * platform/graphics/qt/FontFallbackListQt.cpp:
   9159         (WebCore::FontFallbackList::invalidate):
   9160         (WebCore::FontFallbackList::releaseFontData):
   9161         (WebCore::FontFallbackList::fontDataAt):
   9162 
   9163 2009-05-15  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   9164 
   9165          Reviewed by Xan Lopez.
   9166 
   9167          [Gtk] Various autotools build refactoring and fixes
   9168          https://bugs.webkit.org/show_bug.cgi?id=25286
   9169 
   9170          Style fixes
   9171 
   9172          * GNUmakefile.am:
   9173 
   9174 2009-05-17  George Staikos  <george.staikos (a] torchmobile.com>
   9175 
   9176         Not reviewed - build fix.
   9177 
   9178         Fix typo: constr -> const.
   9179 
   9180         * wml/WMLInputElement.h:
   9181         (WebCore::WMLInputElement::setPlaceholder):
   9182 
   9183 2009-05-17  Darin Adler  <darin (a] apple.com>
   9184 
   9185         Fix done by Simon Fraser (reviewed by me).
   9186 
   9187         <rdar://problem/6893775> Page with screen-only stylesheet with overflow and height
   9188         transitions has bad layout and overlapping garbled text when printing
   9189 
   9190         * manual-tests/print-with-height-transition-in-screen-stylesheet.html: Added.
   9191 
   9192         * page/animation/AnimationController.cpp:
   9193         (WebCore::AnimationController::updateAnimations): Don't run transitions when printing.
   9194 
   9195 2009-05-17  Darin Adler  <darin (a] apple.com>
   9196 
   9197         Reviewed by Simon Fraser.
   9198 
   9199         <rdar://problem/6870241> REGRESSION: Programmatically selected popup menu item not shown
   9200 
   9201         * html/HTMLSelectElement.cpp:
   9202         (WebCore::HTMLSelectElement::setSelectedIndex): Added a call to updateFromElement and
   9203         also a type check on the selected index to avoid a bad cast to HTMLOptionElement.
   9204 
   9205         * manual-tests/select-option-in-onload.html: Added.
   9206 
   9207 2009-05-17  Simon Fraser  <simon.fraser (a] apple.com>
   9208 
   9209         Reviewed by Anders Carlsson
   9210 
   9211         Rename local variables for readability.
   9212         
   9213         * rendering/RenderBoxModelObject.cpp:
   9214         (WebCore::RenderBoxModelObject::paintBorder):
   9215 
   9216 2009-05-17  Darin Adler  <darin (a] apple.com>
   9217 
   9218         Reviewed by Mark Rowe.
   9219 
   9220         Bug 25840: fix some warnings seen on the GTK bot
   9221         https://bugs.webkit.org/show_bug.cgi?id=25840
   9222 
   9223         * platform/ScrollView.cpp:
   9224         (WebCore::ScrollView::platformScrollbarModes): Initialize results here.
   9225         This is really just to quiet warnings. I think this code is unreachable.
   9226         Someone could put ASSERT_NOT_REACHED() in here too at some point.
   9227 
   9228         * plugins/PluginStream.cpp:
   9229         (WebCore::PluginStream::startStream): Use proper printf format for int
   9230         here, %d, not %lu. This could cause a real problem when compiled 64-bit,
   9231         so it's good to fix.
   9232 
   9233         * rendering/RenderTextControl.cpp:
   9234         (WebCore::getNextSoftBreak): Initialize breakOffset to 0 here. This is
   9235         really just to quiet the warning, but still seems like a good idea.
   9236 
   9237 2009-05-17  Chris Fleizach  <cfleizach (a] apple.com>
   9238 
   9239         Reviewed by Darin Adler.
   9240 
   9241         Bug 25769: Fix accessibility warnings on GTK
   9242         https://bugs.webkit.org/show_bug.cgi?id=25769
   9243 
   9244         * page/AccessibilityTable.cpp:
   9245         (WebCore::AccessibilityTable::columnCount): Get rid of excess const.
   9246         (WebCore::AccessibilityTable::rowCount): Ditto.
   9247         * page/AccessibilityTable.h: Ditto.
   9248 
   9249 2009-05-17  Kai Brning  <kai (a] granus.net>
   9250 
   9251         Reviewed by Darin Adler.
   9252 
   9253         bug 25822: DOM normalize does not remove empty text node between element nodes
   9254         https://bugs.webkit.org/show_bug.cgi?id=25822
   9255 
   9256         Test: fast/dom/Node/normalize.html
   9257 
   9258         * dom/Node.cpp:
   9259         (WebCore::Node::normalize): Changed to remove any empty text nodes.
   9260 
   9261 2009-05-16  Dave Moore  <davemoore (a] google.com>
   9262 
   9263         Reviewed by Darin Adler.
   9264 
   9265         Allow Strings to be created with one malloc node with no copying
   9266         https://bugs.webkit.org/show_bug.cgi?id=25779
   9267 
   9268         Add new methods to String and StringImpl, refactoring existing
   9269         methods in StringImpl to use new createUninitialized() method.
   9270 
   9271         * platform/text/PlatformString.h:
   9272         (WebCore::String::createUninitialized):
   9273         * platform/text/StringImpl.cpp:
   9274         (WebCore::StringImpl::createUninitialized):
   9275         (WebCore::StringImpl::create):
   9276         * platform/text/StringImpl.h:
   9277 
   9278 2009-05-16  Mark Rowe  <mrowe (a] apple.com>
   9279 
   9280         Reviewed by Darin Adler.
   9281 
   9282         <rdar://problem/6827041> WebCore should stop throwing away the CGImageSourceRef to
   9283         dramatically improve animated GIF decoding performance
   9284 
   9285         Recent versions of ImageIO discard previously decoded image frames if the client
   9286         application no longer holds references to them, so there's no need to throw away
   9287         the decoder unless we're explicitly asked to destroy all of the frames.
   9288 
   9289         This drops peak CPU usage when displaying <http://www.aintitcool.com/files/HoD2.gif>
   9290         from over 90% to below 3%.
   9291 
   9292         * platform/graphics/cg/ImageSourceCG.cpp:
   9293         (WebCore::ImageSource::clear):
   9294 
   9295 2009-05-16  Dan Bernstein  <mitz (a] apple.com>
   9296 
   9297         Reviewed by Alexey Proskuryakov.
   9298 
   9299         - fix <rdar://problem/6873305> Two distinct characters are not displayed
   9300           correctly with 2 of the font selections from the stickies widget
   9301 
   9302         Test: platform/mac/editing/pasteboard/text-precomposed.html
   9303 
   9304         Ensure that "text/plain" data retrieved from the clipboard is always
   9305         precomposed. This makes Clipboard::getData() and
   9306         Pasteboard::documentFragment() consistent with Pasteboard::plainText()
   9307         and -[WebHTMLView _documentFragmentFromPasteboard:forType:inContext:subresources:].
   9308 
   9309         * platform/mac/ClipboardMac.mm:
   9310         (WebCore::ClipboardMac::getData):
   9311         * platform/mac/PasteboardMac.mm:
   9312         (WebCore::Pasteboard::documentFragment):
   9313 
   9314 2009-05-16  Mark Rowe  <mrowe (a] apple.com>
   9315 
   9316         Build fix.
   9317 
   9318         * css/CSSComputedStyleDeclaration.cpp:
   9319         (WebCore::valueForFamily): Declare valueForFamily as static.
   9320 
   9321 2009-05-15  Darin Adler  <darin (a] apple.com>
   9322 
   9323         Reviewed by Dan Bernstein.
   9324 
   9325         <rdar://problem/6883872> REGRESSION (r43243): computed style for font-family is returning
   9326         only the generic font, if any generic font is in the family list
   9327 
   9328         Test: fast/css/getComputedStyle/computed-style-font-family.html
   9329 
   9330         * css/CSSComputedStyleDeclaration.cpp:
   9331         Sorted computedProperties alphabetically. Added CSSPropertyClip and CSSPropertyWordBreak.
   9332         (WebCore::identifierForFamily): Added. Maps internal font family names to identifiers.
   9333         (WebCore::valueForFamily): Added. Creates either an identifier or a string as appropriate.
   9334         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Implemented the font-family
   9335         property as specified in the CSS standard. Fixed clip to return "auto" when there is no
   9336         clip set instead of nothing at all. Gave inheritableProperties and numInheritableProperties
   9337         internal linkage since there was no reason for them to have external linkage.
   9338 
   9339 2009-05-15  Adam Barth  <abarth (a] webkit.org>
   9340 
   9341         Reviewed by Oliver Hunt.
   9342 
   9343         https://bugs.webkit.org/show_bug.cgi?id=25741
   9344 
   9345         Append instead of throwing when insertItemBefore gets an out-of-bound
   9346         index.
   9347 
   9348         Test: svg/dom/svglist-insertItemBefore-appends.html
   9349 
   9350         * svg/SVGList.h:
   9351         (WebCore::SVGList::insertItemBefore):
   9352 
   9353 2009-05-15  Simon Fraser  <simon.fraser (a] apple.com>
   9354 
   9355         Reviewed by Darin Adler
   9356         
   9357         https://bugs.webkit.org/show_bug.cgi?id=25829
   9358         
   9359         Fix -webkit-background-clip:text when the renderer had a non (0,0) x, y offset.
   9360 
   9361         Test: fast/backgrounds/background-clip-text.html
   9362 
   9363         * rendering/RenderBoxModelObject.cpp:
   9364         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
   9365 
   9366 2009-05-15  Dan Bernstein  <mitz (a] apple.com>
   9367 
   9368         Reviewed by Sam Weinig.
   9369 
   9370         - fix <rdar://problem/6888244> REGRESSION: Using the Up or Down keyboard
   9371           arrows, I can't navigate caret between To Do items in a Note message
   9372 
   9373         Test: editing/selection/move-by-line-004.html
   9374 
   9375         * editing/visible_units.cpp:
   9376         (WebCore::enclosingNodeWithNonInlineRenderer): Added this helper
   9377         function.
   9378         (WebCore::previousLinePosition): When advancing to the next candidate
   9379         node, stop when leaving the closest ancestor of the original node that
   9380         is not an inline. The code, incorrectly, was trying to exit the closest
   9381         ancestor of that type which was editable, and therefore missing other
   9382         blocks in the same editable root.
   9383         (WebCore::nextLinePosition): Ditto.
   9384 
   9385 2009-05-15  Fridrich Strba  <fridrich.strba (a] bluewin.ch>
   9386 
   9387         Reviewed by Jan Alonzo.
   9388 
   9389         Converting filename to uri by concatenating strings is broken
   9390         on Windows. So, don't do it for that platform.
   9391 
   9392         * platform/network/soup/ResourceHandleSoup.cpp:
   9393         (WebCore::ResourceHandle::startGio):
   9394 
   9395 2009-05-15  Nate Chapin  <japhet (a] google.com>
   9396 
   9397         Reviewed by Dimitri Glazkov.
   9398 
   9399         Upstream V8 bindings for HTMLOptionsCollection and HTMLSelectElementCollection.
   9400         https://bugs.webkit.org/show_bug.cgi?id=25739
   9401 
   9402         * bindings/v8/V8Collection.cpp: Added.
   9403         (WebCore::toOptionsCollectionSetter): Moved from v8_custom.cpp.
   9404         * bindings/v8/V8Collection.h: Added prototype for toOptionsCollectionSetter().
   9405         * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
   9406         (WebCore::INDEXED_PROPERTY_SETTER): Moved from v8_custom.cpp.
   9407         * bindings/v8/custom/V8HTMLSelectElementCollectionCustom.cpp: Added.
   9408         (WebCore::NAMED_PROPERTY_GETTER):  Moved from v8_custom.cpp.
   9409         (WebCore::INDEXED_PROPERTY_SETTER):  Moved from v8_custom.cpp.
   9410 
   9411 2009-05-15  David Kilzer  <ddkilzer (a] apple.com>
   9412 
   9413         <rdar://problem/6649936> Add *.exp export files to WebCore Xcode project
   9414 
   9415         Reviewed by Darin Adler and Timothy Hatcher.
   9416 
   9417         * WebCore.xcodeproj/project.pbxproj: Added Exports group, moved
   9418         WebCore.base.exp into the group, and added 10 other *.exp files
   9419         in WebCore.
   9420 
   9421 2009-05-15  Dimitri Glazkov  <dglazkov (a] chromium.org>
   9422 
   9423         Unreviewed, build fix.
   9424 
   9425         https://bugs.webkit.org/show_bug.cgi?id=25826
   9426         Change type to only have custom getter in JCS.
   9427 
   9428         * html/HTMLInputElement.idl: Changed CustomGetter attribute to JSCCustomGetter.
   9429 
   9430 2009-05-15  Antti Koivisto  <antti (a] apple.com>
   9431 
   9432         Reviewed by Dave Kilzer.
   9433 
   9434         Add a settings entry to en/disable web font support
   9435         https://bugs.webkit.org/show_bug.cgi?id=25239
   9436 
   9437         * css/CSSFontSelector.cpp:
   9438         (WebCore::CSSFontSelector::addFontFaceRule):
   9439 
   9440 2009-05-15  Sam Weinig  <sam (a] webkit.org>
   9441 
   9442         Reviewed by Steve Falkenburg.
   9443 
   9444         Remove dead youtube site specific hack that was commented out.
   9445 
   9446         * bindings/js/JSNavigatorCustom.cpp:
   9447         * page/Navigator.idl:
   9448 
   9449 2009-05-15  Sam Weinig  <sam (a] webkit.org>
   9450 
   9451         Reviewed by Beth Dakin.
   9452 
   9453         Fix for https://bugs.webkit.org/show_bug.cgi?id=25826
   9454         <rdar://problem/6884742> 
   9455         REGRESSION: In Gmail's Edit Link dialog, I can't type in the Link To: field (due to <input type=url> support)
   9456 
   9457         Added a site specific quirk for mail.google.com which returns "text" when getting the type of an <input type=url>
   9458 
   9459         * bindings/js/JSHTMLInputElementCustom.cpp:
   9460         (WebCore::needsGmailQuirk):
   9461         (WebCore::JSHTMLInputElement::type):
   9462         * html/HTMLInputElement.idl:
   9463 
   9464 2009-05-14  Dimitri Glazkov  <dglazkov (a] chromium.org>
   9465 
   9466         Reviewed by Eric Seidel.
   9467 
   9468         https://bugs.webkit.org/show_bug.cgi?id=25810
   9469         Upstream V8 DOM Wrapper map declarations.
   9470 
   9471         No behavior change, so no tests.
   9472 
   9473         * bindings/v8/V8DOMMap.h:
   9474         (WebCore::WeakReferenceMap::WeakReferenceMap): Added.
   9475         (WebCore::WeakReferenceMap::~WeakReferenceMap): Added.
   9476         (WebCore::WeakReferenceMap::get): Added.
   9477         (WebCore::WeakReferenceMap::set): Added.
   9478         (WebCore::WeakReferenceMap::forget): Added.
   9479         (WebCore::WeakReferenceMap::contains): Added.
   9480         (WebCore::WeakReferenceMap::impl): Added.
   9481         (WebCore::DOMWrapperMap::DOMWrapperMap): Added.
   9482 
   9483 2009-05-15  Simon Fraser  <simon.fraser (a] apple.com>
   9484 
   9485         Reviewed by Dave Hyatt
   9486         
   9487         https://bugs.webkit.org/show_bug.cgi?id=25773
   9488         
   9489         Rename GraphicsLayer::graphicsContextsFlipped() to 
   9490         GraphicsLayer::compositingCoordinatesOrientation() in order to clarify the usage.
   9491 
   9492         Clean up code around the GraphicsLayer "contents" layer that makes use of this
   9493         flag, by removing the setHasContentsLayer() method, and just using setContentsLayer(),
   9494         which can then always do the flipping if necessary.
   9495 
   9496         Only affects ACCELERATED_COMPOSITING builds.
   9497         
   9498         * platform/graphics/GraphicsLayer.h:
   9499         (WebCore::GraphicsLayer::):
   9500         * platform/graphics/mac/GraphicsLayerCA.h:
   9501         (WebCore::GraphicsLayerCA::contentsLayer):
   9502         * platform/graphics/mac/GraphicsLayerCA.mm:
   9503         (WebCore::GraphicsLayer::compositingCoordinatesOrientation):
   9504         (WebCore::GraphicsLayerCA::setBackgroundColor):
   9505         (WebCore::GraphicsLayerCA::clearBackgroundColor):
   9506         (WebCore::GraphicsLayerCA::setContentsToImage):
   9507         (WebCore::GraphicsLayerCA::clearContents):
   9508         (WebCore::GraphicsLayerCA::swapFromOrToTiledLayer):
   9509         (WebCore::GraphicsLayerCA::setContentsLayer):
   9510         * rendering/RenderLayerCompositor.cpp:
   9511         (WebCore::RenderLayerCompositor::ensureRootPlatformLayer):
   9512 
   9513 2009-05-15  Chris Marrin  <cmarrin (a] apple.com>
   9514 
   9515         Reviewed by Simon Fraser.
   9516 
   9517         https://bugs.webkit.org/show_bug.cgi?id=25765
   9518 
   9519         Avoid calling setNeedsStyleRecalc() when we are
   9520         putting an animated page in the cache. This avoids
   9521         the assert and subsequent problems with a dirty 
   9522         page going into the cache.
   9523 
   9524         * page/animation/KeyframeAnimation.cpp:
   9525         (WebCore::KeyframeAnimation::endAnimation):
   9526 
   9527 2009-05-15  Francisco Tolmasky  <francisco (a] 280north.com>
   9528 
   9529         BUG 25467: JavaScript debugger should use function.displayName as the function's name in the call stack
   9530         <https://bugs.webkit.org/show_bug.cgi?id=25467>
   9531         
   9532         Reviewed by Adam Roben.
   9533 
   9534         * inspector/JavaScriptCallFrame.cpp:
   9535         (WebCore::JavaScriptCallFrame::functionName): Use calculatedFunctionName which takes into account displayName
   9536         * inspector/front-end/CallStackSidebarPane.js: Remove "|| anonymous function" since it is handled internally just like in profiles
   9537         (WebInspector.CallStackSidebarPane.prototype.update):
   9538 
   9539 2009-05-15  Alexey Proskuryakov  <ap (a] webkit.org>
   9540 
   9541         Windows build fix (and a matching Mac change, to avoid unnecessarily diverging the implementations).
   9542 
   9543         * platform/network/cf/ResourceHandleCFNet.cpp:
   9544         (WebCore::ResourceHandle::start):
   9545         * platform/network/mac/ResourceHandleMac.mm:
   9546         (WebCore::ResourceHandle::start):
   9547         Check strings with isEmpty(), not relying on any implicit conversions.
   9548 
   9549 2009-05-15  Alexey Proskuryakov  <ap (a] webkit.org>
   9550 
   9551         Reviewed by Darin Adler, Brady Eidson and Eric Carlson.
   9552 
   9553         <rdar://problem/6875643> REGRESSION: Unable to download file with FTP URL that includes
   9554         username and password (Lightwave 9.6 for Mac from Newtek site)
   9555 
   9556         CFNetwork only invokes didReceiveAuthenticationChallenge for HTTP requests. Credentials
   9557         for other protocols (including FTP) should be included as part of the URL.
   9558 
   9559         * platform/network/cf/ResourceHandleCFNet.cpp:
   9560         (WebCore::ResourceHandle::start):
   9561         (WebCore::WebCoreSynchronousLoader::load):
   9562         * platform/network/mac/ResourceHandleMac.mm:
   9563         (WebCore::ResourceHandle::start):
   9564         (+[WebCoreSynchronousLoader loadRequest:allowStoredCredentials:returningResponse:error:]):
   9565         Put credentials in URL for non-HTTP requests.
   9566 
   9567         * xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::makeSimpleCrossOriginAccessRequest):
   9568         Bail out quickly if the URL is non-HTTP. Cross-origin requests require specific HTTP
   9569         headers to be received, so they cannot work with other protocols.
   9570 
   9571 2009-05-15  Ariya Hidayat  <ariya.hidayat (a] nokia.com>
   9572 
   9573         Reviewed by Holger Freyther.
   9574 
   9575         [Qt] In the image decoder, remove the raw image data represented as QImage
   9576         once the image is converted to QPixmap and inserted in the pixmap cache.
   9577         This effectively reduces the heap usage when running on graphics system
   9578         other than raster (i.e the case where QImage != QPixmap).
   9579 
   9580         * platform/graphics/qt/ImageDecoderQt.cpp:
   9581         (WebCore::ImageDecoderQt::imageAtIndex): Nullified the image on purpose.
   9582         * platform/graphics/qt/ImageDecoderQt.h: Made m_imageList mutable.
   9583 
   9584 2009-05-15  Ariya Hidayat  <ariya.hidayat (a] nokia.com>
   9585 
   9586         Reviewed by Holger Freyther.
   9587 
   9588         [Qt] Refactor alpha channel detection the image decoder.
   9589         Sets the boolean flag as soon as the image is being read.
   9590 
   9591         * platform/graphics/qt/ImageDecoderQt.cpp:
   9592         (WebCore::ImageDecoderQt::ImageDecoderQt): Initialized m_hasAlphaChannel.
   9593         (WebCore::ImageDecoderQt::setData): Set the flag when appropriate.
   9594         (WebCore::ImageDecoderQt::supportsAlpha): Simplified.
   9595         (WebCore::ImageDecoderQt::reset): Resetted the flag.
   9596         * platform/graphics/qt/ImageDecoderQt.h: Added m_hasAlphaChannel.
   9597 
   9598 2009-05-15  Laszlo Gombos  <laszlo.1.gombos (a] nokia.com>
   9599 
   9600         Reviewed by Darin Adler.
   9601 
   9602         Finish support for disabling the JavaScript Debugger and Profiler 
   9603         at compile time in WebCore
   9604         https://bugs.webkit.org/show_bug.cgi?id=24917
   9605 
   9606         * bindings/js/JSInspectorControllerCustom.cpp: ENABLE_JAVASCRIPT_DEBUGGER guard
   9607         * bindings/js/JSJavaScriptCallFrameCustom.cpp: Ditto.
   9608         * inspector/JavaScriptCallFrame.cpp: Ditto.
   9609         * inspector/JavaScriptCallFrame.h: Ditto.
   9610         * inspector/JavaScriptCallFrame.idl: Ditto.
   9611         * inspector/JavaScriptDebugListener.h: Ditto.
   9612         * inspector/JavaScriptDebugServer.cpp: Ditto.
   9613         * inspector/JavaScriptDebugServer.h: Ditto.
   9614         * inspector/JavaScriptProfile.cpp: Ditto.
   9615         * inspector/JavaScriptProfile.h: Ditto.
   9616         * inspector/JavaScriptProfileNode.cpp: Ditto.
   9617         * inspector/JavaScriptProfileNode.h: Ditto.
   9618         * page/Console.cpp: Use guard ENABLE(JAVASCRIPT_DEBUGGER) instead of USE(JSC)
   9619         * page/Console.h: Ditto.
   9620         * page/Console.idl: Use guard ENABLE(JAVASCRIPT_DEBUGGER) instead of !defined(V8_BINDING)
   9621 
   9622 2009-05-15  Jungshik Shin  <jshin (a] chromium.org>
   9623 
   9624         Reviewed by Dimitri Glazkov
   9625 
   9626         http://bugs.webkit.org/show_bug.cgi?id=25464
   9627 
   9628         Improve the font fallback for characters belonging to 'common' scripts
   9629         in ChromiumWin port. Make characters like Danda, Double Danda (punctuation
   9630         marks in North Indian scripts) and currency signs (e.g. Thai Baht)
   9631         rendered correctly in Chromium on Win. 
   9632 
   9633         Tests: fast/text/international/danda-space.html
   9634                fast/text/international/thai-baht-space.html
   9635 
   9636         * platform/graphics/chromium/FontUtilsChromiumWin.cpp:
   9637         (WebCore::FontMap::getScriptBasedOnUnicodeBlock):
   9638         (WebCore::FontMap::getScript):
   9639         (WebCore::getFallbackFamily):
   9640 
   9641 2009-05-15  Laszlo Gombos  <laszlo.1.gombos (a] nokia.com>
   9642 
   9643         Reviewed by Holger Freyther.
   9644 
   9645         https://bugs.webkit.org/show_bug.cgi?id=25731
   9646         [Qt] Cleanup - move files exclusive to XPATH and XSLT under the
   9647         appropriate build section
   9648 
   9649         * WebCore.pro:
   9650 
   9651 2009-05-14  Evan Martin  <evan (a] chromium.org>
   9652 
   9653         Reviewed by Eric Seidel and Darin Fisher.
   9654 
   9655         Fix a font-related leak in Chromium's Skia backend found by Valgrind.
   9656         https://bugs.webkit.org/show_bug.cgi?id=25760
   9657 
   9658         * platform/graphics/chromium/FontCacheLinux.cpp:
   9659         (WebCore::FontCache::getFontDataForCharacters):
   9660         Use caches instead of "new" on every call.
   9661 
   9662 2009-05-14  Rahul Kuchhal  <kuchhal (a] chromium.org>
   9663 
   9664         Reviewed by Eric Seidel.
   9665 
   9666         Initialize m_spreadMethod in the second constructor too. Not sure if
   9667         a test case can be written, so no test case.
   9668         https://bugs.webkit.org/show_bug.cgi?id=25814
   9669 
   9670         No test possible: spreadMethod() is only used by SVG, doesn't seem possible to hit
   9671         this case, since several other SVG tests already should be calling
   9672         spreadMethod().
   9673 
   9674         * platform/graphics/Gradient.cpp:
   9675         (WebCore::Gradient::Gradient):
   9676 
   9677 2009-05-14  Simon Fraser  <simon.fraser (a] apple.com>
   9678 
   9679         No review.
   9680 
   9681         Fix Windows build after renaming MediaControlElements to MediaControlElementType.
   9682 
   9683         * rendering/RenderMediaControls.cpp:
   9684         (WebCore::RenderMediaControls::paintMediaControlsPart):
   9685         * rendering/RenderMediaControls.h:
   9686 
   9687 2009-05-14  Simon Fraser  <simon.fraser (a] apple.com>
   9688 
   9689         Reviewed by Darin Adler
   9690         
   9691         <rdar://problem/6739671> Movie controllers play button does not change into a pause
   9692         button
   9693 
   9694         Fix a controls repaint issue when the playing state of a video changes by
   9695         educating the MediaControlInputElements about the state they are currently
   9696         displaying, and making them repaint when that state changes. This applies
   9697         to the play/pause and mute/unmute buttons, which both have two states.
   9698         
   9699         * rendering/MediaControlElements.cpp:
   9700         (WebCore::MediaControlInputElement::MediaControlInputElement):
   9701         (WebCore::MediaControlSeekButtonElement::MediaControlSeekButtonElement):
   9702         (WebCore::MediaControlTimelineElement::MediaControlTimelineElement):
   9703         (WebCore::MediaControlFullscreenButtonElement::MediaControlFullscreenButtonElement):
   9704         Pass in and initialize the MediaControlElementType.
   9705         
   9706         (WebCore::MediaControlInputElement::update):
   9707         Update the display type too
   9708         
   9709         (WebCore::MediaControlInputElement::setDisplayType):
   9710         (WebCore::MediaControlMuteButtonElement::MediaControlMuteButtonElement):
   9711         (WebCore::MediaControlMuteButtonElement::updateDisplayType):
   9712         Choose muted vs. unmuted display.
   9713         
   9714         (WebCore::MediaControlPlayButtonElement::MediaControlPlayButtonElement):
   9715         (WebCore::MediaControlPlayButtonElement::updateDisplayType):
   9716         Choose play vs. paused display.
   9717 
   9718         * rendering/MediaControlElements.h:
   9719         Renamed the MediaControlElements enum to MediaControlElementType.
   9720         (WebCore::MediaControlInputElement::updateDisplayType):
   9721         Add a MediaControlElementType member variable with a setter to allow
   9722         the element to know what type it is displaying.
   9723 
   9724 2009-05-14  Dean Jackson  <dino (a] apple.com>
   9725 
   9726         Reviewed by Simon Fraser.
   9727 
   9728         https://bugs.webkit.org/show_bug.cgi?id=25197
   9729 
   9730         Add support for aspect-ratio and orientation
   9731         media queries.
   9732 
   9733         Tests: fast/media/mq-aspect-ratio.html
   9734                fast/media/mq-orientation.html
   9735 
   9736         * css/MediaFeatureNames.h:
   9737         * css/MediaQueryEvaluator.cpp:
   9738         (WebCore::orientationMediaFeatureEval):
   9739         (WebCore::aspect_ratioMediaFeatureEval):
   9740         (WebCore::min_aspect_ratioMediaFeatureEval):
   9741         (WebCore::max_aspect_ratioMediaFeatureEval):
   9742         * css/MediaQueryExp.h:
   9743         (WebCore::MediaQueryExp::isViewportDependent):
   9744 
   9745 2009-05-14  Kevin McCullough  <kmccullough (a] apple.com>
   9746 
   9747         - Resubmitting previous patch, correctly this time.
   9748 
   9749         * editing/CompositeEditCommand.cpp:
   9750         (WebCore::CompositeEditCommand::splitTreeToNode):
   9751         * editing/IndentOutdentCommand.cpp:
   9752         (WebCore::IndentOutdentCommand::outdentParagraph):
   9753 
   9754 2009-05-14  Kevin McCullough  <kmccullough (a] apple.com>
   9755 
   9756         - Rolling out to fix a bug and the build
   9757 
   9758         * editing/CompositeEditCommand.cpp:
   9759         (WebCore::CompositeEditCommand::splitTreeToNode):
   9760         * editing/IndentOutdentCommand.cpp:
   9761         (WebCore::IndentOutdentCommand::outdentParagraph):
   9762 
   9763 2009-05-14  Kevin McCullough  <kmccullough (a] apple.com>
   9764 
   9765         Reviewed by Dan Bernstein.
   9766 
   9767         <rdar://problem/6510362> In some situations message content is messed up
   9768         when indentation is decreased
   9769 
   9770         * editing/CompositeEditCommand.cpp:
   9771         (WebCore::CompositeEditCommand::splitTreeToNode): Calling recursively
   9772         here served to do nothing because this function will return if the
   9773         second argument is the parent of the first.  Not only does this now work
   9774         as intended, but is necessary for the rest of this fix.
   9775         * editing/IndentOutdentCommand.cpp:
   9776         (WebCore::IndentOutdentCommand::outdentParagraph): To determine if we 
   9777         are the last node in a <blockquote>, and can therefore remove the
   9778         <blockquote> we need the endOfEnclosingBlock to extend to the end of
   9779         the <blockquote> not just the next block, which could be a <div>, for
   9780         example. 
   9781         - Also If a <blockquote> is removed, but it's the child of another
   9782         <blockquote> then its children are now children of the top <blockquote>.
   9783         In this case we want to split the parent <blockquote> because the next
   9784         paragraph assumes that it is the first node in its <blockquote> and if
   9785         that is not true, various bugs arise.
   9786 
   9787 2009-05-14  Brady Eidson  <beidson (a] apple.com>
   9788 
   9789         Build fix.
   9790 
   9791         * platform/network/cf/ResourceHandleCFNet.cpp:
   9792         (WebCore::setDefaultMIMEType):
   9793 
   9794 2009-05-14  Brady Eidson  <beidson (a] apple.com>
   9795 
   9796         Reviewed by Adam Roben.
   9797 
   9798         Fix http/tests/xmlhttprequest/cache-override.html on Windows
   9799 
   9800         * platform/network/cf/ResourceHandleCFNet.cpp:
   9801         (WebCore::setDefaultMIMEType): Modify the previous response so it maintains all of its data.
   9802         (WebCore::didReceiveResponse): Call setDefaultMIMEType() when needed.
   9803         (WebCore::WebCoreSynchronousLoader::load): Ditto.
   9804 
   9805 2009-05-14  Paul Godavari  <paul (a] chromium.org>
   9806 
   9807         Reviewed by Dimitri Glazkov.
   9808 
   9809         Bug: Mac Chromium popup menus are not positioned correctly
   9810         on scrolled pages:
   9811         https://bugs.webkit.org/show_bug.cgi?id=25772
   9812 
   9813         Fix Mac Chromium popup menu placement by taking into
   9814         account any scrolling in the current window. This mirrors
   9815         the positioning done in PopupContainer::show(), which is
   9816         used on Chromium Windows and linux.
   9817 
   9818         Also fixed indenting for this method.
   9819 
   9820         * platform/chromium/PopupMenuChromium.cpp:
   9821         (WebCore::PopupContainer::showExternal):
   9822 
   9823 2009-05-14  Drew Wilson  <atwilson (a] google.com>
   9824 
   9825         Reviewed by Dimitri Glazkov.
   9826 
   9827         https://bugs.webkit.org/show_bug.cgi?id=25774
   9828         Upstream V8MessagePortCustom.cpp from the chromium repository.
   9829 
   9830         * bindings/v8/custom/V8MessagePortCustom.cpp: Added.
   9831         (WebCore::ACCESSOR_GETTER):
   9832         (WebCore::ACCESSOR_SETTER):
   9833         (WebCore::CALLBACK_FUNC_DECL):
   9834 
   9835 2009-05-14  Simon Fraser  <simon.fraser (a] apple.com>
   9836 
   9837         Reviewed by Darin Adler
   9838 
   9839         https://bugs.webkit.org/show_bug.cgi?id=25777
   9840         
   9841         StyleGeneratedImage::imageSize() needs to take zooming into account for
   9842         fixed-size images (i.e. canvas) so that canvas-as-image-background
   9843         renders correctly with zooming.
   9844 
   9845         Test: fast/canvas/canvas-bg-zoom.html
   9846 
   9847         * rendering/style/StyleGeneratedImage.cpp:
   9848         (WebCore::StyleGeneratedImage::imageSize):
   9849 
   9850 2009-05-14  Alexey Proskuryakov  <ap (a] webkit.org>
   9851 
   9852         Reviewed by Darin Adler.
   9853 
   9854         Patch originally by Darin Adler.
   9855 
   9856         https://bugs.webkit.org/show_bug.cgi?id=25796
   9857         <rdar://problem/6886654> Shouldn't set referer and origin in Loader::Host::servePendingRequests().
   9858 
   9859         Test: http/tests/security/credentials-in-referer.html
   9860 
   9861         * loader/loader.cpp: (WebCore::Loader::Host::servePendingRequests): This will be done in
   9862         SubresourceLoader::create() anyway.
   9863 
   9864 2009-05-14  Chris Fleizach  <cfleizach (a] apple.com>
   9865 
   9866         Reviewed by Darin Adler.
   9867 
   9868         Bug 25797: Pages with image maps are not properly read with Voiceover
   9869         https://bugs.webkit.org/show_bug.cgi?id=25797
   9870 
   9871         * page/AccessibilityImageMapLink.h:
   9872         (WebCore::AccessibilityImageMapLink::isEnabled):
   9873 
   9874 2009-05-14  Brady Eidson  <beidson (a] apple.com>
   9875 
   9876         Reviewed by Darin Adler.
   9877 
   9878         <rdar://problem/6887762> and https://bugs.webkit.org/show_bug.cgi?id=25790 
   9879 
   9880         Nuke the bogus ASSERT and add a legitimate ASSERT with a little help from a new accessor.
   9881 
   9882         * platform/network/ResourceHandle.cpp:
   9883         (WebCore::ResourceHandle::shouldContentSniff):
   9884         * platform/network/ResourceHandle.h:
   9885 
   9886         * platform/network/cf/ResourceHandleCFNet.cpp:
   9887         (WebCore::createCFURLResponseWithDefaultMIMEType):
   9888         (WebCore::didReceiveResponse):
   9889 
   9890 2009-05-14  Eric Carlson  <eric.carlson (a] apple.com>
   9891 
   9892         Reviewed by Darin Adler.
   9893 
   9894         https://bugs.webkit.org/show_bug.cgi?id=25791
   9895         Bug 25791: HTMLMediaElement: implement 'startTime' attribute
   9896         
   9897         Support the recently added HTMLMediaElement 'startTime' attribute. This is a read-only 
   9898         value that only the media engine can know, so we just need to add the attribute 
   9899         to HTMLMediaElement and add methods to MediaPlayer and MediaPlayerPrivateInterface so 
   9900         the engine can make it available.
   9901 
   9902         Test: media/media-startTime.html
   9903 
   9904         * html/HTMLMediaElement.cpp:
   9905         (WebCore::HTMLMediaElement::startTime): New.
   9906         * html/HTMLMediaElement.h:
   9907         * html/HTMLMediaElement.idl:
   9908 
   9909         * platform/graphics/MediaPlayer.cpp:
   9910         (WebCore::MediaPlayer::startTime): New.
   9911         * platform/graphics/MediaPlayer.h:
   9912 
   9913         * platform/graphics/MediaPlayerPrivate.h:
   9914         (WebCore::MediaPlayerPrivateInterface::startTime): New.
   9915 
   9916 2009-05-14  Kenneth Rohde Christiansen  <kenneth.christiansen (a] openbossa.org>
   9917 
   9918         Reviewed by Ariya Hidayat.
   9919 
   9920         Only create a QWidget wrapper for the plugin in the case it is not
   9921         in the Qt window mapper, and thus receiving events from the Qt
   9922         event system. Native Qt based plugins running in process, will
   9923         already be in the window mapper, and thus creating a wrapper,
   9924         stops them from getting events from Qt, as they are redirected
   9925         to the wrapper.
   9926 
   9927         * plugins/qt/PluginContainerQt.cpp:
   9928         (PluginContainerQt::on_clientIsEmbedded):
   9929 
   9930 2009-05-14  Alexey Proskuryakov  <ap (a] webkit.org>
   9931 
   9932         Reviewed by Darin Adler.
   9933 
   9934         https://bugs.webkit.org/show_bug.cgi?id=25784
   9935         Leaks seen on HTTP tests
   9936 
   9937         We should change ResourceHandleMac.mm to use smart pointers some day, but this is a minimal fix.
   9938 
   9939         * platform/network/mac/ResourceHandleMac.mm:
   9940         (WebCore::ResourceHandle::loadResourceSynchronously): Release mutable request copy made for
   9941         disabling content sniffing, matching the normal code path.
   9942         (-[WebCoreSynchronousLoader connection:willSendRequest:redirectResponse:]): Release m_user
   9943         and m_pass before overwriting.
   9944         (-[WebCoreSynchronousLoader connection:didReceiveAuthenticationChallenge:]): Ditto.
   9945 
   9946 2009-05-14  Yury Semikhatsky <yurys (a] chromium.org>
   9947 
   9948         Reviewed by Dimitri Glazkov.
   9949 
   9950         https://bugs.webkit.org/show_bug.cgi?id=25418
   9951         Remove new lines from event handler wrapper to make line numbers
   9952         in the wrapped script conside with the lines in the original script.
   9953 
   9954         * bindings/v8/V8LazyEventListener.cpp:
   9955         (WebCore::V8LazyEventListener::getListenerFunction):
   9956         (WebCore::V8LazyEventListener::getWrappedListenerFunction):
   9957 
   9958 2009-05-14  Dimitri Glazkov  <dglazkov (a] chromium.org>
   9959 
   9960         Reviewed by Alexey Proskuryakov.
   9961 
   9962         Remove a JSC-specific include that is already added by including
   9963         ScriptController.
   9964 
   9965         No change in behavior, so no tests.
   9966 
   9967         * dom/Document.cpp: Removed JSDOMBinding include.
   9968 
   9969 2009-05-14  Alexey Proskuryakov  <ap (a] webkit.org>
   9970 
   9971         Reviewed by Brady Eidson.
   9972 
   9973         <rdar://problem/4072827> Downloaded non-ASCII file name becomes garbled
   9974 
   9975         Hopefully, a final stroke. When updating ResourceRequest from a platform request, a wrong
   9976         CFString function was used, so a user-friendly name was stored in encoding fallback array.
   9977 
   9978         * platform/network/cf/ResourceRequestCFNet.cpp: (WebCore::ResourceRequest::doUpdateResourceRequest):
   9979         * platform/network/mac/ResourceRequestMac.mm: (WebCore::ResourceRequest::doUpdateResourceRequest):
   9980 
   9981 2009-05-14  Ben Murdoch  <benm (a] google.com>
   9982 
   9983         Reviewed by Darin Adler.
   9984 
   9985         Add more ENABLE_DATABASE guards.
   9986         https://bugs.webkit.org/show_bug.cgi?id=25616
   9987 
   9988         See also https://bugs.webkit.org/show_bug.cgi?id=24776 (original set of guards)
   9989 
   9990         * bindings/js/JSSQLResultSetRowListCustom.cpp:
   9991         * bindings/v8/custom/V8CustomSQLStatementCallback.cpp:
   9992         * bindings/v8/custom/V8CustomSQLStatementCallback.h:
   9993         * bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp:
   9994         * bindings/v8/custom/V8CustomSQLStatementErrorCallback.h:
   9995         * bindings/v8/custom/V8CustomSQLTransactionCallback.cpp:
   9996         * bindings/v8/custom/V8CustomSQLTransactionCallback.h:
   9997         * bindings/v8/custom/V8CustomSQLTransactionErrorCallback.cpp:
   9998         * bindings/v8/custom/V8CustomSQLTransactionErrorCallback.h:
   9999         * bindings/v8/custom/V8DatabaseCustom.cpp:
   10000         * bindings/v8/custom/V8SQLResultSetRowListCustom.cpp:
   10001         * bindings/v8/custom/V8SQLTransactionCustom.cpp:
   10002         * storage/Database.cpp:
   10003         * storage/DatabaseDetails.h:
   10004         * storage/OriginUsageRecord.cpp:
   10005         * storage/OriginUsageRecord.h:
   10006         * storage/SQLError.h:
   10007         * storage/SQLError.idl:
   10008         * storage/SQLResultSet.cpp:
   10009         * storage/SQLResultSet.h:
   10010         * storage/SQLResultSet.idl:
   10011         * storage/SQLResultSetRowList.cpp:
   10012         * storage/SQLResultSetRowList.h:
   10013         * storage/SQLResultSetRowList.idl:
   10014         * storage/SQLStatementCallback.h:
   10015         * storage/SQLStatementErrorCallback.h:
   10016         * storage/SQLTransactionCallback.h:
   10017         * storage/SQLTransactionErrorCallback.h:
   10018 
   10019 2009-05-11  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   10020 
   10021         Reviewed by Darin Adler.
   10022 
   10023         https://bugs.webkit.org/show_bug.cgi?id=25787
   10024 
   10025         Gtk was the last platform to not unregister plugins when
   10026         the plugin is stopped. Catch up with r43550.
   10027 
   10028         * plugins/gtk/PluginViewGtk.cpp:
   10029         (WebCore::PluginView::stop):
   10030 
   10031 2009-05-14  Adam Roben  <aroben (a] apple.com>
   10032 
   10033         Make WebCore.vcproj's pre-build event work again
   10034 
   10035         * WebCore.vcproj/WebCore.vcproj: Removed empty override of the
   10036         pre-build event that was accidentally left in when the pre-build event
   10037         was moved to WebCoreCommon.vsprops.
   10038 
   10039 2009-05-14  Darin Adler  <darin (a] apple.com>
   10040 
   10041         * manual-tests/right-click-crash.html: Added.
   10042 
   10043 2009-05-14  Mark Rowe  <mrowe (a] apple.com>
   10044 
   10045         Rubber-stamped by Darin Adler.
   10046 
   10047         <rdar://problem/6681868> When building with Xcode 3.1.3 should be using gcc 4.2
   10048 
   10049         The meaning of XCODE_VERSION_ACTUAL is more sensible in newer versions of Xcode.
   10050         Update our logic to select the compiler version to use the more appropriate XCODE_VERSION_MINOR
   10051         if the version of Xcode supports it, and fall back to XCODE_VERSION_ACTUAL if not.
   10052 
   10053         * Configurations/Base.xcconfig:
   10054 
   10055 2009-05-13  Anders Carlsson  <andersca (a] apple.com>
   10056 
   10057         Fix build.
   10058 
   10059         * WebCore.NPAPI.exp:
   10060 
   10061 2009-05-13  Eric Seidel  <eric (a] webkit.org>
   10062 
   10063         Reviewed by Oliver Hunt.
   10064 
   10065         Fix invalid memory write seen in HTMLCanvasElement by Valgrind
   10066         https://bugs.webkit.org/show_bug.cgi?id=25759
   10067 
   10068         I can't think of any way to catch this with a layout test, so no test.
   10069 
   10070         * css/CSSCanvasValue.cpp:
   10071         (WebCore::CSSCanvasValue::canvasDestroyed):
   10072         * css/CSSCanvasValue.h:
   10073         * html/HTMLCanvasElement.cpp:
   10074         (WebCore::HTMLCanvasElement::~HTMLCanvasElement):
   10075         * html/HTMLCanvasElement.h:
   10076 
   10077 2009-05-13  Dan Bernstein  <mitz (a] apple.com>
   10078 
   10079         Reviewed by Anders Carlsson.
   10080 
   10081         - fix <rdar://problem/5483015> Replies in Mail are drawn first without
   10082           the user style sheet and then redrawn with the style sheet
   10083 
   10084         Test: platform/mac/fast/loader/user-stylesheet-fast-path.html
   10085 
   10086         * page/mac/FrameMac.mm:
   10087         (WebCore::Frame::setUserStyleSheetLocation): For data URLs with
   10088         base64-encoded UTF-8 data, just decode the style sheet here an apply
   10089         it synchronously instead of invoking an asynchronous loader.
   10090 
   10091 2009-05-13  Chris Fleizach  <cfleizach (a] apple.com>
   10092 
   10093         Bug 25755: Implement ARIA grid role
   10094         https://bugs.webkit.org/show_bug.cgi?id=25755
   10095 
   10096         Fix build bustage from last checkin.
   10097 
   10098         * page/AccessibilityAriaGrid.cpp:
   10099         (WebCore::AccessibilityAriaGrid::addChild):
   10100 
   10101 2009-05-13  Chris Fleizach  <cfleizach (a] apple.com>
   10102 
   10103         Reviewed by Beth Dakin.
   10104 
   10105         Bug 25755: Implement ARIA grid role
   10106         https://bugs.webkit.org/show_bug.cgi?id=25755
   10107 
   10108         Test: accessibility/aria-tables.html
   10109 
   10110         * GNUmakefile.am:
   10111         * WebCore.pro:
   10112         * WebCore.vcproj/WebCore.vcproj:
   10113         * WebCore.xcodeproj/project.pbxproj:
   10114         * WebCoreSources.bkl:
   10115         * page/AXObjectCache.cpp:
   10116         (WebCore::AXObjectCache::nodeIsAriaType):
   10117         (WebCore::AXObjectCache::getOrCreate):
   10118         * page/AXObjectCache.h:
   10119         * page/AccessibilityAriaGrid.cpp: Added.
   10120         (WebCore::AccessibilityAriaGrid::AccessibilityAriaGrid):
   10121         (WebCore::AccessibilityAriaGrid::~AccessibilityAriaGrid):
   10122         (WebCore::AccessibilityAriaGrid::create):
   10123         (WebCore::AccessibilityAriaGrid::addChild):
   10124         (WebCore::AccessibilityAriaGrid::addChildren):
   10125         (WebCore::AccessibilityAriaGrid::cellForColumnAndRow):
   10126         * page/AccessibilityAriaGrid.h: Added.
   10127         (WebCore::AccessibilityAriaGrid::isAriaTable):
   10128         * page/AccessibilityAriaGridCell.cpp: Added.
   10129         (WebCore::AccessibilityAriaGridCell::AccessibilityAriaGridCell):
   10130         (WebCore::AccessibilityAriaGridCell::~AccessibilityAriaGridCell):
   10131         (WebCore::AccessibilityAriaGridCell::create):
   10132         (WebCore::AccessibilityAriaGridCell::parentTable):
   10133         (WebCore::AccessibilityAriaGridCell::rowIndexRange):
   10134         (WebCore::AccessibilityAriaGridCell::columnIndexRange):
   10135         * page/AccessibilityAriaGridCell.h: Added.
   10136         * page/AccessibilityAriaGridRow.cpp: Added.
   10137         (WebCore::AccessibilityAriaGridRow::AccessibilityAriaGridRow):
   10138         (WebCore::AccessibilityAriaGridRow::~AccessibilityAriaGridRow):
   10139         (WebCore::AccessibilityAriaGridRow::create):
   10140         (WebCore::AccessibilityAriaGridRow::parentTable):
   10141         (WebCore::AccessibilityAriaGridRow::headerObject):
   10142         * page/AccessibilityAriaGridRow.h: Added.
   10143         * page/AccessibilityList.cpp:
   10144         (WebCore::AccessibilityList::accessibilityIsIgnored):
   10145         * page/AccessibilityList.h:
   10146         * page/AccessibilityObject.h:
   10147         (WebCore::):
   10148         * page/AccessibilityRenderObject.cpp:
   10149         (WebCore::RoleEntry::):
   10150         * page/AccessibilityTable.cpp:
   10151         (WebCore::AccessibilityTable::AccessibilityTable):
   10152         (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
   10153         * page/AccessibilityTable.h:
   10154         (WebCore::AccessibilityTable::isAriaTable):
   10155         * page/AccessibilityTableCell.cpp:
   10156         (WebCore::AccessibilityTableCell::parentTable):
   10157         (WebCore::AccessibilityTableCell::isTableCell):
   10158         (WebCore::AccessibilityTableCell::titleUIElement):
   10159         * page/AccessibilityTableCell.h:
   10160         * page/AccessibilityTableColumn.cpp:
   10161         (WebCore::AccessibilityTableColumn::setParentTable):
   10162         (WebCore::AccessibilityTableColumn::headerObject):
   10163         * page/AccessibilityTableRow.cpp:
   10164         (WebCore::AccessibilityTableRow::isTableRow):
   10165         (WebCore::AccessibilityTableRow::parentTable):
   10166         * page/AccessibilityTableRow.h:
   10167         * page/mac/AccessibilityObjectWrapper.mm:
   10168         (RoleEntry::):
   10169 
   10170 2009-05-13  David Levin  <levin (a] chromium.org>
   10171 
   10172         Reviewed by Dimitri Glazkov.
   10173 
   10174         Bug 25763: Need to move v8 custom binding to the custom directory.
   10175         https://bugs.webkit.org/show_bug.cgi?id=25763
   10176 
   10177         No test due to no change in behavior.
   10178 
   10179         * bindings/v8/custom/V8CanvasPixelArrayCustom.cpp: Renamed from WebCore/bindings/v8/V8CanvasPixelArrayCustom.cpp.
   10180 
   10181 2009-05-13  Nate Chapin  <japhet (a] google.com>
   10182 
   10183         Reviewed by Dimitri Glazkov.
   10184 
   10185         Fix LayoutTests/fast/dom/Element/attr-param-typechecking.html crashing with V8.
   10186         https://bugs.webkit.org/show_bug.cgi?id=25758
   10187 
   10188         * bindings/v8/custom/V8ElementCustom.cpp:
   10189         (WebCore::CALLBACK_FUNC_DECL): return the result of throwError() if it is called.
   10190 
   10191 2009-05-13  Jeremy Moskovich  <jeremy (a] chromium.org>
   10192 
   10193         Reviewed by Dave Hyatt.
   10194 
   10195         Fix a number of bugs relating to RTL and text-overflow:ellipsis.
   10196         Also refactor the relevant code to make it a little clearer.
   10197 
   10198         This CL fixes 3 fundamental issues:
   10199         - Corrects behavior if the truncated InlineTextBox's directionality is
   10200           different from the overall flow direction - bug 25135.
   10201         - Make decoration drawing in InlineFlowbox RTL-aware - bug 24206.
   10202         - Full truncation on InlineBoxes in RTL flow - bug 24186
   10203         - Add tests for the above + reorder/cleanup tests for easier
   10204           interpretation of outcome.
   10205 
   10206         The code for placing ellipsis has been refactored to use
   10207         left/right notation rather than a single variable whose meaning
   10208         could differ based on flow directionality.
   10209 
   10210         To support differing inline directionality vs flow directionality,
   10211         different variables are now used in InlineTextBox::placeEllipsisBox to
   10212         track the two.
   10213 
   10214         The drawing mode for underlines in standards mode now correctly handles
   10215         RTL truncation and relevant test where added.
   10216 
   10217         https://bugs.webkit.org/show_bug.cgi?id=24186
   10218         https://bugs.webkit.org/show_bug.cgi?id=25135
   10219         https://bugs.webkit.org/show_bug.cgi?id=24206
   10220 
   10221         Tests: fast/css/text-overflow-ellipsis-bidi.html
   10222                fast/css/text-overflow-ellipsis-strict.html
   10223 
   10224         * rendering/InlineBox.cpp:
   10225         (WebCore::InlineBox::placeEllipsisBox):
   10226         * rendering/InlineBox.h:
   10227         * rendering/InlineFlowBox.cpp:
   10228         (WebCore::InlineFlowBox::paintTextDecorations):
   10229         (WebCore::InlineFlowBox::placeEllipsisBox):
   10230         * rendering/InlineFlowBox.h:
   10231         * rendering/InlineTextBox.cpp:
   10232         (WebCore::InlineTextBox::placeEllipsisBox):
   10233         (WebCore::InlineTextBox::paint):
   10234         * rendering/InlineTextBox.h:
   10235         * rendering/RenderFlexibleBox.cpp:
   10236         (WebCore::RenderFlexibleBox::layoutVerticalBox):
   10237         * rendering/RootInlineBox.cpp:
   10238         (WebCore::RootInlineBox::placeEllipsis):
   10239         (WebCore::RootInlineBox::placeEllipsisBox):
   10240         * rendering/RootInlineBox.h:
   10241         * rendering/bidi.cpp:
   10242         (WebCore::RenderBlock::checkLinesForTextOverflow):
   10243 
   10244 2009-05-13  Dmitry Titov  <dimich (a] chromium.org>
   10245 
   10246         Rubber-stamped by Mark Rowe.
   10247 
   10248         https://bugs.webkit.org/show_bug.cgi?id=25746
   10249         Revert http://trac.webkit.org/changeset/43507 which caused crash in PPC nightlies with Safari 4.
   10250 
   10251         * dom/XMLTokenizerLibxml2.cpp:
   10252         (WebCore::matchFunc):
   10253         (WebCore::openFunc):
   10254         (WebCore::createStringParser):
   10255         (WebCore::createMemoryParser):
   10256         * loader/icon/IconDatabase.cpp:
   10257         (WebCore::IconDatabase::open):
   10258         * platform/sql/SQLiteDatabase.cpp:
   10259         (WebCore::SQLiteDatabase::SQLiteDatabase):
   10260         (WebCore::SQLiteDatabase::close):
   10261         * storage/DatabaseThread.cpp:
   10262         (WebCore::DatabaseThread::DatabaseThread):
   10263         (WebCore::DatabaseThread::start):
   10264         (WebCore::DatabaseThread::databaseThread):
   10265         * storage/LocalStorageThread.cpp:
   10266         (WebCore::LocalStorageThread::LocalStorageThread):
   10267         (WebCore::LocalStorageThread::start):
   10268         (WebCore::LocalStorageThread::localStorageThread):
   10269         (WebCore::LocalStorageThread::scheduleImport):
   10270         (WebCore::LocalStorageThread::scheduleSync):
   10271         (WebCore::LocalStorageThread::terminate):
   10272         * workers/WorkerThread.cpp:
   10273         (WebCore::WorkerThread::WorkerThread):
   10274         (WebCore::WorkerThread::start):
   10275 
   10276 2009-05-13  David Hyatt  <hyatt (a] apple.com>
   10277 
   10278         Reviewed by Beth Dakin.
   10279 
   10280         Fix for <rdar://problem/6872894> REGRESSION (r41896-42143): First letter cut off in styled select menus
   10281         
   10282         Make sure to do rounded clipping for overflow and controls relative to the border box and not to the overflow/control clip rect
   10283         (which is typically clipped to the padding or content box).  Doing so was causing rounded clips to be incorrectly applied to padding and
   10284         content.
   10285     
   10286         Added fast/overflow/border-radius-clipping.html
   10287 
   10288         * rendering/RenderBox.cpp:
   10289         (WebCore::RenderBox::pushContentsClip):
   10290 
   10291 2009-05-13  Darin Adler  <darin (a] apple.com>
   10292 
   10293         Revert the parser arena change. It was a slowdown, not a speedup.
   10294         Better luck next time (I'll break it up into pieces).
   10295 
   10296 2009-05-13  David Hyatt  <hyatt (a] apple.com>
   10297 
   10298         Reviewed by Beth Dakin and Darin Adler.
   10299 
   10300         Fix for <rdar://problem/6869687> REGRESSION (r41203): Facebook friend suggestions disappear on update.
   10301         
   10302         Make sure that renderers are marked for layout if a style change causes them to switch from having a self-painting layer
   10303         to a non-self-painting layer (and vice versa).
   10304         
   10305         Move misplaced layer repainting code that was in RenderBox up into RenderBoxModelObject so that inlines with layers
   10306         repaint properly on opacity changes, etc.
   10307 
   10308         Added fast/repaint/opacity-change-on-overflow-float.html.
   10309 
   10310         * rendering/RenderBox.cpp:
   10311         (WebCore::RenderBox::styleWillChange):
   10312         * rendering/RenderBoxModelObject.cpp:
   10313         (WebCore::RenderBoxModelObject::styleWillChange):
   10314         (WebCore::RenderBoxModelObject::styleDidChange):
   10315         * rendering/RenderBoxModelObject.h:
   10316 
   10317 2009-05-13  Dimitri Glazkov  <dglazkov (a] chromium.org>
   10318 
   10319         Not reviewed, build fix.
   10320 
   10321         Move an include, needed by Debugger under the corresponding guard.
   10322 
   10323         * inspector/InspectorController.cpp: Moved parser/SourceCode under JAVASCRIPT_DEBUGGER
   10324             guard.
   10325 
   10326 2009-05-13  David Levin  <levin (a] chromium.org>
   10327 
   10328         Reviewed by Darin Adler.
   10329 
   10330         Bug 25394: REGRESSION: crash in DocumentLoader::addResponse due to bad |this| pointer
   10331         https://bugs.webkit.org/show_bug.cgi?id=25394
   10332 
   10333         Test: http/tests/xmlhttprequest/frame-unload-abort-crash.html
   10334 
   10335         * loader/SubresourceLoader.cpp:
   10336         (WebCore::SubresourceLoader::create):
   10337         Add another check to subresource loader to avoid doing any loads in frames
   10338         when the loaders are being stopped.
   10339 
   10340 2009-05-13  Stephan Haller  <nomad (a] froevel.de>
   10341 
   10342         Reviewed by Gustavo Noronha.
   10343 
   10344         Wrong handling of file upload if no file selected
   10345         https://bugs.webkit.org/show_bug.cgi?id=25649
   10346 
   10347         Fixed returned path if path is empty
   10348 
   10349         * WebCore/platform/gtk/FileSystemGtk.cpp:
   10350 
   10351 2009-05-13  Dan Bernstein  <mitz (a] apple.com>
   10352 
   10353         Reviewed by Dave Hyatt.
   10354 
   10355         - fix <rdar://problem/6805567> REGRESSION (r42348): Notes flicker white
   10356           when loading
   10357 
   10358         Tests: fast/frames/content-opacity-1.html
   10359                fast/frames/content-opacity-2.html
   10360 
   10361         * page/FrameView.cpp:
   10362         (WebCore::FrameView::reset): Reset m_contentIsOpaque to false.
   10363         (WebCore::FrameView::useSlowRepaints): Use slow repaints if the content
   10364         is not known to be opaque.
   10365         (WebCore::FrameView::setContentIsOpaque): Added. Sets m_contentIsOpaque
   10366         and enables or disables fast repaints accordingly.
   10367         * page/FrameView.h:
   10368         * rendering/RenderBoxModelObject.cpp:
   10369         (WebCore::RenderBoxModelObject::paintFillLayerExtended): Removed the
   10370         document()->haveStylesheetsLoaded() condition in determining whether the
   10371         root is opaque. This is what was causing the bug, as iframes were
   10372         considered to be opaque, and thus painted an opaque white background,
   10373         whenever they were pending a style sheet load.
   10374         Changed to call FrameView::setContentIsOpaqe() instead of
   10375         setUseSlowRepaints(), which allows the frame to go back to fast repaints
   10376         if the content becomes opaque.
   10377         Corrected the check for background color opacity: any alpha value other
   10378         than 255--not just zero--is not opaque.
   10379 
   10380 2009-05-13  Ariya Hidayat  <ariya.hidayat (a] nokia.com>
   10381 
   10382         Reviewed by Sam Weinig.
   10383 
   10384         [Qt] Fix "lighther" composition mode.
   10385         QPainter::CompositionMode_Plus is the right match.
   10386 
   10387         * platform/graphics/qt/GraphicsContextQt.cpp:
   10388         (WebCore::toQtCompositionMode):
   10389 
   10390 2009-05-13  Darin Adler  <darin (a] apple.com>
   10391 
   10392         Reviewed by Cameron Zwarich.
   10393 
   10394         Bug 25674: syntax tree nodes should use arena allocation
   10395         https://bugs.webkit.org/show_bug.cgi?id=25674
   10396 
   10397         * bindings/js/JSDOMBinding.h: Removed include of JSFunction.h.
   10398         We don't want the entire DOM binding to depend on that file.
   10399 
   10400         * bindings/js/JSAudioConstructor.cpp: Added include of Error.h.
   10401         Before we inherited this automatically because JDDOMBinding.h
   10402         included JSFunction.h, but that was excessive.
   10403         * bindings/js/JSDOMWindowCustom.cpp: Ditto.
   10404         * bindings/js/JSHTMLInputElementCustom.cpp: Ditto.
   10405         * bindings/js/JSImageConstructor.cpp: Ditto.
   10406         * bindings/js/JSLazyEventListener.cpp: Ditto, but for JSFunction.h.
   10407         * bindings/js/JSMessageChannelConstructor.cpp: Ditto.
   10408         * bindings/js/JSOptionConstructor.cpp: Ditto.
   10409         * bindings/js/JSWorkerConstructor.cpp: Ditto.
   10410         * bindings/js/JSXMLHttpRequestConstructor.cpp: Ditto.
   10411         * bridge/jni/jni_jsobject.mm: Ditto, but for SourceCode.h.
   10412         * inspector/InspectorController.cpp: Ditto.
   10413 
   10414         * inspector/JavaScriptDebugServer.cpp:
   10415         (WebCore::JavaScriptDebugServer::recompileAllJSFunctions):
   10416         Moved mose of this function into the base class in JavaScriptCore,
   10417         so the details of compilation don't have to be exposed.
   10418 
   10419 2009-05-13  Douglas R. Davidson  <ddavidso (a] apple.com>
   10420 
   10421         Reviewed by Darin Adler.
   10422 
   10423         <rdar://problem/6879145>
   10424         Generate a contextual menu item allowing autocorrections to
   10425         easily be changed back.  Refrain from re-correcting items
   10426         that have already been autocorrected once.
   10427 
   10428         * dom/DocumentMarker.h:
   10429         * editing/Editor.cpp:
   10430         (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
   10431         (WebCore::Editor::changeBackToReplacedString):
   10432         * editing/Editor.h:
   10433         * page/ContextMenuController.cpp:
   10434         (WebCore::ContextMenuController::contextMenuItemSelected):
   10435         * page/mac/WebCoreViewFactory.h:
   10436         * platform/ContextMenu.cpp:
   10437         (WebCore::ContextMenu::populate):
   10438         (WebCore::ContextMenu::checkOrEnableIfNeeded):
   10439         * platform/ContextMenuItem.h:
   10440         * platform/LocalizedStrings.h:
   10441         * platform/mac/LocalizedStringsMac.mm:
   10442         (WebCore::contextMenuItemTagChangeBack):
   10443         * rendering/HitTestResult.cpp:
   10444         (WebCore::HitTestResult::replacedString):
   10445         * rendering/HitTestResult.h:
   10446         * rendering/InlineTextBox.cpp:
   10447         (WebCore::InlineTextBox::computeRectForReplacementMarker):
   10448         (WebCore::InlineTextBox::paintDocumentMarkers):
   10449         * rendering/InlineTextBox.h:
   10450 
   10451 2009-05-13  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   10452 
   10453         Rubber Stamped by Oliver Hunt.
   10454 
   10455         [GTK] Fix Gtk+/X11 build on OSX
   10456 
   10457         Including the CoreFoundation header here and X11 headers
   10458         later will result in different definitions of Boolean. The
   10459         CoreFoundation include does not seem to be necessary here
   10460         and my mac build was successfull without it. I will remove
   10461         it for now. If the build bots disagree this will be replaced
   10462         by a #if PLATFORM(CF).
   10463 
   10464         * platform/FileSystem.h:
   10465 
   10466 2009-05-13  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   10467 
   10468         Rubber Stamped by Gustavo Noronha.
   10469 
   10470         [GTK] Move the #ifdef around for a buildfix for Gtk+ on OSX
   10471 
   10472         When building Gtk+ on OSX we ended up declaring
   10473         setNPWindowIfNeeded twice. Fix that by moving
   10474         the #if PLATFORM(GTK) up and using elif instead of
   10475         else.
   10476 
   10477         * plugins/PluginView.h:
   10478 
   10479 2009-05-13  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   10480 
   10481         Reviewed by Xan Lopez.
   10482 
   10483         https://bugs.webkit.org/show_bug.cgi?id=25685
   10484         [GTK] Middle click paste form the pasteboard
   10485 
   10486         The kit wants to paste from at least two different
   10487         clipboards. By introducing getCurrentTarget to the
   10488         PasteboardHelper interface we can make this decision
   10489         in the kit.
   10490         Use the new method in PasteboardGtk to get the right
   10491         GdkClipboard for the paste operation.
   10492 
   10493         * platform/gtk/PasteboardGtk.cpp:
   10494         (WebCore::Pasteboard::documentFragment):
   10495         (WebCore::Pasteboard::plainText):
   10496         * platform/gtk/PasteboardHelper.h:
   10497 
   10498 2009-05-13  Eric Carlson  <eric.carlson (a] apple.com>
   10499 
   10500         Reviewed by Darin Adler.
   10501 
   10502         <rdar://problem/6438177> QTMoviePreferredTransformAttribute only supported on SnowLeopard
   10503         <rdar://problem/6872468> QTMovieOpenForPlaybackAttribute only supported on SnowLeopard
   10504 
   10505         QTMoviePreferredTransformAttribute and QTMovieOpenForPlaybackAttribute are not supported
   10506         on Tiger or Leopard.
   10507 
   10508         * html/HTMLMediaElement.cpp:
   10509         (WebCore::HTMLMediaElement::setNetworkState): Remove invalid ASSERT.
   10510 
   10511         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   10512         (WebCore::MediaPlayerPrivate::createQTMovie): Only request QTMoviePreferredTransformAttribute
   10513         when !BUILDING_ON_TIGER and !BUILDING_ON_LEOPARD.
   10514         (WebCore::MediaPlayerPrivate::cacheMovieScale): Only ask for QTMovieOpenForPlaybackAttribute 
   10515         when !BUILDING_ON_TIGER and !BUILDING_ON_LEOPARD,
   10516 
   10517 2009-05-12  Roland Steiner <rolandsteiner (a] google.com>
   10518 
   10519         Reviewed by Eric Seidel.
   10520 
   10521         Bug 25738: Skia: CSS border style not cleared for SVG object
   10522         https://bugs.webkit.org/show_bug.cgi?id=25738
   10523 
   10524         If no dashing is set, this change reverts to solid stroke
   10525         (previously the code bailed and left the old setting, whatever it was)
   10526 
   10527         Test case listed in above bug entry.
   10528         (Additional complications due to each platform rendering dotted lines differently -
   10529         c.f. https://bugs.webkit.org/show_bug.cgi?id=25737)
   10530 
   10531         * platform/graphics/skia/GraphicsContextSkia.cpp:
   10532         (WebCore::GraphicsContext::setLineDash):
   10533 
   10534 2009-05-11  Erik Arvidsson  <arv (a] chromium.org>
   10535 
   10536         Reviewed by Eric Seidel.
   10537 
   10538         Bug 21903: Adds DOM bindings for the placeholder property of the
   10539         HTMLInputElement.
   10540         https://bugs.webkit.org/show_bug.cgi?id=21903
   10541 
   10542         Test: fast/forms/placeholder-dom-property.html
   10543 
   10544         * dom/InputElement.cpp:
   10545         (WebCore::InputElement::updatePlaceholderVisibility):
   10546         * dom/InputElement.h:
   10547         * html/HTMLInputElement.cpp:
   10548         (WebCore::HTMLInputElement::placeholder):
   10549         (WebCore::HTMLInputElement::setPlaceholder):
   10550         * html/HTMLInputElement.h:
   10551         * html/HTMLInputElement.idl:
   10552         * rendering/RenderTextControlSingleLine.cpp:
   10553         (WebCore::RenderTextControlSingleLine::updateFromElement):
   10554         * wml/WMLInputElement.h:
   10555         (WebCore::WMLInputElement::placeholder):
   10556         (WebCore::WMLInputElement::setPlaceholder):
   10557 
   10558 2009-05-12  Adam Barth  <abarth (a] webkit.org>
   10559 
   10560         Reviewed by Dimitri Glazkov.
   10561 
   10562         https://bugs.webkit.org/show_bug.cgi?id=25706
   10563 
   10564         Change V8 bindings to match JSC bindings with respect to using
   10565         the lexical or dynamic global object.
   10566 
   10567         Tests: http/tests/security/aboutBlank/security-context-grandchildren-lexical.html
   10568                http/tests/security/aboutBlank/security-context-grandchildren-write-lexical.html
   10569                http/tests/security/aboutBlank/security-context-grandchildren-writeln-lexical.html
   10570 
   10571         * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
   10572         (WebCore::CALLBACK_FUNC_DECL):
   10573 
   10574 2009-03-19  Oliver Hunt  <oliver (a] apple.com>
   10575 
   10576         Reviewed by Darin Adler.
   10577 
   10578         <rdar://problem/6702386> Incorrect bound check in SVGList::insertItemBefore
   10579 
   10580         SVGList::insertItemBefore would not perform a bounds check on the
   10581         index it was provided, potentially leading to a buffer overflow. 
   10582 
   10583         Test: svg/dom/svglist-exception-on-out-bounds-error.html
   10584 
   10585         * svg/SVGList.h:
   10586         (WebCore::SVGList::insertItemBefore):
   10587 
   10588 2009-05-12  Paul Godavari  <paul (a] chromium.org>
   10589 
   10590         Reviewed by Dimitri Glazkov.
   10591 
   10592         Bug 25708: Cannot choose menu items in popups with many entries in Chromium
   10593         https://bugs.webkit.org/show_bug.cgi?id=25708
   10594 
   10595         This change sets the window size for popups on Mac to include all items
   10596         in the menu. This is required for hit testing on Mac, where we use native
   10597         controls to manage the popups and don't want to artificially limit the
   10598         valid hit testing region to a limited scroll window.
   10599 
   10600         * platform/chromium/PopupMenuChromium.cpp:
   10601         (WebCore::PopupListBox::layout):
   10602 
   10603 2009-05-12  Stephen White  <senorblanco (a] chromium.org>
   10604 
   10605         Reviewed by Dimitri Glazkov.
   10606 
   10607         Fixes to build with latest skia:  SkTypeface::Create() is now
   10608         SkTypeface::CreateFromName(); computeBounds() has been reworked
   10609         as getBounds().  The changes are placed behind an #ifdef for now,
   10610         so that we can roll back the skia version in Chromium if necessary
   10611         without having to roll back this change.
   10612 
   10613         https://bugs.webkit.org/show_bug.cgi?id=25705
   10614 
   10615         * platform/graphics/chromium/FontCacheLinux.cpp:
   10616         (WebCore::FontCache::createFontPlatformData):
   10617         * platform/graphics/skia/PathSkia.cpp:
   10618         (WebCore::Path::boundingRect):
   10619         (WebCore::boundingBoxForCurrentStroke):
   10620         * platform/graphics/skia/SkiaUtils.cpp:
   10621         (WebCore::SkPathContainsPoint):
   10622 
   10623 2009-05-12  Nate Chapin  <japhet (a] google.com>
   10624 
   10625         Reviewed by Dimitri Glazkov.
   10626 
   10627         https://bugs.webkit.org/show_bug.cgi?id=25732
   10628         Update V8ElementCustom.cpp to match the current API of V8Proxy.
   10629 
   10630         (WebCore::ACCESSOR_SETTER): Change retrieveActiveFrame() to retrieveFrameForEnteredContext().
   10631 
   10632 2009-05-12  Alexey Proskuryakov  <ap (a] webkit.org>
   10633 
   10634         Reviewed by Darin Adler.
   10635 
   10636         https://bugs.webkit.org/show_bug.cgi?id=25694
   10637         HTMLParser::createHead() ASSERT: Creating an element, calling  document.open() and writing
   10638         to the document NULL ptr
   10639 
   10640         Test: fast/parser/implicit-head-in-fragment-crash.html
   10641 
   10642         * html/HTMLParser.cpp: (WebCore::HTMLParser::bodyCreateErrorCheck): Do not try to implicitly
   10643         create <head> when parsing a fragment.
   10644 
   10645 2009-05-12  Soren Gjesse  <sgjesse (a] chromium.org>
   10646 
   10647         Reviewed by Dimitri Glazkov.
   10648 
   10649         https://bugs.webkit.org/show_bug.cgi?id=25687
   10650         Missing check for valid function in V8 bindings for toString function for event listeners.
   10651 
   10652         * bindings/v8/V8LazyEventListener.cpp:
   10653         (WebCore::V8LazyEventListener::getWrappedListenerFunction): Added empty handle checks.
   10654 
   10655 2009-05-11  Yael Aharon  <yael.aharon (a] nokia.com>
   10656 
   10657         Reviewed by Holger Freyther.
   10658 
   10659         Change Qt port to match the mac and windows ports, and unregister plugins when plugins are stopped.
   10660         Not doing that can cause assersion failure.
   10661         https://bugs.webkit.org/show_bug.cgi?id=25702
   10662 
   10663         * plugins/qt/PluginViewQt.cpp:
   10664         (WebCore::PluginView::stop):
   10665 
   10666 2009-05-11  Laszlo Gombos  <laszlo.1.gombos (a] nokia.com>
   10667 
   10668         Reviewed by Holger Freyther.
   10669 
   10670         Bug 25714: [Qt] Decouple HTML5 Database support from the
   10671         SQLite/generic database support in the Qt port
   10672 
   10673         <https://bugs.webkit.org/show_bug.cgi?id=25714>
   10674 
   10675         * WebCore.pro:
   10676 
   10677 2009-05-11  Chris Fleizach  <cfleizach (a] apple.com>
   10678 
   10679         Reviewed by Beth Dakin.
   10680 
   10681         Bug 25713: AX: Control Elements not identified in HTML content
   10682         https://bugs.webkit.org/show_bug.cgi?id=25713
   10683 
   10684         Test: accessibility/onclick-handlers.html
   10685 
   10686         * page/AccessibilityRenderObject.cpp:
   10687         (WebCore::AccessibilityRenderObject::mouseButtonListener):
   10688 
   10689 2009-05-11  Darin Adler  <darin (a] apple.com>
   10690 
   10691         Reviewed by Dan Bernstein.
   10692 
   10693         <rdar://problem/6276843> REGRESSION: TextIterator generates
   10694         an extra newline for ranges that start outside of body
   10695 
   10696         * editing/TextIterator.cpp:
   10697         (WebCore::TextIterator::shouldRepresentNodeOffsetZero):
   10698         Check startPos for null, not just currPos.
   10699 
   10700 2009-05-11  Chris Fleizach  <cfleizach (a] apple.com>
   10701 
   10702         Reviewed by Darin Adler.
   10703 
   10704         Bug 25700: Regression:WebKit:cmd-left and cmd-right use to go to the beginning and end of a line in Mail
   10705         https://bugs.webkit.org/show_bug.cgi?id=25700
   10706 
   10707         Keyboard selection movement handlers need to also watch for the Cmd key when Accessibility is enabled.
   10708         Note: This code is only used when accessibility is enabled.
   10709 
   10710         * page/EventHandler.cpp:
   10711         (WebCore::EventHandler::handleKeyboardSelectionMovement):
   10712 
   10713 2009-05-11  David Kilzer  <ddkilzer (a] apple.com>
   10714 
   10715         Bug 25087: Test for ENABLE_FOO macros consistently in IDL files
   10716 
   10717         <https://bugs.webkit.org/show_bug.cgi?id=25087>
   10718 
   10719         Reviewed by Timothy Hatcher.
   10720 
   10721         Change tests for ENABLE macros to check for both existence and
   10722         value:
   10723 
   10724         - Negative:  #if !defined(ENABLE_FOO) || !ENABLE_FOO
   10725         - Positive:  #if defined(ENABLE_FOO) && ENABLE_FOO
   10726 
   10727         * css/CSSCharsetRule.idl:
   10728         * css/CSSPrimitiveValue.idl:
   10729         * css/RGBColor.idl:
   10730         * dom/Attr.idl:
   10731         * dom/DOMCoreException.idl:
   10732         * dom/DOMImplementation.idl:
   10733         * dom/Document.idl:
   10734         * dom/Element.idl:
   10735         * dom/Event.idl:
   10736         * dom/EventException.idl:
   10737         * dom/KeyboardEvent.idl:
   10738         * dom/MessagePort.idl:
   10739         * dom/MouseEvent.idl:
   10740         * dom/Node.idl:
   10741         * dom/ProcessingInstruction.idl:
   10742         * dom/Range.idl:
   10743         * dom/RangeException.idl:
   10744         * dom/WheelEvent.idl:
   10745         * html/CanvasPixelArray.idl:
   10746         * html/HTMLAnchorElement.idl:
   10747         * html/HTMLAppletElement.idl:
   10748         * html/HTMLAreaElement.idl:
   10749         * html/HTMLBaseFontElement.idl:
   10750         * html/HTMLCanvasElement.idl:
   10751         * html/HTMLDocument.idl:
   10752         * html/HTMLElement.idl:
   10753         * html/HTMLEmbedElement.idl:
   10754         * html/HTMLFrameElement.idl:
   10755         * html/HTMLIFrameElement.idl:
   10756         * html/HTMLImageElement.idl:
   10757         * html/HTMLInputElement.idl:
   10758         * html/HTMLLinkElement.idl:
   10759         * html/HTMLObjectElement.idl:
   10760         * html/HTMLOptionElement.idl:
   10761         * html/HTMLOptionsCollection.idl:
   10762         * html/HTMLSelectElement.idl:
   10763         * html/HTMLStyleElement.idl:
   10764         * html/ImageData.idl:
   10765         * inspector/InspectorController.idl:
   10766         * loader/appcache/DOMApplicationCache.idl:
   10767         * page/Console.idl:
   10768         * page/Coordinates.idl:
   10769         * page/DOMSelection.idl:
   10770         * page/DOMWindow.idl:
   10771         * page/Geoposition.idl:
   10772         * page/History.idl:
   10773         * page/Location.idl:
   10774         * page/Navigator.idl:
   10775         * svg/SVGElementInstance.idl:
   10776         * svg/SVGException.idl:
   10777         * workers/WorkerContext.idl:
   10778         * xml/XMLHttpRequestException.idl:
   10779         * xml/XPathException.idl:
   10780 
   10781 2009-05-11  Norbert Leser  <norbert.leser (a] nokia.com>
   10782 
   10783         Reviewed by Darin Adler.
   10784 
   10785         Bug 24538: class/struct mixup in forward declarations
   10786         https://bugs.webkit.org/show_bug.cgi?id=24538
   10787 
   10788         * inspector/InspectorResource.h:
   10789         * loader/CachedFont.h:
   10790         * loader/appcache/ApplicationCache.h:
   10791         * rendering/RenderBlock.h:
   10792         * rendering/RootInlineBox.h:
   10793         * rendering/SVGInlineTextBox.h:
   10794         * svg/SVGGlyphElement.h:
   10795         * svg/SVGHKernElement.h:
   10796 
   10797 2009-05-11  Norbert Leser  <norbert.leser (a] nokia.com>
   10798 
   10799         Reviewed by Darin Adler.
   10800 
   10801         Bug 24539: Unresolved CSSMutableStyleDeclaration
   10802         https://bugs.webkit.org/show_bug.cgi?id=24539
   10803 
   10804         The Symbian tools can't compile and link this without this include.
   10805         It's not clear why this is different from other toolsets or why it affects
   10806         only this header file, but adding the include for now.
   10807 
   10808         * editing/RemoveCSSPropertyCommand.h: Added include of CSSMutableStyleDeclaration.h.
   10809 
   10810 2009-05-11  Alice Liu  <alice.liu (a] apple.com>
   10811 
   10812         Reviewed by Dan Bernstein.
   10813 
   10814         https://bugs.webkit.org/show_bug.cgi?id=25701
   10815         REGRESSION(r38788 & r42020): styled searchfields look wrong on Windows, affects Facebook
   10816 
   10817         Test: fast/forms/search-styled.html
   10818 
   10819         * css/themeWin.css:
   10820         Remove the overriding of -webkit-appearance for searchfields. This will cause background
   10821         images to not be honored when styling searchfields
   10822 
   10823         * rendering/RenderThemeWin.cpp:
   10824         (WebCore::RenderThemeWin::adjustSearchFieldStyle):
   10825         * rendering/RenderThemeWin.h:
   10826         Re-instate final adjustments to searchfield styling that were removed in r42020
   10827 
   10828 2009-05-11  Brady Eidson  <beidson (a] apple.com>
   10829 
   10830         Fix Windows build
   10831 
   10832         * platform/network/cf/ResourceHandleCFNet.cpp:
   10833         (WebCore::createCFURLResponseWithDefaultMIMEType):
   10834 
   10835 2009-05-11  Nate Chapin  <japhet (a] google.com>
   10836 
   10837         Reviewed by Dimitri Glazkov.
   10838 
   10839         https://bugs.webkit.org/show_bug.cgi?id=25626
   10840         Update V8ElementCustom.cpp to match the current API of Node.
   10841 
   10842         * bindings/v8/custom/V8ElementCustom.cpp:
   10843         (WebCore::ACCESSOR_SETTER): Changed a couple of method names to match current names.
   10844         (WebCore::ACCESSOR_GETTER): Changed a method name to match current name.
   10845 
   10846 2009-05-11  Brady Eidson  <beidson (a] apple.com>
   10847 
   10848         Fix Windows build
   10849 
   10850         * platform/network/cf/ResourceHandleCFNet.cpp:
   10851         (WebCore::createCFURLResponseWithDefaultMIMEType):
   10852         (WebCore::WebCoreSynchronousLoader::load):
   10853 
   10854 2009-05-11  Brady Eidson  <beidson (a] apple.com>
   10855 
   10856         Fix Windows build
   10857 
   10858         * platform/network/cf/ResourceHandleCFNet.cpp:
   10859         (WebCore::createCFURLResponseWithDefaultMIMEType):
   10860 
   10861 2009-05-11  Nate Chapin  <japhet (a] google.com>
   10862 
   10863         Reviewed by Dimitri Glazkov.
   10864 
   10865         V8CustomBinding.cpp is missing a header file
   10866 
   10867         https://bugs.webkit.org/show_bug.cgi?id=25644
   10868 
   10869         * bindings/v8/custom/V8CustomBinding.cpp: Added #include "V8Proxy.h".
   10870 
   10871 2009-05-11  Aaron Boodman  <aa (a] chromium.org>
   10872 
   10873         Reviewed by Darin Fisher.
   10874 
   10875         https://bugs.webkit.org/show_bug.cgi?id=25634
   10876         Change V8Proxy::retrieveActiveFrame() call sites to V8Proxy::retrieveFrameForEnteredContext().
   10877 
   10878         Also, change instances of ScriptController::retrieveActiveFrame() to
   10879         V8::retrieveFrameForEnteredContext() for consistency.
   10880 
   10881 
   10882         See http://codereview.chromium.org/113085 for the corresponding Chromium change.
   10883 
   10884         * bindings/v8/custom/V8DOMWindowCustom.cpp:
   10885         (WebCore::V8Custom::WindowSetLocation):
   10886         * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
   10887         (WebCore::CALLBACK_FUNC_DECL):
   10888         * bindings/v8/custom/V8LocationCustom.cpp:
   10889         (WebCore::navigateIfAllowed):
   10890         (WebCore::ACCESSOR_SETTER):
   10891         (WebCore::CALLBACK_FUNC_DECL):
   10892 
   10893 2009-05-11  Brady Eidson  <beidson (a] apple.com>
   10894 
   10895         Reviewed by Darin Adler.
   10896 
   10897         <rdar://problem/5972751> Local image files (BMP, ico) can be misidentified as HTML.
   10898 
   10899         First part of the fix - Disable content sniffing for file resources which never should've been happening anyways.
   10900         Second part of the fix - If the networking layer doesn't give us back a MIME type default to "application/octet-stream".
   10901 
   10902         * platform/MIMETypeRegistry.cpp:
   10903         (WebCore::defaultMIMEType): "application/octet-stream"
   10904         * platform/MIMETypeRegistry.h:
   10905 
   10906         * platform/network/ResourceHandle.cpp:
   10907         (WebCore::ResourceHandle::create): If content sniffing is true, double check with "shouldContentSniffRequest()" which
   10908           might override it to false.
   10909         (WebCore::ResourceHandle::shouldContentSniffURL): Return false for file:// urls, true for everything else.
   10910         * platform/network/ResourceHandle.h:
   10911 
   10912         * platform/network/cf/ResourceHandleCFNet.cpp:
   10913         (WebCore::createCFURLResponseWithDefaultMIMEType): Create a copy of the CFURLRequest with the default MIME type instead
   10914           of null.
   10915         (WebCore::didReceiveResponse): If the MIME type for the response is null, create a copy with the default MIME type.
   10916         (WebCore::WebCoreSynchronousLoader::load): Use shouldContentSniffRequest() to make synchronous loads have the same 
   10917           sniffing policy as asynchronous loads.  Also, correct a null MIME type by creating a copy with the default type.
   10918 
   10919         * platform/network/mac/ResourceHandleMac.mm:
   10920         (WebCore::ResourceHandle::loadResourceSynchronously): Use shouldContentSniffRequest() to make synchronous loads have the
   10921           same sniffing policy as asynchronous loads.
   10922         (-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]): Set up the [NSURLResponse MIMEType] swizzling if
   10923           it hasn't been set up yet.
   10924         (_web_NSURLResponse_MIMEType): Either return the actual MIME type of the response, or the default MIME type if it's nil.
   10925 
   10926         * xml/XMLHttpRequest.cpp:
   10927         (WebCore::XMLHttpRequest::loadRequestAsynchronously): Remove the workaround added in r29370 as it will now be covered by
   10928           the new mechanism.
   10929 
   10930 2009-05-11  David Kilzer  <ddkilzer (a] apple.com>
   10931 
   10932         Fix typo "APPLICATION_CAHE_DYNAMIC_ENTRIES" to "APPLICATION_CACHE_DYNAMIC_ENTRIES"
   10933 
   10934         This was added in r39816 to disable dynamic entries.  They are
   10935         still disabled after fixing the typo since this feature define
   10936         is never set anywhere.
   10937 
   10938         * bindings/js/JSDOMApplicationCacheCustom.cpp:
   10939         * loader/appcache/DOMApplicationCache.idl:
   10940 
   10941 2009-05-11  Dmitry Titov  <dimich (a] chromium.org>
   10942 
   10943         Reviewed by Alexey Proskuryakov and Adam Roben.
   10944 
   10945         https://bugs.webkit.org/show_bug.cgi?id=25348
   10946         Change WTF::ThreadIdentifier to be an actual (but wrapped) thread id, remove ThreadMap.
   10947 
   10948         Most of the change is in WTF.
   10949         Unless noted, all the following files changed to use the new ThreadIdentifier::isValid()
   10950         method instead of just doing 'if(m_threadID)' kind of checks, since ThreadIdentifier
   10951         is now a class rather then an integer.
   10952         Also, there is no need to initialize threadID in constructors to 0 now.
   10953 
   10954         * dom/XMLTokenizerLibxml2.cpp:
   10955         (WebCore::libxmlLoaderThread): use DEFINE_STATIC_LOCAL and accessor function for static thread id,
   10956         since now ThreadIdentifier needs construction and we avoid having global initializers.
   10957         (WebCore::matchFunc): use the new accessor function.
   10958         (WebCore::openFunc): ditto.
   10959         (WebCore::createStringParser): ditto.
   10960         (WebCore::createMemoryParser): ditto.
   10961         * loader/icon/IconDatabase.cpp:
   10962         (WebCore::IconDatabase::open):
   10963         * platform/sql/SQLiteDatabase.cpp:
   10964         (WebCore::SQLiteDatabase::SQLiteDatabase):
   10965         (WebCore::SQLiteDatabase::close):
   10966         * storage/DatabaseThread.cpp:
   10967         (WebCore::DatabaseThread::start):
   10968         (WebCore::DatabaseThread::databaseThread): remove m_threadID from debug output.
   10969         * storage/LocalStorageThread.cpp:
   10970         (WebCore::LocalStorageThread::start):
   10971         (WebCore::LocalStorageThread::scheduleImport):
   10972         (WebCore::LocalStorageThread::scheduleSync):
   10973         (WebCore::LocalStorageThread::terminate):
   10974         * workers/WorkerThread.cpp:
   10975         (WebCore::WorkerThread::start):
   10976         (WebCore::WorkerThread::WorkerThread):
   10977         (WebCore::WorkerThread::start):
   10978 
   10979 2009-05-11  Brady Eidson  <beidson (a] apple.com>
   10980 
   10981         Reviewed by Darin Adler.
   10982 
   10983         Remove unused header that declared one function which was never defined anywhere.
   10984 
   10985         * WebCore.vcproj/WebCore.vcproj:
   10986         * platform/network/cf/ResourceResponseCFNet.cpp: Change to include ResourceResponse.h (which really means
   10987           platform/network/cf/ResourceResponse.h)
   10988         * platform/network/cf/ResourceResponseCFNet.h: Removed.
   10989 
   10990 2009-05-11  Dimitri Glazkov  <dglazkov (a] chromium.org>
   10991 
   10992         Reviewed by Timothy Hatcher.
   10993 
   10994         https://bugs.webkit.org/show_bug.cgi?id=25213
   10995         Fix assert during Inspector destruction.
   10996 
   10997         * inspector/InspectorController.cpp:
   10998         (WebCore::InspectorController::inspectedPageDestroyed): Moved closing
   10999             inspector above removing InspectorController object to fix JS errors,
   11000             added clearing inspector page ptr.
   11001 
   11002 2009-05-11  Laszlo Gombos  <laszlo.1.gombos (a] nokia.com>
   11003 
   11004         Reviewed by Holger Freyther.
   11005 
   11006         [Qt] Make sure that public APIs are properly exported on all Qt platforms
   11007         https://bugs.webkit.org/show_bug.cgi?id=25601
   11008 
   11009         * WebCore.pro: Define QT_MAKEDLL for all non-static builds, not just for win
   11010 
   11011 2009-05-11  Csaba Osztrogonac  <oszi (a] inf.u-szeged.hu>
   11012 
   11013         Reviewed by Holger Freyther.
   11014 
   11015         https://bugs.webkit.org/show_bug.cgi?id=24284
   11016 
   11017         * WebCore.pro: duplicated values removed from INCLUDEPATH
   11018 
   11019 2009-05-11  Laszlo Gombos  <laszlo.1.gombos (a] nokia.com>
   11020 
   11021         Reviewed by Eric Seidel.
   11022 
   11023         Build fix Symbian; clean Up WebKit/Qt if ENABLE_NETSCAPE_PLUGIN_API=0
   11024         https://bugs.webkit.org/show_bug.cgi?id=24688
   11025 
   11026         * WebCore.pro: Use platform independent plugin stubs if ENABLE_NETSCAPE_PLUGIN_API=0
   11027         * platform/qt/TemporaryLinkStubs.cpp: Remove stub functions for plugins
   11028 
   11029 2009-05-10  Dan Bernstein  <mitz (a] apple.com>
   11030 
   11031         Reviewed by Darin Adler.
   11032 
   11033         - fix a crash when deactivating a document that had adopted a <form>
   11034           element
   11035 
   11036         Test: fast/dom/HTMLFormElement/document-deactivation-callback-crash.html
   11037 
   11038         * html/HTMLFormElement.cpp:
   11039         (WebCore::HTMLFormElement::didMoveToNewOwnerDocument): Corrected the
   11040         logic here: <form> elements should be registered for document activation
   11041         callbacks if and only if autocomplete is off.
   11042 
   11043 2009-05-10  Alexey Proskuryakov  <ap (a] webkit.org>
   11044 
   11045         Reviewed by Dan Bernstein.
   11046 
   11047         <rdar://problem/6867598> REGRESSION (r42483): Have to enter credentials twice when trying
   11048         to view protected MobileMe video
   11049 
   11050         Add a temporary workaround.
   11051 
   11052         * platform/network/ResourceHandleInternal.h:
   11053         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
   11054         Added an m_useSiteSpecificQuirks boolean (Mac-only). A Frame pointer is only available when
   11055         starting a request, so we need to store this data for later use.
   11056 
   11057         * platform/network/mac/ResourceHandleMac.mm:
   11058         (WebCore::ResourceHandle::start): Initialize m_useSiteSpecificQuirks.
   11059         (WebCore::ResourceHandle::receivedCredential): Use per-session credentials with gallery.me.com.
   11060 
   11061 2009-05-10  Alexey Proskuryakov  <ap (a] webkit.org>
   11062 
   11063         Reviewed by Dan Bernstein.
   11064 
   11065         <rdar://problem/6870383> Have to enter credentials twice when downloading from a protected page
   11066 
   11067         * platform/network/cf/AuthenticationCF.cpp:
   11068         * platform/network/cf/AuthenticationCF.h:
   11069         (WebCore::WebCoreCredentialStorage::set):
   11070         (WebCore::WebCoreCredentialStorage::get):
   11071         * platform/network/cf/ResourceHandleCFNet.cpp:
   11072         Move WebCore credential storage to AuthenticationCF, so that WebKit could use it (macthing
   11073         an earlier Mac change).
   11074 
   11075 2009-05-10  Alexey Proskuryakov  <ap (a] webkit.org>
   11076 
   11077         Reviewed by Dan Bernstein.
   11078 
   11079         Match newer XMLHttpRequest draft and make withCredential setter raise an exception when
   11080         called at a wrong time.
   11081 
   11082         No test, because we are waiting for a newer version of system frameworks to test the attribute.
   11083 
   11084         * xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::setWithCredentials):
   11085         * xml/XMLHttpRequest.h:
   11086         * xml/XMLHttpRequest.idl:
   11087         Raise INVALID_STATE_ERR if the state is not OPENED, or if the send() flag is true.
   11088 
   11089 2009-05-10  Dan Bernstein  <mitz (a] apple.com>
   11090 
   11091         Reviewed by Dave Kilzer.
   11092 
   11093         - fix https://bugs.webkit.org/show_bug.cgi?id=25602
   11094           REGRESSION: fast/overflow/overflow-focus-ring.html seems double-drawn
   11095           on ToT
   11096 
   11097         Test: fast/layers/self-painting-outline.html
   11098 
   11099         * rendering/RenderLayer.cpp:
   11100         (WebCore::RenderLayer::paintLayer): Paint the layer's own outline only
   11101         if it is a self-painting layer.
   11102 
   11103 2009-05-09  Dan Bernstein  <mitz (a] apple.com>
   11104 
   11105         Reviewed by Geoffrey Garen and Mark Rowe.
   11106 
   11107         - fix https://bugs.webkit.org/show_bug.cgi?id=25666
   11108           Assertion failure in Node::setDocument()
   11109           (willMoveToNewOwnerDocumentWasCalled) when adopting a <form> element
   11110 
   11111         Test: fast/dom/HTMLFormElement/adopt-assertion.html
   11112 
   11113         * html/HTMLFormElement.cpp:
   11114         (WebCore::HTMLFormElement::willMoveToNewOwnerDocument): Overrides of
   11115         this method are required to call the base class implementation. Do it.
   11116         (WebCore::HTMLFormElement::didMoveToNewOwnerDocument): Ditto.
   11117 
   11118 2009-03-29  Kevin Ollivier  <kevino (a] theolliviers.com>
   11119 
   11120         Reviewed by Maciej Stachowiak.
   11121 
   11122         WebCore::DocumentLoader::mainReceivedError now asserts if error.isNull(), so
   11123         make sure CURL does not create empty ResourceError() objects.
   11124         
   11125         https://bugs.webkit.org/show_bug.cgi?id=24927
   11126 
   11127         * platform/network/curl/ResourceHandleManager.cpp:
   11128         (WebCore::ResourceHandleManager::downloadTimerCallback):
   11129 
   11130 2009-05-09  Gustavo Noronha Silva  <gns (a] gnome.org>
   11131 
   11132         Build fix, adding missing files to make dist.
   11133 
   11134         * GNUmakefile.am:
   11135 
   11136 2009-05-08  Simon Fraser  <simon.fraser (a] apple.com>
   11137 
   11138         Reviewed by Dan Bernstein
   11139         
   11140         https://bugs.webkit.org/show_bug.cgi?id=25656
   11141         
   11142         Reduce the inline capacity of CSSParserValueList's m_values
   11143         vector to reduce the size of CSSParserValueList from 544 to 160 bytes in 64-bit.
   11144 
   11145         * css/CSSParserValues.h:
   11146 
   11147 2009-05-08  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   11148 
   11149         Not reviewed. Used sort-Xcode-project-file to sort the XCode project file - it hasn't been done for a while.
   11150 
   11151         * WebCore.xcodeproj/project.pbxproj:
   11152 
   11153 2009-05-08  Dan Bernstein  <mitz (a] apple.com>
   11154 
   11155         Reviewed by Darin Adler.
   11156 
   11157         - fix <rdar://problem/6864786> REGRESSION: Crash below
   11158           ApplyStyleCommand::applyInlineStyleToRange when reviewing a patch in
   11159           Bugzilla
   11160 
   11161         Test: editing/style/apply-through-end-of-document.html
   11162 
   11163         * editing/ApplyStyleCommand.cpp:
   11164         (WebCore::ApplyStyleCommand::applyInlineStyleToRange): Added a null
   11165         check for the case of a range extending through the end of the document,
   11166         in which pastEndNode is 0.
   11167 
   11168 2009-05-08  Douglas R. Davidson  <ddavidso (a] apple.com>
   11169 
   11170         Reviewed by Beth Dakin.
   11171 
   11172         <rdar://problem/6857446> REGRESSION (Safari 3-4): Contraction base 
   11173         marked as misspelled even though contraction is a word
   11174         Make sure spelling underline does not persist on words like 
   11175         <doesn't>.  
   11176 
   11177         * editing/TypingCommand.cpp:
   11178         (WebCore::TypingCommand::typingAddedToOpenCommand):
   11179 
   11180 2009-05-08  Kevin Watters  <kevinwatters (a] gmail.com>
   11181 
   11182         Reviewed by Kevin Ollivier.
   11183 
   11184         Make sure the path's refdata isn't deleted before we're done with the object.
   11185         
   11186         https://bugs.webkit.org/show_bug.cgi?id=25652
   11187 
   11188         * platform/graphics/wx/PathWx.cpp:
   11189         (WebCore::Path::~Path):
   11190         (WebCore::Path::Path):
   11191         (WebCore::Path::translate):
   11192 
   11193 2009-05-08  Kevin Watters  <kevinwatters (a] gmail.com>
   11194 
   11195         Reviewed by Darin Adler.
   11196 
   11197         Fix for memory leak on Mac.
   11198         
   11199         https://bugs.webkit.org/show_bug.cgi?id=25650
   11200 
   11201         * platform/wx/wxcode/mac/carbon/fontprops.cpp:
   11202         (wxFontProperties::wxFontProperties):
   11203 
   11204 2009-05-08  Beth Dakin  <bdakin (a] apple.com>
   11205 
   11206         Reviewed by Dan Bernstein.
   11207 
   11208         <rdar://problem/6857446> REGRESSION (r37591): Cannot print or 
   11209         preview from maps.yandex.ru
   11210 
   11211         We need to fall into the stretchesToViewHeight() quirk when we are 
   11212         printing and we are the root and the root has percentage height OR 
   11213         when we are the body and the root has percentage height. Otherwise 
   11214         we have a height of 0 and can run into painting troubles.
   11215 
   11216         * rendering/RenderBox.cpp:
   11217         (WebCore::RenderBox::calcHeight):
   11218 
   11219 2009-05-08  Douglas Davidson  <ddavidso (a] apple.com>
   11220 
   11221         Reviewed by Darin Adler.
   11222 
   11223         Fixes for <rdar://problem/6852771>.
   11224         Prevent text checking replacement immediately after an apostrophe
   11225         and automatic link addition except immediately after typing.
   11226 
   11227         * editing/Editor.cpp:
   11228         (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
   11229 
   11230 2009-05-08  Eric Carlson  <eric.carlson (a] apple.com>
   11231 
   11232         Reviewed by Darin Adler.
   11233         
   11234         https://bugs.webkit.org/show_bug.cgi?id=25627
   11235         Bug 25627: HTMLMediaElement: some errors should fire on <source> elements
   11236 
   11237         Update for HTML5 spec change to fire 'error' events on <source> element
   11238         when there is a failure while processing/loading a <source>.
   11239 
   11240         Test: media/video-source-error.html
   11241 
   11242         * html/HTMLMediaElement.cpp:
   11243         (WebCore::HTMLMediaElement::enqueueEvent): Remove white-space.
   11244         (WebCore::HTMLMediaElement::loadInternal): Call cancelPendingEventsAndCallbacks instead
   11245         of just calling m_pendingEvents.clear() as we now also need to cancel pending errors on
   11246         all <source> element. 
   11247         (WebCore::HTMLMediaElement::selectMediaResource): Call isSafeToLoadURL() here instead of in
   11248         loadResource() as we need to report errors differently depending on the type of failure. Use
   11249         KURL instead of String.
   11250         (WebCore::HTMLMediaElement::loadNextSourceChild): nextSourceChild -> selectNextSourceChild.
   11251         Fail silently when there are no more <source> canditates because that is what spec mandates.
   11252         Keep url as KURL instead of converting to String.
   11253         (WebCore::HTMLMediaElement::loadResource): ASSERT that the URL is safe to load as we now 
   11254         assume the safety check now done before this function. Takes KURL instead of String.
   11255         (WebCore::HTMLMediaElement::isSafeToLoadURL): New, checks to see if a url is safe to load, logs
   11256         failure if not.
   11257         (WebCore::HTMLMediaElement::noneSupported): MEDIA_ERR_NONE_SUPPORTED -> MEDIA_ERR_SRC_NOT_SUPPORTED
   11258         (WebCore::HTMLMediaElement::cancelPendingEventsAndCallbacks): New, clear all events pending on
   11259         the media and all source elements.
   11260         (WebCore::HTMLMediaElement::setNetworkState): Fire an error on the source element when the 
   11261         the failure happened while processing one. Only call nonSupported() when the failure happened
   11262         while processing media element 'src' attribute.
   11263         (WebCore::HTMLMediaElement::havePotentialSourceChild): nextSourceChild -> selectNextSourceChild.
   11264         Deal with selectNextSourceChild returning a KURL instead of a String.
   11265         (WebCore::HTMLMediaElement::selectNextSourceChild): Renamed from nextSourceChild, add optional
   11266         param to control whether or not errors are fired on a source element when it will not be used.
   11267         Check safety of url here instead of waiting until loadResource(). Return a KURL instead of a
   11268         String.
   11269         (WebCore::HTMLMediaElement::initialURL): nextSourceChild -> selectNextSourceChild. Keep url as
   11270         a KURL instead of a String.
   11271         * html/HTMLMediaElement.h:
   11272         (WebCore::HTMLMediaElement::):
   11273 
   11274         * html/HTMLSourceElement.cpp:
   11275         (WebCore::HTMLSourceElement::HTMLSourceElement): Initialize timer related variables.
   11276         (WebCore::HTMLSourceElement::scheduleErrorEvent): New, start one-shot timer to fire an error
   11277         event ASAP.
   11278         (WebCore::HTMLSourceElement::cancelPendingErrorEvent): New, cancel pending error event.
   11279         (WebCore::HTMLSourceElement::errorEventTimerFired): New, fire error event if it has not been
   11280         cancelled.
   11281         * html/HTMLSourceElement.h:
   11282 
   11283         * html/MediaError.h: 
   11284         (WebCore::MediaError::): MEDIA_ERR_NONE_SUPPORTED -> MEDIA_ERR_SRC_NOT_SUPPORTED
   11285         * html/MediaError.idl: Ditto
   11286 
   11287 2009-05-08  Dan Bernstein  <mitz (a] apple.com>
   11288 
   11289         Reviewed by Maciej Stachowiak.
   11290 
   11291         - fix <rdar://problem/6859955> Undoing typed text after selecting all
   11292           leaves non-text areas highlighted
   11293 
   11294         Test: fast/repaint/selection-clear.html
   11295 
   11296         When RenderView::clearSelection() is called from
   11297         SelectionController::nodeWillBeRemoved(), selected renderers may already
   11298         be marked for layout, which means that they can no longer compute
   11299         their selection repaint info. Instead, an empty IntRect (or GapRects) is
   11300         returned, leading to incomplete repaint.
   11301 
   11302         The fix is not to rely on individual renderers when clearing the
   11303         selection, but instead, cache the bounding rectangle of the selected
   11304         blocks' GapRects when setting the selection, and invalidate that
   11305         entire rectangle when clearing it.
   11306 
   11307         * rendering/RenderView.cpp:
   11308         (WebCore::RenderView::setSelection): Added a parameter saying whether
   11309         the repainting of selected blocks should include both
   11310         previously-selected areas and newly-selected areas or only
   11311         newly-selected areas. The default is both. Also compute
   11312         m_cachedSelectionBounds to be the bounding rectangle of the
   11313         new selection's BlockSelectionInfos' GapRects.
   11314         (WebCore::RenderView::clearSelection): Repaint m_cachedSelectionBounds,
   11315         and tell setSelection() that it should not paint areas that were in
   11316         the old selection's BlockSelectionInfos' GapRects.
   11317         * rendering/RenderView.h:
   11318         (WebCore::RenderView::):
   11319 
   11320 2009-05-08  Alexey Proskuryakov  <ap (a] webkit.org>
   11321 
   11322         Reviewed by Maciej Stachowiak.
   11323 
   11324         <rdar://problem/6868773> NPN_GetAuthenticationInfo does not work with non-permanent credentials
   11325 
   11326         * WebCore.base.exp:
   11327         * platform/network/mac/AuthenticationMac.h:
   11328         (WebCore::WebCoreCredentialStorage::set):
   11329         (WebCore::WebCoreCredentialStorage::get):
   11330         * platform/network/mac/AuthenticationMac.mm:
   11331         * platform/network/mac/ResourceHandleMac.mm:
   11332         Moved WebCoreCredentialStorage to AuthenticationMac, so that it could be used from WebKit.
   11333 
   11334 2009-05-08  Jedrzej Nowacki  <jedrzej.nowacki (a] nokia.com>
   11335 
   11336         Reviewed by Simon Hausmann.
   11337 
   11338         Fix the Qt build, add missing JSC_HOST_CALL macros to the runtime
   11339         call methods.
   11340 
   11341         * bridge/qt/qt_runtime.h:
   11342 
   11343 2009-05-08  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   11344 
   11345         Reviewed by Mark Rowe.
   11346 
   11347         Add missing strings to localizedStrings.js
   11348         https://bugs.webkit.org/show_bug.cgi?id=25635
   11349 
   11350         Add the strings "Delete", "Key", "Refresh" and "Value".
   11351 
   11352         * English.lproj/localizedStrings.js:
   11353 
   11354 2009-05-08  Robert Hogan  <robert (a] roberthogan.net>
   11355 
   11356         Reviewed, tweaked and landed by Alexey Proskuryakov.
   11357 
   11358         https://bugs.webkit.org/show_bug.cgi?id=24992
   11359         [Qt] crash at http://browserspy.dk/browser.php
   11360 
   11361         This cannot be easily tested in DRT, because it relies on interaction with QApplication,
   11362         but the added assertions guard against re-introducing this issue.
   11363 
   11364         * loader/FrameLoader.cpp: (WebCore::FrameLoader::didOpenURL): Don't make client calls
   11365         while the frame is being constructed, because the intermediate state without a document
   11366         is something we don't want to expose.
   11367 
   11368         * page/Frame.cpp:
   11369         (WebCore::Frame::setJSStatusBarText): Assert that the frame has a document, which is an
   11370         approximation of it being in a consistent state for client calls.
   11371         (WebCore::Frame::setJSDefaultStatusBarText): Ditto.
   11372 
   11373 2009-05-07  Mark Rowe  <mrowe (a] apple.com>
   11374 
   11375         Rubber-stamped by Oliver Hunt.
   11376 
   11377         Fix <https://bugs.webkit.org/show_bug.cgi?id=25640>.
   11378         Bug 25640: Crash on quit in r43384 nightly build on Leopard w/ Safari 4 beta installed
   11379         
   11380         Roll out r43366 as it removed symbols that Safari 4 Beta uses.
   11381 
   11382         * dom/XMLTokenizerLibxml2.cpp:
   11383         (WebCore::matchFunc):
   11384         (WebCore::openFunc):
   11385         (WebCore::createStringParser):
   11386         (WebCore::createMemoryParser):
   11387         * loader/icon/IconDatabase.cpp:
   11388         (WebCore::IconDatabase::open):
   11389         * platform/sql/SQLiteDatabase.cpp:
   11390         (WebCore::SQLiteDatabase::SQLiteDatabase):
   11391         (WebCore::SQLiteDatabase::close):
   11392         * storage/DatabaseThread.cpp:
   11393         (WebCore::DatabaseThread::DatabaseThread):
   11394         (WebCore::DatabaseThread::start):
   11395         (WebCore::DatabaseThread::databaseThread):
   11396         * storage/LocalStorageThread.cpp:
   11397         (WebCore::LocalStorageThread::LocalStorageThread):
   11398         (WebCore::LocalStorageThread::start):
   11399         (WebCore::LocalStorageThread::localStorageThread):
   11400         (WebCore::LocalStorageThread::scheduleImport):
   11401         (WebCore::LocalStorageThread::scheduleSync):
   11402         (WebCore::LocalStorageThread::terminate):
   11403         * workers/WorkerThread.cpp:
   11404         (WebCore::WorkerThread::WorkerThread):
   11405         (WebCore::WorkerThread::start):
   11406 
   11407 2009-05-08  Xan Lopez  <xlopez (a] igalia.com>
   11408 
   11409         Reviewed by Gustavo Noronha.
   11410 
   11411         Unify scrolling code via adjustments and keys. Use the WebCore
   11412         defined constants, since that's what people are most used to at
   11413         this point.
   11414 
   11415         * platform/gtk/ScrollViewGtk.cpp:
   11416         (WebCore::ScrollView::platformHandleHorizontalAdjustment):
   11417         (WebCore::ScrollView::platformHandleVerticalAdjustment):
   11418 
   11419 2009-05-07  David Levin  <levin (a] chromium.org>
   11420 
   11421         Reviewed by NOBODY.
   11422         Suggested by Oliver Hunt.
   11423 
   11424         Rolling back http://trac.webkit.org/changeset/43385
   11425         because we have to use mac artwork for the underline on OSX.
   11426 
   11427         * platform/graphics/cg/GraphicsContextCG.cpp:
   11428         * platform/graphics/mac/GraphicsContextMac.mm:
   11429         (WebCore::createPatternColor):
   11430         (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):
   11431         * platform/graphics/win/GraphicsContextCGWin.cpp:
   11432         (WebCore::setCGStrokeColor):
   11433         (WebCore::spellingPatternColor):
   11434         (WebCore::grammarPatternColor):
   11435         (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):
   11436 
   11437 2009-05-07  John Grabowski  <jrg (a] chromium.org>
   11438 
   11439         Reviewed by Simon Fraser.
   11440   
   11441         https://bugs.webkit.org/show_bug.cgi?id=25573
   11442         Unify use of CG-common routine for drawLineForMisspellingOrBadGrammar.
   11443         Cleanup for WebKit, but required for Chromium happiness.
   11444 
   11445         * platform/graphics/cg/GraphicsContextCG.cpp:
   11446         (WebCore::spellingPatternColor):
   11447         (WebCore::grammarPatternColor):
   11448         (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):
   11449         * platform/graphics/mac/GraphicsContextMac.mm:
   11450         * platform/graphics/win/GraphicsContextCGWin.cpp:
   11451 
   11452 2009-05-07  Darin Adler  <darin (a] apple.com>
   11453 
   11454         Reviewed by Simon Fraser.
   11455 
   11456         Bug 25575: Registered mutation event listener crashes HTMLMediaElement
   11457         https://bugs.webkit.org/show_bug.cgi?id=25575
   11458 
   11459         Test: fast/media/video-controls-with-mutation-event-handler.html
   11460 
   11461         * rendering/MediaControlElements.cpp:
   11462         (WebCore::MediaControlTimelineElement::MediaControlTimelineElement): Don't call setAttribute.
   11463         * rendering/RenderMedia.cpp:
   11464         (WebCore::RenderMedia::createTimeline): Call setAttribute here.
   11465 
   11466 2009-05-07  Simon Fraser  <simon.fraser (a] apple.com>
   11467 
   11468         Rubber Stamped by Dave Hyatt
   11469         
   11470         Shuffle the data members to minimize padding.
   11471 
   11472         * rendering/RenderTableSection.cpp:
   11473         (WebCore::RenderTableSection::RenderTableSection):
   11474         * rendering/RenderTableSection.h:
   11475 
   11476 2009-05-07  Simon Fraser  <simon.fraser (a] apple.com>
   11477 
   11478         Rubber Stamped by Dave Hyatt
   11479         
   11480         Shuffle the data members to make Events 8 bytes smaller in 64-bit.
   11481 
   11482         * dom/Event.cpp:
   11483         (WebCore::Event::Event):
   11484         * dom/Event.h:
   11485 
   11486 2009-05-07  Eric Seidel  <eric (a] webkit.org>
   11487 
   11488         Reviewed by Beth Dakin.
   11489 
   11490         Fix regression caused by r41469, add test case to prevent it from 
   11491         happening again.
   11492         https://bugs.webkit.org/show_bug.cgi?id=25252
   11493   
   11494         hasLayer() was true during removeOnlyThisLayer()/
   11495         updateLayerPositions()
   11496         which caused updateLayerPosition()'s walk up the render tree to 
   11497         include offsets from the layer we were about to remove.
   11498   
   11499         I'm not 100% convinced that this wasn't a bug in 
   11500         updateLayerPosition() or in RenderBoxModelObject::styleDidChange, 
   11501         because the layer in question is not the containing block for the 
   11502         block which gets laid out wrong. But this restores the previous 
   11503         behavior and adds a test.  So the next time someone is in here re-
   11504         factoring, they will at least know if they break something.
   11505   
   11506         Test: fast/layers/remove-only-this-layer-update.html
   11507 
   11508         * rendering/RenderBoxModelObject.cpp:
   11509         (WebCore::RenderBoxModelObject::destroyLayer):
   11510         * rendering/RenderLayer.cpp:
   11511         (WebCore::RenderLayer::removeOnlyThisLayer):
   11512         * rendering/RenderObject.cpp:
   11513         (WebCore::RenderObject::destroy):
   11514         * rendering/RenderWidget.cpp:
   11515         (WebCore::RenderWidget::destroy):
   11516 
   11517 2009-05-07  Dmitry Titov  <dimich (a] chromium.org>
   11518 
   11519         Attempt to fix GTK build.
   11520 
   11521         * platform/graphics/GlyphPageTreeNode.h: add #include <string.h> to ensure memcpy and memset are defined.
   11522 
   11523 2009-05-07  Oliver Hunt  <oliver (a] apple.com>
   11524 
   11525         Reviewed by Gavin Barraclough.
   11526 
   11527         Improve native call performance
   11528 
   11529         Add calling convention declarations where necessary, and update bindings
   11530         script to generate them as well.
   11531 
   11532         * bindings/js/JSHTMLCollectionCustom.cpp:
   11533         (WebCore::callHTMLCollection):
   11534         * bindings/js/JSNodeListCustom.cpp:
   11535         (WebCore::callNodeList):
   11536         * bindings/js/JSPluginElementFunctions.cpp:
   11537         (WebCore::callPlugin):
   11538         * bindings/js/JSQuarantinedObjectWrapper.h:
   11539         * bindings/scripts/CodeGeneratorJS.pm:
   11540         * bridge/runtime_method.cpp:
   11541         (JSC::callRuntimeMethod):
   11542         * bridge/runtime_object.cpp:
   11543         (JSC::callRuntimeObject):
   11544 
   11545 2009-05-07  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   11546 
   11547         Reviewed by Dave Hyatt.
   11548 
   11549         Fixes: https://bugs.webkit.org/show_bug.cgi?id=25617
   11550 
   11551         Fix memory/performance regression because of too much form control related abstraction just for WMLs sake.
   11552 
   11553         Remove FormControlElement and FormControlElementWithState base classes, as the overhead is too high for the
   11554         gain. HTML has no benefit of that kind of abstraction, so we're going to move the functionality to Element directly.
   11555 
   11556         The functions now living in FormControlElement(WithState) lived in Node/Element/HTMLFormControlElement before.
   11557         This patches moves all of them in a central place in Element.h, as virtual functions with an inline default implementation.
   11558         To avoid confusion like isEnabled() living on Node, before the creation of the FormControlElement abstraction layer, all
   11559         methods are renamed to clarify where they belong to. All renames are listed here:
   11560 
   11561         From FormControlElement:
   11562         - isEnabled() -> isEnabledFormControl()
   11563         - isReadOnly() -> isReadOnlyFormControl()
   11564         - isTextControl() -> isTextFormControl()
   11565         - valueMatchesRenderer() -> formControlValueMatchesRenderer()
   11566         - setValueMatchesRenderer() -> setFormControlValueMatchesRenderer()
   11567         - name() -> formControlName()
   11568         - type() -> formControlType()
   11569 
   11570         From FormControlElementWithState:
   11571         - saveState() -> saveFormControlState()
   11572         - restoreState() -> restoreFormControlState()
   11573 
   11574         A lot of Element -> FormControlElement(WithState) casting is gone again, so it's not only a memory, but also a performance progression.
   11575 
   11576         No testcases affected, no new tests needed.
   11577 
   11578         * GNUmakefile.am:
   11579         * WebCore.pro:
   11580         * WebCore.vcproj/WebCore.vcproj:
   11581         * WebCore.xcodeproj/project.pbxproj:
   11582         * WebCoreSources.bkl:
   11583         * css/CSSStyleSelector.cpp:
   11584         (WebCore::CSSStyleSelector::canShareStyleWithElement):
   11585         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
   11586         * dom/Document.cpp:
   11587         (WebCore::Document::formElementsState):
   11588         * dom/Document.h:
   11589         (WebCore::Document::registerFormElementWithState):
   11590         (WebCore::Document::unregisterFormElementWithState):
   11591         * dom/Element.h:
   11592         (WebCore::Element::isFormControlElement):
   11593         (WebCore::Element::isEnabledFormControl):
   11594         (WebCore::Element::isReadOnlyFormControl):
   11595         (WebCore::Element::isTextFormControl):
   11596         (WebCore::Element::formControlValueMatchesRenderer):
   11597         (WebCore::Element::setFormControlValueMatchesRenderer):
   11598         (WebCore::Element::formControlName):
   11599         (WebCore::Element::formControlType):
   11600         (WebCore::Element::saveFormControlState):
   11601         (WebCore::Element::restoreFormControlState):
   11602         * dom/FormControlElement.cpp: Removed.
   11603         * dom/FormControlElement.h: Removed.
   11604         * dom/FormControlElementWithState.cpp: Removed.
   11605         * dom/FormControlElementWithState.h: Removed.
   11606         * dom/InputElement.cpp:
   11607         (WebCore::InputElement::setValueFromRenderer):
   11608         * html/HTMLButtonElement.cpp:
   11609         (WebCore::HTMLButtonElement::formControlType):
   11610         * html/HTMLButtonElement.h:
   11611         * html/HTMLFieldSetElement.cpp:
   11612         (WebCore::HTMLFieldSetElement::formControlType):
   11613         * html/HTMLFieldSetElement.h:
   11614         * html/HTMLFormControlElement.cpp:
   11615         (WebCore::HTMLFormControlElement::attach):
   11616         (WebCore::HTMLFormControlElement::formControlName):
   11617         (WebCore::HTMLFormControlElement::willValidate):
   11618         (WebCore::HTMLFormControlElementWithState::HTMLFormControlElementWithState):
   11619         (WebCore::HTMLFormControlElementWithState::~HTMLFormControlElementWithState):
   11620         (WebCore::HTMLFormControlElementWithState::willMoveToNewOwnerDocument):
   11621         (WebCore::HTMLFormControlElementWithState::didMoveToNewOwnerDocument):
   11622         (WebCore::HTMLFormControlElementWithState::finishParsingChildren):
   11623         * html/HTMLFormControlElement.h:
   11624         (WebCore::HTMLFormControlElement::isTextFormControl):
   11625         (WebCore::HTMLFormControlElement::isEnabledFormControl):
   11626         (WebCore::HTMLFormControlElement::formControlValueMatchesRenderer):
   11627         (WebCore::HTMLFormControlElement::setFormControlValueMatchesRenderer):
   11628         (WebCore::HTMLFormControlElement::isReadOnlyFormControl):
   11629         (WebCore::HTMLFormControlElement::type):
   11630         (WebCore::HTMLFormControlElement::name):
   11631         * html/HTMLInputElement.cpp:
   11632         (WebCore::HTMLInputElement::formControlName):
   11633         (WebCore::HTMLInputElement::formControlType):
   11634         (WebCore::HTMLInputElement::saveFormControlState):
   11635         (WebCore::HTMLInputElement::restoreFormControlState):
   11636         (WebCore::HTMLInputElement::parseMappedAttribute):
   11637         (WebCore::HTMLInputElement::detach):
   11638         (WebCore::HTMLInputElement::setValue):
   11639         (WebCore::HTMLInputElement::setFileListFromRenderer):
   11640         * html/HTMLInputElement.h:
   11641         (WebCore::HTMLInputElement::readOnly):
   11642         (WebCore::HTMLInputElement::isTextFormControl):
   11643         * html/HTMLKeygenElement.cpp:
   11644         (WebCore::HTMLKeygenElement::formControlType):
   11645         * html/HTMLKeygenElement.h:
   11646         * html/HTMLLegendElement.cpp:
   11647         (WebCore::HTMLLegendElement::formControlType):
   11648         * html/HTMLLegendElement.h:
   11649         * html/HTMLOptGroupElement.cpp:
   11650         (WebCore::HTMLOptGroupElement::formControlType):
   11651         * html/HTMLOptGroupElement.h:
   11652         * html/HTMLOptionElement.cpp:
   11653         (WebCore::HTMLOptionElement::formControlType):
   11654         * html/HTMLOptionElement.h:
   11655         * html/HTMLSelectElement.cpp:
   11656         (WebCore::HTMLSelectElement::formControlType):
   11657         (WebCore::HTMLSelectElement::saveFormControlState):
   11658         (WebCore::HTMLSelectElement::restoreFormControlState):
   11659         * html/HTMLSelectElement.h:
   11660         * html/HTMLTextAreaElement.cpp:
   11661         (WebCore::HTMLTextAreaElement::HTMLTextAreaElement):
   11662         (WebCore::HTMLTextAreaElement::formControlType):
   11663         (WebCore::HTMLTextAreaElement::saveFormControlState):
   11664         (WebCore::HTMLTextAreaElement::restoreFormControlState):
   11665         (WebCore::HTMLTextAreaElement::updateValue):
   11666         (WebCore::HTMLTextAreaElement::setValue):
   11667         * html/HTMLTextAreaElement.h:
   11668         (WebCore::HTMLTextAreaElement::readOnly):
   11669         (WebCore::HTMLTextAreaElement::isTextFormControl):
   11670         * page/AccessibilityRenderObject.cpp:
   11671         (WebCore::AccessibilityRenderObject::isEnabled):
   11672         (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
   11673         * page/DragController.cpp:
   11674         (WebCore::DragController::concludeEditDrag):
   11675         * rendering/RenderMenuList.cpp:
   11676         (WebCore::RenderMenuList::itemIsEnabled):
   11677         * rendering/RenderTextControl.cpp:
   11678         (WebCore::updateUserModifyProperty):
   11679         (WebCore::RenderTextControl::setInnerTextValue):
   11680         * rendering/RenderTextControl.h:
   11681         * rendering/RenderTextControlMultiLine.cpp:
   11682         (WebCore::RenderTextControlMultiLine::subtreeHasChanged):
   11683         * rendering/RenderTextControlSingleLine.cpp:
   11684         (WebCore::RenderTextControlSingleLine::updateFromElement):
   11685         * rendering/RenderTheme.cpp:
   11686         (WebCore::RenderTheme::isEnabled):
   11687         (WebCore::RenderTheme::isReadOnlyControl):
   11688         * rendering/RenderThemeChromiumMac.mm:
   11689         (WebCore::RenderThemeChromiumMac::adjustMenuListStyle):
   11690         * rendering/RenderThemeMac.mm:
   11691         (WebCore::RenderThemeMac::adjustMenuListStyle):
   11692         * rendering/RenderThemeSafari.cpp:
   11693         (WebCore::RenderThemeSafari::adjustMenuListStyle):
   11694         * wml/WMLFormControlElement.cpp:
   11695         * wml/WMLFormControlElement.h:
   11696         (WebCore::WMLFormControlElement::isReadOnlyFormControl):
   11697         (WebCore::WMLFormControlElement::isTextFormControl):
   11698         (WebCore::WMLFormControlElement::formControlValueMatchesRenderer):
   11699         (WebCore::WMLFormControlElement::setFormControlValueMatchesRenderer):
   11700         * wml/WMLInputElement.cpp:
   11701         (WebCore::WMLInputElement::WMLInputElement):
   11702         (WebCore::WMLInputElement::isKeyboardFocusable):
   11703         (WebCore::WMLInputElement::isMouseFocusable):
   11704         (WebCore::WMLInputElement::dispatchBlurEvent):
   11705         (WebCore::WMLInputElement::formControlType):
   11706         (WebCore::WMLInputElement::formControlName):
   11707         (WebCore::WMLInputElement::setValue):
   11708         (WebCore::WMLInputElement::saveFormControlState):
   11709         (WebCore::WMLInputElement::restoreFormControlState):
   11710         (WebCore::WMLInputElement::parseMappedAttribute):
   11711         (WebCore::WMLInputElement::detach):
   11712         (WebCore::WMLInputElement::appendFormData):
   11713         (WebCore::WMLInputElement::init):
   11714         * wml/WMLInputElement.h:
   11715         (WebCore::WMLInputElement::isTextFormControl):
   11716         * wml/WMLOptGroupElement.cpp:
   11717         (WebCore::WMLOptGroupElement::formControlType):
   11718         * wml/WMLOptGroupElement.h:
   11719         * wml/WMLOptionElement.cpp:
   11720         (WebCore::WMLOptionElement::formControlType):
   11721         * wml/WMLOptionElement.h:
   11722 
   11723 2009-05-07  Dmitry Titov  <dimich (a] chromium.org>
   11724 
   11725         Reviewed by Alexey Proskuryakov and Adam Roben.
   11726 
   11727         https://bugs.webkit.org/show_bug.cgi?id=25348
   11728         Change WTF::ThreadIdentifier to be an actual (but wrapped) thread id, remove ThreadMap.
   11729 
   11730         Most of the change is in WTF.
   11731         Unless noted, all the following files changed to use the new ThreadIdentifier::isValid()
   11732         method instead of just doing 'if(m_threadID)' kind of checks, since ThreadIdentifier
   11733         is now a class rather then an integer.
   11734         Also, there is no need to initialize threadID in constructors to 0 now.
   11735 
   11736         * dom/XMLTokenizerLibxml2.cpp:
   11737         (WebCore::libxmlLoaderThread): use DEFINE_STATIC_LOCAL and accessor function for static thread id,
   11738         since now ThreadIdentifier needs construction and we avoid having global initializers.
   11739         (WebCore::matchFunc): use the new accessor function.
   11740         (WebCore::openFunc): ditto.
   11741         (WebCore::createStringParser): ditto.
   11742         (WebCore::createMemoryParser): ditto.
   11743         * loader/icon/IconDatabase.cpp:
   11744         (WebCore::IconDatabase::open):
   11745         * platform/sql/SQLiteDatabase.cpp:
   11746         (WebCore::SQLiteDatabase::SQLiteDatabase):
   11747         (WebCore::SQLiteDatabase::close):
   11748         * storage/DatabaseThread.cpp:
   11749         (WebCore::DatabaseThread::start):
   11750         (WebCore::DatabaseThread::databaseThread): remove m_threadID from debug output.
   11751         * storage/LocalStorageThread.cpp:
   11752         (WebCore::LocalStorageThread::start):
   11753         (WebCore::LocalStorageThread::scheduleImport):
   11754         (WebCore::LocalStorageThread::scheduleSync):
   11755         (WebCore::LocalStorageThread::terminate):
   11756         * workers/WorkerThread.cpp:
   11757         (WebCore::WorkerThread::start):
   11758         (WebCore::WorkerThread::WorkerThread):
   11759         (WebCore::WorkerThread::start):
   11760 
   11761 2009-05-07  Simon Fraser  <simon.fraser (a] apple.com>
   11762 
   11763         Rubber Stamped by Dave Hyatt
   11764         
   11765         Shuffle the data members to minimize padding.
   11766 
   11767         * dom/ClassNames.h:
   11768 
   11769 2009-05-07  Simon Fraser  <simon.fraser (a] apple.com>
   11770 
   11771         Reviewed by Darin Adler
   11772 
   11773         <rdar://problem/6864062> Shrink GlyphPage from 4112 to 2576 bytes in 64-bit
   11774         https://bugs.webkit.org/show_bug.cgi?id=25605
   11775 
   11776         Shrink GlyphPage by splitting the array of GlyphData, which has lots
   11777         of padding, into separate Glyph and SimpleFontData* arrays.
   11778 
   11779         * platform/graphics/Font.h:
   11780         glyphDataForCharacter has to return a GlyphData by value now.
   11781         
   11782         * platform/graphics/FontFastPath.cpp:
   11783         (WebCore::Font::glyphDataForCharacter):
   11784         Return GlyphData by value.
   11785         
   11786         * platform/graphics/GlyphPageTreeNode.cpp:
   11787         (WebCore::GlyphPageTreeNode::initializePage):
   11788         Better encapsulation of GlyphPage, using the new methods.
   11789 
   11790         * platform/graphics/Font.h:
   11791         * platform/graphics/FontFastPath.cpp:
   11792         (WebCore::Font::glyphDataForCharacter):
   11793         * platform/graphics/GlyphPageTreeNode.cpp:
   11794         (WebCore::GlyphPageTreeNode::initializePage):
   11795         * platform/graphics/GlyphPageTreeNode.h:
   11796         (WebCore::GlyphData::GlyphData):
   11797         (WebCore::GlyphPage::indexForCharacter):
   11798         (WebCore::GlyphPage::glyphDataForCharacter):
   11799         (WebCore::GlyphPage::glyphDataForIndex):
   11800         (WebCore::GlyphPage::glyphAt):
   11801         (WebCore::GlyphPage::fontDataForCharacter):
   11802         (WebCore::GlyphPage::setGlyphDataForCharacter):
   11803         (WebCore::GlyphPage::setGlyphDataForIndex):
   11804         (WebCore::GlyphPage::copyFrom):
   11805         (WebCore::GlyphPage::clear):
   11806 
   11807 2009-05-07  Dimitri Glazkov  <dglazkov (a] chromium.org>
   11808 
   11809         Reviewed by Darin Fisher.
   11810 
   11811         https://bugs.webkit.org/show_bug.cgi?id=25625
   11812         Implement Image/Option constructors in V8 bindings.
   11813 
   11814         * bindings/v8/custom/V8DOMWindowCustom.cpp:
   11815         (WebCore::NAMED_PROPERTY_GETTER): Removed old JS-based code.
   11816         * bindings/v8/custom/V8HTMLImageElementConstructor.cpp: Added.
   11817         * bindings/v8/custom/V8HTMLOptionElementConstructor.cpp: Added.
   11818 
   11819 2009-05-07  Brady Eidson  <beidson (a] apple.com>
   11820 
   11821         I hate myself for doing this, but need to fix that ChangeLog entry.
   11822 
   11823         * ChangeLog:
   11824 
   11825 2009-05-07  Brady Eidson  <beidson (a] apple.com>
   11826 
   11827         Rubberstamped by Darin Adler
   11828 
   11829         * html/HTMLParser.cpp: Use the correct style of BUILDING_ON_* for WebCore.
   11830         * html/HTMLParser.h: Ditto
   11831 
   11832 2009-05-07  David Hyatt  <hyatt (a] apple.com>
   11833 
   11834         Restore intrinsic margins to all form controls on Mac and Windows.  Some of this regressed in 43007
   11835         when textareas were given explicit margins.  Some of it had already regressed earlier whenever intrinsic
   11836         margins were turned off in themeWin.css.
   11837 
   11838         Reviewed by Beth Dakin.
   11839 
   11840         * css/html4.css:
   11841         * css/themeWin.css:
   11842 
   11843 2009-05-07  Brady Eidson  <beidson (a] apple.com>
   11844 
   11845         Reviewed by Darin Adler and Alexey Proskuryakov.
   11846 
   11847         <rdar://problem/6863795> Exception occurs in Mail when attempting to create signatures due to <head> element creation
   11848 
   11849         * dom/Document.cpp:
   11850         (WebCore::Document::implicitClose): Check shouldCreateImplicitHead() before creating it.
   11851 
   11852         * html/HTMLParser.cpp:
   11853         (WebCore::HTMLParser::handleError): Check shouldCreateImplicitHead() before creating it.
   11854         (WebCore::HTMLParser::bodyCreateErrorCheck): Ditto.
   11855         (WebCore::shouldCreateImplicitHead): For Tiger/Leopard when running under Mail, the implicit <head> shouldn't be created.
   11856         * html/HTMLParser.h:
   11857         (WebCore::shouldCreateImplicitHead): Inline implementation for non-Tiger/Leopard platforms
   11858 
   11859 2009-05-07  Antony Sargent  <asargent (a] chromium.org>
   11860 
   11861         Reviewed by Darin Fisher.
   11862 
   11863         Fix a memory leak in V8EventListenerList::remove.
   11864 
   11865         https://bugs.webkit.org/show_bug.cgi?id=25618
   11866 
   11867         No new functionality so no new tests. 
   11868 
   11869         * bindings/v8/V8EventListenerList.cpp:
   11870         (WebCore::V8EventListenerList::remove):
   11871 
   11872 2009-05-07  Darin Fisher  <darin (a] chromium.org>
   11873 
   11874         Fix Chromium build bustage.
   11875 
   11876         * bindings/v8/custom/V8HTMLFormElementCustom.cpp: Add missing
   11877         HTMLCollection.h include.
   11878 
   11879 2009-05-07  Chris Fleizach  <cfleizach (a] apple.com>
   11880 
   11881         Reviewed by Beth Dakin.
   11882 
   11883         Bug 25598: AX: if a radio button has a label and a title, the label is not exposed
   11884         https://bugs.webkit.org/show_bug.cgi?id=25598
   11885 
   11886         Test: accessibility/radio-button-title-label.html
   11887 
   11888         * page/AccessibilityObject.h:
   11889         (WebCore::AccessibilityObject::exposesTitleUIElement):
   11890         * page/AccessibilityRenderObject.cpp:
   11891         (WebCore::AccessibilityRenderObject::exposesTitleUIElement):
   11892         (WebCore::AccessibilityRenderObject::titleUIElement):
   11893         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
   11894         * page/AccessibilityRenderObject.h:
   11895 
   11896 2009-05-07  Darin Fisher  <darin (a] chromium.org>
   11897 
   11898         Fix Chromium build bustage.
   11899 
   11900         * bindings/v8/custom/V8HTMLFormElementCustom.cpp:
   11901         (WebCore::INDEXED_PROPERTY_GETTER): ":" should be "::"
   11902 
   11903 2009-05-07  Xan Lopez  <xlopez (a] igalia.com>
   11904 
   11905         Reviewed by Gustavo Noronha.
   11906 
   11907         https://bugs.webkit.org/show_bug.cgi?id=25610
   11908         [GTK] text.caretOffset is reportedly always 0
   11909 
   11910         Use the right function to get the caret offset in an
   11911         element. selectionStart() would only work for text
   11912         controls (there's even an ASSERT when calculating the selected
   11913         text range). Instead just get the selection and get the offset of
   11914         the start position.
   11915 
   11916         * page/gtk/AccessibilityObjectWrapperAtk.cpp:
   11917 
   11918 2009-05-07  Tor Arne Vestb  <tor.arne.vestbo (a] nokia.com>
   11919 
   11920         Reviewed by Simon Hausmann.
   11921 
   11922         [Qt] Fix support for antialiased CSS border-radius
   11923         
   11924         WebKit implements border-radius by drawing a double-size border,
   11925         and then letting the clip constrain the border to the right width
   11926         and position. This requires support for antialiased clipping, as
   11927         well as painting, to get a nice smooth border.
   11928         
   11929         Qt only does antialiased clipping if the anti-alias flag is set
   11930         at the time of clipping, so we have to enable this in the method
   11931         addInnerRoundedRectClip(), as well as when we draw the border.
   11932         
   11933         Currently the raster-engine is the only Qt paint engine to support
   11934         anti-aliased clipping, but the OpenGL and Mac paint engines could
   11935         potentially support this in the future.
   11936 
   11937         * platform/graphics/qt/GraphicsContextQt.cpp:
   11938         (WebCore::GraphicsContext::strokeArc):
   11939         (WebCore::GraphicsContext::addInnerRoundedRectClip):
   11940 
   11941 2009-05-07  Adam Langley  <agl (a] google.com>
   11942 
   11943         Reviewed by Eric Seidel.
   11944 
   11945         Render empty optgroup elements.
   11946 
   11947         https://bugs.webkit.org/show_bug.cgi?id=24900
   11948 
   11949         Currently, optgroup elements which are empty are not rendered. The
   11950         HTML specification gives no guidance on this situation.
   11951 
   11952         However, the test for being empty is that they have no children, thus
   11953         this will not render:
   11954           <optgroup label="test"></optgroup>
   11955         while this /will/ render (because of the text node child):
   11956           <optgroup label="test"> </optgroup>
   11957 
   11958         This patch will cause both cases to render which matches IE's and
   11959         Firefox's behaviour.
   11960 
   11961         The difference only appears when opening the select element and does
   11962         not appear in the render tree. Thus, a manual layout-test is required.
   11963 
   11964         * html/HTMLSelectElement.cpp:
   11965         (WebCore::HTMLSelectElement::recalcListItems):
   11966         * manual-tests/optgroup-empty-and-nested.html: Added.
   11967 
   11968 2009-05-06  Julie Parent  <jparent (a] google.com>
   11969 
   11970         Reviewed by Eric Seidel.
   11971 
   11972         Bug 25608: Unused m_frame in ChromiumClipboard.
   11973         https://bugs.webkit.org/show_bug.cgi?id=25608
   11974 
   11975         * platform/chromium/ClipboardChromium.h:
   11976         
   11977         No tests added as this is only removing dead code, no functional changes.
   11978 
   11979 2009-05-06  Dan Bernstein  <mitz (a] apple.com>
   11980 
   11981         Reviewed by Simon Fraser and Justin Garcia.
   11982 
   11983         - fix another part of <rdar://problem/6703873> Triple-click quoted line
   11984           and type Return creates an extra quoted blank line
   11985 
   11986         Test: editing/inserting/6703873-2.html
   11987 
   11988         * editing/BreakBlockquoteCommand.cpp:
   11989         (WebCore::BreakBlockquoteCommand::doApply): Corrected the logic for
   11990         determining the first node that should go into the new blockquote
   11991         given the split position: if it is at the end of a container, use the
   11992         next node after the container. Otherwise, use the child at the
   11993         position's offset.
   11994 
   11995 2009-05-06  Kevin Ollivier  <kevino (a] theolliviers.com>
   11996 
   11997         wx build fix, fixes for wx trunk builds.
   11998 
   11999         * platform/graphics/wx/ImageWx.cpp:
   12000         (WebCore::BitmapImage::draw):
   12001         * platform/wx/RenderThemeWx.cpp:
   12002         * platform/wx/wxcode/mac/carbon/fontprops.cpp:
   12003         (wxFontProperties::wxFontProperties):
   12004 
   12005 2009-05-06  Albert J. Wong  <ajwong (a] chromium.org>
   12006 
   12007         Reviewed by Darin Fisher.
   12008 
   12009         https://bugs.webkit.org/show_bug.cgi?id=25597
   12010         Fix API drift compile errors that occurred while this was ifdef-ed out.
   12011         The two big issues were that RenderObject::element() became
   12012         RenderObject::node() and some of the wk* drawing functions had
   12013         an extra theme parameter added to the argument list.
   12014 
   12015         * rendering/RenderThemeChromiumMac.mm:
   12016         (WebCore::RenderThemeChromiumMac::paintMediaFullscreenButton):
   12017         (WebCore::RenderThemeChromiumMac::paintMediaMuteButton):
   12018         (WebCore::RenderThemeChromiumMac::paintMediaPlayButton):
   12019         (WebCore::RenderThemeChromiumMac::paintMediaSeekBackButton):
   12020         (WebCore::RenderThemeChromiumMac::paintMediaSeekForwardButton):
   12021         (WebCore::RenderThemeChromiumMac::paintMediaSliderTrack):
   12022         (WebCore::RenderThemeChromiumMac::paintMediaSliderThumb):
   12023 
   12024 2009-05-06  Jian Li  <jianli (a] chromium.org>
   12025 
   12026         Reviewed by Dimitri Glazkov.
   12027 
   12028         https://bugs.webkit.org/show_bug.cgi?id=25385
   12029         Upstream changes to V8 bindings for supporting nested workers.
   12030 
   12031         * bindings/v8/WorkerContextExecutionProxy.cpp:
   12032         (WebCore::WorkerContextExecutionProxy::ToV8Object):
   12033         (WebCore::WorkerContextExecutionProxy::EventTargetToV8Object):
   12034         * bindings/v8/custom/V8WorkerCustom.cpp:
   12035         (WebCore::getEventListener):
   12036         (WebCore::ACCESSOR_SETTER WorkerOnmessage):
   12037         (WebCore::CALLBACK_FUNC_DECL WorkerAddEventListener):
   12038 
   12039 2009-05-06  Dave Moore  <davemoore (a] google.com>
   12040 
   12041         Reviewed by Dimitri Glazkov.
   12042 
   12043         https://bugs.webkit.org/show_bug.cgi?id=25513
   12044         The V8 bindings convert every javascript property to its associated css style
   12045         name. It then calls functions that convert that name to an id. This makes
   12046         getting or setting css styles on elements slow.
   12047         
   12048         The patch fixes this by caching the results of the transformation, mapping a
   12049         javascript property name to its css property id. It then calls the already
   12050         public webkit methods that take the id in place of the string property names.
   12051 
   12052         * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:
   12053 
   12054 2009-05-06  Nate Chapin  <japhet (a] google.com>
   12055 
   12056         Reviewed by Dimitri Glazkov.
   12057 
   12058         https://bugs.webkit.org/show_bug.cgi?id=25591
   12059         Upstream V8HTMLFormElement from the Chromium repository.
   12060 
   12061         * bindings/v8/custom/V8HTMLFormElementCustom.cpp:
   12062         (WebCore::INDEXED_PROPERTY_GETTER HTMLFormElement): Upstreamed from Chromium repository
   12063         (WebCore::NAMED_PROPERTY_GETTER HTMLFormElement): Changed empty element return case to return notHandledByInterceptor();
   12064         (WebCore::CALLBACK_FUNC_DECL HTMLFormElementSubmit): Upstreamed from Chromium repository
   12065 
   12066 2009-05-06  Albert J. Wong  <ajwong (a] chromium.org>
   12067 
   12068         Reviewed by Dimitri Glazkov.
   12069 
   12070         https://bugs.webkit.org/show_bug.cgi?id=25595
   12071         Upstream V8CanvasPixelArrayCustom from chromium port tree.
   12072 
   12073         * bindings/v8/V8CanvasPixelArrayCustom.cpp: Added.
   12074 
   12075 2009-05-06  Simon Fraser  <simon.fraser (a] apple.com>
   12076 
   12077         Rubber-stampted by Eric Seidel
   12078 
   12079         Add braces to clarify logic flow in RenderObject::adjustStyleDifference.
   12080         Only affects ACCELERATED_COMPOSITING builds.
   12081 
   12082         * rendering/RenderObject.cpp:
   12083         (WebCore::RenderObject::adjustStyleDifference):
   12084 
   12085 2009-05-06  Simon Fraser  <simon.fraser (a] apple.com>
   12086 
   12087         Reviewed by Dan Bernstein
   12088 
   12089         <rdar://problem/6862550> Reduce size of RenderText in 64-bit
   12090         
   12091         Rearrange data members of RenderText so that an int comes
   12092         first, to minimize padding.
   12093 
   12094         * rendering/RenderText.cpp:
   12095         (WebCore::RenderText::RenderText):
   12096         * rendering/RenderText.h:
   12097 
   12098 2009-05-06  Simon Fraser  <simon.fraser (a] apple.com>
   12099 
   12100         Reviewed by Dan Bernstein
   12101 
   12102         <rdar://problem/6862823> Reduce size of RenderStyle in 64-bit
   12103         
   12104         Rearrange data members of RenderStyle to minimize padding
   12105         when building for 64-bit.
   12106 
   12107         * rendering/style/RenderStyle.cpp:
   12108         (WebCore::RenderStyle::RenderStyle):
   12109         * rendering/style/RenderStyle.h:
   12110         (WebCore::):
   12111 
   12112 2009-05-06  Darin Fisher  <darin (a] chromium.org>
   12113 
   12114         Reviewed by Dimitri Glazkov.
   12115 
   12116         https://bugs.webkit.org/show_bug.cgi?id=25596
   12117 
   12118         Fixes Chromium build bustage caused by r43317 (making
   12119         RefCountedBase::m_refCount private)
   12120 
   12121         * page/chromium/AccessibilityObjectWrapper.h:
   12122         (WebCore::AccessibilityObjectWrapper::AccessibilityObjectWrapper):
   12123 
   12124 2009-05-06  Hin-Chung Lam  <hclam (a] chromium.org>
   12125 
   12126         Reviewed by Darin Fisher.
   12127 
   12128         https://bugs.webkit.org/show_bug.cgi?id=25593
   12129 
   12130         Refactor for MediaPlayerPrivate for Chromium port. Remove
   12131         the implementation of MediaPlayerPrivateInferface from it.
   12132 
   12133         * platform\graphics\chromium\MediaPlayerPrivateChromium.h:
   12134 
   12135 2009-05-06  Simon Fraser  <simon.fraser (a] apple.com>
   12136 
   12137         Reviewed by Dave Hyatt, Dan Bernstein
   12138         
   12139         <rdar://problem/6860197> Reduce the size of FontFallbackList in 64-bit
   12140 
   12141         Re-order the data members of FontFallbackList to save 8 bytes when building 64-bit.
   12142 
   12143         * platform/graphics/FontFallbackList.cpp:
   12144         (WebCore::FontFallbackList::FontFallbackList):
   12145         * platform/graphics/FontFallbackList.h:
   12146 
   12147 2009-05-06  Simon Fraser  <simon.fraser (a] apple.com>
   12148 
   12149         Reviewed by Darin Adler, Dan Bernstein
   12150 
   12151         <rdar://problem/6860068> Reduce size of InlineBox in 64-bit
   12152 
   12153         Re-order the data members of InlineBox to save 8 bytes when building 64-bit.
   12154 
   12155         * rendering/InlineBox.h:
   12156         (WebCore::InlineBox::InlineBox):
   12157 
   12158 2009-05-06  David Levin  <levin (a] chromium.org>
   12159 
   12160         Reviewed by Dimitri Glazkov.
   12161 
   12162         https://bugs.webkit.org/show_bug.cgi?id=25588
   12163         Adding the custom v8 bindings Document.location.
   12164 
   12165         * bindings/v8/custom/V8DocumentLocationCustom.cpp: Added.
   12166 
   12167 2009-05-06  Kevin McCullough  <kmccullough (a] apple.com>
   12168 
   12169         -Clarified a comment
   12170 
   12171         * editing/InsertParagraphSeparatorCommand.cpp:
   12172         (WebCore::InsertParagraphSeparatorCommand::doApply):
   12173 
   12174 2009-05-06  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   12175 
   12176         Not reviewed. Fix WML enabled builds by including "MappedAttribute.h" in several places.
   12177 
   12178         * wml/WMLAElement.cpp:
   12179         * wml/WMLAccessElement.cpp:
   12180         * wml/WMLBRElement.cpp:
   12181         * wml/WMLCardElement.cpp:
   12182         * wml/WMLDoElement.cpp:
   12183         * wml/WMLElement.cpp:
   12184         * wml/WMLFieldSetElement.cpp:
   12185         * wml/WMLGoElement.cpp:
   12186         * wml/WMLImageElement.cpp:
   12187         * wml/WMLInputElement.cpp:
   12188         * wml/WMLMetaElement.cpp:
   12189         * wml/WMLOnEventElement.cpp:
   12190         * wml/WMLOptGroupElement.cpp:
   12191         * wml/WMLOptionElement.cpp:
   12192         * wml/WMLPElement.cpp:
   12193         * wml/WMLPostfieldElement.cpp:
   12194         * wml/WMLSetvarElement.cpp:
   12195         * wml/WMLTableElement.cpp:
   12196         * wml/WMLTemplateElement.cpp:
   12197         * wml/WMLTimerElement.cpp:
   12198 
   12199 2009-05-06  Xan Lopez  <xlopez (a] igalia.com>
   12200 
   12201         Reviewed by Gustavo Noronha.
   12202 
   12203         https://bugs.webkit.org/show_bug.cgi?id=25526
   12204         [Gtk] Additional support is needed for caret browsing
   12205 
   12206         Emit AtkText::text-selection-changed when the selection changes
   12207         and the current selection is of Range (ie, the start and end
   12208         positions are different) type. This seems to match what Gecko
   12209         does.
   12210 
   12211         * editing/gtk/SelectionControllerGtk.cpp:
   12212         (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
   12213 
   12214 2009-05-05  Xan Lopez  <xlopez (a] igalia.com>
   12215 
   12216         Reviewed by Gustavo Noronha.
   12217 
   12218         https://bugs.webkit.org/show_bug.cgi?id=25526
   12219         [Gtk] Additional support is needed for caret browsing
   12220 
   12221         Emit AtkText::text-caret-moved when selection changes.
   12222 
   12223         * GNUmakefile.am:
   12224         * editing/SelectionController.h:
   12225         * editing/gtk/SelectionController.cpp: Added.
   12226         (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
   12227 
   12228 2009-05-06  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   12229 
   12230         Reviewed by Gustavo Noronha.
   12231 
   12232         Use mozilla cursors for the previously not implemented
   12233         cursors. The manual-tests/cursor.html is looking complete
   12234         now.
   12235 
   12236         * platform/gtk/CursorGtk.cpp:
   12237         (WebCore::cellCursor):
   12238         (WebCore::noDropCursor):
   12239         (WebCore::progressCursor):
   12240         (WebCore::noneCursor):
   12241         (WebCore::notAllowedCursor):
   12242         (WebCore::grabCursor):
   12243         (WebCore::grabbingCursor):
   12244         * platform/gtk/CursorGtk.h:
   12245 
   12246 2009-05-06  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   12247 
   12248         Reviewed by Xan Lopez.
   12249 
   12250         Properly indent the header file.
   12251 
   12252         * platform/gtk/CursorGtk.h:
   12253 
   12254 2009-05-06  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   12255 
   12256         Reviewed by Gustavo Noronha.
   12257 
   12258         Use the mozilla copyright header. Use MPL1.1/GPL2.0
   12259         and LGPL2.1 as the license compared to LGPL2.0.
   12260 
   12261         * platform/gtk/CursorGtk.h:
   12262 
   12263 2009-05-06  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   12264 
   12265         Reviewed by Gustavo Noronha.
   12266 
   12267         Move PluginView::invalidateRegion from the
   12268         TemporaryLinkStubs to PluginViewGtk.cpp and implement
   12269         it with a call to Widget::invalidate() just like
   12270         mac is doing. Optimisations would have to be window
   12271         system specific.
   12272 
   12273         * platform/gtk/TemporaryLinkStubs.cpp:
   12274         * plugins/gtk/PluginViewGtk.cpp:
   12275         (WebCore::PluginView::invalidateRegion):
   12276 
   12277 2009-05-06  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   12278 
   12279         Reviewed by Holger Freyther.
   12280 
   12281         Misc fixes to InspectorClientGtk.
   12282 
   12283         * GNUmakefile.am: Add localizedStrings.js to webinspector_DATA.
   12284         This prevents copious amounts "Localized string not found" errors
   12285         in the console
   12286 
   12287 2009-05-06  Simon Hausmann  <simon.hausmann (a] nokia.com>
   12288 
   12289         Reviewed by Ariya Hidayat.
   12290 
   12291         Fix the Qt build on Windows.
   12292 
   12293         * platform/graphics/GraphicsContext.h:
   12294         (WebCore::GraphicsContext::shouldIncludeChildWindows): Implemented dummy accessor.
   12295 
   12296 2009-05-06  Simon Hausmann  <simon.hausmann (a] nokia.com>
   12297 
   12298         Reviewed by Tor Arne Vestb.
   12299 
   12300         Tweak WebCore.pro for being able to override the generated sources dir for the
   12301         generated_files target.
   12302 
   12303         * WebCore.pro:
   12304 
   12305 2009-05-06  Simon Hausmann  <simon.hausmann (a] nokia.com>
   12306 
   12307         Reviewed by Holger Freyther.
   12308 
   12309         Fix the Qt/Windows build, use iface instead of interface to avoid conflict
   12310         with VS2005 headers.
   12311 
   12312         * css/CSSStyleSelector.cpp:
   12313         (WebCore::CSSStyleSelector::SelectorChecker::checkPseudoState):
   12314 
   12315 2009-05-06  Joerg Bornemann  <joerg.bornemann (a] trolltech.com>
   12316 
   12317         Reviewed by Simon Hausmann.
   12318 
   12319         We need to include StringExtras.h on Windows CE to access the strdup function.
   12320 
   12321         * plugins/PluginStream.cpp:
   12322 
   12323 2009-05-06  Soren Gjesse  <sgjesse (a] chromium.org>
   12324 
   12325         Reviewed by Eric Seidel.
   12326 
   12327         Changed the toString behaviour for non document dom node event handlers in the V8 bindings.
   12328         https://bugs.webkit.org/show_bug.cgi?id=25544
   12329 
   12330         In the V8 bindings non document dom node event handlers are wrapped in a number of with blocks and uses an inner
   12331         function. This causes the default toString on such a handler to return all this wrapper code. As some web sites
   12332         use the source of an event handler to create new functions this wrapper code causes compatibility problems.
   12333 
   12334         Create a specific toString function for these handlers which will return a function source compatible with the
   12335         source returned by the JSC bindings and other browsers.
   12336 
   12337         Test: fast/events/event-function-toString.html
   12338 
   12339         * bindings/v8/ScriptEventListener.cpp:
   12340         (WebCore::createAttributeEventListener):
   12341         * bindings/v8/V8LazyEventListener.cpp:
   12342         (WebCore::V8LazyEventListener::V8LazyEventListener):
   12343         (WebCore::V8LazyEventListener::getListenerFunction):
   12344         (WebCore::V8LazyEventListenerToString):
   12345         (WebCore::V8LazyEventListener::getWrappedListenerFunction):
   12346         * bindings/v8/V8LazyEventListener.h:
   12347         (WebCore::V8LazyEventListener::create):
   12348 
   12349 2009-05-06  Tor Arne Vestb  <tor.arne.vestbo (a] nokia.com>
   12350 
   12351         Reviewed by Simon Hausmann.
   12352 
   12353         Build QtWebKit as a framework on Mac
   12354 
   12355         This implies both debug and release build by default, unless
   12356         one of the --debug or --release config options are passed to
   12357         the build-webkit script.
   12358 
   12359         Frameworks can be disabled by passing CONFIG+=webkit_no_framework
   12360         to the build-webkit script.
   12361 
   12362         To be able to build both debug and release targets in parallel
   12363         we have to use separate output directories for the generated
   12364         sources, which is not optimal, but required to avoid race conditions.
   12365 
   12366         An optimization would be to only require this spit-up on Mac.
   12367 
   12368         * WebCore.pro:
   12369 
   12370 2009-05-06  Tor Arne Vestb  <tor.arne.vestbo (a] nokia.com>
   12371 
   12372         Reviewed by Simon Hausmann.
   12373 
   12374         [Qt] Use $$GENERATED_SOURCES_DIR as output when running bison
   12375 
   12376         A couple of the generators left the bison output file in the source
   12377         tree, and then moved it into $$GENERATED_SOURCES_DIR, which did not
   12378         work well when building release and debug configurations in parallel.
   12379 
   12380         * WebCore.pro:
   12381 
   12382 2009-05-06  Dan Bernstein  <mitz (a] apple.com>
   12383 
   12384         Reviewed by Justin Garcia.
   12385 
   12386         - fix an assertion failure in RemoveNodeCommand() when deleting a <br>
   12387           between a block and a mail blockquote
   12388 
   12389         Test: editing/deleting/removeNodeCommand-assert.html
   12390 
   12391         * editing/DeleteSelectionCommand.cpp:
   12392         (WebCore::DeleteSelectionCommand::mergeParagraphs): Pass the start block
   12393         to prune() instead of passing m_upstreamStart.node(), because the latter
   12394         may have been removed already.
   12395 
   12396 2009-05-05  Eric Seidel  <eric (a] webkit.org>
   12397 
   12398         No review, roll out only.
   12399 
   12400         Roll out r23072 since it broke layout tests
   12401 
   12402         * page/AccessibilityRenderObject.cpp:
   12403         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
   12404 
   12405 2009-05-05  Ben Murdoch  <benm (a] google.com>
   12406 
   12407         Reviewed by Eric Seidel.
   12408         
   12409         Add #if ENABLE(DATABASE) guards around database code so toggling ENABLE_DATABASE off does not break builds.
   12410         https://bugs.webkit.org/show_bug.cgi?id=24776
   12411 
   12412         No functional changes, thus no tests.
   12413 
   12414         * bindings/js/JSCustomSQLStatementCallback.cpp:
   12415         * bindings/js/JSCustomSQLStatementCallback.h:
   12416         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
   12417         * bindings/js/JSCustomSQLStatementErrorCallback.h:
   12418         * bindings/js/JSCustomSQLTransactionCallback.cpp:
   12419         * bindings/js/JSCustomSQLTransactionCallback.h:
   12420         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
   12421         * bindings/js/JSCustomSQLTransactionErrorCallback.h:
   12422         * bindings/js/JSDatabaseCustom.cpp:
   12423         * bindings/js/JSSQLTransactionCustom.cpp:
   12424         * loader/EmptyClients.h:
   12425         * page/ChromeClient.h:
   12426         * storage/ChangeVersionWrapper.cpp:
   12427         * storage/ChangeVersionWrapper.h:
   12428         * storage/Database.cpp:
   12429         (WebCore::Database::databaseInfoTableName):
   12430         * storage/Database.h:
   12431         * storage/Database.idl:
   12432         * storage/DatabaseTask.cpp:
   12433         * storage/DatabaseTask.h:
   12434         * storage/DatabaseThread.cpp:
   12435         * storage/DatabaseThread.h:
   12436         * storage/DatabaseTracker.cpp:
   12437         * storage/DatabaseTracker.h:
   12438         * storage/DatabaseTrackerClient.h:
   12439         * storage/OriginQuotaManager.cpp:
   12440         * storage/OriginQuotaManager.h:
   12441         * storage/SQLStatement.cpp:
   12442         * storage/SQLStatement.h:
   12443         * storage/SQLTransaction.cpp:
   12444         * storage/SQLTransaction.h:
   12445         * storage/SQLTransaction.idl:
   12446 
   12447 2009-05-05  Jeremy Moskovich  <jeremy (a] chromium.org>
   12448 
   12449         Reviewed by Eric Seidel.
   12450 
   12451         Add some documentation to InlineBox::x(),y().
   12452         https://bugs.webkit.org/show_bug.cgi?id=25378
   12453 
   12454         * rendering/InlineBox.h:
   12455 
   12456 2009-05-05  Laszlo Gombos  <laszlo.1.gombos (a] nokia.com>
   12457 
   12458         Reviewed by Eric Seidel.
   12459 
   12460         Disable all the SVG features for WebKit/Qt if ENABLE_SVG=0 
   12461         https://bugs.webkit.org/show_bug.cgi?id=24693
   12462 
   12463         * WebCore.pro:
   12464 
   12465 2009-05-05  Sankar Aditya Tanguturi  <sankaraditya (a] gmail.com>
   12466 
   12467         Reviewed by Eric Seidel.
   12468 
   12469         Anonymous blocks should not be exposed in accessibility tree.
   12470         Part of https://bugs.webkit.org/show_bug.cgi?id=23072
   12471 
   12472         Tests: accessibility/ignore-anonymous-block.html
   12473                platform/win/accessibility/document-role.html
   12474 
   12475         * page/AccessibilityRenderObject.cpp:
   12476         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):Return
   12477         true for Anonymous blocks. Matching Firefox 2.0.0.14
   12478 
   12479 2009-05-05  Jungshik Shin  <jshin (a] chromium.org>
   12480 
   12481         Reviewed by Alexey Proskuryakov.
   12482 
   12483         http://bugs.webkit.org/show_bug.cgi?id=25487
   12484 
   12485         For euc-kr and other 8bit Korean encodings
   12486         (similar to euc-kr/windows-949), make document.charset return
   12487         EUC-KR instead of windows-949. The latter is not recognized by
   12488         Korean web servers.
   12489 
   12490         Add domName method to TextEncoding to deal with cases where
   12491         our internal encoding name does not match what's widely recognized
   12492         by web servers. Currently, the only case is 'windows-949' (internal
   12493         name) vs 'EUC-KR'.
   12494 
   12495         Test: fast/encoding/euckr-name.html
   12496 
   12497         * dom/Document.cpp:
   12498         (WebCore::Document::encoding): Call TextEncoding.domName() instead
   12499         of TextEncoding.name().
   12500         * platform/text/TextEncoding.cpp:
   12501         (WebCore::TextEncoding::domName): For the canonical name 'windows-949',
   12502         return 'EUC-KR'. Otherwise, just return the canonical name.
   12503         * platform/text/TextEncoding.h:
   12504 
   12505 2009-05-05  Adam Langley  <agl (a] google.com>
   12506 
   12507         Reviewed by Darin Adler.
   12508 
   12509         Rendering fix for <select> elements.
   12510         https://bugs.webkit.org/show_bug.cgi?id=25558
   12511 
   12512         When switching a <select> element from display:none to default
   12513         display, we would fail to invalidate the parent's pref widths in some
   12514         situations:
   12515 
   12516         When attaching the element, RenderMenuList::updateOptionsWidth would
   12517         call setNeedsLayoutAndPrefWidthsRecalc before the parent pointer was
   12518         set. This would mark the pref widths as dirty, but not for any parent
   12519         objects.
   12520 
   12521         When RenderObjectChildList::appendChildNode later calls
   12522         setNeedsLayoutAndPrefWidthsRecalc again, with a valid parent pointer,
   12523         nothing would be done because the pref widths were already dirty for.
   12524         the RenderMenuList.
   12525 
   12526         * rendering/RenderMenuList.cpp:
   12527         (WebCore::RenderMenuList::updateOptionsWidth):
   12528 
   12529 2009-05-05  Antony Sargent  <asargent (a] chromium.org>
   12530 
   12531         Reviewed by Dimitri Glazkov.
   12532 
   12533         Switch V8EventListenerList to use HashTable<T>.
   12534         https://bugs.webkit.org/show_bug.cgi?id=25496
   12535         
   12536         This avoids some tricky issues with event listener removal in the 
   12537         current implementation and has slightly better performance.
   12538 
   12539         No new functionality so no new tests.
   12540 
   12541         * bindings/v8/V8EventListenerList.cpp: Added V8EventListenerListIterator.
   12542         * bindings/v8/V8EventListenerList.h:
   12543         (WebCore::V8EventListenerList::size):
   12544         * bindings/v8/WorkerContextExecutionProxy.cpp:
   12545         (WebCore::WorkerContextExecutionProxy::initContextIfNeeded):
   12546 
   12547 2009-05-05  Darin Fisher  <darin (a] chromium.org>
   12548 
   12549         Fixing build bustage.
   12550 
   12551         Add some missing includes to fix the Chromium build.
   12552 
   12553         * bindings/v8/custom/V8DOMWindowCustom.cpp:
   12554         * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
   12555 
   12556 2009-05-05  Darin Fisher  <darin (a] chromium.org>
   12557 
   12558         Reviewed by Darin Adler.
   12559 
   12560         https://bugs.webkit.org/show_bug.cgi?id=25570
   12561 
   12562         history.{back,forward,go} should always be dispatched asynchronously,
   12563         even when the history navigation would just result in scrolling the
   12564         page.  This matches the behavior of other browsers like IE and FF.
   12565 
   12566         Test: fast/history/back-forward-is-asynchronous.html
   12567 
   12568         * loader/FrameLoader.cpp:
   12569         (WebCore::FrameLoader::scheduleHistoryNavigation):
   12570 
   12571 2009-05-05  Eric Seidel  <eric (a] webkit.org>
   12572 
   12573         Reviewed by Simon Fraser.
   12574 
   12575         Add an ASSERT(useTransforms) to mapLocalToContainer implementations in SVG.
   12576         https://bugs.webkit.org/show_bug.cgi?id=25532
   12577         https://bugs.webkit.org/show_bug.cgi?id=25568
   12578 
   12579         Adding this ASSERT exposed a bug in SVGPaintServerPattern::setup
   12580         which was causing transformed SVG text when filled/stroked with a
   12581         pattern using patternUnits=objectBoundingBox to draw incorrectly.
   12582 
   12583         I fixed the incorrect drawing (by removing the broken code) and added
   12584         two test cases to test the fix:
   12585         * svg/transforms/text-with-pattern-inside-transformed-html.xhtml
   12586         * svg/transforms/text-with-pattern-with-svg-transform.svg
   12587 
   12588         * rendering/RenderSVGRoot.cpp:
   12589         (WebCore::RenderSVGRoot::mapLocalToContainer):
   12590         * rendering/SVGRenderSupport.cpp:
   12591         (WebCore::SVGRenderBase::mapLocalToContainer):
   12592         * svg/graphics/SVGPaintServerPattern.cpp:
   12593         (WebCore::SVGPaintServerPattern::setup):
   12594 
   12595 2009-05-05  Greg Bolsinga  <bolsinga (a] apple.com>
   12596 
   12597         Reviewed by Sam Weinig.
   12598 
   12599         https://bugs.webkit.org/show_bug.cgi?id=25554
   12600         
   12601         Support HTML5 text control input types: email, number, tel, url
   12602 
   12603         Test: fast/html/text-field-input-types.html
   12604 
   12605         * bindings/objc/DOMHTML.mm:
   12606         (-[DOMHTMLInputElement _isTextField]): Call HTMLInputElement::isTextField directly.
   12607         * html/HTMLInputElement.cpp: Use the new types where appropriate.
   12608         (WebCore::HTMLInputElement::setInputType):
   12609         (WebCore::HTMLInputElement::type):
   12610         (WebCore::HTMLInputElement::saveState):
   12611         (WebCore::HTMLInputElement::restoreState):
   12612         (WebCore::HTMLInputElement::accessKeyAction):
   12613         (WebCore::HTMLInputElement::rendererIsNeeded):
   12614         (WebCore::HTMLInputElement::createRenderer):
   12615         (WebCore::HTMLInputElement::appendFormData):
   12616         (WebCore::HTMLInputElement::valueWithDefault):
   12617         (WebCore::HTMLInputElement::storesValueSeparateFromAttribute):
   12618         (WebCore::HTMLInputElement::defaultEventHandler):
   12619         * html/HTMLInputElement.h: Ditto.
   12620         (WebCore::HTMLInputElement::):
   12621         (WebCore::HTMLInputElement::isTextField):
   12622 
   12623 2009-04-01  miggilin  <mr.diggilin (a] gmail.com>
   12624 
   12625         Reviewed by Kevin Ollivier.
   12626 
   12627         Mouse wheel scrolling and keyboard shortcut support for wx.
   12628         
   12629         https://bugs.webkit.org/show_bug.cgi?id=24797
   12630 
   12631         * platform/ScrollView.cpp:
   12632         (WebCore::ScrollView::wheelEvent):
   12633         * platform/wx/KeyboardEventWx.cpp:
   12634         (WebCore::windowsKeyCodeForKeyEvent):
   12635         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
   12636         * platform/wx/ScrollViewWx.cpp:
   12637         (WebCore::ScrollView::platformSetScrollPosition):
   12638 
   12639 2009-05-05  Kevin Ollivier  <kevino (a] theolliviers.com>
   12640 
   12641         wx build fix for Windows, add missing include.
   12642         
   12643         https://bugs.webkit.org/show_bug.cgi?id=24798
   12644 
   12645         * platform/wx/wxcode/win/non-kerned-drawing.cpp:
   12646 
   12647 2009-05-05  Chris Fleizach  <cfleizach (a] apple.com>
   12648 
   12649         Reviewed by Beth Dakin.
   12650 
   12651         Bug 25574: AXImageMap children links don't respond properly to accessibilityHitTest:
   12652         https://bugs.webkit.org/show_bug.cgi?id=25574
   12653 
   12654         Enable accessibility hit-testing for image map links. 
   12655         Allow image map links to return AXURLs and AXAccessKey information.
   12656 
   12657         Test: platform/mac/accessibility/imagemap-hittest.html
   12658 
   12659         * page/AccessibilityImageMapLink.cpp:
   12660         (WebCore::AccessibilityImageMapLink::url):
   12661         * page/AccessibilityImageMapLink.h:
   12662         * page/AccessibilityObject.h:
   12663         (WebCore::AccessibilityObject::minValueForRange):
   12664         * page/AccessibilityRenderObject.cpp:
   12665         (WebCore::AccessibilityRenderObject::accessibilityParentForImageMap):
   12666         (WebCore::AccessibilityRenderObject::accessibilityImageMapHitTest):
   12667         (WebCore::AccessibilityRenderObject::doAccessibilityHitTest):
   12668         * page/AccessibilityRenderObject.h:
   12669         * page/mac/AccessibilityObjectWrapper.mm:
   12670         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
   12671 
   12672 2009-05-05  Kevin McCullough  <kmccullough (a] apple.com>
   12673 
   12674         Reviewed by Dan Bernstein.
   12675 
   12676         <rdar://problem/6552129> Select a quote line and paste elsewhere, you
   12677         get that line and an extra quoted blank line
   12678         <rdar://problem/6609308> Triple-click a quoted header line, copy, paste
   12679         onto an empty line makes an extra quoted line
   12680 
   12681         - When pasting a blockquote with a newline, make sure we put the newline
   12682         outside of the blockquote so that it is not quoted.
   12683 
   12684         * editing/InsertParagraphSeparatorCommand.cpp:
   12685         (WebCore::InsertParagraphSeparatorCommand::doApply):
   12686 
   12687 2009-05-05  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   12688 
   12689         Reviewed by Xan Lopez.
   12690 
   12691         Call moz_gtk_shutdown on RenderThemeGtk destruction.
   12692 
   12693         * platform/gtk/RenderThemeGtk.cpp:
   12694         (WebCore::RenderThemeGtk::~RenderThemeGtk):
   12695         * platform/gtk/RenderThemeGtk.h:
   12696 
   12697 2009-05-05  Darin Adler  <darin (a] apple.com>
   12698 
   12699         Reviewed by Steve Falkenburg.
   12700 
   12701         <rdar://problem/6858340> REGRESSION: can't drag local HTML files into Safari because CFURLCreateWithFileSystemPath inserts "localhost"
   12702 
   12703         * platform/win/ClipboardUtilitiesWin.cpp: (WebCore::urlFromPath): Remove localhost.
   12704 
   12705 2009-05-05  Peter Kasting  <pkasting (a] google.com>
   12706 
   12707         Reviewed by Brady Eidson.
   12708 
   12709         Safety-check m_documentLoader before dereferencing.  While it seems
   12710         unlikely this could fail (as Safari 3 shipped without this),
   12711         technically almost any call can change or reset m_documentLoader.
   12712 
   12713         * loader/FrameLoader.cpp:
   12714         (WebCore::FrameLoader::receivedFirstData):
   12715 
   12716 2009-05-05  Dan Bernstein  <mitz (a] apple.com>
   12717 
   12718         - Tiger build fix
   12719 
   12720         * css/CSSComputedStyleDeclaration.cpp:
   12721         (WebCore::toCSSIdentifier):
   12722 
   12723 2009-05-05  Peter Kasting  <pkasting (a] google.com>
   12724 
   12725         Reviewed by Eric Seidel.
   12726 
   12727         https://bugs.webkit.org/show_bug.cgi?id=25303
   12728         No need to ref the internal buffer inside the Skia ImageDecoder.
   12729 
   12730         * platform/image-decoders/skia/ImageDecoder.h:
   12731         (WebCore::RGBA32Buffer::RGBA32Buffer):
   12732         (WebCore::RGBA32Buffer::operator=):
   12733         (WebCore::RGBA32Buffer::clear):
   12734         (WebCore::RGBA32Buffer::copyBitmapData):
   12735         (WebCore::RGBA32Buffer::bitmap):
   12736         (WebCore::RGBA32Buffer::setSize):
   12737         (WebCore::RGBA32Buffer::width):
   12738         (WebCore::RGBA32Buffer::height):
   12739         (WebCore::RGBA32Buffer::hasAlpha):
   12740         (WebCore::RGBA32Buffer::setStatus):
   12741         (WebCore::RGBA32Buffer::setHasAlpha):
   12742         (WebCore::RGBA32Buffer::setRGBA):
   12743 
   12744 2009-05-05  Dan Bernstein  <mitz (a] apple.com>
   12745 
   12746         Reviewed by Darin Adler.
   12747 
   12748         - fix https://bugs.webkit.org/show_bug.cgi?id=24192
   12749           <rdar://problem/5760774> Replying to a Mail message that contains
   12750           fixed width text can change the size of the text
   12751 
   12752         Covered by existing tests: editing/pasteboard/5027857.html
   12753                                    editing/pasteboard/paste-pre-002.html
   12754 
   12755         * css/CSSComputedStyleDeclaration.cpp:
   12756         (WebCore::CSSComputedStyleDeclaration::getFontSizeCSSValuePreferringKeyword):
   12757         Added. If the font-size is keyword-based, returns the keyword value
   12758         instead of the pixel size.
   12759         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): If
   12760         font-family is a generic family, return the generic family instead of
   12761         the the internal string -webkit-[serif|sans-serif|cursive|fantasy
   12762         |monospace].
   12763         (WebCore::CSSComputedStyleDeclaration::copyInheritableProperties):
   12764         For the font-size property, prefer a keyword value over a pixel size.
   12765         * css/CSSComputedStyleDeclaration.h:
   12766         * editing/ApplyStyleCommand.cpp:
   12767         (WebCore::StyleChange::currentlyHasStyle): For the font-size property,
   12768         call getFontSizeCSSValuePreferringKeyword().
   12769         * platform/graphics/FontDescription.h:
   12770         (WebCore::FontDescription::keywordSize): Changed the return type to
   12771         unsigned.
   12772         (WebCore::FontDescription::setKeywordSize): Changed the parameter type
   12773         to unsigned.
   12774         (WebCore::FontDescription::m_keywordSize): Changed the type of this
   12775         4-bit field to unsigned, because it takes values as high as 8.
   12776 
   12777 2009-05-05  Oliver Hunt  <oliver (a] apple.com>
   12778 
   12779         Reviewed by Maciej Stachowiak.
   12780 
   12781         Fix http/tests/misc/DOMContentLoaded-event.html
   12782 
   12783         The native call performance improvement removed a few places where we
   12784         unintentionally performed a toThisObject conversion.  This patch updates
   12785         the bindings codegen to not rely on this bug.
   12786 
   12787         * bindings/scripts/CodeGeneratorJS.pm:
   12788 
   12789 2009-05-05  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   12790 
   12791         Reviewed by Xan Lopez and Gustavo Noronha.
   12792 
   12793         Implement WebCore::directoryName for Gtk+.
   12794 
   12795         * platform/gtk/FileSystemGtk.cpp:
   12796         (WebCore::directoryName):
   12797 
   12798 2009-05-05  Eric Seidel  <eric (a] webkit.org>
   12799 
   12800         Reviewed by Adam Roben.
   12801 
   12802         Fix mappedAttributes() access without NULL check
   12803         https://bugs.webkit.org/show_bug.cgi?id=25553
   12804 
   12805         SVGStyledElement::getPresentationAttribute was using mappedAttributes()
   12806         without checking for NULL.
   12807 
   12808         HTMLInputElement::setInputType also doesn't NULL check, but I was not
   12809         able to get it to crash with a test case so I just added an ASSERT.
   12810 
   12811         * html/HTMLInputElement.cpp:
   12812         (WebCore::HTMLInputElement::setInputType):
   12813         * svg/SVGStyledElement.cpp:
   12814         (WebCore::SVGStyledElement::getPresentationAttribute):
   12815 
   12816 2009-05-05  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   12817 
   12818         Reviewed by Xan Lopez.
   12819 
   12820         Implement WebCore::imageTitle for Gtk+.
   12821 
   12822         * platform/gtk/LocalizedStringsGtk.cpp:
   12823         (WebCore::imageTitle):
   12824 
   12825 2009-05-05  Oliver Hunt  <oliver (a] apple.com>
   12826 
   12827         Reviewed by Gavin Barraclough.
   12828 
   12829         Bug 25559: Improve native function call performance
   12830         <https://bugs.webkit.org/show_bug.cgi?id=25559>
   12831 
   12832         Add forwarding header necessary for compilation, and fix debugger
   12833         to correctly account for change in JSFunction behaviour.
   12834 
   12835         * ForwardingHeaders/jit/JITCode.h: Added.
   12836         * inspector/JavaScriptDebugServer.cpp:
   12837         (WebCore::JavaScriptDebugServer::recompileAllJSFunctions):
   12838 
   12839 2009-05-05  Simon Hausmann  <simon.hausmann (a] nokia.com>
   12840 
   12841         Reviewed by Ariya Hidayat.
   12842 
   12843         Make convertValueToQVariant more robust against null JSValues.
   12844 
   12845         Don't require the caller to do the null check.
   12846 
   12847         * bridge/qt/qt_runtime.cpp:
   12848         (JSC::Bindings::convertValueToQVariant):
   12849 
   12850 2009-05-05  Eric Seidel  <eric (a] webkit.org>
   12851 
   12852         No review, just a revert.
   12853 
   12854         Roll out http://trac.webkit.org/changeset/43213 as it caused 4 tests to crash.
   12855 
   12856         * rendering/RenderSVGRoot.cpp:
   12857         (WebCore::RenderSVGRoot::mapLocalToContainer):
   12858         * rendering/SVGRenderSupport.cpp:
   12859         (WebCore::SVGRenderBase::mapLocalToContainer):
   12860 
   12861 2009-05-04  Alexey Proskuryakov  <ap (a] webkit.org>
   12862 
   12863         Reviewed by Dave Hyatt.
   12864 
   12865         <rdar://problem/6576889> REGRESSION (r35185): Cannot watch Flash movies on omg.yahoo.com
   12866 
   12867         The problem was caused by missing <head> element - we used to create it when moving a
   12868         misplaced <style> element, but we now handle those in place. Other browsers always create
   12869         a <head> element.
   12870 
   12871         There is no guarantee that a <head> element always exists - first, it can be removed with
   12872         removeChild or innerHTML, and also, we don't currently create it for frameset documents, or
   12873         for manually created ones (e.g. ImageDocument).
   12874 
   12875         Test: fast/parser/head-element-for-yahoo-player.html
   12876 
   12877         * dom/Document.cpp: (WebCore::Document::implicitClose): Create a <head> element for about:blank.
   12878         A removed comment talked about rdar://3758785, but that problem doesn't re-occur even if this
   12879         code is removed completely.
   12880 
   12881         * html/HTMLHtmlElement.cpp: (WebCore::HTMLHtmlElement::checkDTD): No longer allow <script>
   12882         elements as children of <html>. This isn't directly related to this bug, but it was easier
   12883         to fix both at once (IE and Firefox both don't allow such mispositioned <script> elements).
   12884 
   12885         * html/HTMLParser.cpp:
   12886         (WebCore::HTMLParser::handleError): Move <script> to <head> if <body> hasn't been created yet.
   12887         Create a <head> it a <body> is created implicitly to contain some other element.
   12888         (WebCore::HTMLParser::bodyCreateErrorCheck): Ensure that a <head> exists when <body> is
   12889         explicitly present in source.
   12890         (WebCore::HTMLParser::createHead): Do the work even if <html> element hasn't been created yet.
   12891 
   12892 2009-05-04  Jakub Wieczorek  <faw217 (a] gmail.com>
   12893 
   12894         Reviewed by Simon Hausmann.
   12895 
   12896         As Qtish implementation of MIMETypeRegistry::getMIMETypeForExtension()
   12897         returns the application/octet-stream mimetype when it can't associate
   12898         extension with any mimetype, it can happen that the application/octet-stream
   12899         mimetype will hit the list of supported image formats. For instance,
   12900         it is possible when QImageReader or QImageWriter support an extension
   12901         that is not in the extensions map.
   12902 
   12903         Make sure that this mimetype is not treated as displayable image type.
   12904 
   12905         * platform/MIMETypeRegistry.cpp:
   12906         (WebCore::initializeSupportedImageMIMETypes):
   12907         (WebCore::initializeSupportedImageMIMETypesForEncoding):
   12908 
   12909 2009-05-03  Eric Seidel  <eric (a] webkit.org>
   12910 
   12911         Reviewed by Simon Fraser.
   12912 
   12913         ASSERT(useTransforms) in SVG mapLocalToContainer implementations
   12914         https://bugs.webkit.org/show_bug.cgi?id=25532
   12915 
   12916         * rendering/RenderSVGRoot.cpp:
   12917         (WebCore::RenderSVGRoot::mapLocalToContainer):
   12918         * rendering/SVGRenderSupport.cpp:
   12919         (WebCore::SVGRenderBase::mapLocalToContainer):
   12920 
   12921 2009-05-03  Eric Seidel  <eric (a] webkit.org>
   12922 
   12923         Reviewed by Simon Fraser.
   12924 
   12925         Remove m_absoluteBounds hack from RenderSVGText
   12926         https://bugs.webkit.org/show_bug.cgi?id=25532
   12927 
   12928         No functional changes (SVGs inside CSS transformed HTML should theoretically repaint better)
   12929 
   12930         * rendering/RenderSVGText.cpp:
   12931         (WebCore::RenderSVGText::layout):
   12932         * rendering/RenderSVGText.h:
   12933 
   12934 2009-05-03  Eric Seidel  <eric (a] webkit.org>
   12935 
   12936         Reviewed by Simon Fraser.
   12937 
   12938         Remove the vestigial calculateLocalTransform()
   12939         https://bugs.webkit.org/show_bug.cgi?id=25532
   12940 
   12941         RenderSVGContainer is now the only render which needs this
   12942         function, but it no longer returns the unused bool.
   12943 
   12944         calculateLocalTransform() previously was called by the DOM before
   12945         transform updates were part of layout().
   12946 
   12947         * rendering/RenderForeignObject.cpp:
   12948         (WebCore::RenderForeignObject::layout):
   12949         * rendering/RenderForeignObject.h:
   12950         (WebCore::RenderForeignObject::localTransform):
   12951         * rendering/RenderPath.cpp:
   12952         (WebCore::RenderPath::layout):
   12953         * rendering/RenderPath.h:
   12954         * rendering/RenderSVGContainer.cpp:
   12955         * rendering/RenderSVGContainer.h:
   12956         (WebCore::RenderSVGContainer::calculateLocalTransform):
   12957         * rendering/RenderSVGImage.cpp:
   12958         (WebCore::RenderSVGImage::layout):
   12959         * rendering/RenderSVGImage.h:
   12960         * rendering/RenderSVGText.cpp:
   12961         (WebCore::RenderSVGText::layout):
   12962         * rendering/RenderSVGText.h:
   12963         * rendering/RenderSVGTransformableContainer.cpp:
   12964         (WebCore::RenderSVGTransformableContainer::calculateLocalTransform):
   12965         * rendering/RenderSVGTransformableContainer.h:
   12966 
   12967 2009-05-03  Eric Seidel  <eric (a] webkit.org>
   12968 
   12969         Reviewed by Simon Fraser.
   12970 
   12971         Move more code into SVGRenderBase
   12972         https://bugs.webkit.org/show_bug.cgi?id=25532
   12973 
   12974         clippedOverflowRectForRepaint, computeRectForRepaint and mapLocalToContainer
   12975         are now all shared via SVGRenderBase.
   12976 
   12977         RenderForeignObject should also be sharing this code, but I've left it
   12978         alone for now, as changing that would likely cause test changes.
   12979 
   12980         No test changes.  It's possible that transformed <svg:image> elements will
   12981         now show up with better metrics in the inspector.
   12982 
   12983         * rendering/RenderSVGImage.cpp:
   12984         (WebCore::RenderSVGImage::clippedOverflowRectForRepaint):
   12985         (WebCore::RenderSVGImage::computeRectForRepaint):
   12986         (WebCore::RenderSVGImage::mapLocalToContainer):
   12987         * rendering/RenderSVGImage.h:
   12988         * rendering/RenderSVGModelObject.cpp:
   12989         (WebCore::RenderSVGModelObject::clippedOverflowRectForRepaint):
   12990         (WebCore::RenderSVGModelObject::computeRectForRepaint):
   12991         (WebCore::RenderSVGModelObject::mapLocalToContainer):
   12992         * rendering/RenderSVGText.cpp:
   12993         (WebCore::RenderSVGText::clippedOverflowRectForRepaint):
   12994         (WebCore::RenderSVGText::computeRectForRepaint):
   12995         (WebCore::RenderSVGText::mapLocalToContainer):
   12996         * rendering/SVGRenderSupport.cpp:
   12997         (WebCore::SVGRenderBase::clippedOverflowRectForRepaint):
   12998         (WebCore::SVGRenderBase::computeRectForRepaint):
   12999         (WebCore::SVGRenderBase::mapLocalToContainer):
   13000         * rendering/SVGRenderSupport.h:
   13001 
   13002 2009-05-03  Eric Seidel  <eric (a] webkit.org>
   13003 
   13004         Reviewed by Simon Fraser.
   13005 
   13006         Add SVGRenderBase to share logic between SVG renderers
   13007         https://bugs.webkit.org/show_bug.cgi?id=25532
   13008 
   13009         I've added an SVGRenderBase base class which is shared by
   13010         all of the SVG renders now.  This patch is just moving code
   13011         there are no functional changes in this patch.
   13012 
   13013         Currently I've left these functions in SVGRenderSupport.h
   13014         In a later patch I will rename SVGRenderSupport.* to SVGRenderBase.*
   13015 
   13016         clampImageBufferSizeToViewport now takes a FrameView* which makes some code easier to read.
   13017 
   13018         * rendering/RenderSVGBlock.h:
   13019         * rendering/RenderSVGImage.h:
   13020         * rendering/RenderSVGModelObject.h:
   13021         * rendering/RenderSVGRoot.h:
   13022         * rendering/SVGRenderSupport.cpp:
   13023         (WebCore::SVGRenderBase::prepareToRenderSVGContent):
   13024         (WebCore::SVGRenderBase::finishRenderSVGContent):
   13025         (WebCore::clampImageBufferSizeToViewport):
   13026         (WebCore::SVGRenderBase::computeContainerBoundingBox):
   13027         (WebCore::SVGRenderBase::filterBoundingBoxForRenderer):
   13028         * rendering/SVGRenderSupport.h:
   13029         * rendering/SVGRootInlineBox.cpp:
   13030         (WebCore::SVGRootInlineBoxPaintWalker::chunkStartCallback):
   13031         (WebCore::SVGRootInlineBoxPaintWalker::chunkEndCallback):
   13032         (WebCore::SVGRootInlineBox::paint):
   13033         * svg/SVGMaskElement.cpp:
   13034         (WebCore::SVGMaskElement::drawMaskerContent):
   13035         * svg/SVGPatternElement.cpp:
   13036         (WebCore::SVGPatternElement::buildPattern):
   13037         * svg/graphics/SVGPaintServerGradient.cpp:
   13038         (WebCore::createMaskAndSwapContextForTextGradient):
   13039         (WebCore::clipToTextMask):
   13040 
   13041 2009-05-05  Simon Hausmann  <simon.hausmann (a] nokia.com>
   13042 
   13043         Unreviewed SVG build fix.
   13044 
   13045         Include MappedAttribute.h after r43187.
   13046 
   13047         * svg/SVGComponentTransferFunctionElement.cpp:
   13048         * svg/SVGFEBlendElement.cpp:
   13049         * svg/SVGFEColorMatrixElement.cpp:
   13050         * svg/SVGFEComponentTransferElement.cpp:
   13051         * svg/SVGFECompositeElement.cpp:
   13052         * svg/SVGFEDiffuseLightingElement.cpp:
   13053         * svg/SVGFEDisplacementMapElement.cpp:
   13054         * svg/SVGFEGaussianBlurElement.cpp:
   13055         * svg/SVGFEImageElement.cpp:
   13056         * svg/SVGFELightElement.cpp:
   13057         * svg/SVGFEMergeNodeElement.cpp:
   13058         * svg/SVGFEOffsetElement.cpp:
   13059         * svg/SVGFESpecularLightingElement.cpp:
   13060         * svg/SVGFETileElement.cpp:
   13061         * svg/SVGFETurbulenceElement.cpp:
   13062         * svg/SVGFilterElement.cpp:
   13063         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
   13064 
   13065 2009-05-04  Brady Eidson  <beidson (a] apple.com>
   13066 
   13067         Reviewed by Sam 'The Belly' Weinig
   13068 
   13069         <rdar://problem/6828894> - Facebook photo uploader applet broken on Leopard only
   13070 
   13071         In r41568 we started adding a default codebase attribute to <applet> tags if they didn't specify one
   13072         themselves.  Leopard's Java plug-in mishandles this case and fails to load code for the applet.
   13073 
   13074         The spirit of r41568 can be maintained by removing the "default codebase" piece and only performing
   13075         the canLoad() check if a codebase was actually set on the applet tag.
   13076 
   13077         * html/HTMLAppletElement.cpp:
   13078         (WebCore::HTMLAppletElement::createRenderer): Don't create a default codebase attribute.
   13079 
   13080         * loader/FrameLoader.cpp:
   13081         (WebCore::FrameLoader::createJavaAppletWidget): Only perform the canLoad() check if the codebase was set.
   13082 
   13083 2009-05-04  Adam Roben  <aroben (a] apple.com>
   13084 
   13085         Windows build fix
   13086 
   13087         * html/HTMLCollection.h:
   13088         * html/HTMLFormElement.h:
   13089         Declare CollectionCache as a struct, not a class, to match its
   13090         definition.
   13091 
   13092 2009-05-04  Chris Fleizach  <cfleizach (a] apple.com>
   13093 
   13094         Reviewed by Beth Dakin, Oliver Hunt.
   13095 
   13096         Bug 25557: REGRESSION: Canvas elements are ignored instead of being exposed as AXImage
   13097         https://bugs.webkit.org/show_bug.cgi?id=25557
   13098 
   13099         Test: accessibility/canvas.html
   13100 
   13101         * page/AccessibilityRenderObject.cpp:
   13102         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
   13103         (WebCore::AccessibilityRenderObject::roleValue):
   13104 
   13105 2009-05-04  Brady Eidson  <beidson (a] apple.com>
   13106 
   13107         Fix an ancient Changelog entry where Sam Weinig flat out lied and confused my exploration of a bug.
   13108 
   13109         * ChangeLog
   13110 
   13111 2009-05-04  Kai Brning  <kai (a] granus.net>
   13112 
   13113         Reviewed by Eric Seidel.
   13114         
   13115         https://bugs.webkit.org/show_bug.cgi?id=24883
   13116         24883: Bad success test in parseXMLDocumentFragment in XMLTokenizerLibxml2.cpp
   13117         
   13118         Fixed test whether all the chunk has been processed to correctly count utf8 bytes.
   13119 
   13120         Test: fast/innerHTML/innerHTML-nbsp.xhtml
   13121 
   13122         * dom/XMLTokenizerLibxml2.cpp:
   13123         (WebCore::parseXMLDocumentFragment):
   13124 
   13125 2009-05-04  Darin Adler  <darin (a] apple.com>
   13126 
   13127         Reviewed by Eric Seidel.
   13128 
   13129         Bug 24924: remove Document.h include of Attr.h and HTMLCollection.h,
   13130         and NamedMappedAttrMap.h include of MappedAttribute.h
   13131         https://bugs.webkit.org/show_bug.cgi?id=24924
   13132 
   13133         Make compiles faster, and debugging info smaller.
   13134 
   13135         * GNUmakefile.am: Added new source files.
   13136         * WebCore.pro: Ditto.
   13137         * WebCore.scons: Ditto.
   13138         * WebCore.vcproj/WebCore.vcproj: Ditto.
   13139         * WebCore.xcodeproj/project.pbxproj: Ditto.
   13140         * WebCoreSources.bkl: Ditto.
   13141 
   13142         * bindings/js/JSHTMLCollectionCustom.cpp:
   13143         (WebCore::toJS): Updated for new collection type names.
   13144 
   13145         * dom/Document.cpp:
   13146         (WebCore::Document::createAttribute): Added. No longer inline.
   13147         (WebCore::Document::images): Updated for new collection type names.
   13148         (WebCore::Document::applets): Ditto.
   13149         (WebCore::Document::embeds): Ditto.
   13150         (WebCore::Document::plugins): Ditto.
   13151         (WebCore::Document::objects): Ditto.
   13152         (WebCore::Document::scripts): Ditto.
   13153         (WebCore::Document::links): Ditto.
   13154         (WebCore::Document::forms): Ditto.
   13155         (WebCore::Document::anchors): Ditto.
   13156         (WebCore::Document::all): Ditto.
   13157         (WebCore::Document::windowNamedItems): Ditto.
   13158         (WebCore::Document::documentNamedItems): Ditto.
   13159         (WebCore::Document::nameCollectionInfo): Ditto.
   13160 
   13161         * dom/Document.h: Changed around includes and forward declarations.
   13162         Updated for changes to collection types.
   13163 
   13164         * dom/NamedMappedAttrMap.h: Removed include of MappedAttribute.h.
   13165 
   13166         * html/CollectionCache.cpp: Copied from WebCore/html/HTMLCollection.cpp.
   13167         Contains the class that used to be HTMLCollection::CollectionInfo.
   13168         * html/CollectionCache.h: Copied from WebCore/html/HTMLCollection.h.
   13169         Ditto.
   13170 
   13171         * html/CollectionType.h: Copied from WebCore/html/HTMLCollection.h.
   13172         Has the enum that used to be HTMLCollection::Type.
   13173 
   13174         * html/HTMLCollection.cpp:
   13175         (WebCore::HTMLCollection::HTMLCollection): Update for collection type change.
   13176         (WebCore::HTMLCollection::create): Ditto.
   13177         (WebCore::HTMLCollection::resetCollectionInfo): Ditto.
   13178         (WebCore::HTMLCollection::itemAfter): Ditto.
   13179         * html/HTMLCollection.h: Ditto.
   13180 
   13181         * html/HTMLElement.cpp:
   13182         (WebCore::HTMLElement::children): Updated for new collection type names.
   13183         * html/HTMLFormCollection.cpp:
   13184         (WebCore::HTMLFormCollection::formCollectionInfo): Ditto.
   13185         (WebCore::HTMLFormCollection::HTMLFormCollection): Ditto.
   13186         * html/HTMLFormCollection.h: Ditto.
   13187         * html/HTMLFormElement.h: Ditto.
   13188         * html/HTMLMapElement.cpp:
   13189         (WebCore::HTMLMapElement::areas): Ditto.
   13190         * html/HTMLNameCollection.cpp:
   13191         (WebCore::HTMLNameCollection::HTMLNameCollection): Ditto.
   13192         * html/HTMLNameCollection.h:
   13193         (WebCore::HTMLNameCollection::create): Ditto.
   13194         * html/HTMLSelectElement.h:
   13195         (WebCore::HTMLSelectElement::collectionInfo): Ditto.
   13196         * html/HTMLTableElement.cpp:
   13197         (WebCore::HTMLTableElement::tBodies):Ditto.
   13198         * html/HTMLTableRowElement.cpp:
   13199         (WebCore::HTMLTableRowElement::cells):Ditto.
   13200         * html/HTMLTableRowsCollection.cpp:
   13201         (WebCore::HTMLTableRowsCollection::HTMLTableRowsCollection): Ditto.
   13202         * html/HTMLTableSectionElement.cpp:
   13203         (WebCore::HTMLTableSectionElement::rows): Ditto.
   13204 
   13205         * bindings/js/JSDOMWindowBase.cpp: Added newly-needed includes.
   13206         * bindings/js/JSHTMLFrameSetElementCustom.cpp: Ditto.
   13207         * css/CSSStyleSelector.cpp: Ditto.
   13208         * dom/Element.cpp: Ditto.
   13209         * dom/InputElement.cpp: Ditto.
   13210         * dom/NamedAttrMap.cpp: Ditto.
   13211         * dom/NamedMappedAttrMap.cpp: Ditto.
   13212         * dom/Node.cpp: Ditto.
   13213         * dom/StyledElement.cpp: Ditto.
   13214         * dom/StyledElement.h: Ditto.
   13215         * editing/ApplyStyleCommand.cpp: Ditto.
   13216         * editing/DeleteSelectionCommand.cpp: Ditto.
   13217         * editing/Editor.cpp: Ditto.
   13218         * editing/EditorCommand.cpp: Ditto.
   13219         * editing/InsertParagraphSeparatorCommand.cpp: Ditto.
   13220         * editing/ReplaceSelectionCommand.cpp: Ditto.
   13221         * editing/markup.cpp: Ditto.
   13222         * html/CanvasRenderingContext2D.cpp: Ditto.
   13223         * html/HTMLAnchorElement.cpp: Ditto.
   13224         * html/HTMLAppletElement.cpp: Ditto.
   13225         * html/HTMLAreaElement.cpp: Ditto.
   13226         * html/HTMLBRElement.cpp: Ditto.
   13227         * html/HTMLBaseElement.cpp: Ditto.
   13228         * html/HTMLBodyElement.cpp: Ditto.
   13229         * html/HTMLButtonElement.cpp: Ditto.
   13230         * html/HTMLCanvasElement.cpp: Ditto.
   13231         * html/HTMLDivElement.cpp: Ditto.
   13232         * html/HTMLEmbedElement.cpp: Ditto.
   13233         * html/HTMLFontElement.cpp: Ditto.
   13234         * html/HTMLFormControlElement.cpp: Ditto.
   13235         * html/HTMLFormElement.cpp: Ditto.
   13236         * html/HTMLFrameElement.cpp: Ditto.
   13237         * html/HTMLFrameElementBase.cpp: Ditto.
   13238         * html/HTMLFrameSetElement.cpp: Ditto.
   13239         * html/HTMLHRElement.cpp: Ditto.
   13240         * html/HTMLIFrameElement.cpp: Ditto.
   13241         * html/HTMLImageElement.cpp: Ditto.
   13242         * html/HTMLInputElement.cpp: Ditto.
   13243         * html/HTMLIsIndexElement.cpp: Ditto.
   13244         * html/HTMLKeygenElement.cpp: Ditto.
   13245         * html/HTMLLIElement.cpp: Ditto.
   13246         * html/HTMLLinkElement.cpp: Ditto.
   13247         * html/HTMLMarqueeElement.cpp: Ditto.
   13248         * html/HTMLMetaElement.cpp: Ditto.
   13249         * html/HTMLOListElement.cpp: Ditto.
   13250         * html/HTMLObjectElement.cpp: Ditto.
   13251         * html/HTMLOptionElement.cpp: Ditto.
   13252         * html/HTMLParagraphElement.cpp: Ditto.
   13253         * html/HTMLParamElement.cpp: Ditto.
   13254         * html/HTMLPlugInElement.cpp: Ditto.
   13255         * html/HTMLPreElement.cpp: Ditto.
   13256         * html/HTMLScriptElement.cpp: Ditto.
   13257         * html/HTMLSelectElement.cpp: Ditto.
   13258         * html/HTMLStyleElement.cpp: Ditto.
   13259         * html/HTMLTableCaptionElement.cpp: Ditto.
   13260         * html/HTMLTableCellElement.cpp: Ditto.
   13261         * html/HTMLTableColElement.cpp: Ditto.
   13262         * html/HTMLTablePartElement.cpp: Ditto.
   13263         * html/HTMLTextAreaElement.cpp: Ditto.
   13264         * html/HTMLTokenizer.cpp: Ditto.
   13265         * html/HTMLUListElement.cpp: Ditto.
   13266         * html/HTMLVideoElement.cpp: Ditto.
   13267         * html/HTMLViewSourceDocument.cpp: Ditto.
   13268         * loader/ImageDocument.cpp: Ditto.
   13269         * page/Frame.cpp: Ditto.
   13270         * rendering/RenderTreeAsText.cpp: Ditto.
   13271         * svg/SVGAElement.cpp: Ditto.
   13272         * svg/SVGAnimateMotionElement.cpp: Ditto.
   13273         * svg/SVGAnimateTransformElement.cpp: Ditto.
   13274         * svg/SVGAnimationElement.cpp: Ditto.
   13275         * svg/SVGCircleElement.cpp: Ditto.
   13276         * svg/SVGClipPathElement.cpp: Ditto.
   13277         * svg/SVGCursorElement.cpp: Ditto.
   13278         * svg/SVGElement.cpp: Ditto.
   13279         * svg/SVGEllipseElement.cpp: Ditto.
   13280         * svg/SVGExternalResourcesRequired.cpp: Ditto.
   13281         * svg/SVGFitToViewBox.cpp: Ditto.
   13282         * svg/SVGFontFaceElement.cpp: Ditto.
   13283         * svg/SVGFontFaceUriElement.cpp: Ditto.
   13284         * svg/SVGForeignObjectElement.cpp: Ditto.
   13285         * svg/SVGGlyphElement.cpp: Ditto.
   13286         * svg/SVGGradientElement.cpp: Ditto.
   13287         * svg/SVGImageElement.cpp: Ditto.
   13288         * svg/SVGLangSpace.cpp: Ditto.
   13289         * svg/SVGLineElement.cpp: Ditto.
   13290         * svg/SVGLinearGradientElement.cpp: Ditto.
   13291         * svg/SVGMarkerElement.cpp: Ditto.
   13292         * svg/SVGMaskElement.cpp: Ditto.
   13293         * svg/SVGPathElement.cpp: Ditto.
   13294         * svg/SVGPatternElement.cpp: Ditto.
   13295         * svg/SVGPolyElement.cpp: Ditto.
   13296         * svg/SVGRadialGradientElement.cpp: Ditto.
   13297         * svg/SVGRectElement.cpp: Ditto.
   13298         * svg/SVGSVGElement.cpp: Ditto.
   13299         * svg/SVGScriptElement.cpp: Ditto.
   13300         * svg/SVGStopElement.cpp: Ditto.
   13301         * svg/SVGStyleElement.cpp: Ditto.
   13302         * svg/SVGStyledElement.cpp: Ditto.
   13303         * svg/SVGStyledTransformableElement.cpp: Ditto.
   13304         * svg/SVGTests.cpp: Ditto.
   13305         * svg/SVGTextContentElement.cpp: Ditto.
   13306         * svg/SVGTextElement.cpp: Ditto.
   13307         * svg/SVGTextPathElement.cpp: Ditto.
   13308         * svg/SVGTextPositioningElement.cpp: Ditto.
   13309         * svg/SVGURIReference.cpp: Ditto.
   13310         * svg/SVGUseElement.cpp: Ditto.
   13311         * svg/SVGViewElement.cpp: Ditto.
   13312         * svg/animation/SVGSMILElement.cpp: Ditto.
   13313         * xml/XPathStep.cpp: Ditto.
   13314 
   13315 2009-05-04  Pavel Feldman  <pfeldman (a] chromium.org>
   13316 
   13317         Reviewed by Timothy Hatcher.
   13318 
   13319         Do not instantiate hidden WebInspector panels. Otherwise they are hitting unimplemented InspectorController methods.
   13320         https://bugs.webkit.org/show_bug.cgi?id=25520
   13321 
   13322         * inspector/front-end/inspector.js:
   13323         (WebInspector.loaded):
   13324 
   13325 2009-05-04  Brady Eidson <beidson (a] apple.com>
   13326 
   13327         Reviewed by Darin Adler.
   13328 
   13329         <rdar://problem/6839881> With "Mail Contents of This Page" in Safari images don't appear in the Tiger Mail compose window
   13330 
   13331         DocumentLoader::subresource() is the implementation for the WebKit API [WebDataSource subresourceForURL:] and has 
   13332         particularly sticky behavior.  
   13333 
   13334         If the DocumentLoader represents a WebArchive, this method should return ArchiveResources from that archive.  However, we 
   13335         prefer CachedResources over ArchiveResources because they might represent fresher data than what was originally loaded 
   13336         from the WebArchive.
   13337 
   13338         In some instances, CachedResources are created and associated with the DocumentLoader but not immediately run through the 
   13339         loading delegate machinery.  This was always a possibility, but the Preload Scanner made this significantly more likely.
   13340 
   13341         When this happens and someone asks the WebDataSource for a subresource, it would prefer the CachedResource over an 
   13342         ArchiveResource it has even if the CachedResource hasn't been loaded yet.  The CachedResource has nil data, so no
   13343         WebResource is returned, and the client thinks the subresource doesn't exist even though it does.
   13344 
   13345         This broke Tiger Mail and probably various other WebKit applications but has a fairly straightforward fix.
   13346 
   13347         * loader/DocumentLoader.cpp:
   13348         (WebCore::DocumentLoader::subresource): If there is a CachedResource but it hasn't been loaded yet, fallback to the
   13349           ArchiveResource.
   13350 
   13351 2009-05-04  Eric Carlson  <eric.carlson (a] apple.com>
   13352 
   13353         Reviewed by Adam Roben.
   13354         
   13355         https://bugs.webkit.org/show_bug.cgi?id=25545
   13356         Bug 25545: HTMLMediaElement: display anamorphic video correctly
   13357         
   13358         Tell QuickTime to use clean aperture mode so movies with non-square pixels are sized
   13359         and displayed correctly.
   13360 
   13361         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   13362         (WebCore::MediaPlayerPrivate::createQTMovie): Ask QuickTime to use clean aperture mode.
   13363         * platform/graphics/win/QTMovieWin.cpp:
   13364         (QTMovieWin::load): Ditto. Add ASSERT to ensure that static movie property array isn't 
   13365         filled beyond capacity.
   13366 
   13367 2009-05-03  Mark Rowe  <mrowe (a] apple.com>
   13368 
   13369         Reviewed by Darin Adler.
   13370 
   13371         Fix <https://bugs.webkit.org/show_bug.cgi?id=25332>.
   13372         Bug 25332: Plug-in inserted in to DOM of PluginDocument fails to load
   13373 
   13374         Only the first plug-in in a PluginDocument can use the main resource data.  For all
   13375         subsequent plug-ins, such as the plug-in that ClickToFlash inserts when swapping itself
   13376         out for the real Flash plug-in, we need to load the resource data in the same manner
   13377         as for other embedded plug-ins.
   13378 
   13379         * loader/FrameLoader.cpp:
   13380         (WebCore::FrameLoader::loadPlugin):
   13381 
   13382 2009-05-04  Simon Hausmann  <simon.hausmann (a] nokia.com>
   13383 
   13384         Rubber-stamped by Ariya Hidayat.
   13385 
   13386         Update the qrc file for the Web Inspector in the Qt build
   13387         with missing files.
   13388 
   13389         * inspector/front-end/WebKit.qrc:
   13390 
   13391 2009-05-03  Eric Seidel  <eric (a] webkit.org>
   13392 
   13393         Reviewed by George Staikos.
   13394 
   13395         Move absoluteRects and absoluteQuads into RenderSVGInline and remove absoluteTransform() usage
   13396         https://bugs.webkit.org/show_bug.cgi?id=25532
   13397 
   13398         * rendering/RenderSVGInline.cpp:
   13399         (WebCore::RenderSVGInline::absoluteRects):
   13400         (WebCore::RenderSVGInline::absoluteQuads):
   13401         * rendering/RenderSVGInline.h:
   13402         * rendering/RenderSVGTSpan.cpp:
   13403         * rendering/RenderSVGTSpan.h:
   13404         * rendering/RenderSVGTextPath.cpp:
   13405         * rendering/RenderSVGTextPath.h:
   13406 
   13407 2009-05-03  Eric Seidel  <eric (a] webkit.org>
   13408 
   13409         Reviewed by George Staikos.
   13410 
   13411         Move RenderSVGText off of localToAbsolute()
   13412         https://bugs.webkit.org/show_bug.cgi?id=25532
   13413 
   13414         * rendering/RenderSVGText.cpp:
   13415         (WebCore::RenderSVGText::absoluteRects):
   13416         (WebCore::RenderSVGText::absoluteQuads):
   13417 
   13418 2009-05-03  Eric Seidel  <eric (a] webkit.org>
   13419 
   13420         Reviewed by George Staikos.
   13421 
   13422         Remove broken absoluteTransform() code from RenderSVGInlineText
   13423         https://bugs.webkit.org/show_bug.cgi?id=25532
   13424 
   13425         This improved SVG text focus rings.
   13426         This also improved SVG.getScreenCTM() results.
   13427 
   13428         SVGSVGElement::getScreenCTM was passing "true" for the second argument in
   13429         localToAbsolute, which is "fixed" it meant to pass "true" for the
   13430         third argument (useTransforms).  That change alone caused no layout test changes, however
   13431         before I fixed this, it was hitting ASSERT(!fixed) in RenderSVGRoot::mapLocalToContainer
   13432 
   13433         mapLocalToContainer implementations really should be shared,
   13434         but I'll do that in a later patch.
   13435 
   13436         * rendering/RenderSVGInlineText.cpp:
   13437         (WebCore::RenderSVGInlineText::styleDidChange):
   13438         (WebCore::RenderSVGInlineText::absoluteQuads):
   13439         (WebCore::RenderSVGInlineText::computeRepaintRectForRange):
   13440         (WebCore::RenderSVGInlineText::computeRepaintQuadForRange):
   13441         * rendering/RenderSVGInlineText.h:
   13442         * rendering/RenderSVGRoot.cpp:
   13443         (WebCore::RenderSVGRoot::mapLocalToContainer):
   13444         * rendering/RenderSVGRoot.h:
   13445         * rendering/RenderSVGText.cpp:
   13446         (WebCore::RenderSVGText::mapLocalToContainer):
   13447         * rendering/RenderSVGText.h:
   13448         * svg/SVGSVGElement.cpp:
   13449         (WebCore::SVGSVGElement::getScreenCTM):
   13450 
   13451 2009-05-03  Eric Seidel  <eric (a] webkit.org>
   13452 
   13453         Reviewed by George Staikos.
   13454 
   13455         Remove dead code from RenderPath
   13456         https://bugs.webkit.org/show_bug.cgi?id=25532
   13457 
   13458         * rendering/RenderPath.cpp:
   13459         * rendering/RenderPath.h:
   13460 
   13461 2009-05-03  Eric Seidel  <eric (a] webkit.org>
   13462 
   13463         Reviewed by George Staikos.
   13464 
   13465         Share layout code between RenderSVGViewportContainer and RenderSVGContainer
   13466         https://bugs.webkit.org/show_bug.cgi?id=25532
   13467 
   13468         * rendering/RenderSVGContainer.cpp:
   13469         (WebCore::RenderSVGContainer::layout):
   13470         * rendering/RenderSVGContainer.h:
   13471         (WebCore::RenderSVGContainer::calcViewport):
   13472         * rendering/RenderSVGViewportContainer.cpp:
   13473         (WebCore::RenderSVGViewportContainer::applyViewportClip):
   13474         * rendering/RenderSVGViewportContainer.h:
   13475 
   13476 2009-05-03  Eric Seidel  <eric (a] webkit.org>
   13477 
   13478         Reviewed by George Staikos.
   13479 
   13480         Remove redundant disableLayoutState() calls
   13481         https://bugs.webkit.org/show_bug.cgi?id=25532
   13482 
   13483         * rendering/RenderForeignObject.cpp:
   13484         (WebCore::RenderForeignObject::layout):
   13485         * rendering/RenderSVGContainer.cpp:
   13486         (WebCore::RenderSVGContainer::layout):
   13487         * rendering/RenderSVGViewportContainer.cpp:
   13488         (WebCore::RenderSVGViewportContainer::layout):
   13489 
   13490 2009-05-03  Eric Seidel  <eric (a] webkit.org>
   13491 
   13492         Reviewed by George Staikos.
   13493 
   13494         Simplify RenderForeignObject::paint and fix a repaint bug.
   13495         Paint now calls applyTransformToPaintInfo which correctly transforms the damage rect.
   13496         https://bugs.webkit.org/show_bug.cgi?id=16939
   13497 
   13498         * rendering/RenderForeignObject.cpp:
   13499         (WebCore::RenderForeignObject::paint):
   13500 
   13501 2009-05-03  Hironori Bono  <hbono (a] chromium.org>
   13502 
   13503         Reviewed by Eric Seidel.
   13504 
   13505         Test: editing/spelling/spellcheck-attribute.html
   13506 
   13507         Bug 14552: Add a way to disable spell checking for specific element
   13508         https://bugs.webkit.org/show_bug.cgi?id=14552
   13509 
   13510         For compatibility with Firefox, this code ascends the DOM tree when an element does
   13511         not have its "spellcheck" attribute.
   13512 
   13513         * editing/Editor.cpp:
   13514         (WebCore::markMisspellingsOrBadGrammar): Retrieve the value of the "spellcheck"
   13515         attribute of an element before calling a spell checker or a grammar checker.
   13516         * html/HTMLAttributeNames.in: Add a "spellcheck" attribute.
   13517 
   13518 2009-05-03  Sam Weinig  <sam (a] webkit.org>
   13519 
   13520         Roll JSC API number marshaling back in one last time (I hope).
   13521 
   13522 2009-05-03  Sam Weinig  <sam (a] webkit.org>
   13523 
   13524         Roll JSC API number marshaling back out. It still breaks windows.
   13525 
   13526 2009-05-03  Sam Weinig  <sam (a] webkit.org>
   13527 
   13528         Roll JSC API number marshaling back in.
   13529 
   13530 2009-05-02  Dan Bernstein  <mitz (a] apple.com>
   13531 
   13532         Reviewed by Darin Adler.
   13533 
   13534         - another fix for <rdar://problem/6617298> Typing delete on an unquoted
   13535           blank line unquotes the preceding, quoted blank line
   13536 
   13537         Test: editing/deleting/type-delete-after-quote-2.html
   13538 
   13539         * editing/DeleteSelectionCommand.cpp:
   13540         (WebCore::DeleteSelectionCommand::DeleteSelectionCommand): Initialize
   13541         m_startsAtEmptyLine.
   13542         (WebCore::DeleteSelectionCommand::handleSpecialCaseBRDelete): When the
   13543         selection starts at an empty line, do not prevent the merging of blocks.
   13544         This is what allows the text after the line break to be merged into the
   13545         block containing the line break. Also set m_startsAtEmptyLine to true.
   13546         (WebCore::DeleteSelectionCommand::mergeParagraphs): If
   13547         m_startsAtEmptyLine is true, create a placeholder BR to serve as the
   13548         merge destination.
   13549         * editing/DeleteSelectionCommand.h:
   13550 
   13551 2009-05-02  Geoffrey Garen  <ggaren (a] apple.com>
   13552 
   13553         Reviewed by Sam Weinig.
   13554 
   13555         Simplified null-ish JSValues.
   13556         
   13557         Replaced calls to noValue() with calls to JSValue() (which is what
   13558         noValue() returned). Removed noValue().
   13559         
   13560         Removed "JSValue()" initialiazers, since default construction happens...
   13561         by default.
   13562 
   13563         * bindings/js/JSDOMBinding.cpp:
   13564         (WebCore::setDOMException):
   13565         * bindings/js/JSDOMWindowCustom.cpp:
   13566         (WebCore::JSDOMWindow::open):
   13567         (WebCore::JSDOMWindow::showModalDialog):
   13568         * bindings/js/JSEventListener.cpp:
   13569         (WebCore::JSEventListener::handleEvent):
   13570         * bindings/js/JSJavaScriptCallFrameCustom.cpp:
   13571         (WebCore::JSJavaScriptCallFrame::evaluate):
   13572         * bindings/js/JSSQLResultSetRowListCustom.cpp:
   13573         (WebCore::JSSQLResultSetRowList::item):
   13574         * bindings/js/ScriptController.cpp:
   13575         (WebCore::ScriptController::evaluate):
   13576         * bindings/js/ScriptValue.h:
   13577         (WebCore::ScriptValue::ScriptValue):
   13578         (WebCore::ScriptValue::hasNoValue):
   13579         * bindings/js/WorkerScriptController.cpp:
   13580         (WebCore::WorkerScriptController::evaluate):
   13581         * bridge/jni/jni_instance.cpp:
   13582         (JavaInstance::invokeMethod):
   13583         * bridge/jni/jni_runtime.cpp:
   13584         (JavaField::dispatchValueFromInstance):
   13585         (JavaField::dispatchSetValueToInstance):
   13586         * bridge/runtime.h:
   13587         (JSC::Bindings::Instance::invokeConstruct):
   13588 
   13589 2009-05-02  Antti Koivisto  <antti (a] apple.com>
   13590 
   13591         Reviewed by Dan Bernstein.
   13592 
   13593         <rdar://problem/6631735> Crash in WebCore::CSSStyleSelector::applyProperty(int, WebCore::CSSValue*) (RenderStyle.h:454)
   13594         
   13595         Avoid re-entering style selector from load delegates by not issuing resource loads synchronously during attach().
   13596 
   13597         * dom/ContainerNode.cpp:
   13598         (WebCore::ContainerNode::suspendPostAttachCallbacks):
   13599         (WebCore::ContainerNode::resumePostAttachCallbacks):
   13600         (WebCore::ContainerNode::attach):
   13601         * dom/Element.cpp:
   13602         (WebCore::Element::attach):
   13603         * loader/loader.cpp:
   13604         (WebCore::Loader::Loader):
   13605         (WebCore::Loader::servePendingRequests):
   13606         (WebCore::Loader::suspendPendingRequests):
   13607         (WebCore::Loader::resumePendingRequests):
   13608         (WebCore::Loader::Host::servePendingRequests):
   13609         * loader/loader.h:
   13610         (WebCore::Loader::isSuspendingPendingRequests):
   13611 
   13612 2009-05-02  Darin Adler  <darin (a] apple.com>
   13613 
   13614         Reviewed by Dan Bernstein.
   13615 
   13616         Bug 25352: REGRESSION(r42322): style isn't applied at bmwusa.com
   13617         https://bugs.webkit.org/show_bug.cgi?id=25352
   13618         rdar://problem/6823239
   13619 
   13620         Test: http/tests/mime/standard-mode-loads-stylesheet-with-text-css-and-invalid-type.html
   13621 
   13622         * platform/network/HTTPParsers.cpp:
   13623         (WebCore::extractMIMETypeFromMediaType): Allow comma as a separator.
   13624 
   13625 2009-05-02  Darin Adler  <darin (a] apple.com>
   13626 
   13627         Reviewed by Brady Eidson.
   13628 
   13629         Bug 25491: WebFrame leak when a subframe removes itself
   13630         https://bugs.webkit.org/show_bug.cgi?id=25491
   13631         rdar://problem/6833859
   13632 
   13633         Test: fast/loading/subframe-removes-itself.html
   13634 
   13635         * loader/FrameLoader.cpp:
   13636         (WebCore::FrameLoader::checkLoadCompleteForThisFrame): When isStopping is true,
   13637         treat load as complete, even if isLoadingInAPISense is still returning true.
   13638 
   13639 2009-05-01  Sam Weinig  <sam (a] webkit.org>
   13640 
   13641         Roll out JavaScriptCore API number marshaling.
   13642 
   13643         * bindings/js/ScriptValue.cpp:
   13644         (WebCore::ScriptValue::isEqual):
   13645         * inspector/JavaScriptProfile.cpp:
   13646         (WebCore::getHeadCallback):
   13647         * inspector/JavaScriptProfileNode.cpp:
   13648         (WebCore::getChildren):
   13649         (WebCore::getParent):
   13650         (WebCore::getHead):
   13651 
   13652 2009-05-01  Sam Weinig  <sam (a] webkit.org>
   13653 
   13654         Fix build.
   13655 
   13656         * workers/WorkerContext.idl:
   13657 
   13658 2009-05-01  Sam Weinig  <sam (a] webkit.org>
   13659 
   13660         Reviewed by Oliver Hunt.
   13661 
   13662         Cleanup workers code a bit.
   13663 
   13664         * bindings/js/JSWorkerContextBase.cpp:
   13665         (WebCore::toJS):
   13666         * bindings/js/JSWorkerContextBase.h:
   13667         * bindings/js/JSWorkerContextCustom.cpp:
   13668         (WebCore::JSWorkerContext::customGetOwnPropertySlot):
   13669         * workers/WorkerContext.h:
   13670         (WebCore::WorkerContext::toWorkerContext):
   13671         (WebCore::WorkerContext::self):
   13672         (WebCore::WorkerContext::setOnmessage):
   13673         (WebCore::WorkerContext::onmessage):
   13674         * workers/WorkerContext.idl:
   13675 
   13676 2009-05-01  Sam Weinig  <sam (a] webkit.org>
   13677 
   13678         Reviewed by Darin Adler.
   13679 
   13680         A little clean up.
   13681 
   13682         * loader/FrameLoader.cpp:
   13683         (WebCore::FrameLoader::createJavaAppletWidget):
   13684 
   13685 2009-05-01  Sam Weinig  <sam (a] webkit.org>
   13686 
   13687         Fix the build.
   13688 
   13689         * bindings/js/ScriptValue.cpp:
   13690         (WebCore::ScriptValue::isEqual):
   13691         * inspector/JavaScriptProfile.cpp:
   13692         (WebCore::getHeadCallback):
   13693         * inspector/JavaScriptProfileNode.cpp:
   13694         (WebCore::getChildren):
   13695         (WebCore::getParent):
   13696         (WebCore::getHead):
   13697 
   13698 2009-05-01  Brady Eidson  <beidson (a] apple.com>
   13699 
   13700         Reviewed by Oliver Hunt and Sam "Jon 'The Belly' Honeycutt" Weinig
   13701 
   13702         Fix <rdar://problem/6848867> Addition of DOCTYPE node breaks Tiger Mail
   13703 
   13704         * bindings/objc/DOMHTML.mm:
   13705         (-[DOMHTMLDocument firstChild]): Add a Tiger Mail version of this method that skips DOCTYPE nodes.
   13706 
   13707 2009-05-01  Geoffrey Garen  <ggaren (a] apple.com>
   13708 
   13709         Rubber Stamped by Sam Weinig.
   13710         
   13711         Renamed JSValuePtr => JSValue.
   13712 
   13713         * bindings/js/JSAttrCustom.cpp:
   13714         (WebCore::JSAttr::setValue):
   13715         * bindings/js/JSCDATASectionCustom.cpp:
   13716         (WebCore::toJSNewlyCreated):
   13717         * bindings/js/JSCSSRuleCustom.cpp:
   13718         (WebCore::toJS):
   13719         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
   13720         (WebCore::JSCSSStyleDeclaration::nameGetter):
   13721         (WebCore::JSCSSStyleDeclaration::customPut):
   13722         * bindings/js/JSCSSValueCustom.cpp:
   13723         (WebCore::toJS):
   13724         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
   13725         (WebCore::toJS):
   13726         (WebCore::toHTMLCanvasStyle):
   13727         (WebCore::JSCanvasRenderingContext2D::strokeStyle):
   13728         (WebCore::JSCanvasRenderingContext2D::setStrokeStyle):
   13729         (WebCore::JSCanvasRenderingContext2D::fillStyle):
   13730         (WebCore::JSCanvasRenderingContext2D::setFillStyle):
   13731         (WebCore::JSCanvasRenderingContext2D::setFillColor):
   13732         (WebCore::JSCanvasRenderingContext2D::setStrokeColor):
   13733         (WebCore::JSCanvasRenderingContext2D::strokeRect):
   13734         (WebCore::JSCanvasRenderingContext2D::drawImage):
   13735         (WebCore::JSCanvasRenderingContext2D::drawImageFromRect):
   13736         (WebCore::JSCanvasRenderingContext2D::setShadow):
   13737         (WebCore::JSCanvasRenderingContext2D::createPattern):
   13738         (WebCore::JSCanvasRenderingContext2D::putImageData):
   13739         (WebCore::JSCanvasRenderingContext2D::fillText):
   13740         (WebCore::JSCanvasRenderingContext2D::strokeText):
   13741         * bindings/js/JSClipboardCustom.cpp:
   13742         (WebCore::JSClipboard::types):
   13743         (WebCore::JSClipboard::clearData):
   13744         (WebCore::JSClipboard::getData):
   13745         (WebCore::JSClipboard::setData):
   13746         (WebCore::JSClipboard::setDragImage):
   13747         * bindings/js/JSConsoleCustom.cpp:
   13748         (WebCore::JSConsole::profiles):
   13749         * bindings/js/JSCoordinatesCustom.cpp:
   13750         (WebCore::JSCoordinates::altitude):
   13751         (WebCore::JSCoordinates::altitudeAccuracy):
   13752         (WebCore::JSCoordinates::heading):
   13753         (WebCore::JSCoordinates::speed):
   13754         * bindings/js/JSCustomPositionCallback.cpp:
   13755         (WebCore::JSCustomPositionCallback::handleEvent):
   13756         * bindings/js/JSCustomPositionErrorCallback.cpp:
   13757         (WebCore::JSCustomPositionErrorCallback::handleEvent):
   13758         * bindings/js/JSCustomSQLStatementCallback.cpp:
   13759         (WebCore::JSCustomSQLStatementCallback::handleEvent):
   13760         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
   13761         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
   13762         * bindings/js/JSCustomSQLTransactionCallback.cpp:
   13763         (WebCore::JSCustomSQLTransactionCallback::handleEvent):
   13764         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
   13765         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
   13766         * bindings/js/JSCustomVoidCallback.cpp:
   13767         (WebCore::JSCustomVoidCallback::handleEvent):
   13768         (WebCore::toVoidCallback):
   13769         * bindings/js/JSCustomVoidCallback.h:
   13770         * bindings/js/JSCustomXPathNSResolver.cpp:
   13771         (WebCore::JSCustomXPathNSResolver::create):
   13772         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
   13773         * bindings/js/JSCustomXPathNSResolver.h:
   13774         * bindings/js/JSDOMApplicationCacheCustom.cpp:
   13775         (WebCore::JSDOMApplicationCache::hasItem):
   13776         (WebCore::JSDOMApplicationCache::add):
   13777         (WebCore::JSDOMApplicationCache::remove):
   13778         (WebCore::JSDOMApplicationCache::addEventListener):
   13779         (WebCore::JSDOMApplicationCache::removeEventListener):
   13780         * bindings/js/JSDOMBinding.cpp:
   13781         (WebCore::jsStringOrNull):
   13782         (WebCore::jsOwnedStringOrNull):
   13783         (WebCore::jsStringOrUndefined):
   13784         (WebCore::jsStringOrFalse):
   13785         (WebCore::valueToStringWithNullCheck):
   13786         (WebCore::valueToStringWithUndefinedOrNullCheck):
   13787         (WebCore::reportException):
   13788         (WebCore::reportCurrentException):
   13789         (WebCore::setDOMException):
   13790         (WebCore::objectToStringFunctionGetter):
   13791         * bindings/js/JSDOMBinding.h:
   13792         (WebCore::getDOMObjectWrapper):
   13793         (WebCore::getDOMNodeWrapper):
   13794         (WebCore::toJS):
   13795         * bindings/js/JSDOMGlobalObject.cpp:
   13796         (WebCore::JSDOMGlobalObject::findJSEventListener):
   13797         (WebCore::JSDOMGlobalObject::findOrCreateJSEventListener):
   13798         (WebCore::JSDOMGlobalObject::createJSAttributeEventListener):
   13799         * bindings/js/JSDOMGlobalObject.h:
   13800         * bindings/js/JSDOMStringListCustom.cpp:
   13801         (WebCore::JSDOMStringList::getByIndex):
   13802         (WebCore::JSDOMStringList::item):
   13803         * bindings/js/JSDOMWindowBase.cpp:
   13804         (WebCore::JSDOMWindowBase::childFrameGetter):
   13805         (WebCore::JSDOMWindowBase::indexGetter):
   13806         (WebCore::JSDOMWindowBase::namedItemGetter):
   13807         (WebCore::JSDOMWindowBase::getOwnPropertySlot):
   13808         (WebCore::JSDOMWindowBase::put):
   13809         (WebCore::JSDOMWindowBase::setReturnValueSlot):
   13810         (WebCore::toJS):
   13811         (WebCore::toJSDOMWindow):
   13812         * bindings/js/JSDOMWindowBase.h:
   13813         * bindings/js/JSDOMWindowCustom.cpp:
   13814         (WebCore::JSDOMWindow::lookupGetter):
   13815         (WebCore::JSDOMWindow::lookupSetter):
   13816         (WebCore::JSDOMWindow::history):
   13817         (WebCore::JSDOMWindow::location):
   13818         (WebCore::JSDOMWindow::setLocation):
   13819         (WebCore::JSDOMWindow::crypto):
   13820         (WebCore::JSDOMWindow::event):
   13821         (WebCore::JSDOMWindow::image):
   13822         (WebCore::JSDOMWindow::option):
   13823         (WebCore::JSDOMWindow::audio):
   13824         (WebCore::JSDOMWindow::webKitPoint):
   13825         (WebCore::JSDOMWindow::webKitCSSMatrix):
   13826         (WebCore::JSDOMWindow::xmlHttpRequest):
   13827         (WebCore::JSDOMWindow::xsltProcessor):
   13828         (WebCore::JSDOMWindow::messageChannel):
   13829         (WebCore::JSDOMWindow::worker):
   13830         (WebCore::createWindow):
   13831         (WebCore::JSDOMWindow::open):
   13832         (WebCore::JSDOMWindow::showModalDialog):
   13833         (WebCore::JSDOMWindow::postMessage):
   13834         (WebCore::JSDOMWindow::setTimeout):
   13835         (WebCore::JSDOMWindow::setInterval):
   13836         (WebCore::JSDOMWindow::atob):
   13837         (WebCore::JSDOMWindow::btoa):
   13838         (WebCore::JSDOMWindow::addEventListener):
   13839         (WebCore::JSDOMWindow::removeEventListener):
   13840         (WebCore::toDOMWindow):
   13841         * bindings/js/JSDOMWindowCustom.h:
   13842         (WebCore::nonCachingStaticFunctionGetter):
   13843         (WebCore::JSDOMWindow::customPut):
   13844         * bindings/js/JSDOMWindowShell.cpp:
   13845         (WebCore::JSDOMWindowShell::put):
   13846         (WebCore::JSDOMWindowShell::putWithAttributes):
   13847         (WebCore::JSDOMWindowShell::lookupGetter):
   13848         (WebCore::JSDOMWindowShell::lookupSetter):
   13849         (WebCore::toJS):
   13850         * bindings/js/JSDOMWindowShell.h:
   13851         (WebCore::JSDOMWindowShell::createStructure):
   13852         * bindings/js/JSDatabaseCustom.cpp:
   13853         (WebCore::JSDatabase::changeVersion):
   13854         (WebCore::JSDatabase::transaction):
   13855         * bindings/js/JSDocumentCustom.cpp:
   13856         (WebCore::JSDocument::location):
   13857         (WebCore::JSDocument::setLocation):
   13858         (WebCore::toJS):
   13859         * bindings/js/JSElementCustom.cpp:
   13860         (WebCore::JSElement::setAttribute):
   13861         (WebCore::JSElement::setAttributeNode):
   13862         (WebCore::JSElement::setAttributeNS):
   13863         (WebCore::JSElement::setAttributeNodeNS):
   13864         (WebCore::toJSNewlyCreated):
   13865         * bindings/js/JSEventCustom.cpp:
   13866         (WebCore::JSEvent::clipboardData):
   13867         (WebCore::toJS):
   13868         * bindings/js/JSEventListener.cpp:
   13869         (WebCore::JSEventListener::handleEvent):
   13870         * bindings/js/JSEventTarget.cpp:
   13871         (WebCore::toJS):
   13872         (WebCore::toEventTarget):
   13873         * bindings/js/JSEventTarget.h:
   13874         * bindings/js/JSEventTargetBase.h:
   13875         * bindings/js/JSGeolocationCustom.cpp:
   13876         (WebCore::createPositionOptions):
   13877         (WebCore::JSGeolocation::getCurrentPosition):
   13878         (WebCore::JSGeolocation::watchPosition):
   13879         * bindings/js/JSHTMLAllCollection.h:
   13880         (WebCore::JSHTMLAllCollection::createStructure):
   13881         * bindings/js/JSHTMLAppletElementCustom.cpp:
   13882         (WebCore::JSHTMLAppletElement::customPut):
   13883         (WebCore::JSHTMLAppletElement::nameGetter):
   13884         * bindings/js/JSHTMLCollectionCustom.cpp:
   13885         (WebCore::getNamedItems):
   13886         (WebCore::callHTMLCollection):
   13887         (WebCore::JSHTMLCollection::nameGetter):
   13888         (WebCore::JSHTMLCollection::item):
   13889         (WebCore::JSHTMLCollection::namedItem):
   13890         (WebCore::toJS):
   13891         * bindings/js/JSHTMLDocumentCustom.cpp:
   13892         (WebCore::JSHTMLDocument::nameGetter):
   13893         (WebCore::JSHTMLDocument::all):
   13894         (WebCore::JSHTMLDocument::setAll):
   13895         (WebCore::JSHTMLDocument::open):
   13896         (WebCore::JSHTMLDocument::write):
   13897         (WebCore::JSHTMLDocument::writeln):
   13898         * bindings/js/JSHTMLEmbedElementCustom.cpp:
   13899         (WebCore::JSHTMLEmbedElement::customPut):
   13900         (WebCore::JSHTMLEmbedElement::nameGetter):
   13901         * bindings/js/JSHTMLFormElementCustom.cpp:
   13902         (WebCore::JSHTMLFormElement::nameGetter):
   13903         (WebCore::JSHTMLFormElement::submit):
   13904         * bindings/js/JSHTMLFrameElementCustom.cpp:
   13905         (WebCore::JSHTMLFrameElement::setSrc):
   13906         (WebCore::JSHTMLFrameElement::setLocation):
   13907         * bindings/js/JSHTMLFrameSetElementCustom.cpp:
   13908         (WebCore::JSHTMLFrameSetElement::nameGetter):
   13909         * bindings/js/JSHTMLIFrameElementCustom.cpp:
   13910         (WebCore::JSHTMLIFrameElement::setSrc):
   13911         * bindings/js/JSHTMLInputElementCustom.cpp:
   13912         (WebCore::JSHTMLInputElement::selectionStart):
   13913         (WebCore::JSHTMLInputElement::setSelectionStart):
   13914         (WebCore::JSHTMLInputElement::selectionEnd):
   13915         (WebCore::JSHTMLInputElement::setSelectionEnd):
   13916         (WebCore::JSHTMLInputElement::setSelectionRange):
   13917         * bindings/js/JSHTMLObjectElementCustom.cpp:
   13918         (WebCore::JSHTMLObjectElement::customPut):
   13919         (WebCore::JSHTMLObjectElement::nameGetter):
   13920         * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
   13921         (WebCore::JSHTMLOptionsCollection::length):
   13922         (WebCore::JSHTMLOptionsCollection::setLength):
   13923         (WebCore::JSHTMLOptionsCollection::indexSetter):
   13924         (WebCore::JSHTMLOptionsCollection::add):
   13925         (WebCore::JSHTMLOptionsCollection::remove):
   13926         * bindings/js/JSHTMLSelectElementCustom.cpp:
   13927         (WebCore::JSHTMLSelectElement::remove):
   13928         (WebCore::selectIndexSetter):
   13929         (WebCore::JSHTMLSelectElement::indexSetter):
   13930         * bindings/js/JSHTMLSelectElementCustom.h:
   13931         * bindings/js/JSHistoryCustom.cpp:
   13932         (WebCore::nonCachingStaticBackFunctionGetter):
   13933         (WebCore::nonCachingStaticForwardFunctionGetter):
   13934         (WebCore::nonCachingStaticGoFunctionGetter):
   13935         (WebCore::JSHistory::customPut):
   13936         * bindings/js/JSImageDataCustom.cpp:
   13937         (WebCore::toJS):
   13938         * bindings/js/JSInspectedObjectWrapper.cpp:
   13939         (WebCore::JSInspectedObjectWrapper::wrap):
   13940         (WebCore::JSInspectedObjectWrapper::prepareIncomingValue):
   13941         * bindings/js/JSInspectedObjectWrapper.h:
   13942         (WebCore::JSInspectedObjectWrapper::wrapOutgoingValue):
   13943         * bindings/js/JSInspectorCallbackWrapper.cpp:
   13944         (WebCore::JSInspectorCallbackWrapper::wrap):
   13945         (WebCore::JSInspectorCallbackWrapper::prepareIncomingValue):
   13946         * bindings/js/JSInspectorCallbackWrapper.h:
   13947         (WebCore::JSInspectorCallbackWrapper::wrapOutgoingValue):
   13948         * bindings/js/JSInspectorControllerCustom.cpp:
   13949         (WebCore::JSInspectorController::highlightDOMNode):
   13950         (WebCore::JSInspectorController::addResourceSourceToFrame):
   13951         (WebCore::JSInspectorController::addSourceToFrame):
   13952         (WebCore::JSInspectorController::getResourceDocumentNode):
   13953         (WebCore::JSInspectorController::search):
   13954         (WebCore::JSInspectorController::databaseTableNames):
   13955         (WebCore::JSInspectorController::inspectedWindow):
   13956         (WebCore::JSInspectorController::setting):
   13957         (WebCore::JSInspectorController::setSetting):
   13958         (WebCore::JSInspectorController::wrapCallback):
   13959         (WebCore::JSInspectorController::currentCallFrame):
   13960         (WebCore::JSInspectorController::profiles):
   13961         * bindings/js/JSJavaScriptCallFrameCustom.cpp:
   13962         (WebCore::JSJavaScriptCallFrame::evaluate):
   13963         (WebCore::JSJavaScriptCallFrame::thisObject):
   13964         (WebCore::JSJavaScriptCallFrame::type):
   13965         (WebCore::JSJavaScriptCallFrame::scopeChain):
   13966         * bindings/js/JSLazyEventListener.cpp:
   13967         (WebCore::JSLazyEventListener::parseCode):
   13968         * bindings/js/JSLocationCustom.cpp:
   13969         (WebCore::nonCachingStaticReplaceFunctionGetter):
   13970         (WebCore::nonCachingStaticReloadFunctionGetter):
   13971         (WebCore::nonCachingStaticAssignFunctionGetter):
   13972         (WebCore::JSLocation::customPut):
   13973         (WebCore::JSLocation::setHref):
   13974         (WebCore::JSLocation::setProtocol):
   13975         (WebCore::JSLocation::setHost):
   13976         (WebCore::JSLocation::setHostname):
   13977         (WebCore::JSLocation::setPort):
   13978         (WebCore::JSLocation::setPathname):
   13979         (WebCore::JSLocation::setSearch):
   13980         (WebCore::JSLocation::setHash):
   13981         (WebCore::JSLocation::replace):
   13982         (WebCore::JSLocation::reload):
   13983         (WebCore::JSLocation::assign):
   13984         (WebCore::JSLocation::toString):
   13985         (WebCore::JSLocationPrototype::customPut):
   13986         * bindings/js/JSMessagePortCustom.cpp:
   13987         (WebCore::JSMessagePort::startConversation):
   13988         (WebCore::JSMessagePort::addEventListener):
   13989         (WebCore::JSMessagePort::removeEventListener):
   13990         * bindings/js/JSMimeTypeArrayCustom.cpp:
   13991         (WebCore::JSMimeTypeArray::nameGetter):
   13992         * bindings/js/JSNamedNodeMapCustom.cpp:
   13993         (WebCore::JSNamedNodeMap::nameGetter):
   13994         * bindings/js/JSNamedNodesCollection.cpp:
   13995         (WebCore::JSNamedNodesCollection::lengthGetter):
   13996         (WebCore::JSNamedNodesCollection::indexGetter):
   13997         * bindings/js/JSNamedNodesCollection.h:
   13998         (WebCore::JSNamedNodesCollection::createStructure):
   13999         * bindings/js/JSNavigatorCustom.cpp:
   14000         (WebCore::needsYouTubeQuirk):
   14001         (WebCore::JSNavigator::appVersion):
   14002         * bindings/js/JSNodeCustom.cpp:
   14003         (WebCore::JSNode::insertBefore):
   14004         (WebCore::JSNode::replaceChild):
   14005         (WebCore::JSNode::removeChild):
   14006         (WebCore::JSNode::appendChild):
   14007         (WebCore::JSNode::addEventListener):
   14008         (WebCore::JSNode::removeEventListener):
   14009         (WebCore::createWrapper):
   14010         (WebCore::toJSNewlyCreated):
   14011         (WebCore::toJS):
   14012         * bindings/js/JSNodeFilterCondition.cpp:
   14013         (WebCore::JSNodeFilterCondition::JSNodeFilterCondition):
   14014         (WebCore::JSNodeFilterCondition::acceptNode):
   14015         * bindings/js/JSNodeFilterCondition.h:
   14016         (WebCore::JSNodeFilterCondition::create):
   14017         * bindings/js/JSNodeFilterCustom.cpp:
   14018         (WebCore::JSNodeFilter::acceptNode):
   14019         (WebCore::toNodeFilter):
   14020         * bindings/js/JSNodeIteratorCustom.cpp:
   14021         (WebCore::JSNodeIterator::nextNode):
   14022         (WebCore::JSNodeIterator::previousNode):
   14023         * bindings/js/JSNodeListCustom.cpp:
   14024         (WebCore::callNodeList):
   14025         (WebCore::JSNodeList::nameGetter):
   14026         * bindings/js/JSPluginArrayCustom.cpp:
   14027         (WebCore::JSPluginArray::nameGetter):
   14028         * bindings/js/JSPluginCustom.cpp:
   14029         (WebCore::JSPlugin::nameGetter):
   14030         * bindings/js/JSPluginElementFunctions.cpp:
   14031         (WebCore::runtimeObjectGetter):
   14032         (WebCore::runtimeObjectPropertyGetter):
   14033         (WebCore::runtimeObjectCustomPut):
   14034         (WebCore::callPlugin):
   14035         * bindings/js/JSPluginElementFunctions.h:
   14036         * bindings/js/JSQuarantinedObjectWrapper.cpp:
   14037         (WebCore::JSQuarantinedObjectWrapper::asWrapper):
   14038         (WebCore::JSQuarantinedObjectWrapper::cachedValueGetter):
   14039         (WebCore::JSQuarantinedObjectWrapper::transferExceptionToExecState):
   14040         (WebCore::JSQuarantinedObjectWrapper::getOwnPropertySlot):
   14041         (WebCore::JSQuarantinedObjectWrapper::put):
   14042         (WebCore::JSQuarantinedObjectWrapper::construct):
   14043         (WebCore::JSQuarantinedObjectWrapper::hasInstance):
   14044         (WebCore::JSQuarantinedObjectWrapper::call):
   14045         * bindings/js/JSQuarantinedObjectWrapper.h:
   14046         (WebCore::JSQuarantinedObjectWrapper::createStructure):
   14047         * bindings/js/JSRGBColor.cpp:
   14048         (WebCore::getJSRGBColor):
   14049         (jsRGBColorRed):
   14050         (jsRGBColorGreen):
   14051         (jsRGBColorBlue):
   14052         * bindings/js/JSRGBColor.h:
   14053         (WebCore::JSRGBColor::createStructure):
   14054         * bindings/js/JSSQLResultSetRowListCustom.cpp:
   14055         (WebCore::JSSQLResultSetRowList::item):
   14056         * bindings/js/JSSQLTransactionCustom.cpp:
   14057         (WebCore::JSSQLTransaction::executeSql):
   14058         * bindings/js/JSSVGElementInstanceCustom.cpp:
   14059         (WebCore::JSSVGElementInstance::addEventListener):
   14060         (WebCore::JSSVGElementInstance::removeEventListener):
   14061         (WebCore::toJS):
   14062         * bindings/js/JSSVGLengthCustom.cpp:
   14063         (WebCore::JSSVGLength::value):
   14064         (WebCore::JSSVGLength::convertToSpecifiedUnits):
   14065         * bindings/js/JSSVGMatrixCustom.cpp:
   14066         (WebCore::JSSVGMatrix::inverse):
   14067         (WebCore::JSSVGMatrix::rotateFromVector):
   14068         * bindings/js/JSSVGPathSegCustom.cpp:
   14069         (WebCore::toJS):
   14070         * bindings/js/JSSVGPathSegListCustom.cpp:
   14071         (WebCore::JSSVGPathSegList::clear):
   14072         (WebCore::JSSVGPathSegList::initialize):
   14073         (WebCore::JSSVGPathSegList::getItem):
   14074         (WebCore::JSSVGPathSegList::insertItemBefore):
   14075         (WebCore::JSSVGPathSegList::replaceItem):
   14076         (WebCore::JSSVGPathSegList::removeItem):
   14077         (WebCore::JSSVGPathSegList::appendItem):
   14078         * bindings/js/JSSVGPointListCustom.cpp:
   14079         (WebCore::finishGetter):
   14080         (WebCore::finishSetter):
   14081         (WebCore::finishSetterReadOnlyResult):
   14082         (WebCore::JSSVGPointList::clear):
   14083         (WebCore::JSSVGPointList::initialize):
   14084         (WebCore::JSSVGPointList::getItem):
   14085         (WebCore::JSSVGPointList::insertItemBefore):
   14086         (WebCore::JSSVGPointList::replaceItem):
   14087         (WebCore::JSSVGPointList::removeItem):
   14088         (WebCore::JSSVGPointList::appendItem):
   14089         * bindings/js/JSSVGTransformListCustom.cpp:
   14090         (WebCore::finishGetter):
   14091         (WebCore::finishSetter):
   14092         (WebCore::finishSetterReadOnlyResult):
   14093         (WebCore::JSSVGTransformList::clear):
   14094         (WebCore::JSSVGTransformList::initialize):
   14095         (WebCore::JSSVGTransformList::getItem):
   14096         (WebCore::JSSVGTransformList::insertItemBefore):
   14097         (WebCore::JSSVGTransformList::replaceItem):
   14098         (WebCore::JSSVGTransformList::removeItem):
   14099         (WebCore::JSSVGTransformList::appendItem):
   14100         * bindings/js/JSStorageCustom.cpp:
   14101         (WebCore::JSStorage::nameGetter):
   14102         (WebCore::JSStorage::deleteProperty):
   14103         (WebCore::JSStorage::customPut):
   14104         * bindings/js/JSStyleSheetCustom.cpp:
   14105         (WebCore::toJS):
   14106         * bindings/js/JSStyleSheetListCustom.cpp:
   14107         (WebCore::JSStyleSheetList::nameGetter):
   14108         * bindings/js/JSTextCustom.cpp:
   14109         (WebCore::toJSNewlyCreated):
   14110         * bindings/js/JSTreeWalkerCustom.cpp:
   14111         (WebCore::JSTreeWalker::parentNode):
   14112         (WebCore::JSTreeWalker::firstChild):
   14113         (WebCore::JSTreeWalker::lastChild):
   14114         (WebCore::JSTreeWalker::nextSibling):
   14115         (WebCore::JSTreeWalker::previousSibling):
   14116         (WebCore::JSTreeWalker::previousNode):
   14117         (WebCore::JSTreeWalker::nextNode):
   14118         * bindings/js/JSWorkerContextCustom.cpp:
   14119         (WebCore::JSWorkerContext::self):
   14120         (WebCore::JSWorkerContext::setSelf):
   14121         (WebCore::JSWorkerContext::xmlHttpRequest):
   14122         (WebCore::JSWorkerContext::importScripts):
   14123         (WebCore::JSWorkerContext::addEventListener):
   14124         (WebCore::JSWorkerContext::removeEventListener):
   14125         (WebCore::JSWorkerContext::setTimeout):
   14126         (WebCore::JSWorkerContext::setInterval):
   14127         * bindings/js/JSWorkerCustom.cpp:
   14128         (WebCore::JSWorker::addEventListener):
   14129         (WebCore::JSWorker::removeEventListener):
   14130         * bindings/js/JSXMLHttpRequestCustom.cpp:
   14131         (WebCore::JSXMLHttpRequest::open):
   14132         (WebCore::JSXMLHttpRequest::setRequestHeader):
   14133         (WebCore::JSXMLHttpRequest::send):
   14134         (WebCore::JSXMLHttpRequest::getResponseHeader):
   14135         (WebCore::JSXMLHttpRequest::overrideMimeType):
   14136         (WebCore::JSXMLHttpRequest::addEventListener):
   14137         (WebCore::JSXMLHttpRequest::removeEventListener):
   14138         (WebCore::JSXMLHttpRequest::responseText):
   14139         * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
   14140         (WebCore::JSXMLHttpRequestUpload::addEventListener):
   14141         (WebCore::JSXMLHttpRequestUpload::removeEventListener):
   14142         * bindings/js/JSXSLTProcessorCustom.cpp:
   14143         (WebCore::JSXSLTProcessor::importStylesheet):
   14144         (WebCore::JSXSLTProcessor::transformToFragment):
   14145         (WebCore::JSXSLTProcessor::transformToDocument):
   14146         (WebCore::JSXSLTProcessor::setParameter):
   14147         (WebCore::JSXSLTProcessor::getParameter):
   14148         (WebCore::JSXSLTProcessor::removeParameter):
   14149         * bindings/js/ScheduledAction.cpp:
   14150         (WebCore::ScheduledAction::create):
   14151         (WebCore::ScheduledAction::ScheduledAction):
   14152         (WebCore::ScheduledAction::executeFunctionInContext):
   14153         * bindings/js/ScheduledAction.h:
   14154         * bindings/js/ScriptCallStack.cpp:
   14155         (WebCore::ScriptCallStack::ScriptCallStack):
   14156         (WebCore::ScriptCallStack::initialize):
   14157         * bindings/js/ScriptCallStack.h:
   14158         * bindings/js/ScriptController.cpp:
   14159         (WebCore::ScriptController::jsObjectForPluginElement):
   14160         * bindings/js/ScriptFunctionCall.cpp:
   14161         (WebCore::ScriptFunctionCall::appendArgument):
   14162         (WebCore::ScriptFunctionCall::call):
   14163         (WebCore::ScriptFunctionCall::construct):
   14164         * bindings/js/ScriptFunctionCall.h:
   14165         * bindings/js/ScriptObject.cpp:
   14166         (WebCore::ScriptGlobalObject::get):
   14167         * bindings/js/ScriptValue.h:
   14168         (WebCore::ScriptValue::ScriptValue):
   14169         (WebCore::ScriptValue::jsValue):
   14170         * bindings/objc/WebScriptObject.mm:
   14171         (-[WebScriptObject callWebScriptMethod:withArguments:]):
   14172         (-[WebScriptObject evaluateWebScript:]):
   14173         (-[WebScriptObject valueForKey:]):
   14174         (-[WebScriptObject webScriptValueAtIndex:]):
   14175         (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
   14176         * bindings/objc/WebScriptObjectPrivate.h:
   14177         * bridge/NP_jsobject.cpp:
   14178         (_NPN_InvokeDefault):
   14179         (_NPN_Invoke):
   14180         (_NPN_Evaluate):
   14181         (_NPN_GetProperty):
   14182         (_NPN_HasMethod):
   14183         (_NPN_Construct):
   14184         * bridge/c/c_instance.cpp:
   14185         (JSC::Bindings::CInstance::invokeMethod):
   14186         (JSC::Bindings::CInstance::invokeDefaultMethod):
   14187         (JSC::Bindings::CInstance::invokeConstruct):
   14188         (JSC::Bindings::CInstance::defaultValue):
   14189         (JSC::Bindings::CInstance::stringValue):
   14190         (JSC::Bindings::CInstance::numberValue):
   14191         (JSC::Bindings::CInstance::booleanValue):
   14192         (JSC::Bindings::CInstance::valueOf):
   14193         * bridge/c/c_instance.h:
   14194         * bridge/c/c_runtime.cpp:
   14195         (JSC::Bindings::CField::valueFromInstance):
   14196         (JSC::Bindings::CField::setValueToInstance):
   14197         * bridge/c/c_runtime.h:
   14198         * bridge/c/c_utility.cpp:
   14199         (JSC::Bindings::convertValueToNPVariant):
   14200         (JSC::Bindings::convertNPVariantToValue):
   14201         * bridge/c/c_utility.h:
   14202         * bridge/jni/jni_instance.cpp:
   14203         (JavaInstance::stringValue):
   14204         (JavaInstance::numberValue):
   14205         (JavaInstance::booleanValue):
   14206         (JavaInstance::invokeMethod):
   14207         (JavaInstance::defaultValue):
   14208         (JavaInstance::valueOf):
   14209         * bridge/jni/jni_instance.h:
   14210         * bridge/jni/jni_jsobject.h:
   14211         * bridge/jni/jni_jsobject.mm:
   14212         (JavaJSObject::call):
   14213         (JavaJSObject::eval):
   14214         (JavaJSObject::getMember):
   14215         (JavaJSObject::getSlot):
   14216         (JavaJSObject::convertValueToJObject):
   14217         (JavaJSObject::convertJObjectToValue):
   14218         * bridge/jni/jni_objc.mm:
   14219         (JSC::Bindings::dispatchJNICall):
   14220         * bridge/jni/jni_runtime.cpp:
   14221         (JavaArray::convertJObjectToArray):
   14222         (JavaField::dispatchValueFromInstance):
   14223         (JavaField::valueFromInstance):
   14224         (JavaField::dispatchSetValueToInstance):
   14225         (JavaField::setValueToInstance):
   14226         (JavaArray::setValueAt):
   14227         (JavaArray::valueAt):
   14228         * bridge/jni/jni_runtime.h:
   14229         * bridge/jni/jni_utility.cpp:
   14230         (JSC::Bindings::convertArrayInstanceToJavaArray):
   14231         (JSC::Bindings::convertValueToJValue):
   14232         * bridge/jni/jni_utility.h:
   14233         * bridge/objc/WebScriptObject.h:
   14234         * bridge/objc/objc_class.h:
   14235         * bridge/objc/objc_class.mm:
   14236         (JSC::Bindings::ObjcClass::fallbackObject):
   14237         * bridge/objc/objc_instance.h:
   14238         * bridge/objc/objc_instance.mm:
   14239         (ObjcInstance::invokeMethod):
   14240         (ObjcInstance::invokeDefaultMethod):
   14241         (ObjcInstance::setValueOfUndefinedField):
   14242         (ObjcInstance::getValueOfUndefinedField):
   14243         (ObjcInstance::defaultValue):
   14244         (ObjcInstance::stringValue):
   14245         (ObjcInstance::numberValue):
   14246         (ObjcInstance::booleanValue):
   14247         (ObjcInstance::valueOf):
   14248         * bridge/objc/objc_runtime.h:
   14249         (JSC::Bindings::ObjcFallbackObjectImp::createStructure):
   14250         * bridge/objc/objc_runtime.mm:
   14251         (JSC::Bindings::ObjcField::valueFromInstance):
   14252         (JSC::Bindings::convertValueToObjcObject):
   14253         (JSC::Bindings::ObjcField::setValueToInstance):
   14254         (JSC::Bindings::ObjcArray::setValueAt):
   14255         (JSC::Bindings::ObjcArray::valueAt):
   14256         (JSC::Bindings::ObjcFallbackObjectImp::put):
   14257         (JSC::Bindings::callObjCFallbackObject):
   14258         (JSC::Bindings::ObjcFallbackObjectImp::defaultValue):
   14259         * bridge/objc/objc_utility.h:
   14260         * bridge/objc/objc_utility.mm:
   14261         (JSC::Bindings::convertValueToObjcValue):
   14262         (JSC::Bindings::convertNSStringToString):
   14263         (JSC::Bindings::convertObjcValueToValue):
   14264         * bridge/runtime.h:
   14265         (JSC::Bindings::Class::fallbackObject):
   14266         (JSC::Bindings::Instance::setValueOfUndefinedField):
   14267         (JSC::Bindings::Instance::invokeDefaultMethod):
   14268         (JSC::Bindings::Instance::invokeConstruct):
   14269         (JSC::Bindings::Instance::put):
   14270         * bridge/runtime_array.cpp:
   14271         (JSC::RuntimeArray::lengthGetter):
   14272         (JSC::RuntimeArray::indexGetter):
   14273         (JSC::RuntimeArray::put):
   14274         * bridge/runtime_array.h:
   14275         (JSC::RuntimeArray::createStructure):
   14276         * bridge/runtime_method.cpp:
   14277         (JSC::RuntimeMethod::lengthGetter):
   14278         (JSC::callRuntimeMethod):
   14279         * bridge/runtime_method.h:
   14280         (JSC::RuntimeMethod::createStructure):
   14281         * bridge/runtime_object.cpp:
   14282         (JSC::RuntimeObjectImp::fallbackObjectGetter):
   14283         (JSC::RuntimeObjectImp::fieldGetter):
   14284         (JSC::RuntimeObjectImp::methodGetter):
   14285         (JSC::RuntimeObjectImp::put):
   14286         (JSC::RuntimeObjectImp::defaultValue):
   14287         (JSC::callRuntimeObject):
   14288         (JSC::callRuntimeConstructor):
   14289         * bridge/runtime_object.h:
   14290         (JSC::RuntimeObjectImp::createStructure):
   14291         * inspector/JavaScriptCallFrame.cpp:
   14292         (WebCore::JavaScriptCallFrame::evaluate):
   14293         * inspector/JavaScriptCallFrame.h:
   14294         * inspector/JavaScriptProfile.cpp:
   14295         (WebCore::toJS):
   14296         * inspector/JavaScriptProfile.h:
   14297         * inspector/JavaScriptProfileNode.cpp:
   14298         (WebCore::toJS):
   14299         * inspector/JavaScriptProfileNode.h:
   14300 
   14301 2009-05-01  Dimitri Glazkov  <dglazkov (a] chromium.org>
   14302 
   14303         Reviewed by Eric Seidel.
   14304 
   14305         https://bugs.webkit.org/show_bug.cgi?id=25485
   14306         Only use visitedURL in Qt. This is a follow-up change to http://trac.webkit.org/changeset/43052,
   14307         which broke Chromium build.
   14308 
   14309         * css/CSSStyleSelector.cpp:
   14310         (WebCore::CSSStyleSelector::SelectorChecker::checkPseudoState): Moved guards around to
   14311             provide separate code paths for Qt and non-Qt ports. Also restored original
   14312             order of execution.
   14313 
   14314 2009-05-01  Anders Carlsson  <andersca (a] apple.com>
   14315 
   14316         Reviewed by Adele Peterson.
   14317 
   14318         <rdar://problem/6839222>
   14319         CrashTracer: Lots of crashes in Safari in hash table remove function inside DocumentLoader::removeSubresourceLoader
   14320         
   14321         After calling m_client->didFail(), check if the subresource loader has reached its terminal state. If that's the case,
   14322         return early to avoid calling removeSubresourceLoader on a null document loader. I don't think this is allowed to happen
   14323         which is why I've added the ASSERT.
   14324         
   14325         * loader/SubresourceLoader.cpp:
   14326         (WebCore::SubresourceLoader::didCancel):
   14327 
   14328 2009-05-01  Timothy Hatcher  <timothy (a] apple.com>
   14329 
   14330         Disallow the deletion UI for elements that have any overflow clipping.
   14331         Also disallow the UI for the body element it isn't practical to delete,
   14332         and the deletion UI would be clipped.
   14333 
   14334         <rdar://problem/6840161> Deletion UI can be clipped by some
   14335         elements (with overflow: hidden)
   14336 
   14337         Reviewed by Darin Adler.
   14338 
   14339         * editing/DeleteButtonController.cpp:
   14340         (WebCore::isDeletableElement):
   14341 
   14342 2009-05-01  Timothy Hatcher  <timothy (a] apple.com>
   14343 
   14344         Decrease the minimum height for deleteable elements to 16px, and increase the
   14345         minimum width to 48px. This allows deleting shorter items like navigation bars.
   14346 
   14347         <rdar://problem/6840735> Deletion UI does not show up for short
   14348         elements (22px or less)
   14349 
   14350         Reviewed by Adele Peterson.
   14351 
   14352         * editing/DeleteButtonController.cpp:
   14353         (WebCore::isDeletableElement):
   14354 
   14355 2009-05-01  Timothy Hatcher  <timothy (a] apple.com>
   14356 
   14357         Clean up the comments and logic in the code for picking a
   14358         deleteable element for the deletion UI.
   14359 
   14360         Reviewed by Adele Peterson.
   14361 
   14362         * editing/DeleteButtonController.cpp:
   14363         (WebCore::isDeletableElement):
   14364 
   14365 2009-05-01  Kevin McCullough  <kmccullough (a] apple.com>
   14366 
   14367         Reviewed by Adele Peterson and Darin Adler.
   14368 
   14369         <rdar://problem/4815598> Stuck in double spacing mode after pasting a
   14370         paragraph with padding/margin (or table mode !)
   14371 
   14372         A lot of the issues in this bug were resolved on Mail's side by using
   14373         WebKit to convert to plain text.  This is the final issue, that floating
   14374         style stays on copied nodes causing them to float when they are pasted
   14375         which is not what the user intended.
   14376 
   14377         * editing/markup.cpp:
   14378         (WebCore::removeExteriorStyles):
   14379         (WebCore::):
   14380         (WebCore::appendStartMarkup):
   14381         (WebCore::getStartMarkup):
   14382         (WebCore::createMarkup):
   14383 
   14384 2009-05-01  Pavel Feldman  <pfeldman (a] chromium.org>
   14385 
   14386         Reviewed by Timothy Hatcher.
   14387 
   14388         Add a FrameLoaderClient callback for the ResourceRetrievedByXMLHttpRequest.
   14389         This is the only resource-related information that is available in InspectorController
   14390         and is missing in the FrameLoaderClient.
   14391 
   14392         https://bugs.webkit.org/show_bug.cgi?id=25347
   14393 
   14394         * WebCore.xcodeproj/project.pbxproj: Made ScriptSource private.
   14395         * dom/Document.cpp: Made a call to a client along with the call to the InspectorController.
   14396         (WebCore::Document::resourceRetrievedByXMLHttpRequest):
   14397         * loader/EmptyClients.h: Added stub implementation.
   14398         (WebCore::EmptyFrameLoaderClient::dispatchDidLoadResourceByXMLHttpRequest):
   14399         * loader/FrameLoader.cpp: Call initiating dispatches.
   14400         (WebCore::FrameLoader::resourceRetrievedByXMLHttpRequest):
   14401         * loader/FrameLoader.h:
   14402         * loader/FrameLoaderClient.h:
   14403 
   14404 2009-04-30  Beth Dakin  <bdakin (a] apple.com>
   14405 
   14406         Reviewed by Oliver Hunt.
   14407 
   14408         Fix for <rdar://problem/6841106> REGRESSION: Crash drag selecting 
   14409         To Do's in a Mail note (excessive recursion in mouse drag tracking)
   14410 
   14411         Oliver's recent change to dragging seems to have revealed a long-
   14412         time bug in passSubframeEventToSubframe where we did not set 
   14413         m_sendingEventToSubview to true before calling 
   14414         handleMouseMoveEvent() in the NSMouseMoved case. This patch fixes 
   14415         that and adds ASSERTions around all of the places where 
   14416         m_sendingEventToSubview is set to true and then false to make sure 
   14417         we are not trampling its state.
   14418 
   14419         * page/mac/EventHandlerMac.mm:
   14420         (WebCore::EventHandler::eventLoopHandleMouseDragged):
   14421         (WebCore::EventHandler::eventLoopHandleMouseUp):
   14422         (WebCore::EventHandler::passSubframeEventToSubframe):
   14423         (WebCore::EventHandler::passWheelEventToWidget):
   14424 
   14425 2009-04-30  Eric Carlson  <eric.carlson (a] apple.com>
   14426 
   14427         Reviewed by Simon Fraser.
   14428         
   14429         MediaDocument falls back to plug-in unnecessarily
   14430         https://bugs.webkit.org/show_bug.cgi?id=25504
   14431         <rdar://problem/6844702>
   14432         
   14433         Don't allow harmless media types to cause a MediaDocument to fall
   14434         back to PluginDocument.
   14435 
   14436         Test: media/video-document-types.html
   14437 
   14438         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   14439         (WebCore::MediaPlayerPrivate::disableUnsupportedTracks): add timecode, timecode 64,
   14440         odsm, and sdsm to allowed track types.
   14441 
   14442         * platform/graphics/win/QTMovieWin.cpp:
   14443         (QTMovieWin::disableUnsupportedTracks): Ditto.
   14444 
   14445 2009-04-30  Dimitri Glazkov  <dglazkov (a] chromium.org>
   14446 
   14447         Reviewed by Eric Seidel.
   14448 
   14449         Add CHROMIUM guard to unfork Document.cpp
   14450 
   14451         * dom/Document.cpp:
   14452         (WebCore::Document::setFocusedNode): Added guard.
   14453 
   14454 2009-04-30  David Kilzer  <ddkilzer (a] apple.com>
   14455 
   14456         Use OwnPtr<HTMLParserQuirks> for m_parserQuirks
   14457 
   14458         Reviewed by Geoff Garen.
   14459 
   14460         * html/HTMLParser.cpp:
   14461         (WebCore::HTMLParser::~HTMLParser): Removed unneeded code.
   14462         * html/HTMLParser.h: Made m_parserQuirks an OwnPtr.
   14463 
   14464 2009-04-30  David Kilzer  <ddkilzer (a] apple.com>
   14465 
   14466         Provide a mechanism to create a quirks delegate for HTMLParser
   14467 
   14468         Reviewed by David Hyatt.
   14469 
   14470         No tests since there is no change in behavior.
   14471 
   14472         HTMLParserQuirks.h defines an abstract base class that may be
   14473         extended as needed.  The ChromeClient::createHTMLParserQuirks()
   14474         factory method should be used to return an HTMLParserQuirks
   14475         subclassed object when needed.
   14476 
   14477         * WebCore.xcodeproj/project.pbxproj: Added HTMLParserQuirks.h.
   14478         * html/HTMLParser.cpp:
   14479         (WebCore::HTMLParser::HTMLParser): Initialize m_parserQuirks
   14480         using ChromeClient::createHTMLParserQuirks().
   14481         (WebCore::HTMLParser::~HTMLParser): Delete m_parserQuirks if
   14482         set.
   14483         (WebCore::HTMLParser::reset): Call HTMLParserQuirks::reset() if
   14484         m_parserQuirks is set.
   14485         (WebCore::HTMLParser::insertNode): Call
   14486         HTMLParserQuirks::shouldInsertNode() if m_parserQuirks is set,
   14487         and return early if it returns false.
   14488         (WebCore::HTMLParser::popBlock): Call
   14489         HTMLParserQuirks::shouldPopBlock() if m_parserQuirks is set, and
   14490         return early if it returns false.
   14491         * html/HTMLParser.h: Added m_parserQuirks.
   14492         * html/HTMLParserQuirks.h: Added.
   14493         (WebCore::HTMLParserQuirks::HTMLParserQuirks):
   14494         (WebCore::HTMLParserQuirks::~HTMLParserQuirks):
   14495         * loader/EmptyClients.h:
   14496         (WebCore::EmptyChromeClient::createHTMLParserQuirks): Added.
   14497         * page/ChromeClient.h:
   14498         (WebCore::ChromeClient::createHTMLParserQuirks): Added.
   14499 
   14500 2009-04-30  Dimitri Glazkov  <dglazkov (a] chromium.org>
   14501 
   14502         Reviewed by Eric Seidel.
   14503 
   14504         https://bugs.webkit.org/show_bug.cgi?id=25492
   14505         Add JSC guards around node wrapper cache calls. These are not used by V8.
   14506 
   14507         Also, remove JSDOMBinding include, which is brought in by ScriptController.
   14508 
   14509         * dom/Document.cpp:
   14510         (WebCore::Document::~Document): Added JSC guard.
   14511         * dom/Node.cpp:
   14512         (WebCore::Node::setDocument): Ditto and removed JSDOMBinding include.
   14513 
   14514 2009-04-30  Dimitri Glazkov  <dglazkov (a] chromium.org>
   14515 
   14516         Reviewed by Eric Seidel.
   14517 
   14518         https://bugs.webkit.org/show_bug.cgi?id=25493
   14519         Remove debugger/profiler custom method stubs, catching V8 bindings up to
   14520         http://trac.webkit.org/changeset/43072.
   14521 
   14522         * bindings/v8/custom/V8InspectorControllerCustom.cpp: Removed method stubs.
   14523 
   14524 2009-04-30  Simon Fraser  <simon.fraser (a] apple.com>
   14525 
   14526         Reviewed by Darin Adler
   14527 
   14528         <rdar://problem/6839338> VoiceOver does not take into account transforms when drawing outlines
   14529         
   14530         Use transform-aware quad methods when computing the boundingBoxRect for
   14531         an AccessibilityRenderObject. The code follows RenderObject::absoluteBoundingBoxRect().
   14532 
   14533         Test: accessibility/transformed-element.html
   14534 
   14535         * page/AccessibilityRenderObject.cpp:
   14536         (WebCore::AccessibilityRenderObject::boundingBoxRect):
   14537 
   14538 2009-04-30  Dimitri Glazkov  <dglazkov (a] chromium.org>
   14539 
   14540         Unreviewed, Chromium build fix.
   14541 
   14542         Catch up to ScriptObject changes from http://trac.webkit.org/changeset/42512.
   14543 
   14544         * bindings/v8/ScriptObject.cpp:
   14545         (WebCore::ScriptGlobalObject::get): Renamed from getObject.
   14546         (WebCore::ScriptGlobalObject::remove): Added.
   14547         * bindings/v8/ScriptObject.h: Ditto.
   14548 
   14549 2009-04-30  Dimitri Glazkov  <dglazkov (a] chromium.org>
   14550 
   14551         Unreviewed, build fix.
   14552 
   14553         https://bugs.webkit.org/show_bug.cgi?id=25470
   14554         Extend the cover of ENABLE_JAVASCRIPT_DEBUGGER to profiler.
   14555 
   14556         * WebCore.pro: Fix copy-paste error.
   14557 
   14558 2009-04-30  Dimitri Glazkov  <dglazkov (a] chromium.org>
   14559 
   14560         Unreviewed, build fix.
   14561 
   14562         https://bugs.webkit.org/show_bug.cgi?id=25470
   14563         Extend the cover of ENABLE_JAVASCRIPT_DEBUGGER to profiler.
   14564 
   14565         * GNUmakefile.am: Add ENABLE_JAVASCRIPT_DEBUGGER definitions.
   14566         * WebCore.pro: Ditto.
   14567 
   14568 2009-04-02  Eric Seidel  <eric (a] webkit.org>
   14569 
   14570         Reviewed by Darin Adler.
   14571 
   14572         Change Position to pre-compute the AnchorType and store it.
   14573         Also store a "legacy editing mode" bit on the Position.
   14574         https://bugs.webkit.org/show_bug.cgi?id=24763
   14575 
   14576         The old Postion(node, offset) constructor creates legacy positions
   14577         but there are new constructors to create explicitly anchored positions
   14578         which the next patch will use.
   14579 
   14580         Once we fix all the "position-fixup" functions (like rangeCompliantEquivalent) to
   14581         only affect legacy positions, we will be able to distinguish
   14582         between [table, 1] and [table, after] in the code correctly!
   14583 
   14584         * WebCore.base.exp:
   14585         * WebCore.xcodeproj/project.pbxproj:
   14586         * dom/Position.cpp:
   14587         (WebCore::Position::Position):
   14588         (WebCore::Position::moveToPosition):
   14589         (WebCore::Position::moveToOffset):
   14590         (WebCore::Position::anchorTypeForLegacyEditingPosition):
   14591         (WebCore::Position::element):
   14592         * dom/Position.h:
   14593         (WebCore::Position::):
   14594         (WebCore::Position::Position):
   14595         (WebCore::Position::anchorType):
   14596         (WebCore::Position::deprecatedEditingOffset):
   14597 
   14598 2009-04-30  Sam Weinig  <sam (a] webkit.org>
   14599 
   14600         Reviewed by Alexey Proskuryakov.
   14601 
   14602         Fix bug where the WorkerLocation and WorkerNavigator wrappers would be
   14603         collected even if the WorkerContext is still alive.
   14604 
   14605         Test: fast/workers/worker-context-gc.html
   14606 
   14607         * bindings/js/JSWorkerContextCustom.cpp:
   14608         (WebCore::JSWorkerContext::mark):
   14609         * workers/WorkerContext.cpp:
   14610         (WebCore::WorkerContext::WorkerContext):
   14611         (WebCore::WorkerContext::completeURL):
   14612         (WebCore::WorkerContext::location):
   14613         * workers/WorkerContext.h:
   14614         (WebCore::WorkerContext::optionalNavigator):
   14615         (WebCore::WorkerContext::optionalLocation):
   14616 
   14617 2009-04-30  Dimitri Glazkov  <dglazkov (a] chromium.org>
   14618 
   14619         Reviewed by Timothy Hatcher.
   14620 
   14621         https://bugs.webkit.org/show_bug.cgi?id=25470
   14622         Extend the cover of ENABLE_JAVASCRIPT_DEBUGGER to profiler.
   14623 
   14624         * Configurations/FeatureDefines.xcconfig: Added ENABLE_JAVASCRIPT_DEBUGGER.
   14625         * WebCore.vcproj/build-generated-files.sh: Ditto.
   14626         * bindings/js/JSConsoleCustom.cpp: Added ENABLE(JAVASCRIPT_DEBUGGER) guard.
   14627         * bindings/js/JSDOMWindowBase.cpp: Ditto.
   14628         * bindings/js/JSInspectorControllerCustom.cpp: Ditto.
   14629         * inspector/InspectorController.cpp: Moved profiler/debugger methods under
   14630             ENABLE(JAVASCRIPT_DEBUGGER) flag.
   14631         * inspector/InspectorController.h: Ditto.
   14632         * inspector/InspectorController.idl: Added ENABLE(JAVASCRIPT_DEBUGGER) guard.
   14633         * page/Console.cpp: Replaced USE(JSC) with ENABLE(JAVASCRIPT_DEBUGGER) guard.
   14634 
   14635 2009-04-30  Dimitri Glazkov  <dglazkov (a] chromium.org>
   14636 
   14637         Unreviewed, build fix.
   14638 
   14639         https://bugs.webkit.org/show_bug.cgi?id=25275
   14640         This patch snuck in a re-definition of a local.
   14641 
   14642         * bindings/v8/custom/V8DOMWindowCustom.cpp:
   14643         (WebCore::NAMED_PROPERTY_GETTER): Removed re-definition.
   14644 
   14645 2009-04-30  Sam Weinig  <sam (a] webkit.org>
   14646 
   14647         Reviewed by Mark Rowe.
   14648 
   14649         Fix a leak introduced yesterday.  Don't allocate a ScheduledAction
   14650         if the toString()ing throws an exception.
   14651 
   14652         * bindings/js/ScheduledAction.cpp:
   14653         (WebCore::ScheduledAction::create):
   14654 
   14655 2009-04-30  Alexey Proskuryakov  <ap (a] webkit.org>
   14656 
   14657         Reviewed by Darin Adler.
   14658 
   14659         https://bugs.webkit.org/show_bug.cgi?id=25379
   14660         <rdar://problem/6809460> REGRESSION (r41772): Selecting a bank in American Express Pay Bill fails
   14661 
   14662         Test: fast/forms/multiple-selected-options-innerHTML.html
   14663 
   14664         This problem was caused by an inconsistency at when Node::instertedIntoTree() is called.
   14665         For normal HTML parsing, it is called immediately after an element is inserted, but for
   14666         innerHTML, it is only called after the whole subtree is inserted into a document.
   14667 
   14668         It may make sense to harmonize these cases one day, but for now, I only made the minimal
   14669         changes necessary to fix the bug.
   14670 
   14671         * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::insertedIntoTree):
   14672         * html/HTMLSelectElement.h:
   14673         Recalculate list items when a SELECT element is inserted. OPTION elements cannot decide
   14674         which one to keep selected themselves, because their logic assumes normal parsing, with
   14675         insertedIntoTree() called after each element is inserted.
   14676 
   14677 2009-04-30  Pavel Feldman  <pfeldman (a] chromium.org>
   14678 
   14679         Reviewed by Dimitri Glazkov.
   14680 
   14681         https://bugs.webkit.org/show_bug.cgi?id=25342
   14682         Add MessageSource and MessageLevel parameters to the ChromeClient::addMessageToConsole.
   14683 
   14684         Chromium async/out-of-process version of WebInspector is currently not based on
   14685         InspectorController. The reason was that we did not want to interfere with
   14686         the unforking effort, yet wanted to experiment. So we came up with these
   14687         agents concept that basically mimic InspectorController, but separating 'agent'
   14688         nature from the 'transport'. Now that InspectorController is unforked, I am
   14689         planning to bring these concepts into the WebKit land and use what we have in
   14690         Chromium as a proof of concept / experimental playground.
   14691 
   14692         * loader/EmptyClients.h: added MessageSource and MessageLevel parameters.
   14693         (WebCore::EmptyChromeClient::addMessageToConsole): ditto
   14694         * page/ChromeClient.h: ditto
   14695         * page/Console.cpp: Used new method signature.
   14696         (WebCore::Console::addMessage): ditto
   14697 
   14698 2009-04-30  Dan Bernstein  <mitz (a] apple.com>
   14699 
   14700         Reviewed by Simon Fraser.
   14701 
   14702         - fix https://bugs.webkit.org/show_bug.cgi?id=25476
   14703           <rdar://problem/6841919> REGRESSION (r42987): Welcome to Safari 4
   14704           animation is jittery
   14705 
   14706         Reverted r42987.
   14707 
   14708         * platform/graphics/cg/ImageCG.cpp:
   14709         (WebCore::BitmapImage::draw):
   14710 
   14711 2009-04-30  Brady Eidson  <beidson (a] apple.com>
   14712 
   14713         Reviewed by Maciej Stachowiak
   14714 
   14715         <rdar://problem/3785248> http://www.greekembassy.org/ gets in an infinite reload loop
   14716         https://bugs.webkit.org/show_bug.cgi?id=21193
   14717 
   14718         Some websites use for attributes in script elements to specify events that the script 
   14719         should be run for.  One example is greekembassy.org which has the following in their <head>:
   14720 
   14721         <script for=window event=onresize>
   14722             location.reload(false);
   14723         </script>
   14724 
   14725         Since we don't support the full for attribute syntax, we would just blissfully ignore the
   14726         condition and execute the code unconditionally.  This caused breakage on multiple real-world 
   14727         sites besides greekembassy.org.
   14728 
   14729         https://bugs.webkit.org/show_bug.cgi?id=16915 and <rdar://problem/4471751> track adding full 
   14730         support for the for attribute in scripts.  In the meantime it's best to not execute them
   14731         unconditionally.
   14732 
   14733         Test: fast/dom/HTMLScriptElement/script-for-attribute-unexpected-execution.html
   14734 
   14735         * dom/ScriptElement.cpp:
   14736         (WebCore::ScriptElementData::shouldExecuteAsJavaScript): After all other checks have
   14737           passed, only return true if there is no for attribute in the script element.
   14738         * dom/ScriptElement.h:
   14739 
   14740         * html/HTMLScriptElement.cpp:
   14741         (WebCore::HTMLScriptElement::forAttributeValue): Return the attribute value, if any.
   14742         * html/HTMLScriptElement.h:
   14743 
   14744         * svg/SVGScriptElement.cpp:
   14745         (WebCore::SVGScriptElement::forAttributeValue): Return an empty string (like the other
   14746           attribute getters do for SVGScriptElement)
   14747         * svg/SVGScriptElement.h:
   14748 
   14749 2009-04-30  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   14750 
   14751         Reviewed by Darin Adler.
   14752 
   14753         The Qt API exposes a global history patch CSSStyleSelector to make API consumers work again
   14754 
   14755         https://bugs.webkit.org/show_bug.cgi?id=20952
   14756 
   14757         The QtWebKit port made the mistake of exposing a global history. This broke
   14758         with the addition of PageGroup and LinkHash. This needs to be repaired
   14759         for Qt4.5.
   14760 
   14761         Add a function to LinkHash.cpp that is resolving a URL. Use this
   14762         function from within CSSStyleSelector to forward the url to the
   14763         QWebHistoryInterface API.
   14764 
   14765         It is sad that there is a path within visitedLinkHash which is now
   14766         doing a memcpy, it is sad to add a PLATFORM(QT) define to CSSStyleSelector
   14767         and using QtWebKit types within WebCore is a layering violation as well.
   14768 
   14769         PageGroup::setShouldTrackVisitedLinks is currently not enabled. For
   14770         Qt4.6 a second version of the QWebHistoryInterface is going to be
   14771         added which will fix things up.
   14772 
   14773         * css/CSSStyleSelector.cpp:
   14774         (WebCore::CSSStyleSelector::SelectorChecker::checkPseudoState):
   14775         * platform/LinkHash.cpp:
   14776         (WebCore::visitedURL):
   14777         (WebCore::visitedLinkHash):
   14778         * platform/LinkHash.h:
   14779 
   14780 2009-04-30  Simon Hausmann  <simon.hausmann (a] nokia.com>
   14781 
   14782         Fix the Qt build.
   14783 
   14784         * platform/graphics/SimpleFontData.cpp: Don't use initCharWidths() for the Qt build.
   14785         * platform/graphics/qt/SimpleFontDataQt.cpp:
   14786         (WebCore::SimpleFontData::platformCharWidthInit): Instead initialize the average and
   14787         max char widths from QFontMetrics.
   14788 
   14789 2009-04-30  Ariya Hidayat  <ariya.hidayat (a] nokia.com>
   14790 
   14791         Unreview build fix after r43037.
   14792 
   14793         Use MarkedArgumentBuffer instead of ArgList.
   14794 
   14795         * bridge/qt/qt_runtime.cpp:
   14796         (JSC::Bindings::QtConnectionObject::execute):
   14797 
   14798 2009-04-29  Sam Weinig  <sam (a] webkit.org>
   14799 
   14800         Reviewed by Oliver Hunt.
   14801 
   14802         Fix for https://bugs.webkit.org/show_bug.cgi?id=25440
   14803         setTimeout should stringify non-string/non-function first arguments
   14804 
   14805         Test: fast/dom/Window/setTimeout-string-argument.html
   14806 
   14807         * bindings/js/JSDOMWindowCustom.cpp:
   14808         (WebCore::JSDOMWindow::setTimeout):
   14809         (WebCore::JSDOMWindow::setInterval):
   14810         * bindings/js/JSWorkerContextCustom.cpp:
   14811         (WebCore::JSWorkerContext::setTimeout):
   14812         (WebCore::JSWorkerContext::setInterval):
   14813         * bindings/js/ScheduledAction.cpp:
   14814         (WebCore::ScheduledAction::create):
   14815         * bindings/js/ScheduledAction.h:
   14816 
   14817 2009-04-29  Dan Bernstein  <mitz (a] apple.com>
   14818 
   14819         Reviewed by Simon Fraser.
   14820 
   14821         - WebCore part of <rdar://problem/6609509> Select All and then Delete
   14822           should put Mail editing back into the same state as a new message
   14823 
   14824         Test: editing/deleting/in-visibly-empty-root.html
   14825 
   14826         * WebCore.base.exp: Exported VisibleSelection::isAll(bool).
   14827         * editing/SelectionController.h:
   14828         (WebCore::SelectionController::isAll): Added. Calls through to
   14829         VisibleSelection.
   14830         * editing/TypingCommand.cpp:
   14831         (WebCore::TypingCommand::makeEditableRootEmpty): Added. Removes all children
   14832         of the root editable element the selection is in, other than a
   14833         placeholder. Returns true iff it did anything.
   14834         (WebCore::TypingCommand::deleteKeyPressed): When there is only a single
   14835         visible position in the root editable element, but it has children other
   14836         than a placeholder, remove those children.
   14837         * editing/TypingCommand.h:
   14838         * editing/VisiblePosition.h:
   14839         Added a StayInEditableContent enum and a FIXME.
   14840         * editing/VisibleSelection.cpp:
   14841         (WebCore::VisibleSelection::isAll): Added. Returns whether the
   14842         selection encompasses all visible positions, either in the document or
   14843         in the editable root.
   14844         * editing/VisibleSelection.h:
   14845 
   14846 2009-04-29  Sam Weinig  <sam (a] webkit.org>
   14847 
   14848         Fix style nit.
   14849 
   14850         * editing/visible_units.cpp:
   14851         (WebCore::getLeafBoxesInLogicalOrder):
   14852 
   14853 2009-04-29  David Hyatt  <hyatt (a] apple.com>
   14854 
   14855         Reviewed by Dan Bernstein.
   14856 
   14857         For now just drop the deferred layout on the floor, since it causes an infinite hang in mail.  Even
   14858         trying to schedule a relayout for later leaves you in a state where you hit the needsLayout painting
   14859         assertions.
   14860 
   14861         Basically what Mail is doing is crazy, and we can't support it other than to just drop the last layout
   14862         and not do it (which is basically what was happening before).
   14863 
   14864         * page/FrameView.cpp:
   14865         (WebCore::FrameView::setContentsSize):
   14866         (WebCore::FrameView::needsLayout):
   14867 
   14868 2009-04-29  Douglas Davidson  <ddavidso (a] apple.com>
   14869 
   14870         Reviewed by Justin Garcia.
   14871 
   14872         <rdar://problem/6836921> Mail exhibits issues with text checking, e.g. menu items not always validated correctly
   14873         
   14874         Updates to the text checking code to enable text checking even if spellchecking is turned off 
   14875         and fix an off-by-one error in selection handling.
   14876 
   14877         * editing/Editor.cpp:
   14878         (WebCore::Editor::markMisspellingsAfterTypingToPosition):
   14879         (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
   14880         (WebCore::Editor::markMisspellingsAndBadGrammar):
   14881         * editing/Editor.h:
   14882         * editing/TypingCommand.cpp:
   14883         (WebCore::TypingCommand::markMisspellingsAfterTyping):
   14884 
   14885 2009-04-29  Oliver Hunt  <oliver (a] apple.com>
   14886 
   14887         Reviewed by Gavin Barraclough.
   14888 
   14889         Clean up ArgList to be a trivial type
   14890 
   14891         Start using MarkedArgumentBuffer to create argument lists for function calls
   14892 
   14893         * bindings/js/JSClipboardCustom.cpp:
   14894         (WebCore::JSClipboard::types):
   14895         * bindings/js/JSConsoleCustom.cpp:
   14896         (WebCore::JSConsole::profiles):
   14897         * bindings/js/JSCustomPositionCallback.cpp:
   14898         (WebCore::JSCustomPositionCallback::handleEvent):
   14899         * bindings/js/JSCustomPositionErrorCallback.cpp:
   14900         (WebCore::JSCustomPositionErrorCallback::handleEvent):
   14901         * bindings/js/JSCustomSQLStatementCallback.cpp:
   14902         (WebCore::JSCustomSQLStatementCallback::handleEvent):
   14903         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
   14904         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
   14905         * bindings/js/JSCustomSQLTransactionCallback.cpp:
   14906         (WebCore::JSCustomSQLTransactionCallback::handleEvent):
   14907         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
   14908         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
   14909         * bindings/js/JSCustomVoidCallback.cpp:
   14910         (WebCore::JSCustomVoidCallback::handleEvent):
   14911         * bindings/js/JSCustomXPathNSResolver.cpp:
   14912         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
   14913         * bindings/js/JSEventListener.cpp:
   14914         (WebCore::JSEventListener::handleEvent):
   14915         * bindings/js/JSInspectorControllerCustom.cpp:
   14916         (WebCore::JSInspectorController::profiles):
   14917         (WebCore::JSInspectorController::search):
   14918         (WebCore::JSInspectorController::databaseTableNames):
   14919         (WebCore::JSInspectorController::setting):
   14920         * bindings/js/JSJavaScriptCallFrameCustom.cpp:
   14921         (WebCore::JSJavaScriptCallFrame::scopeChain):
   14922         * bindings/js/JSLazyEventListener.cpp:
   14923         (WebCore::JSLazyEventListener::parseCode):
   14924         * bindings/js/JSNodeFilterCondition.cpp:
   14925         (WebCore::JSNodeFilterCondition::acceptNode):
   14926         * bindings/js/JSQuarantinedObjectWrapper.cpp:
   14927         (WebCore::JSQuarantinedObjectWrapper::construct):
   14928         (WebCore::JSQuarantinedObjectWrapper::call):
   14929         * bindings/js/ScheduledAction.cpp:
   14930         (WebCore::ScheduledAction::ScheduledAction):
   14931         (WebCore::ScheduledAction::executeFunctionInContext):
   14932         * bindings/js/ScriptFunctionCall.h:
   14933         * bindings/objc/WebScriptObject.mm:
   14934         (getListFromNSArray):
   14935         (-[WebScriptObject callWebScriptMethod:withArguments:]):
   14936         * bridge/NP_jsobject.cpp:
   14937         (getListFromVariantArgs):
   14938         (_NPN_InvokeDefault):
   14939         (_NPN_Invoke):
   14940         (_NPN_Construct):
   14941         * bridge/jni/jni_jsobject.h:
   14942         * bridge/jni/jni_jsobject.mm:
   14943         (JavaJSObject::call):
   14944         (JavaJSObject::getListFromJArray):
   14945 
   14946 2009-04-29  Eric Seidel  <eric (a] webkit.org>
   14947 
   14948         No review, build fix only.
   14949 
   14950         Fix m_offset uses added while I wasn't looking.
   14951 
   14952         * editing/visible_units.cpp:
   14953         (WebCore::logicalStartPositionForLine):
   14954         (WebCore::logicalEndPositionForLine):
   14955 
   14956 2009-04-29  Xiaomei Ji  <xji (a] chromium.org>
   14957 
   14958         Reviewed by Dan Bernstein.
   14959 
   14960         Fix https://bugs.webkit.org/show_bug.cgi?id=24168
   14961         RTL: Home/End key does not behave correctly in mixed bidi text in RTL document
   14962 
   14963         Test: editing/selection/home-end.html
   14964 
   14965         * editing/SelectionController.cpp:
   14966         (WebCore::SelectionController::modifyExtendingForward): Change calling endOfLine()
   14967         to logicalEndOfLine() when granularity is LineBoundary.
   14968         (WebCore::SelectionController::modifyMovingForward): Change calling endOfLine()
   14969         to logicalEndOfLine() when granularity is LineBoundary
   14970         (WebCore::SelectionController::modifyExtendingBackward): Change calling 
   14971         startOfLine() to logicalStartOfLine() when granularity is LineBoundary.
   14972         (WebCore::SelectionController::modifyMovingBackward): Change calling startOfLine() 
   14973         to logicalStartOfLine() when granularity is LineBoundary.
   14974         * editing/visible_units.cpp:
   14975         (WebCore::getLeafBoxesInLogicalOrder): Added. Reconstruct leaf boxes in logical order.
   14976         (WebCore::getLogicalStartBoxAndNode): Added.
   14977         (WebCore::getLogicalEndBoxAndNode): Added.
   14978         (WebCore::logicalStartPositionForLine): Added. Similar to startPositionForLine.
   14979         (WebCore::logicalStartOfLine): Added. Similar to startOfLine.
   14980         (WebCore::logicalEndPositionForLine): Added. Similar to endPositionForLine.
   14981         (WebCore::inSameLogicalLine): Added.
   14982         (WebCore::logicalEndOfLine): Added. Similar to endOfLine.
   14983         * editing/visible_units.h:
   14984 
   14985 2009-04-29  Eric Seidel  <eric (a] webkit.org>
   14986 
   14987         Reviewed by Darin Adler.
   14988 
   14989         Make m_offset private and change all callers to use deprecatedEditingOffset().
   14990         https://bugs.webkit.org/show_bug.cgi?id=25472
   14991 
   14992         Per Darin's suggestion, this was just a simple search replace
   14993         of .m_offset with .deprecatedEditingOffset().
   14994 
   14995         There was one change in InsertParagraphSeparatorCommand::doApply to use
   14996         Position::moveToOffset(0) instead of .m_offset = 0;
   14997 
   14998         * dom/Position.cpp:
   14999         (WebCore::Position::rendersInDifferentPosition):
   15000         (WebCore::Position::leadingWhitespacePosition):
   15001         * dom/Position.h:
   15002         (WebCore::Position::deprecatedEditingOffset):
   15003         (WebCore::Position::moveToOffset):
   15004         (WebCore::operator==):
   15005         * dom/PositionIterator.h:
   15006         (WebCore::PositionIterator::PositionIterator):
   15007         * dom/Range.cpp:
   15008         (WebCore::Range::create):
   15009         (WebCore::Range::compareBoundaryPoints):
   15010         * editing/ApplyStyleCommand.cpp:
   15011         (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
   15012         (WebCore::ApplyStyleCommand::applyInlineStyleToRange):
   15013         (WebCore::ApplyStyleCommand::removeInlineStyle):
   15014         (WebCore::ApplyStyleCommand::nodeFullySelected):
   15015         (WebCore::ApplyStyleCommand::nodeFullyUnselected):
   15016         (WebCore::ApplyStyleCommand::splitTextAtStartIfNeeded):
   15017         (WebCore::ApplyStyleCommand::splitTextAtEndIfNeeded):
   15018         (WebCore::ApplyStyleCommand::splitTextElementAtStartIfNeeded):
   15019         (WebCore::ApplyStyleCommand::splitTextElementAtEndIfNeeded):
   15020         (WebCore::ApplyStyleCommand::mergeStartWithPreviousIfIdentical):
   15021         (WebCore::ApplyStyleCommand::mergeEndWithNextIfIdentical):
   15022         (WebCore::ApplyStyleCommand::joinChildTextNodes):
   15023         * editing/BreakBlockquoteCommand.cpp:
   15024         (WebCore::BreakBlockquoteCommand::doApply):
   15025         * editing/CompositeEditCommand.cpp:
   15026         (WebCore::CompositeEditCommand::insertNodeAt):
   15027         (WebCore::CompositeEditCommand::positionOutsideTabSpan):
   15028         (WebCore::CompositeEditCommand::rebalanceWhitespaceAt):
   15029         (WebCore::CompositeEditCommand::prepareWhitespaceAtPositionForSplit):
   15030         (WebCore::CompositeEditCommand::deleteInsignificantText):
   15031         (WebCore::CompositeEditCommand::moveParagraphs):
   15032         (WebCore::CompositeEditCommand::breakOutOfEmptyMailBlockquotedParagraph):
   15033         * editing/DeleteSelectionCommand.cpp:
   15034         (WebCore::updatePositionForNodeRemoval):
   15035         (WebCore::updatePositionForTextRemoval):
   15036         (WebCore::DeleteSelectionCommand::handleGeneralDelete):
   15037         (WebCore::DeleteSelectionCommand::fixupWhitespace):
   15038         * editing/Editor.cpp:
   15039         (WebCore::Editor::setComposition):
   15040         (WebCore::Editor::advanceToNextMisspelling):
   15041         (WebCore::Editor::getCompositionSelection):
   15042         * editing/InsertLineBreakCommand.cpp:
   15043         (WebCore::InsertLineBreakCommand::doApply):
   15044         * editing/InsertParagraphSeparatorCommand.cpp:
   15045         (WebCore::InsertParagraphSeparatorCommand::doApply):
   15046         * editing/InsertTextCommand.cpp:
   15047         (WebCore::InsertTextCommand::performTrivialReplace):
   15048         (WebCore::InsertTextCommand::input):
   15049         (WebCore::InsertTextCommand::insertTab):
   15050         * editing/MoveSelectionCommand.cpp:
   15051         (WebCore::MoveSelectionCommand::doApply):
   15052         * editing/ReplaceSelectionCommand.cpp:
   15053         (WebCore::ReplaceSelectionCommand::doApply):
   15054         * editing/SelectionController.cpp:
   15055         (WebCore::SelectionController::debugRenderer):
   15056         * editing/TextIterator.cpp:
   15057         (WebCore::TextIterator::rangeFromLocationAndLength):
   15058         * editing/TypingCommand.cpp:
   15059         (WebCore::TypingCommand::deleteKeyPressed):
   15060         (WebCore::TypingCommand::forwardDeleteKeyPressed):
   15061         * editing/VisiblePosition.cpp:
   15062         (WebCore::VisiblePosition::characterAfter):
   15063         (WebCore::VisiblePosition::debugPosition):
   15064         (WebCore::makeRange):
   15065         (WebCore::setStart):
   15066         (WebCore::setEnd):
   15067         * editing/VisibleSelection.cpp:
   15068         (WebCore::VisibleSelection::toNormalizedRange):
   15069         (WebCore::makeSearchRange):
   15070         (WebCore::VisibleSelection::debugPosition):
   15071         (WebCore::VisibleSelection::showTreeForThis):
   15072         * editing/htmlediting.cpp:
   15073         (WebCore::comparePositions):
   15074         (WebCore::rangeCompliantEquivalent):
   15075         * editing/visible_units.cpp:
   15076         (WebCore::previousBoundary):
   15077         (WebCore::nextBoundary):
   15078         (WebCore::startPositionForLine):
   15079         (WebCore::startOfLine):
   15080         (WebCore::endPositionForLine):
   15081         (WebCore::nextLinePosition):
   15082         (WebCore::startOfParagraph):
   15083         (WebCore::endOfParagraph):
   15084         (WebCore::logicalStartPositionForLine):
   15085         (WebCore::logicalEndPositionForLine):
   15086         * page/AccessibilityObject.cpp:
   15087         (WebCore::updateAXLineStartForVisiblePosition):
   15088         * page/AccessibilityRenderObject.cpp:
   15089         (WebCore::AccessibilityRenderObject::indexForVisiblePosition):
   15090         * page/DOMSelection.cpp:
   15091         (WebCore::DOMSelection::anchorOffset):
   15092         (WebCore::DOMSelection::focusOffset):
   15093         (WebCore::DOMSelection::baseOffset):
   15094         (WebCore::DOMSelection::extentOffset):
   15095         * page/EventHandler.cpp:
   15096         (WebCore::EventHandler::handleMousePressEventSingleClick):
   15097         * page/Frame.cpp:
   15098         (WebCore::Frame::selectionLayoutChanged):
   15099         * page/mac/AccessibilityObjectWrapper.mm:
   15100         (textMarkerForVisiblePosition):
   15101         (visiblePositionForTextMarker):
   15102         * rendering/RenderTextControl.cpp:
   15103         (WebCore::RenderTextControl::indexForVisiblePosition):
   15104         * rendering/RenderTreeAsText.cpp:
   15105         (WebCore::writeSelection):
   15106 
   15107 2009-04-29  Eric Seidel  <eric (a] webkit.org>
   15108 
   15109         No review, rolling out a patch.
   15110 
   15111         Revert http://trac.webkit.org/changeset/43019
   15112 
   15113         New tests failed because I removed the tabs from them
   15114         when landing (since we avoid tabs in WebKit files).
   15115         I couldn't tell if the new results were correct with
   15116         spaces or not.
   15117 
   15118         * editing/SelectionController.cpp:
   15119         (WebCore::SelectionController::modifyExtendingForward):
   15120         (WebCore::SelectionController::modifyMovingForward):
   15121         (WebCore::SelectionController::modifyExtendingBackward):
   15122         (WebCore::SelectionController::modifyMovingBackward):
   15123         * editing/visible_units.cpp:
   15124         * editing/visible_units.h:
   15125 
   15126 2009-04-29  David Hyatt  <hyatt (a] apple.com>
   15127 
   15128         Reviewed by Dan Bernstein.
   15129 
   15130         Fix for <rdar://problem/6828164>, Mail hits the !root->needsLayout() assert because it re-marks the FrameView for layout
   15131         when the FrameView is resized.  This bug was exposed by the elimination of the separate WebKit layout
   15132         flag on Mac.  
   15133         
   15134         FrameView now defers setNeedsLayouts during size changes.  Once all of the size changes are finished (including re-entrant ones
   15135         from WebDynamicScrollbarsView and ScrollView::updateScrollbars) we then do a layout if necessary.
   15136 
   15137         * page/FrameView.cpp:
   15138         (WebCore::FrameView::FrameView):
   15139         (WebCore::FrameView::setContentsSize):
   15140         (WebCore::FrameView::layout):
   15141         (WebCore::FrameView::needsLayout):
   15142         (WebCore::FrameView::setNeedsLayout):
   15143         * page/FrameView.h:
   15144 
   15145 2009-04-29  Eric Seidel  <eric (a] webkit.org>
   15146 
   15147         No review, rolling out a patch.
   15148 
   15149         Revert 43020 as it caused accessibility/lists.html to fail
   15150         and no one is around to tell me if it's a progression or not.
   15151 
   15152         * page/AccessibilityObject.h:
   15153         (WebCore::):
   15154         * page/AccessibilityRenderObject.cpp:
   15155         (WebCore::AccessibilityRenderObject::roleValue):
   15156         (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
   15157         * page/mac/AccessibilityObjectWrapper.mm:
   15158         (RoleEntry::):
   15159 
   15160 2009-04-29  Sankar Aditya Tanguturi  <sankaraditya (a] gmail.com>
   15161 
   15162         Reviewed by Jon Honeycutt.
   15163 
   15164         Add a new accessibility role for list items. Part of
   15165         http://bugs.webkit.org/show_id.cgi?id=20013
   15166 
   15167         Tests: platform/win/accessibility/listitem-role.html
   15168 
   15169         * page/AccessibilityObject.h:
   15170         (WebCore::):  Add ListItemRole to accessibilityRole enum.
   15171         * page/AccessibilityRenderObject.cpp:
   15172         (WebCore::AccessibilityRenderObject::roleValue):Return
   15173         listItemRole when rendered object is a list item.
   15174         (WebCore::AccessibilityRenderObject::canSetFocusAttribute): Return
   15175         true for ListItemRole, matching firefox.
   15176         * page/mac/AccessibilityObjectWrapper.mm:
   15177         (RoleEntry::): Map ListItemRole with NSAccessibilityGroupRole in
   15178         MAC.
   15179 
   15180 2009-04-29  Xiaomei Ji  <xji (a] chromium.org>
   15181 
   15182         Reviewed by Dan Bernstein.
   15183 
   15184         Fix https://bugs.webkit.org/show_bug.cgi?id=24168
   15185         RTL: Home/End key does not behave correctly in mixed bidi text in RTL document
   15186 
   15187         Test: editing/selection/home-end.html
   15188 
   15189         * editing/SelectionController.cpp:
   15190         (WebCore::SelectionController::modifyExtendingForward): Change calling endOfLine()
   15191         to logicalEndOfLine() when granularity is LineBoundary.
   15192         (WebCore::SelectionController::modifyMovingForward): Change calling endOfLine()
   15193         to logicalEndOfLine() when granularity is LineBoundary
   15194         (WebCore::SelectionController::modifyExtendingBackward): Change calling 
   15195         startOfLine() to logicalStartOfLine() when granularity is LineBoundary.
   15196         (WebCore::SelectionController::modifyMovingBackward): Change calling startOfLine() 
   15197         to logicalStartOfLine() when granularity is LineBoundary.
   15198         * editing/visible_units.cpp:
   15199         (WebCore::getLeafBoxesInLogicalOrder): Added. Reconstruct leaf boxes in logical order.
   15200         (WebCore::getLogicalStartBoxAndNode): Added.
   15201         (WebCore::getLogicalEndBoxAndNode): Added.
   15202         (WebCore::logicalStartPositionForLine): Added. Similar to startPositionForLine.
   15203         (WebCore::logicalStartOfLine): Added. Similar to startOfLine.
   15204         (WebCore::logicalEndPositionForLine): Added. Similar to endPositionForLine.
   15205         (WebCore::inSameLogicalLine): Added.
   15206         (WebCore::logicalEndOfLine): Added. Similar to endOfLine.
   15207         * editing/visible_units.h:
   15208 
   15209 2009-04-29  Mike Belshe  <mike (a] belshe.com>
   15210 
   15211         Reviewed by Eric Seidel.
   15212 
   15213         Update location while page is loading.
   15214         https://bugs.webkit.org/show_bug.cgi?id=21597
   15215 
   15216         Tested by:
   15217         - fast/dom/location-new-window-no-crash
   15218         - fast/dom/Window/window-open-pending-url
   15219 
   15220         * page/Location.cpp:
   15221 
   15222 2009-04-29  Feng Qian  <feng (a] chromium.org>
   15223 
   15224         Reviewed by Darin Adler.
   15225 
   15226         Add Android port files to WebCore/platform.
   15227         https://bugs.webkit.org/show_bug.cgi?id=23296
   15228 
   15229         * platform/android: Added.
   15230         * platform/android/ClipboardAndroid.cpp: Added.
   15231         * platform/android/ClipboardAndroid.h: Added.
   15232 
   15233 2009-04-29  Feng Qian  <feng (a] chromium.org>
   15234 
   15235         Reviewed by Darin Adler.
   15236 
   15237         Add Android-specific files to the WebCore/page directory.
   15238         https://bugs.webkit.org/show_bug.cgi?id=23295
   15239 
   15240         * page/android: Added.
   15241         * page/android/DragControllerAndroid.cpp: Added.
   15242         * page/android/EventHandlerAndroid.cpp: Added.
   15243         * page/android/InspectorControllerAndroid.cpp: Added.
   15244 
   15245 2009-04-29  Pavel Feldman  <pfeldman (a] chromium.org>
   15246 
   15247         Reviewed by Timothy Hatcher.
   15248 
   15249         Extract PageGroupLoadDeferrer from Chrome.cpp
   15250 
   15251         * GNUmakefile.am: added PageGroupLoadDeferrer
   15252         * WebCore.pro: ditto
   15253         * WebCore.scons: ditto
   15254         * WebCore.vcproj/WebCore.vcproj: ditto
   15255         * WebCore.xcodeproj/project.pbxproj: ditto
   15256         * WebCoreSources.bkl: ditto
   15257         * page/Chrome.cpp: PageGroupLoadDeferrer impl moved to a separate class.
   15258         * page/PageGroupLoadDeferrer.cpp: Added.
   15259         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
   15260         (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
   15261         * page/PageGroupLoadDeferrer.h: Added.
   15262 
   15263 2009-04-24  Ojan Vafai  <ojan (a] chromium.org>
   15264 
   15265         Reviewed by Dan Bernstein.
   15266 
   15267         Make textarea and text input metrics more closely match IEs.
   15268 
   15269         This involves:
   15270         -set text input width to size*avgCharWidth + maxCharWidth - avgCharWidth
   15271         -set textarea width to cols*avgCharWidth
   15272         -Make default CSS match IEs
   15273         -Correctly initializing m_avgCharWidth and m_maxCharWidth for each platform and SVG.
   15274 
   15275         Those values for textarea and inputs were derived by doing a ton of manual
   15276         testing of IE's width values for various textareas and fonts. On Windows we match
   15277         IE exactly except for a couple fonts of the ~12 tested.
   15278 
   15279         To get the average and max character width of a font, we do the following
   15280         for each platform:
   15281         -Win: TextMetrics expose avgCharWidth and maxCharWidth
   15282         -SVG: avgCharWidth = width of an '0', fallback on width of a space glyph, then m_xHeight
   15283             maxCharWidth = width of a 'W' for roman fonts, fallback on m_ascent
   15284         -Linux: avgCharWidth = width of an '0', fallback on m_xHeight
   15285             maxCharWidth = max of avgCharWidth and m_ascent
   15286         -Mac: Calculate the avgCharWidth and grab the maxCharWidth off the font.
   15287             If either one is non-positive, then calculate the value using the Linux approach.
   15288 
   15289         Tests: fast/forms/text-control-intrinsic-widths.html
   15290                fast/forms/textarea-metrics.html
   15291                svg/custom/svg-fonts-in-text-controls.html
   15292 
   15293         * css/html4.css:
   15294         * css/themeWin.css:
   15295         * platform/graphics/SimpleFontData.cpp:
   15296         (WebCore::SimpleFontData::SimpleFontData):
   15297         (WebCore::SimpleFontData::initCharWidths):
   15298         * platform/graphics/SimpleFontData.h:
   15299         (WebCore::SimpleFontData::maxCharWidth):
   15300         (WebCore::SimpleFontData::avgCharWidth):
   15301         * platform/graphics/chromium/SimpleFontDataChromiumWin.cpp:
   15302         (WebCore::SimpleFontData::platformCharWidthInit):
   15303         * platform/graphics/chromium/SimpleFontDataLinux.cpp:
   15304         (WebCore::SimpleFontData::platformCharWidthInit):
   15305         * platform/graphics/gtk/SimpleFontDataGtk.cpp:
   15306         (WebCore::SimpleFontData::platformCharWidthInit):
   15307         * platform/graphics/gtk/SimpleFontDataPango.cpp:
   15308         (WebCore::SimpleFontData::platformCharWidthInit):
   15309         * platform/graphics/mac/SimpleFontDataMac.mm:
   15310         (WebCore::SimpleFontData::platformCharWidthInit):
   15311         * platform/graphics/qt/SimpleFontDataQt.cpp:
   15312         (WebCore::SimpleFontData::platformCharWidthInit):
   15313         * platform/graphics/win/SimpleFontDataCGWin.cpp:
   15314         (WebCore::SimpleFontData::platformCharWidthInit):
   15315         * platform/graphics/win/SimpleFontDataCairoWin.cpp:
   15316         (WebCore::SimpleFontData::platformInit):
   15317         (WebCore::SimpleFontData::platformCharWidthInit):
   15318         * platform/graphics/win/SimpleFontDataWin.cpp:
   15319         (WebCore::SimpleFontData::initGDIFont):
   15320         * platform/graphics/wx/SimpleFontDataWx.cpp:
   15321         (WebCore::SimpleFontData::platformCharWidthInit):
   15322         * rendering/RenderTextControl.cpp:
   15323         (WebCore::RenderTextControl::calcPrefWidths):
   15324         * rendering/RenderTextControlMultiLine.cpp:
   15325         (WebCore::RenderTextControlMultiLine::createInnerTextStyle):
   15326         * rendering/RenderTextControlSingleLine.cpp:
   15327         (WebCore::RenderTextControlSingleLine::preferredContentWidth):
   15328 
   15329 2009-04-29  Brady Eidson  <beidson (a] apple.com>
   15330 
   15331         Reviewed by Darin Adler.
   15332 
   15333         * bindings/objc/DOMCSS.mm:
   15334         (kitClass):  Added CSS_INITIAL to the switch statement, and changed to use the WebCore
   15335           type and not the binding type.
   15336 
   15337 2009-04-29  John Abd-El-Malek  <jam (a] google.com>
   15338 
   15339         Reviewed by Dimitri Glazkov.
   15340 
   15341         Reverted my previous change to add resetChromiumPluginCache().
   15342         https://bugs.webkit.org/show_bug.cgi?id=25318
   15343 
   15344         * plugins/chromium/PluginDataChromium.cpp:
   15345 
   15346 2009-04-29  Brady Eidson  <beidson (a] apple.com>
   15347 
   15348         Reviewed by Darin Adler.
   15349 
   15350         <rdar://problem/6573742> - Problem dragging standalone images from Safari to Mail
   15351 
   15352         Roll out trac.webkit.org/changeset/35867 which fixed <rdar://problem/6153432>
   15353 
   15354         Cloned <rdar://problem/6153432> to <rdar://problem/6839881> to find a better fix for that Tiger Mail bug.
   15355 
   15356         * loader/DocumentLoader.cpp:
   15357         (WebCore::DocumentLoader::subresource): Remove the preload referenced check.
   15358 
   15359 2009-04-29  Alpha Lam  <hclam (a] chromium.org>
   15360 
   15361         Reviewed by Dimitri Glazkov.
   15362 
   15363         https://bugs.webkit.org/show_bug.cgi?id=25430
   15364 
   15365         Provide style sheet for UI controls of media elements for Chromium port.
   15366 
   15367         * rendering/RenderThemeChromiumWin.cpp:
   15368         (WebCore::RenderThemeChromiumWin::extraMediaControlsStyleSheet):
   15369 
   15370 2009-04-29  John Abd-El-Malek  <jam (a] chromium.org>
   15371 
   15372         Reviewed by Darin Adler.
   15373 
   15374         Expose sudden termination to Chromium port.
   15375         https://bugs.webkit.org/show_bug.cgi?id=25457
   15376 
   15377         * platform/SuddenTermination.h:
   15378         * platform/chromium/ChromiumBridge.h:
   15379         * platform/chromium/SuddenTerminationChromium.cpp: Added.
   15380         (WebCore::disableSuddenTermination):
   15381         (WebCore::enableSuddenTermination):
   15382 
   15383 2009-04-29  Sam Weinig  <sam (a] webkit.org>
   15384 
   15385         Reviewed by Dimitri Glazkov.
   15386 
   15387         Remove unused EventListeners.
   15388 
   15389         * page/DOMWindow.idl:
   15390 
   15391 2009-04-29  Yury Semikhatsky  <yurys (a] chromium.org>
   15392 
   15393         Reveal current execution line once SourceFrame content is loaded. 
   15394 
   15395         https://bugs.webkit.org/show_bug.cgi?id=25448
   15396 
   15397         Reviewed by Timothy Hatcher.
   15398 
   15399         * inspector/front-end/SourceFrame.js:
   15400         (WebInspector.SourceFrame.prototype._loaded):
   15401 
   15402 2009-04-29  Ariya Hidayat  <ariya.hidayat (a] nokia.com>
   15403 
   15404         Reviewed by Simon Fraser.
   15405 
   15406         [Qt] Initialize GraphicsContext's and ImageBuffer's QPainter to match
   15407         the default values of canvas attributes.
   15408 
   15409         * platform/graphics/qt/ImageBufferQt.cpp:
   15410         (WebCore::ImageBufferData::ImageBufferData):
   15411 
   15412 2009-04-28  Simon Hausmann  <simon.hausmann (a] nokia.com>
   15413 
   15414         Fix the Qt build.
   15415 
   15416         * bridge/qt/qt_runtime.cpp:
   15417         (JSC::Bindings::findMethodIndex): Removed exec param from at() call.
   15418         (JSC::Bindings::QtRuntimeConnectionMethod::call): Ditto.
   15419 
   15420 2009-04-28  Geoffrey Garen  <ggaren (a] apple.com>
   15421 
   15422         Rubber stamped by Beth Dakin.
   15423         
   15424         Missed one.
   15425 
   15426         * bindings/scripts/CodeGeneratorJS.pm:
   15427 
   15428 2009-04-28  Geoffrey Garen  <ggaren (a] apple.com>
   15429 
   15430         Rubber stamped by Beth Dakin.
   15431         
   15432         Removed scaffolding supporting dynamically converting between 32bit and
   15433         64bit value representations. 
   15434 
   15435         * bindings/js/JSAudioConstructor.cpp:
   15436         (WebCore::constructAudio):
   15437         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
   15438         (WebCore::JSCanvasRenderingContext2D::setFillColor):
   15439         (WebCore::JSCanvasRenderingContext2D::setStrokeColor):
   15440         (WebCore::JSCanvasRenderingContext2D::strokeRect):
   15441         (WebCore::JSCanvasRenderingContext2D::drawImage):
   15442         (WebCore::JSCanvasRenderingContext2D::drawImageFromRect):
   15443         (WebCore::JSCanvasRenderingContext2D::setShadow):
   15444         (WebCore::JSCanvasRenderingContext2D::createPattern):
   15445         (WebCore::JSCanvasRenderingContext2D::putImageData):
   15446         (WebCore::JSCanvasRenderingContext2D::fillText):
   15447         (WebCore::JSCanvasRenderingContext2D::strokeText):
   15448         * bindings/js/JSClipboardCustom.cpp:
   15449         (WebCore::JSClipboard::clearData):
   15450         (WebCore::JSClipboard::getData):
   15451         (WebCore::JSClipboard::setData):
   15452         (WebCore::JSClipboard::setDragImage):
   15453         * bindings/js/JSDOMApplicationCacheCustom.cpp:
   15454         (WebCore::JSDOMApplicationCache::hasItem):
   15455         (WebCore::JSDOMApplicationCache::add):
   15456         (WebCore::JSDOMApplicationCache::remove):
   15457         (WebCore::JSDOMApplicationCache::addEventListener):
   15458         (WebCore::JSDOMApplicationCache::removeEventListener):
   15459         * bindings/js/JSDOMStringListCustom.cpp:
   15460         (WebCore::JSDOMStringList::item):
   15461         * bindings/js/JSDOMWindowCustom.cpp:
   15462         (WebCore::JSDOMWindow::open):
   15463         (WebCore::JSDOMWindow::showModalDialog):
   15464         (WebCore::JSDOMWindow::postMessage):
   15465         (WebCore::JSDOMWindow::setTimeout):
   15466         (WebCore::JSDOMWindow::setInterval):
   15467         (WebCore::JSDOMWindow::atob):
   15468         (WebCore::JSDOMWindow::btoa):
   15469         (WebCore::JSDOMWindow::addEventListener):
   15470         (WebCore::JSDOMWindow::removeEventListener):
   15471         * bindings/js/JSDatabaseCustom.cpp:
   15472         (WebCore::JSDatabase::changeVersion):
   15473         (WebCore::JSDatabase::transaction):
   15474         * bindings/js/JSElementCustom.cpp:
   15475         (WebCore::JSElement::setAttribute):
   15476         (WebCore::JSElement::setAttributeNode):
   15477         (WebCore::JSElement::setAttributeNS):
   15478         (WebCore::JSElement::setAttributeNodeNS):
   15479         * bindings/js/JSGeolocationCustom.cpp:
   15480         (WebCore::JSGeolocation::getCurrentPosition):
   15481         (WebCore::JSGeolocation::watchPosition):
   15482         * bindings/js/JSHTMLCollectionCustom.cpp:
   15483         (WebCore::callHTMLCollection):
   15484         (WebCore::JSHTMLCollection::item):
   15485         (WebCore::JSHTMLCollection::namedItem):
   15486         * bindings/js/JSHTMLDocumentCustom.cpp:
   15487         (WebCore::documentWrite):
   15488         * bindings/js/JSHTMLInputElementCustom.cpp:
   15489         (WebCore::JSHTMLInputElement::setSelectionRange):
   15490         * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
   15491         (WebCore::JSHTMLOptionsCollection::add):
   15492         * bindings/js/JSHTMLSelectElementCustom.cpp:
   15493         (WebCore::JSHTMLSelectElement::remove):
   15494         * bindings/js/JSImageConstructor.cpp:
   15495         (WebCore::constructImage):
   15496         * bindings/js/JSInspectorControllerCustom.cpp:
   15497         (WebCore::JSInspectorController::highlightDOMNode):
   15498         (WebCore::JSInspectorController::addResourceSourceToFrame):
   15499         (WebCore::JSInspectorController::addSourceToFrame):
   15500         (WebCore::JSInspectorController::getResourceDocumentNode):
   15501         (WebCore::JSInspectorController::search):
   15502         (WebCore::JSInspectorController::databaseTableNames):
   15503         (WebCore::JSInspectorController::setting):
   15504         (WebCore::JSInspectorController::setSetting):
   15505         (WebCore::JSInspectorController::wrapCallback):
   15506         * bindings/js/JSJavaScriptCallFrameCustom.cpp:
   15507         (WebCore::JSJavaScriptCallFrame::evaluate):
   15508         * bindings/js/JSLocationCustom.cpp:
   15509         (WebCore::JSLocation::replace):
   15510         (WebCore::JSLocation::assign):
   15511         * bindings/js/JSMessagePortCustom.cpp:
   15512         (WebCore::JSMessagePort::startConversation):
   15513         (WebCore::JSMessagePort::addEventListener):
   15514         (WebCore::JSMessagePort::removeEventListener):
   15515         * bindings/js/JSNodeCustom.cpp:
   15516         (WebCore::JSNode::insertBefore):
   15517         (WebCore::JSNode::replaceChild):
   15518         (WebCore::JSNode::removeChild):
   15519         (WebCore::JSNode::appendChild):
   15520         (WebCore::JSNode::addEventListener):
   15521         (WebCore::JSNode::removeEventListener):
   15522         * bindings/js/JSNodeFilterCustom.cpp:
   15523         (WebCore::JSNodeFilter::acceptNode):
   15524         * bindings/js/JSNodeListCustom.cpp:
   15525         (WebCore::callNodeList):
   15526         * bindings/js/JSOptionConstructor.cpp:
   15527         (WebCore::constructHTMLOptionElement):
   15528         * bindings/js/JSQuarantinedObjectWrapper.cpp:
   15529         (WebCore::JSQuarantinedObjectWrapper::construct):
   15530         (WebCore::JSQuarantinedObjectWrapper::call):
   15531         * bindings/js/JSSQLResultSetRowListCustom.cpp:
   15532         (WebCore::JSSQLResultSetRowList::item):
   15533         * bindings/js/JSSQLTransactionCustom.cpp:
   15534         (WebCore::JSSQLTransaction::executeSql):
   15535         * bindings/js/JSSVGElementInstanceCustom.cpp:
   15536         (WebCore::JSSVGElementInstance::addEventListener):
   15537         (WebCore::JSSVGElementInstance::removeEventListener):
   15538         * bindings/js/JSSVGLengthCustom.cpp:
   15539         (WebCore::JSSVGLength::convertToSpecifiedUnits):
   15540         * bindings/js/JSSVGMatrixCustom.cpp:
   15541         (WebCore::JSSVGMatrix::rotateFromVector):
   15542         * bindings/js/JSSVGPathSegListCustom.cpp:
   15543         (WebCore::JSSVGPathSegList::initialize):
   15544         (WebCore::JSSVGPathSegList::getItem):
   15545         (WebCore::JSSVGPathSegList::insertItemBefore):
   15546         (WebCore::JSSVGPathSegList::replaceItem):
   15547         (WebCore::JSSVGPathSegList::removeItem):
   15548         (WebCore::JSSVGPathSegList::appendItem):
   15549         * bindings/js/JSSVGPointListCustom.cpp:
   15550         (WebCore::JSSVGPointList::initialize):
   15551         (WebCore::JSSVGPointList::getItem):
   15552         (WebCore::JSSVGPointList::insertItemBefore):
   15553         (WebCore::JSSVGPointList::replaceItem):
   15554         (WebCore::JSSVGPointList::removeItem):
   15555         (WebCore::JSSVGPointList::appendItem):
   15556         * bindings/js/JSSVGTransformListCustom.cpp:
   15557         (WebCore::JSSVGTransformList::initialize):
   15558         (WebCore::JSSVGTransformList::getItem):
   15559         (WebCore::JSSVGTransformList::insertItemBefore):
   15560         (WebCore::JSSVGTransformList::replaceItem):
   15561         (WebCore::JSSVGTransformList::removeItem):
   15562         (WebCore::JSSVGTransformList::appendItem):
   15563         * bindings/js/JSWebKitCSSMatrixConstructor.cpp:
   15564         (WebCore::constructWebKitCSSMatrix):
   15565         * bindings/js/JSWebKitPointConstructor.cpp:
   15566         (WebCore::constructWebKitPoint):
   15567         * bindings/js/JSWorkerConstructor.cpp:
   15568         (WebCore::constructWorker):
   15569         * bindings/js/JSWorkerContextCustom.cpp:
   15570         (WebCore::JSWorkerContext::importScripts):
   15571         (WebCore::JSWorkerContext::addEventListener):
   15572         (WebCore::JSWorkerContext::removeEventListener):
   15573         (WebCore::JSWorkerContext::setTimeout):
   15574         (WebCore::JSWorkerContext::setInterval):
   15575         * bindings/js/JSWorkerCustom.cpp:
   15576         (WebCore::JSWorker::addEventListener):
   15577         (WebCore::JSWorker::removeEventListener):
   15578         * bindings/js/JSXMLHttpRequestCustom.cpp:
   15579         (WebCore::JSXMLHttpRequest::open):
   15580         (WebCore::JSXMLHttpRequest::setRequestHeader):
   15581         (WebCore::JSXMLHttpRequest::send):
   15582         (WebCore::JSXMLHttpRequest::getResponseHeader):
   15583         (WebCore::JSXMLHttpRequest::overrideMimeType):
   15584         (WebCore::JSXMLHttpRequest::addEventListener):
   15585         (WebCore::JSXMLHttpRequest::removeEventListener):
   15586         * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
   15587         (WebCore::JSXMLHttpRequestUpload::addEventListener):
   15588         (WebCore::JSXMLHttpRequestUpload::removeEventListener):
   15589         * bindings/js/JSXSLTProcessorCustom.cpp:
   15590         (WebCore::JSXSLTProcessor::importStylesheet):
   15591         (WebCore::JSXSLTProcessor::transformToFragment):
   15592         (WebCore::JSXSLTProcessor::transformToDocument):
   15593         (WebCore::JSXSLTProcessor::setParameter):
   15594         (WebCore::JSXSLTProcessor::getParameter):
   15595         (WebCore::JSXSLTProcessor::removeParameter):
   15596         * bindings/js/ScheduledAction.cpp:
   15597         (WebCore::ScheduledAction::create):
   15598         (WebCore::ScheduledAction::ScheduledAction):
   15599         * bindings/js/ScheduledAction.h:
   15600         * bindings/js/ScriptCallFrame.cpp:
   15601         (WebCore::ScriptCallFrame::ScriptCallFrame):
   15602         * bindings/js/ScriptCallFrame.h:
   15603         * bindings/js/ScriptCallStack.cpp:
   15604         (WebCore::ScriptCallStack::ScriptCallStack):
   15605         (WebCore::ScriptCallStack::initialize):
   15606         * bridge/c/c_instance.cpp:
   15607         (JSC::Bindings::CInstance::invokeMethod):
   15608         (JSC::Bindings::CInstance::invokeDefaultMethod):
   15609         (JSC::Bindings::CInstance::invokeConstruct):
   15610         * bridge/jni/jni_instance.cpp:
   15611         (JavaInstance::invokeMethod):
   15612         * bridge/objc/objc_instance.mm:
   15613         (ObjcInstance::invokeMethod):
   15614         (ObjcInstance::invokeDefaultMethod):
   15615 
   15616 2009-04-28  David Carson  <dacarson (a] apple.com>
   15617 
   15618         Reviewed by David Hyatt.
   15619 
   15620         Restore alignment to device pixel boundaries.
   15621         https://bugs.webkit.org/show_bug.cgi?id=25458
   15622 
   15623         Adjust the adjusted destination rect to be device pixel aligned.
   15624 
   15625         * platform/graphics/cg/ImageCG.cpp:
   15626         (WebCore::BitmapImage::draw):
   15627 
   15628 2009-04-28  Sam Weinig  <sam (a] webkit.org>
   15629 
   15630         Reviewed by Anders Carlsson.
   15631 
   15632         Move unimplemented captureEvents and releaseEvents from JSDOMWindow
   15633         to DOMWindow.
   15634 
   15635         * bindings/js/JSDOMWindowCustom.cpp:
   15636         * page/DOMWindow.cpp:
   15637         (WebCore::DOMWindow::captureEvents):
   15638         (WebCore::DOMWindow::releaseEvents):
   15639         * page/DOMWindow.h:
   15640         * page/DOMWindow.idl:
   15641 
   15642 2009-04-28  Alexey Proskuryakov  <ap (a] webkit.org>
   15643 
   15644         Reviewed by Darin Adler.
   15645 
   15646         https://bugs.webkit.org/show_bug.cgi?id=25420
   15647         <rdar://problem/6829570> REGRESSION: XMLHttpRequest allows loading from another origin
   15648 
   15649         Test: http/tests/xmlhttprequest/detaching-frame-2.html
   15650 
   15651         This was caused by faulty DOMWindow::document(), which could return a new document from
   15652         the window's frame after navigation.
   15653 
   15654         * bindings/js/JSDOMWindowCustom.h: (WebCore::JSDOMWindowBase::allowsAccessFromPrivate):
   15655         Removed an obsolete check that allowed access when document was null. Contrary to what a
   15656         comment said, that can happen for a window that is no longer in frame, not to one whose
   15657         document is not constructed yet.
   15658 
   15659         * bindings/js/JSXMLHttpRequestConstructor.cpp: (WebCore::constructXMLHttpRequest): Bail
   15660         out if context was not found. This currently happens due to a shortcoming in
   15661         DOMWindow::document() - when it is fixed, the XMLHttpRequest object in included regression
   15662         test will be constructed successfully, but won't be sent, because its context will be
   15663         frameless.
   15664 
   15665         * page/DOMWindow.cpp: (WebCore::DOMWindow::document): Check that the window in frame hasn't
   15666         been replaced yet. Added FIXME comments about how this may be better fixed in the future.
   15667 
   15668         * bindings/js/JSAudioConstructor.cpp:
   15669         (WebCore::JSAudioConstructor::document):
   15670         (WebCore::constructAudio):
   15671         * bindings/js/JSImageConstructor.cpp:
   15672         (WebCore::JSImageConstructor::document):
   15673         (WebCore::constructImage):
   15674         * bindings/js/JSMessageChannelConstructor.cpp:
   15675         (WebCore::JSMessageChannelConstructor::construct):
   15676         * bindings/js/JSOptionConstructor.cpp:
   15677         (WebCore::JSOptionConstructor::document):
   15678         (WebCore::constructHTMLOptionElement):
   15679         Make matching changes to other constructors that hold a reference to global object.
   15680 
   15681 2009-04-28  Kevin Ollivier <kevino (a] theolliviers.com>
   15682 
   15683         wxMSW build fix. Switch JSCore build back to static.
   15684 
   15685         * config.h:
   15686 
   15687 2009-04-28  Pierre d'Herbemont  <pdherbemont (a] apple.com>
   15688 
   15689         Reviewed by Simon Fraser.
   15690 
   15691         <rdar://problem/6834830>
   15692 
   15693         Make sure we cover the two possible values reported by event.total that are playback engine
   15694         specific.
   15695 
   15696         * media/progress-event-total-expected.txt: Match the new test.
   15697         * media/progress-event-total.html: Test the two values.
   15698 
   15699 2009-04-28  Timothy Hatcher  <timothy (a] apple.com>
   15700 
   15701         Rename -[DOMRange lineBoxRects] to -[DOMRange textRects] and change how it
   15702         collects the individual rects, making sure to only include RenderText.
   15703 
   15704         <rdar://problem/6810061>
   15705 
   15706         Reviewed by Sam Weinig.
   15707 
   15708         * bindings/objc/DOM.mm:
   15709         (-[DOMNode textRects]): Added. Make a Range and call textRects.
   15710         (-[DOMNode lineBoxRects]): Call textRects method.
   15711         (-[DOMRange textRects]): Call Range::textRects.
   15712         (-[DOMRange lineBoxRects]): Call textRects method.
   15713         * bindings/objc/DOMPrivate.h: Add the new methods and a comment
   15714         about lineBoxRects being deprecated.
   15715         * dom/Range.cpp:
   15716         (WebCore::Range::boundingBox): Call textRects (renamed from addLineBoxRects).
   15717         (WebCore::Range::textRects): Renamed from addLineBoxRects. Iterate over the
   15718         nodes instead of the RenderObjects to correctly account for offsets. Also
   15719         only call absoluteRectsForRange on RenderText.
   15720         * dom/Range.h: Renamed addLineBoxRects to textRects.
   15721         * page/Frame.cpp:
   15722         (WebCore::Frame::selectionTextRects): Call textRects (renamed from addLineBoxRects).
   15723         * rendering/RenderObject.cpp:
   15724         (WebCore::RenderObject::absoluteRectsForRange): Remove if conditions that made this
   15725         function very specific for the lineBoxRects API. These functions are still used
   15726         by the InspectorController, and this change improves what the Inspector shows.
   15727         (WebCore::RenderObject::absoluteQuadsForRange): Ditto.
   15728 
   15729 2009-04-28  Timothy Hatcher  <timothy (a] apple.com>
   15730 
   15731         Remove the topLevel boolean argument from absolute{Rects,Quads}.
   15732         This argument was default to true and no one ever passed false.
   15733 
   15734         Reviewed by Sam Weinig.
   15735 
   15736         * rendering/RenderBlock.cpp:
   15737         (WebCore::RenderBlock::absoluteRects):
   15738         (WebCore::RenderBlock::absoluteQuads):
   15739         * rendering/RenderBlock.h:
   15740         * rendering/RenderBox.cpp:
   15741         (WebCore::RenderBox::absoluteRects):
   15742         (WebCore::RenderBox::absoluteQuads):
   15743         * rendering/RenderBox.h:
   15744         * rendering/RenderInline.cpp:
   15745         (WebCore::RenderInline::absoluteRects):
   15746         (WebCore::RenderInline::absoluteQuads):
   15747         * rendering/RenderInline.h:
   15748         * rendering/RenderObject.h:
   15749         (WebCore::RenderObject::absoluteRects):
   15750         (WebCore::RenderObject::absoluteQuads):
   15751         * rendering/RenderSVGHiddenContainer.cpp:
   15752         (WebCore::RenderSVGHiddenContainer::absoluteRects):
   15753         (WebCore::RenderSVGHiddenContainer::absoluteQuads):
   15754         * rendering/RenderSVGHiddenContainer.h:
   15755         * rendering/RenderSVGImage.cpp:
   15756         (WebCore::RenderSVGImage::absoluteRects):
   15757         (WebCore::RenderSVGImage::absoluteQuads):
   15758         * rendering/RenderSVGImage.h:
   15759         * rendering/RenderSVGInlineText.cpp:
   15760         (WebCore::RenderSVGInlineText::absoluteRects):
   15761         (WebCore::RenderSVGInlineText::absoluteQuads):
   15762         * rendering/RenderSVGInlineText.h:
   15763         * rendering/RenderSVGModelObject.cpp:
   15764         (WebCore::RenderSVGModelObject::absoluteRects):
   15765         (WebCore::RenderSVGModelObject::absoluteQuads):
   15766         * rendering/RenderSVGModelObject.h:
   15767         * rendering/RenderSVGTSpan.cpp:
   15768         (WebCore::RenderSVGTSpan::absoluteRects):
   15769         (WebCore::RenderSVGTSpan::absoluteQuads):
   15770         * rendering/RenderSVGTSpan.h:
   15771         * rendering/RenderSVGText.cpp:
   15772         (WebCore::RenderSVGText::absoluteRects):
   15773         (WebCore::RenderSVGText::absoluteQuads):
   15774         * rendering/RenderSVGText.h:
   15775         * rendering/RenderSVGTextPath.cpp:
   15776         (WebCore::RenderSVGTextPath::absoluteQuads):
   15777         * rendering/RenderSVGTextPath.h:
   15778         * rendering/RenderText.cpp:
   15779         (WebCore::RenderText::absoluteRects):
   15780         * rendering/RenderText.h:
   15781         * rendering/RenderView.cpp:
   15782         (WebCore::RenderView::absoluteRects):
   15783         (WebCore::RenderView::absoluteQuads):
   15784         * rendering/RenderView.h:
   15785 
   15786 2009-04-28  Eric Carlson  <eric.carlson (a] apple.com>
   15787 
   15788         Reviewed by Simon Fraser.
   15789 
   15790         <rdar://problem/6794691> Media documents and <video controls> never show controls on Windows
   15791 
   15792         RenderThemeWin doesn't implement the media element controller rendering methods, so media
   15793         controls stopped rendering when we switched from RenderThemeSafari. Rather than having copies
   15794         of the code in both places, the logic is in a new class that is called from both.
   15795 
   15796         * WebCore.vcproj/WebCore.vcproj: Add RenderMediaControls.cpp.
   15797 
   15798         * rendering/RenderMediaControls.cpp: Added.
   15799         (WebCore::determineState): Translate renderer state to ThemeControlState.
   15800         (WebCore::RenderMediaControls::adjustMediaSliderThumbSize): Adjust slider thumb.
   15801         (WebCore::parentMediaElement): Return the HTMLMediaElement parent of a controller element.
   15802         (WebCore::RenderMediaControls::paintMediaControlsPart): Paint a media controller part.
   15803         * rendering/RenderMediaControls.h: Added.
   15804 
   15805         * rendering/RenderThemeSafari.cpp:
   15806         (WebCore::RenderThemeSafari::paintSliderTrack): Remove the MediaSliderPart case, it is never
   15807         called for the media slider.
   15808         (WebCore::RenderThemeSafari::adjustSliderThumbSize): Call RenderMediaControls function.
   15809         (WebCore::RenderThemeSafari::paintMediaFullscreenButton): Ditto.
   15810         (WebCore::RenderThemeSafari::paintMediaMuteButton): Ditto.
   15811         (WebCore::RenderThemeSafari::paintMediaPlayButton): Ditto.
   15812         (WebCore::RenderThemeSafari::paintMediaSeekBackButton): Ditto.
   15813         (WebCore::RenderThemeSafari::paintMediaSeekForwardButton): Ditto.
   15814         (WebCore::RenderThemeSafari::paintMediaSliderTrack): Ditto.
   15815         (WebCore::RenderThemeSafari::paintMediaSliderThumb): Ditto.
   15816 
   15817         * rendering/RenderThemeWin.cpp:
   15818         (WebCore::RenderThemeWin::adjustSliderThumbSize): Ditto.
   15819         (WebCore::RenderThemeWin::paintMediaFullscreenButton): Ditto.
   15820         (WebCore::RenderThemeWin::paintMediaMuteButton): Ditto.
   15821         (WebCore::RenderThemeWin::paintMediaPlayButton): Ditto.
   15822         (WebCore::RenderThemeWin::paintMediaSeekBackButton): Ditto.
   15823         (WebCore::RenderThemeWin::paintMediaSeekForwardButton): Ditto.
   15824         (WebCore::RenderThemeWin::paintMediaSliderTrack): Ditto.
   15825         (WebCore::RenderThemeWin::paintMediaSliderThumb): Ditto.
   15826         * rendering/RenderThemeWin.h:
   15827 
   15828 2009-04-28  Beth Dakin  <bdakin (a] apple.com>
   15829 
   15830         Reviewed by Sam Weinig.
   15831 
   15832         Fix for <rdar://problem/6419515> REGRESSION (r31037): Positioned 
   15833         images with % height are collapsed when printing
   15834 
   15835         * rendering/RenderBox.cpp:
   15836         (WebCore::RenderBox::calcHeight): Make sure we don't ignore 
   15837         printing here!
   15838 
   15839 2009-04-28  Adele Peterson  <adele (a] apple.com>
   15840 
   15841         Reviewed by Darin Adler.
   15842 
   15843         Fix for <rdar://problem/6617298> Typing delete on an unquoted blank line unquotes the preceding, quoted blank line
   15844 
   15845         Test: editing/deleting/type-delete-after-quote.html
   15846 
   15847         When a selection is deleted that contains a whole number paragraphs plus a line break, we refrain from merging paragraphs after the delete,
   15848         since it is unclear to most users that such a selection actually ends at the start of the next paragraph.  However, when a user hits delete 
   15849         with a caret selection, they actually do expect the start of that paragraph to be merged into the paragraph before it.  We can tell that 
   15850         we're in this state because the TypingCommand creates the selection to delete but it doesn't change the endingSelection.  So we can tell
   15851         that if we started with a caret selection, then we're not in this special case where we have to protect the user from unexpected behavior 
   15852         from deleting a range they selected.
   15853 
   15854         * editing/DeleteSelectionCommand.cpp: (WebCore::DeleteSelectionCommand::initializePositionData):
   15855 
   15856 2009-04-28  Xan Lopez  <xlopez (a] igalia.com>
   15857 
   15858         Unreviewed: fix distcheck build, add missing header to file list.
   15859 
   15860         * GNUmakefile.am:
   15861 
   15862 2009-04-27  Eric Seidel  <eric (a] webkit.org>
   15863 
   15864         Reviewed by Sam Weinig.
   15865 
   15866         Fix foreignObject transform order
   15867         https://bugs.webkit.org/show_bug.cgi?id=25433
   15868 
   15869         Transforms were being applied in the wrong order.
   15870         When mapping from local to parent, first apply the viewport transform
   15871         then map from the viewport box to the parent box.
   15872 
   15873         * rendering/RenderForeignObject.cpp:
   15874         (WebCore::RenderForeignObject::localToParentTransform):
   15875 
   15876 2009-04-27  Eric Seidel  <eric (a] webkit.org>
   15877 
   15878         Reviewed by Simon Fraser.
   15879 
   15880         Simplify nodeAtPoint for SVG
   15881         https://bugs.webkit.org/show_bug.cgi?id=25432
   15882 
   15883         Added a new nodeAtFloatPoint method which takes a FloatPoint
   15884         instead of the *super confusing* x/y tx/ty pairs that HTML uses.
   15885         Mostly this is just lots of minus-lines as the new code is *much* simpler.
   15886 
   15887         I made all the SVG renderers use the new nodeAtFloatPoint and ASSERT_NOT_REACHED
   15888         for the nodeAtPoint HTML/CSS int x/y version.
   15889 
   15890         Eventually the rest of CSS/HTML render objects will follow suit
   15891         and move to nodeAtFloatPoint (possibly renamed back to nodeAtPoint), but changing them
   15892         over was well outside the scope of this change.
   15893 
   15894         SVG hit testing is not actually floating point precise yet, since its still
   15895         passed in an integer x/y.  Certain transform hit-test edge cases are likely fixed
   15896         by moving to FloatPoint here, but I didn't try to find one.
   15897 
   15898         This should not cause functional changes for common-case hit testing, thus
   15899         no tests changed, nor should new tests be needed.
   15900 
   15901         * rendering/RenderForeignObject.cpp:
   15902         (WebCore::RenderForeignObject::translationForAttributes):
   15903         (WebCore::RenderForeignObject::paint):
   15904         (WebCore::RenderForeignObject::computeRectForRepaint):
   15905         (WebCore::RenderForeignObject::localToParentTransform):
   15906         (WebCore::RenderForeignObject::layout):
   15907         (WebCore::RenderForeignObject::nodeAtFloatPoint):
   15908         * rendering/RenderForeignObject.h:
   15909         * rendering/RenderObject.cpp:
   15910         (WebCore::RenderObject::nodeAtFloatPoint):
   15911         * rendering/RenderObject.h:
   15912         * rendering/RenderPath.cpp:
   15913         (WebCore::RenderPath::nodeAtFloatPoint):
   15914         * rendering/RenderPath.h:
   15915         * rendering/RenderSVGContainer.cpp:
   15916         (WebCore::RenderSVGContainer::nodeAtFloatPoint):
   15917         * rendering/RenderSVGContainer.h:
   15918         (WebCore::RenderSVGContainer::pointIsInsideViewportClip):
   15919         * rendering/RenderSVGHiddenContainer.cpp:
   15920         (WebCore::RenderSVGHiddenContainer::nodeAtFloatPoint):
   15921         * rendering/RenderSVGHiddenContainer.h:
   15922         * rendering/RenderSVGImage.cpp:
   15923         (WebCore::RenderSVGImage::paint):
   15924         (WebCore::RenderSVGImage::nodeAtFloatPoint):
   15925         * rendering/RenderSVGImage.h:
   15926         (WebCore::RenderSVGImage::localToParentTransform):
   15927         (WebCore::RenderSVGImage::localTransform):
   15928         * rendering/RenderSVGModelObject.cpp:
   15929         (WebCore::RenderSVGModelObject::nodeAtFloatPoint):
   15930         * rendering/RenderSVGModelObject.h:
   15931         * rendering/RenderSVGRoot.cpp:
   15932         (WebCore::RenderSVGRoot::nodeAtFloatPoint):
   15933         * rendering/RenderSVGText.cpp:
   15934         (WebCore::RenderSVGText::nodeAtFloatPoint):
   15935         * rendering/RenderSVGText.h:
   15936         * rendering/RenderSVGViewportContainer.cpp:
   15937         (WebCore::RenderSVGViewportContainer::pointIsInsideViewportClip):
   15938         * rendering/RenderSVGViewportContainer.h:
   15939 
   15940 2009-04-28  Eric Carlson  <eric.carlson (a] apple.com>
   15941 
   15942         - fix the Tiger build
   15943 
   15944         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   15945         (WebCore::MediaPlayerPrivate::cacheMovieScale):
   15946 
   15947 2009-04-28  Sam Weinig  <sam (a] webkit.org>
   15948 
   15949         Reviewed by Beth Dakin.
   15950 
   15951         Consolidate ScheduleAction creation into ScheduledAction::create.
   15952         Autogenerate JSWorkerContext.clearTimeout and clearInterval.
   15953 
   15954         * bindings/js/JSDOMWindowCustom.cpp:
   15955         (WebCore::JSDOMWindow::setTimeout):
   15956         (WebCore::JSDOMWindow::setInterval):
   15957         * bindings/js/JSWorkerContextCustom.cpp:
   15958         (WebCore::JSWorkerContext::setTimeout):
   15959         (WebCore::JSWorkerContext::setInterval):
   15960         * bindings/js/ScheduledAction.cpp:
   15961         (WebCore::ScheduledAction::create):
   15962         (WebCore::ScheduledAction::ScheduledAction):
   15963         (WebCore::ScheduledAction::execute):
   15964         * bindings/js/ScheduledAction.h:
   15965         * workers/WorkerContext.cpp:
   15966         (WebCore::DOMWindow::setTimeout):
   15967         (WebCore::DOMWindow::clearTimeout):
   15968         (WebCore::DOMWindow::setInterval):
   15969         (WebCore::DOMWindow::clearInterval):
   15970         * workers/WorkerContext.h:
   15971         * workers/WorkerContext.idl:
   15972 
   15973 2009-04-28  Brady Eidson  <beidson (a] apple.com>
   15974 
   15975         Reviewed by Darin Adler
   15976 
   15977         <rdar://problem/6643219> Crashes after moving nodes between documents with Safari 4 Beta installed
   15978 
   15979         When moving Nodes between documents we weren't properly updating style declarations.  Certain operations, such
   15980         as creating webarchives, would tickle this bug.
   15981 
   15982         Tests: webarchive/adopt-attribute-styled-body-webarchive.html
   15983                webarchive/adopt-attribute-styled-node-webarchive.html
   15984                webarchive/adopt-inline-styled-node-webarchive.html
   15985 
   15986         * dom/Node.cpp:  Add a debug-only mechanism to insure that anyone who overrides (did/will)MoveToNewOwnerDocument
   15987           calls their parent-class implementation after they've done their own work.
   15988         (WebCore::setWillMoveToNewOwnerDocumentWasCalled): 
   15989         (WebCore::setDidMoveToNewOwnerDocumentWasCalled):
   15990         (WebCore::Node::setDocument):
   15991         (WebCore::Node::willMoveToNewOwnerDocument):
   15992         (WebCore::Node::didMoveToNewOwnerDocument):
   15993 
   15994         * dom/StyledElement.cpp:
   15995         (WebCore::StyledElement::attributeChanged): Add a comment explaining why we don't need to walk the nameAttrMap
   15996           to update style declarations.
   15997         (WebCore::StyledElement::didMoveToNewOwnerDocument): Update the parent pointer for the inline style declaration.
   15998         * dom/StyledElement.h:
   15999 
   16000         * html/HTMLBodyElement.cpp:
   16001         (WebCore::HTMLBodyElement::didMoveToNewOwnerDocument): Update the parent pointer for the link declaration.
   16002         * html/HTMLBodyElement.h:
   16003 
   16004 2009-04-28  Eric Carlson  <eric.carlson (a] apple.com>
   16005 
   16006          Reviewed by Darin Adler.
   16007         
   16008         <rdar://problem/6834876> Don't use BlockExceptions macros until QTKit supports 
   16009         QTMoviePreferredTransformAttribute
   16010 
   16011         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   16012         (WebCore::MediaPlayerPrivate::cacheMovieScale): use @try and @catch instead of 
   16013         BEGIN_BLOCK_OBJC_EXCEPTIONS and END_BLOCK_OBJC_EXCEPTIONS for builds of QTKit 
   16014         that throw an exception on QTMovieCurrentSizeAttribute but don't support 
   16015         QTMoviePreferredTransformAttribute
   16016 
   16017 2009-04-28  Darin Adler  <darin (a] apple.com>
   16018 
   16019         Reviewed by Sam Weinig.
   16020 
   16021         * rendering/RenderText.cpp:
   16022         (WebCore::RenderText::RenderText): Streamline code path to avoid a bit of reference count
   16023         churn and remove a strange unneeeded PassRefPtr typecast. Also added a comment.
   16024         (WebCore::RenderText::setTextInternal): Ditto.
   16025 
   16026 2009-04-27  Eric Seidel  <eric (a] webkit.org>
   16027 
   16028         Reviewed by Simon Fraser.
   16029 
   16030         Simplify how SVG containers paint
   16031         https://bugs.webkit.org/show_bug.cgi?id=25431
   16032 
   16033         Moved filterBoundingBox() from RenderSVGModelObject to SVGRenderSupport to share with other classes.
   16034         Gave RenderSVGText a modern clippedOverflowRectForRepaint and computeRectForRepaint.
   16035         RenderSVGText now applies transforms at paint() time instead of during chunk draw time
   16036         this should be much more efficient.
   16037 
   16038         Fixed the order in which RenderSVGViewportContainer applied
   16039         transforms and clips.  We now clip to the viewport first and apply
   16040         all transforms at once.  Also since the viewport logic is now only
   16041         inside RenderSVGViewportContainer (instead of inside RenderSVGContainer)
   16042         we always know we have a viewport.  We now use only viewportSize instead of
   16043         viewport() since RenderSVGViewportContainers can't have x/y offsets.
   16044 
   16045         We now correctly transform the PaintInfo::rect (damage rect) when applying transforms.
   16046         This allowed us to apply the transform during text paint() instead of at chunk paint
   16047         time. Previously we had to apply the transform during chunk paint time because
   16048         RenderBlock (superclass of RenderSVGBlock) would check intersection with the damageRect
   16049         before telling any of the inlines to draw.  Now that we adjust the damage rect correctly
   16050         we pass the intersection check correctly!  (This probably fixed some <text> redraw bugs
   16051         but since I still have a bunch of those to fix, I've not tried to write additional tests
   16052         to cover these potential fixes yet.)
   16053 
   16054         SVGRootInlineBox no longer needs to deal with transforms at chunk paint time, yay!
   16055 
   16056         * rendering/RenderPath.cpp:
   16057         (WebCore::RenderPath::repaintRectInLocalCoordinates):
   16058         (WebCore::RenderPath::paint):
   16059         * rendering/RenderSVGContainer.cpp:
   16060         (WebCore::RenderSVGContainer::paint):
   16061         (WebCore::RenderSVGContainer::repaintRectInLocalCoordinates):
   16062         * rendering/RenderSVGContainer.h:
   16063         (WebCore::RenderSVGContainer::applyViewportClip):
   16064         * rendering/RenderSVGImage.cpp:
   16065         (WebCore::RenderSVGImage::layout):
   16066         (WebCore::RenderSVGImage::repaintRectInLocalCoordinates):
   16067         (WebCore::RenderSVGImage::clippedOverflowRectForRepaint):
   16068         (WebCore::RenderSVGImage::computeRectForRepaint):
   16069         * rendering/RenderSVGImage.h:
   16070         * rendering/RenderSVGModelObject.cpp:
   16071         * rendering/RenderSVGModelObject.h:
   16072         * rendering/RenderSVGRoot.cpp:
   16073         (WebCore::RenderSVGRoot::layout):
   16074         (WebCore::RenderSVGRoot::selfWillPaint):
   16075         (WebCore::RenderSVGRoot::paint):
   16076         (WebCore::RenderSVGRoot::viewportSize):
   16077         (WebCore::RenderSVGRoot::calcViewport):
   16078         (WebCore::RenderSVGRoot::localToBorderBoxTransform):
   16079         (WebCore::RenderSVGRoot::parentOriginToBorderBox):
   16080         (WebCore::RenderSVGRoot::borderOriginToContentBox):
   16081         (WebCore::RenderSVGRoot::localToRepaintContainerTransform):
   16082         (WebCore::RenderSVGRoot::localToParentTransform):
   16083         (WebCore::RenderSVGRoot::computeRectForRepaint):
   16084         (WebCore::RenderSVGRoot::nodeAtPoint):
   16085         * rendering/RenderSVGRoot.h:
   16086         * rendering/RenderSVGText.cpp:
   16087         (WebCore::RenderSVGText::clippedOverflowRectForRepaint):
   16088         (WebCore::RenderSVGText::computeRectForRepaint):
   16089         (WebCore::RenderSVGText::paint):
   16090         (WebCore::RenderSVGText::repaintRectInLocalCoordinates):
   16091         * rendering/RenderSVGText.h:
   16092         (WebCore::RenderSVGText::localToParentTransform):
   16093         (WebCore::RenderSVGText::localTransform):
   16094         * rendering/RenderSVGViewportContainer.cpp:
   16095         (WebCore::RenderSVGViewportContainer::applyViewportClip):
   16096         * rendering/RenderSVGViewportContainer.h:
   16097         * rendering/SVGRenderSupport.cpp:
   16098         (WebCore::filterBoundingBoxForRenderer):
   16099         (WebCore::applyTransformToPaintInfo):
   16100         * rendering/SVGRenderSupport.h:
   16101         * rendering/SVGRootInlineBox.cpp:
   16102         (WebCore::SVGRootInlineBoxPaintWalker::chunkStartCallback):
   16103         (WebCore::SVGRootInlineBox::paint):
   16104 
   16105 2009-04-28  Chris Fleizach  <cfleizach (a] apple.com>
   16106 
   16107         Reviewed by Darin Adler.
   16108 
   16109         Bug 25453: AX: fall back to PLACEHOLDER attr if form element is not labeled
   16110         https://bugs.webkit.org/show_bug.cgi?id=25453
   16111 
   16112         Test: accessibility/placeholder.html
   16113 
   16114         * page/AccessibilityRenderObject.cpp:
   16115         (WebCore::AccessibilityRenderObject::title):
   16116 
   16117 2009-04-28  Chris Fleizach  <cfleizach (a] apple.com>
   16118 
   16119         Reviewed by Darin Adler.
   16120 
   16121         Bug 25452: AX: Don't create addition space AXStaticText element for every bold or link tag
   16122         https://bugs.webkit.org/show_bug.cgi?id=25452
   16123 
   16124         Test: accessibility/ignore-spacer-elements.html
   16125 
   16126         * page/AccessibilityRenderObject.cpp:
   16127         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
   16128 
   16129 2009-04-28  Mark Rowe  <mrowe (a] apple.com>
   16130 
   16131         Reviewed by Sam Weinig.
   16132 
   16133         Work around <rdar://problem/6833240> by relying on static initialization to zero the entire struct.
   16134         This removes the need for us to explicitly initialize all of the members, which have a tendency
   16135         to change in meaning and number between versions of libxml2.
   16136 
   16137         * dom/XMLTokenizerLibxml2.cpp:
   16138         (WebCore::):
   16139         (WebCore::sharedXHTMLEntity):
   16140         (WebCore::getXHTMLEntity):
   16141 
   16142 2009-04-28  Steve Falkenburg  <sfalken (a] apple.com>
   16143 
   16144         Fix linker warning by specifying /NODEFAULTLIB:LIBCMT for QTMovieWin.
   16145         
   16146         Reviewed by Mark Rowe.
   16147 
   16148         * WebCore.vcproj/QTMovieWin.vcproj:
   16149 
   16150 2009-04-28  Chris Fleizach  <cfleizach (a] apple.com>
   16151 
   16152         Reviewed by Darin Adler.
   16153 
   16154         Bug 25449: AX: Respect the alt tag of ARIA button as AXDescription
   16155         https://bugs.webkit.org/show_bug.cgi?id=25449
   16156 
   16157         Test: accessibility/img-aria-button-alt-tag.html
   16158 
   16159         * page/AccessibilityRenderObject.cpp:
   16160         (WebCore::AccessibilityRenderObject::accessibilityDescription):
   16161 
   16162 2009-04-28  Dan Bernstein  <mitz (a] apple.com>
   16163 
   16164         Reviewed by John Sullivan.
   16165 
   16166         - formatting cleanup
   16167 
   16168         * rendering/RenderBox.cpp:
   16169         (WebCore::RenderBox::calcHeight): Corrected indentation and added braces
   16170         around a multi-line "else" clause.
   16171 
   16172 2009-04-28  Eric Carlson  <eric.carlson (a] apple.com>
   16173 
   16174         Reviewed by Adam Roben
   16175         
   16176         <rdar://problem/6769968> media/video-size-intrinsic-scale.html fails on Windows
   16177         https://bugs.webkit.org/show_bug.cgi?id=25094
   16178         
   16179         Display movies saved with a non-identity matrix at the correct size.
   16180 
   16181         * platform/graphics/win/QTMovieWin.cpp:
   16182         (QTMovieWinPrivate::QTMovieWinPrivate): Initialize m_widthScaleFactor and m_heightScaleFactor.
   16183         (QTMovieWinPrivate::cacheMovieScale): New, calculate difference between initial
   16184         size and natural size so naturalSize() accounts for non-identity movie matrix.
   16185         (QTMovieWinPrivate::task):Call cacheMovieScale when load state reaches
   16186         kMovieLoadStateLoaded for the first time. kMovieLoadState -> QTMovieLoadState.
   16187         (QTMovieWinPrivate::drawingComplete): kMovieLoadState -> QTMovieLoadState.
   16188         (QTMovieWinPrivate::createGWorld): Don't bother creating gworld until load state reaches
   16189         kMovieLoadStateLoaded because we do not try to draw it before that point.
   16190         (QTMovieWinPrivate::setSize): Do not change movie box before reaching kMovieLoadStateLoaded
   16191         because we need to get the movie's initial size in cacheMovieScale.
   16192         (QTMovieWin::getNaturalSize): Multiply width and height by initial scale.
   16193 
   16194 2009-04-28  Sam Weinig  <sam (a] webkit.org>
   16195 
   16196         Reviewed by Dan Bernstein.
   16197 
   16198         Move timer code from JSDOMWindow to DOMWindow. clearTimeout and
   16199         clearInterval can now be autogenerated.
   16200 
   16201         * bindings/js/JSDOMWindowBase.cpp:
   16202         * bindings/js/JSDOMWindowBase.h:
   16203         * bindings/js/JSDOMWindowCustom.cpp:
   16204         (WebCore::createScheduledAction):
   16205         (WebCore::JSDOMWindow::setTimeout):
   16206         (WebCore::JSDOMWindow::setInterval):
   16207         * page/DOMWindow.cpp:
   16208         (WebCore::DOMWindow::setTimeout):
   16209         (WebCore::DOMWindow::clearTimeout):
   16210         (WebCore::DOMWindow::setInterval):
   16211         (WebCore::DOMWindow::clearInterval):
   16212         * page/DOMWindow.h:
   16213         * page/DOMWindow.idl:
   16214 
   16215 2009-04-28  Kevin Watters  <kevinwatters (a] gmail.com>
   16216 
   16217         Reviewed by Kevin Ollivier.
   16218 
   16219         Small optimization, don't get the widget's handle twice in one method.
   16220         
   16221         https://bugs.webkit.org/show_bug.cgi?id=25446
   16222 
   16223         * platform/wx/WidgetWx.cpp:
   16224         (WebCore::Widget::setFocus):
   16225         (WebCore::Widget::show):
   16226         (WebCore::Widget::hide):
   16227         (WebCore::Widget::frameRect):
   16228         (WebCore::Widget::setFrameRect):
   16229         (WebCore::Widget::invalidateRect):
   16230         (WebCore::Widget::paint):
   16231 
   16232 2009-04-28  Kevin Watters  <kevinwatters (a] gmail.com>
   16233 
   16234         Reviewed by Kevin Ollivier.
   16235 
   16236         ScrollView copy and paste typo fix.
   16237         
   16238         https://bugs.webkit.org/show_bug.cgi?id=25445
   16239 
   16240         * platform/wx/ScrollViewWx.cpp:
   16241         (WebCore::ScrollView::platformSetScrollbarModes):
   16242 
   16243 2009-04-28  John Sullivan  <sullivan (a] apple.com>
   16244 
   16245         <rdar://problem/6820221> REGRESSION: 2-byte character names of images are displayed as %-encoded ASCII
   16246 
   16247         Reviewed by Adam Roben
   16248 
   16249         * loader/ImageDocument.cpp:
   16250         (WebCore::ImageTokenizer::finish):
   16251         decode the filename before processing it as part of the image name that's passed to the client
   16252 
   16253 2009-04-28  Maciej Stachowiak  <mjs (a] apple.com>
   16254 
   16255         Not reviewed, build fix.
   16256 
   16257         - fix initialization order to match declaration order to fix release build
   16258 
   16259         * page/Settings.cpp:
   16260         (WebCore::Settings::Settings):
   16261 
   16262 2009-04-28  Xan Lopez  <xlopez (a] igalia.com>
   16263 
   16264         Reviewed by Justin Garcia.
   16265 
   16266         https://bugs.webkit.org/show_bug.cgi?id=16135
   16267         [GTK] Support caret browsing
   16268 
   16269         Based on a patch by Alp Toker.
   16270 
   16271         Implement basic support for caret browsing, active only when the
   16272         corresponding setting is enabled.
   16273 
   16274         * page/EventHandler.cpp:
   16275         (WebCore::EventHandler::handleMouseReleaseEvent):
   16276         * page/FocusController.cpp:
   16277         (WebCore::FocusController::advanceFocus):
   16278         (WebCore::clearSelectionIfNeeded):
   16279         (WebCore::FocusController::setFocusedNode):
   16280         * page/Frame.cpp:
   16281         (WebCore::Frame::setFocusedNodeIfNeeded):
   16282         (WebCore::Frame::setSelectionFromNone):
   16283         (WebCore::Frame::respondToChangedSelection):
   16284         * page/Settings.cpp:
   16285         (WebCore::Settings::Settings):
   16286         * page/Settings.h:
   16287         * rendering/RenderBlock.cpp:
   16288         (WebCore::RenderBlock::paintCaret):
   16289 
   16290 2009-04-27  Eric Roman  <eroman (a] chromium.org>
   16291 
   16292         Reviewed by Darin Fisher.
   16293 
   16294         Fix a compile breakage.
   16295         <https://bugs.webkit.org/show_bug.cgi?id=25384>
   16296 
   16297         * bindings/v8/custom/V8DOMWindowCustom.cpp:
   16298         (WebCore::CALLBACK_FUNC_DECL):
   16299 
   16300 2009-04-27  Eric Carlson  <eric.carlson (a] apple.com>
   16301 
   16302         Reviewed by Darin Adler.
   16303 
   16304         <rdar://problem/6822344> Use of QTMovieCurrentSizeAttribute generates exception and will crash
   16305 
   16306         QTMovieCurrentSizeAttribute generates an exception with some versions of QTKit, so calculate a 
   16307         multiplier to scale from natural size to current size when a movie is opened and use that to 
   16308         return the correct value from the naturalSize() method.
   16309 
   16310         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
   16311         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   16312         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate): Initialize m_scaleFactor.
   16313         (WebCore::MediaPlayerPrivate::naturalSize): Return naturalSize transformed by initial scale.
   16314         (WebCore::MediaPlayerPrivate::cacheMovieScale): New, calculate difference between initial
   16315         size and natural size so naturalSize() accounts for non-identity movie matrix.
   16316         (WebCore::MediaPlayerPrivate::updateStates): Call cacheMovieScale when load state reaches
   16317         QTMovieLoadStateLoaded for the first time.
   16318 
   16319 2009-04-27  Beth Dakin  <bdakin (a] apple.com>
   16320 
   16321         Reviewed by Dave Hyatt.
   16322 
   16323         Fix for <rdar://problem/6709057> REGRESSION (4PB-TOT): http://www.winway.com/main3/support/faq.aspx selector doesn't look right or work
   16324 
   16325         The problem here is that we had a self-painting layer nested inside 
   16326         a non-self-painting layer. We ended up ignoring the self-painting 
   16327         layer both during painting and hit-testing. This patch corrects 
   16328         that. 
   16329 
   16330         * rendering/RenderLayer.cpp:
   16331         (WebCore::RenderLayer::paintLayer):
   16332         (WebCore::RenderLayer::hitTestLayer):
   16333 
   16334 2009-04-27  Ada Chan  <adachan (a] apple.com>
   16335 
   16336         If it has been set to allow any HTTPS certificates for this host, set 
   16337         kCFStreamSSLAllowsExpiredCertificates to true to allow expired 
   16338         certificate, and set kCFStreamSSLValidatesCertificateChain false to skip
   16339         certificate chain validation. (<rdar://problem/6382059>)
   16340 
   16341         Reviewed by John Sullivan.
   16342 
   16343         * platform/network/cf/ResourceHandleCFNet.cpp:
   16344         (WebCore::makeFinalRequest):
   16345 
   16346 2009-04-27  Simon Fraser  <simon.fraser (a] apple.com>
   16347 
   16348         Reviewed by Adele Peterson
   16349         
   16350         <rdar://problem/6822225> Full page zooming of <video> element in the browser window doesn't work well
   16351         
   16352         Fix a 'size changed' notification thrash that caused standalone video elements
   16353         to continually resize after full page zooming, by using the movie's natual size (which is independent
   16354         of zooming), rather than its current size (which is not).
   16355         
   16356         Note that this regresses <https://bugs.webkit.org/show_bug.cgi?id=25029>, so we have to
   16357         disable the media/video-size-intrinsic-scale.html test. However, we have to stop using
   16358         QTMovieCurrentSizeAttribute anyway; this will be addressed, and the test re-enabled via
   16359         <rdar://problem/6822344>.
   16360 
   16361         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   16362         (WebCore::MediaPlayerPrivate::naturalSize):
   16363 
   16364 2009-04-27  Simon Fraser  <simon.fraser (a] apple.com>
   16365 
   16366         Reviewed by Darin Adler
   16367 
   16368         <rdar://problem/6642221> REGRESSION: With the Movie widget, movie trailer fails to
   16369         load if movie had been previously viewed
   16370         
   16371         Fix the Dashboard quirk for display:none plug-ins by moving the code from HTMLObjectElement
   16372         to HTMLEmebedElement. It has to be in HTMLEmbedElement because the content we care about uses <embed>.
   16373 
   16374         * html/HTMLEmbedElement.cpp:
   16375         (WebCore::HTMLEmbedElement::rendererIsNeeded):
   16376         * html/HTMLObjectElement.cpp:
   16377         (WebCore::HTMLObjectElement::rendererIsNeeded):
   16378 
   16379 2009-04-27  Sam Weinig  <sam (a] webkit.org>
   16380 
   16381         Reviewed by Geoffrey Garen.
   16382 
   16383         Move more window event related code into DOMWindow.
   16384 
   16385         * dom/Document.cpp:
   16386         (WebCore::Document::implicitClose):
   16387         (WebCore::Document::setWindowAttributeEventListener):
   16388         (WebCore::Document::dispatchWindowEvent):
   16389         (WebCore::Document::dispatchLoadEvent):
   16390         * dom/Document.h:
   16391         * dom/Element.cpp:
   16392         * dom/Element.h:
   16393         * dom/Node.cpp:
   16394         * dom/Node.h:
   16395         * html/HTMLBodyElement.cpp:
   16396         (WebCore::HTMLBodyElement::parseMappedAttribute):
   16397         * html/HTMLFrameSetElement.cpp:
   16398         (WebCore::HTMLFrameSetElement::parseMappedAttribute):
   16399         * loader/FrameLoader.cpp:
   16400         (WebCore::FrameLoader::stopLoading):
   16401         * page/DOMWindow.cpp:
   16402         (WebCore::DOMWindow::dispatchAllPendingUnloadEvents):
   16403         (WebCore::DOMWindow::postMessageTimerFired):
   16404         (WebCore::DOMWindow::dispatchEvent):
   16405         (WebCore::DOMWindow::dispatchEventWithDocumentAsTarget):
   16406         (WebCore::DOMWindow::dispatchLoadEvent):
   16407         (WebCore::DOMWindow::dispatchUnloadEvent):
   16408         (WebCore::DOMWindow::dispatchBeforeUnloadEvent):
   16409         * page/DOMWindow.h:
   16410         * page/Frame.cpp:
   16411         (WebCore::Frame::shouldClose):
   16412         * svg/SVGSVGElement.cpp:
   16413         (WebCore::SVGSVGElement::parseMappedAttribute):
   16414 
   16415 2009-04-27  Douglas R. Davidson  <ddavidso (a] apple.com>
   16416 
   16417         Implement the editing mechanisms and add context menu items for
   16418         <rdar://problem/6724106> WebViews need to implement text checking
   16419 
   16420         Reviewed by Justin Garcia.
   16421 
   16422         * editing/Editor.cpp:
   16423         * editing/Editor.h:
   16424         * editing/TypingCommand.cpp:
   16425         * loader/EmptyClients.h:
   16426         * page/ContextMenuController.cpp:
   16427         * page/EditorClient.h:
   16428         * page/mac/WebCoreViewFactory.h:
   16429         * platform/ContextMenu.cpp:
   16430         * platform/ContextMenuItem.h:
   16431         * platform/LocalizedStrings.h:
   16432         * platform/mac/LocalizedStringsMac.mm:
   16433 
   16434 2009-04-27  Sam Weinig  <sam (a] webkit.org>
   16435 
   16436         Reviewed by Geoffrey Garen.
   16437 
   16438         Fix for <rdar://problem/6772944> REGRESSION (r42223): PLT 2% slower, i-Bench 3% slower
   16439 
   16440         Be slightly less eager in collecting after page close/navigation by increasing
   16441         the time before collection from 0 seconds to .5 seconds.
   16442 
   16443         3% speedup on the PLT.
   16444 
   16445         * bindings/js/GCController.cpp:
   16446         (WebCore::GCController::garbageCollectSoon):
   16447 
   16448 2009-04-27  David Kilzer  <ddkilzer (a] apple.com>
   16449 
   16450         Consolidate runtime application checks for Apple Mail and Safari
   16451 
   16452         Reviewed by Mark Rowe and Darin Adler.
   16453 
   16454         * WebCore.base.exp: Added exports.
   16455         * WebCore.xcodeproj/project.pbxproj: Added
   16456         RuntimeApplicationChecks.{h|mm} source files to the project.
   16457         * page/mac/EventHandlerMac.mm:
   16458         (WebCore::EventHandler::needsKeyboardEventDisambiguationQuirks):
   16459         Removed local checkedSafari and isSafari variables and switched
   16460         to use applicationIsSafari().
   16461         * platform/mac/RuntimeApplicationChecks.h: Added.
   16462         * platform/mac/RuntimeApplicationChecks.mm: Added.
   16463         (WebCore::applicationIsAppleMail): Runtime application check for
   16464         Apple Mail.
   16465         (WebCore::applicationIsSafari): Runtime application check for
   16466         Safari.
   16467 
   16468 2009-04-27  Chris Fleizach  <cfleizach (a] apple.com>
   16469 
   16470         Reviewed by Darin Adler.
   16471 
   16472         Bug 25374: AX: No AXValue change sent when text is auto-inserted
   16473         https://bugs.webkit.org/show_bug.cgi?id=25374
   16474 
   16475         First patch caused some regression tests to fail. 
   16476 
   16477         * rendering/RenderTextControl.cpp:
   16478         (WebCore::RenderTextControl::setInnerTextValue):
   16479 
   16480 2009-04-16  Xan Lopez  <xlopez (a] igalia.com>
   16481 
   16482         Reviewed by Gustavo Noronha.
   16483 
   16484         https://bugs.webkit.org/show_bug.cgi?id=21546
   16485         [GTK] ATK accessibility enhancements
   16486 
   16487         Based on a patch by Alp Toker.
   16488 
   16489         Cover more WebCore role -> ATK role conversions.
   16490 
   16491         * page/gtk/AccessibilityObjectWrapperAtk.cpp:
   16492 
   16493 2009-04-18  Xan Lopez  <xlopez (a] igalia.com>
   16494 
   16495         Reviewed by Gustavo Noronha.
   16496 
   16497         https://bugs.webkit.org/show_bug.cgi?id=21546
   16498         [GTK] ATK accessibility enhancements
   16499 
   16500         Do not call ATK setters in the getters, just return the
   16501         value. Among other things calling the setter will emit the notify
   16502         signal, which is wrong.
   16503 
   16504         * page/gtk/AccessibilityObjectWrapperAtk.cpp:
   16505 
   16506 2009-04-16  Xan Lopez  <xlopez (a] igalia.com>
   16507 
   16508         Reviewed by Gustavo Noronha.
   16509 
   16510         https://bugs.webkit.org/show_bug.cgi?id=21546
   16511         [GTK] ATK accessibility enhancements
   16512 
   16513         Based on a patch by Alp Toker.
   16514 
   16515         Implement AtkImage interface.
   16516 
   16517         * page/gtk/AccessibilityObjectWrapperAtk.cpp:
   16518 
   16519 2009-04-27  Gustavo Noronha Silva  <gns (a] gnome.org>
   16520 
   16521         Unreviewed debug build fix.
   16522 
   16523         * platform/gtk/gtk2drawing.c:
   16524         (moz_gtk_toggle_paint):
   16525 
   16526 2009-04-27  Dimitri Glazkov  <dglazkov (a] chromium.org>
   16527 
   16528         Build fix.
   16529 
   16530         https://bugs.webkit.org/show_bug.cgi?id=25382
   16531         Remove direct reference to CallFrame.h include to pacify Win build.
   16532 
   16533         * bindings/js/JSDOMBinding.h: Removed ScriptState.h include.
   16534         * bindings/js/ScriptState.h: Replaced CallFrame.h with JSDOMBinding.h
   16535 
   16536 2009-04-27  Chris Fleizach  <cfleizach (a] apple.com>
   16537 
   16538         Reviewed by Beth Dakin.
   16539 
   16540         Bug 25374: AX: No AXValue change sent when text is auto-inserted
   16541         https://bugs.webkit.org/show_bug.cgi?id=25374
   16542 
   16543         When an input's text value is changed through the DOM, no AXValueChange notification is being sent.
   16544 
   16545         * rendering/RenderTextControl.cpp:
   16546         (WebCore::RenderTextControl::setInnerTextValue):
   16547 
   16548 2009-04-27  Dimitri Glazkov  <dglazkov (a] chromium.org>
   16549 
   16550         Reviewed by Eric Seidel.
   16551 
   16552         https://bugs.webkit.org/show_bug.cgi?id=25382
   16553         Move scriptStateFromNode to ScriptState.
   16554 
   16555         * bindings/js/JSDOMBinding.cpp: Moved scriptStateFromNode to ScriptState.
   16556         * bindings/js/JSDOMBinding.h: Ditto.
   16557         * bindings/js/ScriptState.cpp:
   16558         (WebCore::scriptStateFromNode): Added.
   16559         * bindings/js/ScriptState.h: Ditto.
   16560         * bindings/v8/ScriptState.cpp:
   16561         (WebCore::scriptStateFromNode): Added.
   16562         * bindings/v8/ScriptState.h: Ditto.
   16563         * dom/NodeFilter.h: Removed JSDOMBinding header include.
   16564         * dom/NodeIterator.h: Ditto.
   16565         * dom/TreeWalker.h: Ditto.
   16566 
   16567 2009-04-27  Chris Fleizach  <cfleizach (a] apple.com>
   16568 
   16569         Reviewed by Beth Dakin.
   16570 
   16571         Bug 25428: 5 crashes in DumpRenderTree at com.apple.WebCore  -[AccessibilityObjectWrapper accessibilityAttributeValue:] + 830
   16572         https://bugs.webkit.org/show_bug.cgi?id=25428
   16573 
   16574         When marking children as changed in accessibility, we cannot rely on the accessibility parent chain existing.
   16575         Instead, the render chain needs to be consulted.
   16576 
   16577         * page/AccessibilityRenderObject.cpp:
   16578         (WebCore::AccessibilityRenderObject::childrenChanged):
   16579 
   16580 2009-04-27  Alexey Proskuryakov  <ap (a] webkit.org>
   16581 
   16582         Reviewed by Darin Adler.
   16583 
   16584         https://bugs.webkit.org/show_bug.cgi?id=25399
   16585         <rdar://problem/6633943> REGRESSION: Many crashes reported accessing Lexis/Nexis database,
   16586         beneath WebCore::Cache::evict
   16587 
   16588         The crash happened because a cached resource handle was removed from a document's cached
   16589         resources map twice recursively, so a destructor was called for a value in a deleted bucket.
   16590         The first call was from Cache::evict, and when destroying CachedResourceHandle destroyed
   16591         CachedResource, DocLoader::removeCachedResource() was called again, with HashMap being in
   16592         an inconsistent state.
   16593 
   16594         I couldn't fully reconstruct the loading sequence to make a test.
   16595 
   16596         * loader/Cache.cpp:
   16597         (WebCore::Cache::revalidateResource): Assert that the resource being revalidated is in cache
   16598         (it makes no sense to revalidate one that isn't).
   16599         (WebCore::Cache::evict): Don't remove the resource from document's map. Removing a resource
   16600         from the cache in no way implies that documents no longer use the old version. This fixes the
   16601         crash, and also fixes many cases of resource content being unavailable in Web Inspector.
   16602 
   16603         * loader/CachedResource.h:
   16604         (WebCore::CachedResource::setInCache): When bringing a revalidated resource back to cache,
   16605         reset m_isBeingRevalidated to maintain the invariant of resources being revalidated never
   16606         being in cache. This fixes another assertion I saw on LexisNexis search: in rare cases,
   16607         switchClientsToRevalidatedResource() results in the same resource being requested again,
   16608         but we were only enforcing CachedResource invariants after calling this function.
   16609         (WebCore::CachedResource::unregisterHandle): Assert that the counter doesn't underflow.
   16610 
   16611         * loader/DocLoader.cpp: (WebCore::DocLoader::removeCachedResource): Assert that the passed
   16612         resource is removed, not some other resource that happens to have the same URL (this used to
   16613         fail on LexisNexis search before this patch).
   16614 
   16615         * loader/ImageDocument.cpp: (WebCore::ImageTokenizer::write): Replaced ASSERT_NOT_REACHED
   16616         with notImplemented(). This method can be legally called via document.write(), and should
   16617         work. LexisNexis takes this code path, but apparently has a fallback for Safari, so it
   16618         doesn't affect site functionality.
   16619 
   16620         * loader/CachedResource.cpp:
   16621         (WebCore::CachedResource::clearResourceToRevalidate): Don't assert that m_resourceToRevalidate
   16622         is being revalidated - this may no longer be true, because we now reset this member in
   16623         CachedResource::setInCache().
   16624 
   16625 2009-04-27  Dan Bernstein  <mitz (a] apple.com>
   16626 
   16627         Reviewed by Sam Weinig.
   16628 
   16629         - make BidiContext a RefCounted class, starting with a refcount of 1,
   16630           and share the root BidiContexts.
   16631 
   16632         * platform/graphics/GraphicsContext.cpp:
   16633         (WebCore::GraphicsContext::drawBidiText): Use BidiContext::create().
   16634         * platform/text/BidiContext.cpp:
   16635         (WebCore::BidiContext::create): Added. For the four "root" contexts,
   16636         returns a reference to a shared static BidiContext.
   16637         * platform/text/BidiContext.h:
   16638         (WebCore::BidiContext::BidiContext):
   16639         * platform/text/BidiResolver.h:
   16640         (WebCore::::commitExplicitEmbedding): Use BidiContext::create().
   16641         * rendering/bidi.cpp:
   16642         (WebCore::RenderBlock::determineStartPosition): Ditto.
   16643 
   16644 2009-04-27  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   16645 
   16646         Rubber-stamped by Gustavo Noronha.
   16647 
   16648         Build fix for r42893: change GDK_exclaim to GDK_exclam
   16649 
   16650         * platform/chromium/KeyCodeConversionGtk.cpp:
   16651         (WebCore::windowsKeyCodeForKeyEvent):
   16652         * platform/gtk/KeyEventGtk.cpp:
   16653         (WebCore::windowsKeyCodeForKeyEvent):
   16654 
   16655 2009-04-27  Fumitoshi Ukai  <ukai (a] google.com>
   16656 
   16657         Reviewed by Xan Lopez.
   16658 
   16659         Fix wrong key code conversion.
   16660 
   16661         Missing conversion for GDK_exlaim ('!').
   16662         Parens are opposite: GDK_parenleft is open paren '('
   16663         and GDK_parenright is close paren ')'.
   16664         https://bugs.webkit.org/show_bug.cgi?id=25367
   16665 
   16666         * platform/chromium/KeyCodeConversionGtk.cpp:
   16667         (WebCore::windowsKeyCodeForKeyEvent):
   16668         * platform/gtk/KeyEventGtk.cpp:
   16669         (WebCore::windowsKeyCodeForKeyEvent):
   16670 
   16671 2009-04-27  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   16672 
   16673         Reviewed by Gustavo Noronha.
   16674 
   16675         [Gtk] gtkdrawing update
   16676         https://bugs.webkit.org/show_bug.cgi?id=25408
   16677 
   16678         Update to the 25 Apr 2009 version of gtk2drawing.c and
   16679         gtkdrawing.h from Mozilla (http://hg.mozilla.org/mozilla-central)
   16680 
   16681         * platform/gtk/gtk2drawing.c:
   16682         (setup_widget_prototype):
   16683         (moz_gtk_get_combo_box_entry_arrow):
   16684         (ensure_toolbar_widget):
   16685         (ensure_tree_header_cell_widget):
   16686         (moz_gtk_init):
   16687         (moz_gtk_button_get_inner_border):
   16688         (moz_gtk_toggle_paint):
   16689         (moz_gtk_caret_paint):
   16690         (moz_gtk_entry_paint):
   16691         (moz_gtk_tree_header_cell_paint):
   16692         (moz_gtk_combo_box_paint):
   16693         (moz_gtk_toolbar_separator_paint):
   16694         (moz_gtk_menu_separator_paint):
   16695         (moz_gtk_get_widget_border):
   16696         (moz_gtk_get_tab_scroll_arrow_size):
   16697         (moz_gtk_get_toolbar_separator_width):
   16698         (moz_gtk_get_menu_separator_height):
   16699         (moz_gtk_widget_paint):
   16700         (moz_gtk_shutdown):
   16701         * platform/gtk/gtkdrawing.h:
   16702 
   16703 2009-04-27  Ariya Hidayat  <ariya.hidayat (a] nokia.com>
   16704 
   16705         Reviewed by Tor Arne Vestb.
   16706 
   16707         https://bugs.webkit.org/show_bug.cgi?id=18475
   16708 
   16709         [Qt] Widget painting should follow the layout direction (LTR, RTL)
   16710         of the element style, not the application layout direction.
   16711 
   16712         * platform/qt/RenderThemeQt.cpp:
   16713         (WebCore::RenderThemeQt::applyTheme):
   16714 
   16715 2009-04-26  Sam Weinig  <sam (a] webkit.org>
   16716 
   16717         Reviewed by Dan Bernstein.
   16718 
   16719         Fix for https://bugs.webkit.org/show_bug.cgi?id=25412
   16720         The Window object should be an EventTarget
   16721 
   16722         Test: fast/dom/Window/dispatchEvent.html
   16723 
   16724         * bindings/js/JSEventTarget.cpp:
   16725         (WebCore::toJS): Add DOMWindow case.
   16726         (WebCore::toEventTarget): Ditto.
   16727 
   16728         * dom/EventTarget.cpp:
   16729         (WebCore::EventTarget::toDOMWindow): Added.
   16730         * dom/EventTarget.h:
   16731 
   16732         * page/DOMWindow.cpp:
   16733         (WebCore::DOMWindow::scriptExecutionContext): Added. Returns the document.
   16734         (WebCore::DOMWindow::dispatchEvent): Added.
   16735         * page/DOMWindow.h:
   16736         (WebCore::DOMWindow::toDOMWindow):
   16737         (WebCore::DOMWindow::refEventTarget):
   16738         (WebCore::DOMWindow::derefEventTarget):
   16739         * page/DOMWindow.idl:
   16740 
   16741 2009-04-26  Sam Weinig  <sam (a] webkit.org>
   16742 
   16743         Reviewed by Eric Seidel.
   16744 
   16745         Remove scons-based build system.
   16746 
   16747         * WebCore.scons: Removed.
   16748 
   16749 2009-04-26  Darin Adler  <darin (a] apple.com>
   16750 
   16751         Suggested by Darin Fisher.
   16752 
   16753         Improve the fix for bug 25355: Crash when Creating New Tab or New Window when set to open Same Page
   16754         https://bugs.webkit.org/show_bug.cgi?id=25355
   16755         rdar://problem/6823543
   16756 
   16757         * loader/FrameLoader.cpp:
   16758         (WebCore::FrameLoader::loadItem): Allow shouldScroll to be true even if m_currentHistoryItem is 0.
   16759         Not sure if when this case can really arise in practice, but it's good to match the original
   16760         logic more closely.
   16761 
   16762 2009-04-25  Dirk Schulze  <krit (a] webkit.org>
   16763 
   16764         Reviewed by Oliver Hunt.
   16765 
   16766         A width or height of zero for the destination or source rect of an
   16767         image causes a not invertible pattern matrix.
   16768         This crahes newer versions of Cairo and give some graphic gliches in
   16769         Canvas.
   16770         With this patch we check if there is something to draw and return if not.
   16771 
   16772         * platform/graphics/cairo/ImageCairo.cpp:
   16773         (WebCore::BitmapImage::draw):
   16774 
   16775 2009-04-25  Simon Fraser  <simon.fraser (a] apple.com>
   16776 
   16777         Reviewed by Darin Adler
   16778         
   16779         https://bugs.webkit.org/show_bug.cgi?id=25390
   16780         
   16781         Fix point mapping and hit testing through transforms and perspective
   16782         with ENABLE_3D_RENDERING. Previously the code did the more efficient
   16783         move(), rather than getTransformFromContainer(), when the object had
   16784         no transform. However, this skipped the application of perspective
   16785         when the immediate child of the perspective element had no transform
   16786         itself.
   16787 
   16788         Test: transforms/3d/point-mapping/3d-point-mapping-3.html
   16789 
   16790         * rendering/RenderBox.cpp:
   16791         (WebCore::RenderBox::mapLocalToContainer):
   16792         (WebCore::RenderBox::mapAbsoluteToLocalPoint):
   16793         * rendering/RenderLayer.cpp:
   16794         (WebCore::RenderLayer::createLocalTransformState):
   16795         Call shouldUseTransformFromContainer() to determine if we need to
   16796         go through the more expensive getTransformFromContainer() code
   16797         path.
   16798 
   16799         * rendering/RenderObject.h:
   16800         * rendering/RenderObject.cpp:
   16801         (WebCore::RenderObject::shouldUseTransformFromContainer):
   16802         New method that indicates whether we need use getTransformFromContainer()
   16803         when mapping points through renderers, and hit testing.
   16804 
   16805 2009-04-25  Adele Peterson  <adele (a] apple.com>
   16806 
   16807         Reviewed by Oliver Hunt.
   16808 
   16809         Fix for <rdar://problem/6712771> REGRESSION(34681): Text is no longer underlined after delete
   16810         https://bugs.webkit.org/show_bug.cgi?id=25396
   16811 
   16812         Test: editing/deleting/delete-br-013.html
   16813 
   16814         * editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::moveParagraphs):
   16815          Only preserve an empty paragraph's style when moving paragraphs around if the selection is still 
   16816          in an empty paragraph after the move occurs.  This was causing the empty paragraph's style to overwrite
   16817          the previous paragraph's style during a delete of an empty paragraph.
   16818 
   16819 2009-04-25  Eric Carlson  <eric.carlson (a] apple.com>
   16820 
   16821         Reviewed by Darin Adler.
   16822 
   16823         <rdar://problem/6808171> REGRESSION (3-4): Standalone media documents don't 
   16824         properly display non-linear media
   16825 
   16826         If a media engine claims it can support the MIME type, WebCore now creates a <video>
   16827         element for document mode media files instead of an <embed> element. Because WebCore's 
   16828         QuickTime backed media players do not support every kind of media the QuickTime plug-in
   16829         supports, and because it is not always possible to tell what type of media is in a file 
   16830         without opening and parsing it, some types of media that used to be displayed properly
   16831         by a plug-in are no longer supported properly. To fix this, if the media engine
   16832         sees that it can not completely support a media file it now informs the media 
   16833         document, which replaces the <video> element with an <embed>.
   16834         
   16835         r42301 landed support for OSX. This patch modifies those changes slighly and adds support
   16836         for Windows.
   16837 
   16838         * loader/MediaDocument.cpp:
   16839         (WebCore::MediaDocument::MediaDocument): Initialize m_replaceMediaElementTimer.
   16840         (WebCore::MediaDocument::mediaElementSawUnsupportedTracks): Don't replace the <video> 
   16841         element immediately.
   16842         (WebCore::MediaDocument::replaceMediaElementTimerFired): Renamed from replaceVideoWithEmbed.
   16843         Set body margin-width and margin-height to 0 as that is what a PluginDocument uses.
   16844         * loader/MediaDocument.h:
   16845 
   16846         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   16847         (WebCore::MediaPlayerPrivate::loadStateChanged): Don't do anything if m_hasUnsupportedTracks.
   16848         (WebCore::MediaPlayerPrivate::rateChanged): Ditto.
   16849         (WebCore::MediaPlayerPrivate::timeChanged): Ditto.
   16850         (WebCore::MediaPlayerPrivate::didEnd): Ditto.
   16851         (WebCore::MediaPlayerPrivate::repaint): Ditto.
   16852         (WebCore::MediaPlayerPrivate::paint): Ditto.
   16853         (WebCore::MediaPlayerPrivate::sawUnsupportedTracks): Set m_hasUnsupportedTracks before callback.
   16854 
   16855         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
   16856         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate): Initialize m_totalTrackCount and m_hasUnsupportedTracks.
   16857         (WebCore::MediaPlayerPrivate::updateStates): Call sawUnsupportedTracks if the movie has unsupported
   16858         media type(s) or if it fails completely.
   16859         (WebCore::MediaPlayerPrivate::sawUnsupportedTracks): New, disable the movie object and tell the
   16860         media player client we won't play this movie correctly.
   16861         (WebCore::MediaPlayerPrivate::didEnd): Don't do anything if m_hasUnsupportedTracks.
   16862         (WebCore::MediaPlayerPrivate::setSize): Ditto.
   16863         (WebCore::MediaPlayerPrivate::setVisible): Ditto.
   16864         (WebCore::MediaPlayerPrivate::paint): Ditto.
   16865         (WebCore::MediaPlayerPrivate::movieEnded): Ditto.
   16866         (WebCore::MediaPlayerPrivate::movieLoadStateChanged): Ditto.
   16867         (WebCore::MediaPlayerPrivate::movieTimeChanged): Ditto.
   16868         (WebCore::MediaPlayerPrivate::movieNewImageAvailable): Ditto.
   16869         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
   16870 
   16871         * platform/graphics/win/QTMovieWin.cpp:
   16872         (QTMovieWinPrivate::task): Stop the task timer if we were disabled during the load state
   16873         change callback.
   16874         (QTMovieWinPrivate::drawingComplete): Don't do anything if disabled.
   16875         (QTMovieWin::QTMovieWin): Initialize m_disabled.
   16876         (QTMovieWin::disableUnsupportedTracks): Return total number of tracks.
   16877         (QTMovieWin::setDisabled): New, set m_disabled flag.
   16878         * platform/graphics/win/QTMovieWin.h:
   16879 
   16880 2009-04-25  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   16881 
   16882         Reviewed by Xan Lopez.
   16883 
   16884         [GTK] Error reporting
   16885         https://bugs.webkit.org/show_bug.cgi?id=18344
   16886 
   16887         Fix the SOUP resource handle to report SOUP_HTTP_ERROR for Soup
   16888         errors and G_IO_ERROR for gio errors.
   16889 
   16890         * platform/network/soup/ResourceHandleSoup.cpp:
   16891         (WebCore::finishedCallback):
   16892         (WebCore::ResourceHandle::startHttp):
   16893         (WebCore::ResourceHandle::start):
   16894         (WebCore::readCallback):
   16895         (WebCore::openCallback):
   16896         (WebCore::queryInfoCallback):
   16897         (WebCore::ResourceHandle::startGio):
   16898 
   16899 2009-04-25  Gustavo Noronha Silva  <gustavo.noronha (a] collabora.co.uk>
   16900 
   16901         Reviewed by Mark Rowe.
   16902 
   16903         Only set the new URL once for the request. Doing it a second time
   16904         after the call to willSendRequest was causing crashes when
   16905         redirected requests got cancelled.
   16906 
   16907         * platform/network/soup/ResourceHandleSoup.cpp:
   16908         (WebCore::restartedCallback):
   16909 
   16910 2009-04-24  Kevin Ollivier  <kevino (a] theolliviers.com>
   16911 
   16912         wx build fix. Adding ScriptEventListener.cpp.
   16913 
   16914         * WebCoreSources.bkl:
   16915 
   16916 2009-04-24  Sergio Garca-Cuevas  <sergio_gcg (a] telefonica.net>
   16917 
   16918         Reviewed by Gustavo Noronha.
   16919 
   16920         https://bugs.webkit.org/show_bug.cgi?id=17267
   16921         [GTK] Primary selection/clipboard support
   16922 
   16923         Copy the link location to the primary selection as well as the
   16924         clipboard selection when using the "copy link selection" context
   16925         menu entry.
   16926 
   16927         * platform/gtk/PasteboardGtk.cpp:
   16928         (WebCore::Pasteboard::writeURL):
   16929         * platform/gtk/PasteboardHelper.h:
   16930 
   16931 2009-04-24  Eric Seidel  <eric (a] webkit.org>
   16932 
   16933         Reviewed by Simon Fraser.
   16934 
   16935         https://bugs.webkit.org/show_bug.cgi?id=25383
   16936         Changing SVG size via JS does not update CSS width/height
   16937 
   16938         Add an ugly hack to fix CSS width/height updates from JS.
   16939 
   16940         We can't easily call setAttribute when width/height changes
   16941         as that would cause infinite recursion (as we'd try to set
   16942         the animation storage from the attributes)
   16943 
   16944         For now, when we get notification that JS changed width/height
   16945         we copy what parseMappedAttribute does and update the CSS values as well.
   16946 
   16947         A better fix for this would be:
   16948         https://bugs.webkit.org/show_bug.cgi?id=25383
   16949 
   16950         * svg/SVGSVGElement.cpp:
   16951         (WebCore::updateCSSForAttribute):
   16952         (WebCore::SVGSVGElement::svgAttributeChanged):
   16953 
   16954 2009-04-24  Kevin McCullough  <kmccullough (a] apple.com>
   16955 
   16956         Reviewed by Dan Bernstein.
   16957 
   16958         We should not show the deletion UI for blockquotes in mail but they do 
   16959         show now that we only check for one visible border.
   16960 
   16961         * editing/DeleteButtonController.cpp:
   16962         (WebCore::isDeletableElement):
   16963 
   16964 2009-04-24  Dan Bernstein  <mitz (a] apple.com>
   16965 
   16966         - address Hyatt's review comments on the last patch
   16967 
   16968         * rendering/RenderLayer.cpp:
   16969         (WebCore::performOverlapTests):
   16970         (WebCore::RenderLayer::paintLayer):
   16971 
   16972 2009-04-24  Dan Bernstein  <mitz (a] apple.com>
   16973 
   16974         Reviewed by Dave Hyatt.
   16975 
   16976         - fix https://bugs.webkit.org/show_bug.cgi?id=5909
   16977           <rdar://problem/5863349> overlapping element leaves trail when
   16978           scrolling iframe
   16979 
   16980         * WebCore.xcodeproj/project.pbxproj: Added OverlapTestRequestClient.h.
   16981 
   16982         * page/FrameView.cpp:
   16983         (WebCore::FrameView::reset): Initialize m_isOverlapped.
   16984         (WebCore::FrameView::useSlowRepaints): Also check m_isOverlapped.
   16985         (WebCore::FrameView::removeSlowRepaintObject): Use useSlowRepaints()
   16986         so overlapping is taken into account.
   16987         (WebCore::FrameView::setIsOverlapped): Added. Sets m_isOverlapped and
   16988         enables or disables copy-on-scroll accordingly.
   16989 
   16990         * page/FrameView.h:
   16991         Added setIsOverlapped() and m_isOverlapped.
   16992 
   16993         * rendering/OverlapTestRequestClient.h: Added. During foreground painting,
   16994         an OverlapTestRequestClient can make a request to test if any subsequently-
   16995         painted layers overlap a rect. The test result is delivered to the
   16996         requestClient via setOverlapTestResult().
   16997         (WebCore::OverlapTestRequestClient::~OverlapTestRequestClient):
   16998 
   16999         * rendering/RenderLayer.cpp:
   17000         (WebCore::RenderLayer::paint): Pass an OverlapTestRequestMap to
   17001         paintLayer(). When done painting, inform any remaining requestClients that
   17002         they are not overlapped.
   17003 
   17004         (WebCore::RenderLayer::paintLayer): Take an OverlapTestRequestMap and
   17005         pass it down to child and reflection layers. Inform requestClients if this
   17006         layer overlaps their requested rects.
   17007 
   17008         * rendering/RenderLayer.h:
   17009 
   17010         * rendering/RenderObject.h:
   17011         (WebCore::RenderObject::PaintInfo::PaintInfo): Added an
   17012         OverlapTestRequestMap member.
   17013 
   17014         * rendering/RenderReplica.cpp:
   17015         (WebCore::RenderReplica::paint): For now, pass a 0 OverlapTestRequestMap
   17016         to paintLayer().
   17017 
   17018         * rendering/RenderWidget.cpp:
   17019         (WebCore::RenderWidget::paint): For FrameViews, request an overlap test
   17020         with the frame.
   17021         (WebCore::RenderWidget::setOverlapTestResult): Call
   17022         FrameView::setIsOverlapped() with the result of the overlap test.
   17023 
   17024         * rendering/RenderWidget.h: Made RenderWidget an OverlapTestRequestClient.
   17025 
   17026 2009-04-24  David Hyatt  <hyatt (a] apple.com>
   17027 
   17028         Reviewed by Simon Fraser, Dan Bernstein.
   17029 
   17030         Speed up the PLT by devirtualizing the height() function on InlineBox.  virtualizing it in order to make the height() computation dynamic caused
   17031         a ~0.5% slowdown.  This patch does the following to get the speed back:
   17032         
   17033         (a) Devirtualizes isText and forces inline box creators to set the bit as needed.  This actually resulted in simplified code, since ListMarkerBox could
   17034         then be removed.
   17035         (b) Reduces the height() call count.  In some cases the code was repeatedly calling height(), which used to be fine when the function was just an inline
   17036         member variable access.  The call sites have been patched to cut down on extra height() calls now that it is more expensive.
   17037         (c) Devirtualize height() except on SVG boxes.  For all non-SVG, the height() function on InlineBox handles the computation.  For SVG boxes, a new bit has
   17038         been set on InlineBoxes (isSVG()) that indicates that the virtual svgBoxHeight() function should be called to retrieve the height instead.
   17039 
   17040         * GNUmakefile.am:
   17041         * WebCore.pro:
   17042         * WebCore.vcproj/WebCore.vcproj:
   17043         * WebCore.xcodeproj/project.pbxproj:
   17044         * WebCoreSources.bkl:
   17045         * rendering/InlineBox.cpp:
   17046         (WebCore::InlineBox::height):
   17047         * rendering/InlineBox.h:
   17048         (WebCore::InlineBox::InlineBox):
   17049         (WebCore::InlineBox::isSVG):
   17050         (WebCore::InlineBox::setIsSVG):
   17051         (WebCore::InlineBox::isText):
   17052         (WebCore::InlineBox::setIsText):
   17053         (WebCore::InlineBox::svgBoxHeight):
   17054         * rendering/InlineFlowBox.cpp:
   17055         (WebCore::InlineFlowBox::placeBoxesVertically):
   17056         (WebCore::InlineFlowBox::paintBoxDecorations):
   17057         (WebCore::InlineFlowBox::paintMask):
   17058         * rendering/InlineFlowBox.h:
   17059         * rendering/InlineTextBox.cpp:
   17060         * rendering/InlineTextBox.h:
   17061         * rendering/ListMarkerBox.cpp: Removed.
   17062         * rendering/ListMarkerBox.h: Removed.
   17063         * rendering/RenderListMarker.cpp:
   17064         (WebCore::RenderListMarker::createInlineBox):
   17065         * rendering/RenderSVGInline.cpp:
   17066         (WebCore::RenderSVGInline::createFlowBox):
   17067         * rendering/RenderSVGInlineText.cpp:
   17068         (WebCore::RenderSVGInlineText::createTextBox):
   17069         * rendering/RenderSVGText.cpp:
   17070         (WebCore::RenderSVGText::createRootBox):
   17071         * rendering/RenderText.cpp:
   17072         (WebCore::RenderText::createInlineTextBox):
   17073         * rendering/RootInlineBox.cpp:
   17074         * rendering/RootInlineBox.h:
   17075         * rendering/SVGInlineFlowBox.h:
   17076         (WebCore::SVGInlineFlowBox::svgBoxHeight):
   17077         * rendering/SVGInlineTextBox.h:
   17078         (WebCore::SVGInlineTextBox::svgBoxHeight):
   17079         * rendering/SVGRootInlineBox.h:
   17080         (WebCore::SVGRootInlineBox::svgBoxHeight):
   17081 
   17082 2009-04-24  Dimitri Glazkov  <dglazkov (a] chromium.org>
   17083 
   17084         Reviewed by Eric Seidel.
   17085 
   17086         https://bugs.webkit.org/show_bug.cgi?id=25370
   17087         Introduce ScriptEventListener to refactor away direct references to
   17088         JSLazyEventListener in WebCore code.
   17089 
   17090         * GNUmakefile.am: Added ScriptEventListener to project.
   17091         * WebCore.pro: Ditto.
   17092         * WebCore.vcproj/WebCore.vcproj: Ditto.
   17093         * WebCore.xcodeproj/project.pbxproj: Ditto.
   17094         * bindings/js/JSDOMGlobalObject.cpp: Removed unused JSLazyEventListener include.
   17095         * bindings/js/JSLazyEventListener.cpp: Moved createAttributeEventListener helpers
   17096             to ScriptEventListener.
   17097         * bindings/js/JSLazyEventListener.h: Ditto.
   17098         * bindings/js/ScriptController.cpp: Removed unused JSLazyEventListener include.
   17099         * bindings/js/ScriptEventListener.cpp: Added.
   17100         * bindings/js/ScriptEventListener.h: Added.
   17101         * bindings/v8/ScriptEventListener.cpp: Added.
   17102         * bindings/v8/ScriptEventListener.h: Added.
   17103         * dom/Document.cpp: Renamed JSLazyEventListener include to ScriptEventListener.
   17104         * html/HTMLBodyElement.cpp: Ditto.
   17105         * html/HTMLButtonElement.cpp: Ditto.
   17106         * html/HTMLElement.cpp: Ditto.
   17107         * html/HTMLFormElement.cpp: Ditto.
   17108         * html/HTMLFrameElementBase.cpp: Ditto.
   17109         * html/HTMLFrameSetElement.cpp: Ditto.
   17110         * html/HTMLImageElement.cpp: Ditto.
   17111         * html/HTMLInputElement.cpp: Ditto.
   17112         * html/HTMLObjectElement.cpp: Ditto.
   17113         * html/HTMLScriptElement.cpp: Ditto.
   17114         * html/HTMLSelectElement.cpp: Ditto.
   17115         * html/HTMLTextAreaElement.cpp: Ditto.
   17116         * svg/SVGElement.cpp: Ditto.
   17117         * svg/SVGSVGElement.cpp: Ditto.
   17118 
   17119 2009-04-24  Darin Adler  <darin (a] apple.com>
   17120 
   17121         Reviewed by Sam Weinig.
   17122 
   17123         Bug 25355: Crash when Creating New Tab or New Window when set to open Same Page
   17124         https://bugs.webkit.org/show_bug.cgi?id=25355
   17125         rdar://problem/6823543
   17126 
   17127         * loader/FrameLoader.cpp:
   17128         (WebCore::FrameLoader::loadItem): Added a null check.
   17129 
   17130 2009-04-24  Eric Seidel  <eric (a] webkit.org>
   17131 
   17132         Reviewed by Simon Fraser.
   17133 
   17134         Fix RenderSVGImage to dump with full bounds and style information.
   17135         https://bugs.webkit.org/show_bug.cgi?id=25377
   17136         
   17137         No functional changes, we're just now including more info in render tree dumps.
   17138 
   17139         * rendering/RenderObject.h:
   17140         (WebCore::RenderObject::isSVGImage):
   17141         * rendering/RenderSVGImage.h:
   17142         (WebCore::RenderSVGImage::isSVGImage):
   17143         * rendering/RenderTreeAsText.cpp:
   17144         (WebCore::write):
   17145         * rendering/SVGRenderTreeAsText.cpp:
   17146         (WebCore::operator<<):
   17147         (WebCore::write):
   17148         * rendering/SVGRenderTreeAsText.h:
   17149 
   17150 2009-04-24  David Levin  <levin (a] chromium.org>
   17151 
   17152         Reviewed by NOBODY (chromium build fix).
   17153 
   17154         Rename "isInline" => "isAttribute" in v8 bindings (jsc was done in r42699).
   17155 
   17156         * bindings/v8/V8AbstractEventListener.cpp:
   17157         (WebCore::V8AbstractEventListener::V8AbstractEventListener):
   17158         (WebCore::V8AbstractEventListener::invokeEventHandler):
   17159         * bindings/v8/V8AbstractEventListener.h:
   17160         * bindings/v8/V8EventListenerList.cpp:
   17161         (WebCore::V8EventListenerList::add):
   17162         (WebCore::V8EventListenerList::remove):
   17163         (WebCore::V8EventListenerList::clear):
   17164         * bindings/v8/V8LazyEventListener.h:
   17165         (WebCore::V8LazyEventListener::virtualisAttribute):
   17166         * bindings/v8/custom/V8CustomEventListener.cpp:
   17167         (WebCore::V8EventListener::V8EventListener):
   17168         * bindings/v8/custom/V8CustomEventListener.h:
   17169         (WebCore::V8EventListener::create):
   17170         (WebCore::V8EventListener::virtualisAttribute):
   17171 
   17172 2009-04-24  Nate Chapin  <japhet (a] google.com>
   17173 
   17174         Reviewed by Dimitri Glazkov.
   17175 
   17176         https://bugs.webkit.org/show_bug.cgi?id=25343
   17177         Fix Chromium/Skia bug where -webkit-box-shadow with 0,0 offset 
   17178         ignores blur.
   17179 
   17180         * WebCore\platform\graphics\skia\GraphicsContextSkia.cpp
   17181          (WebCore::GraphicsContext::setPlatformShadow): Add check against
   17182          blur before clearing looper.
   17183 
   17184 2009-04-24  Eric Roman  <eroman (a] chromium.org>
   17185 
   17186         Reviewed by Darin Adler.
   17187 
   17188         Initialize TextIterator::m_textLength to 0.
   17189 
   17190         This assures that TextIterator::length() will return 0 for cases when TextIterator's constructor returns early (because there is nothing to iterate over in the range).
   17191 
   17192         <https://bugs.webkit.org/show_bug.cgi?id=25335>
   17193 
   17194         Test: editing/selection/doubleclick-whitespace-img-crash.html
   17195 
   17196         * editing/TextIterator.cpp:
   17197         (WebCore::TextIterator::TextIterator):
   17198 
   17199 2009-04-24  Fumitoshi Ukai  <ukai (a] google.com>
   17200 
   17201         Reviewed by Dimitri Glazkov.
   17202 
   17203         https://bugs.webkit.org/show_bug.cgi?id=25329
   17204         Add indexed access method in v8 binding of ClientRectList.
   17205 
   17206         * bindings/v8/custom/V8ClientRectListCustom.cpp: Added.
   17207 
   17208 2009-04-24  Fumitoshi Ukai  <ukai (a] google.com>
   17209 
   17210         Reviewed by Dimitri Glazkov.
   17211 
   17212         https://bugs.webkit.org/show_bug.cgi?id=25257
   17213         Use null for unspecified event listener attributes of XMLHttpRequest
   17214         and XMLHttpRequestUpload in v8 binding.
   17215 
   17216         cf. http://www.whatwg.org/specs/web-apps/current-work/#event-handler-attributes
   17217         An event handler attribute, unless otherwise specified, can either
   17218         have the value null or be set to a Function object.
   17219         Initially, an event handler attribute must be set to null.
   17220 
   17221         Test: fast/xmlhttprequest/xmlhttprequest-default-attributes.html
   17222 
   17223         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
   17224         (WebCore::ACCESSOR_GETTER): Changed to use v8::Null().
   17225         * bindings/v8/custom/V8XMLHttpRequestUploadCustom.cpp:
   17226         (WebCore::ACCESSOR_GETTER): Ditto.
   17227 
   17228 2009-04-24  Darin Adler  <darin (a] apple.com>
   17229 
   17230         Reviewed by Adam Roben.
   17231 
   17232         <rdar://problem/6663836> CrashTracer: crashes in Safari at com.apple.WebCore  WebCore::reportException + 1513
   17233 
   17234         * bindings/js/JSDOMBinding.cpp:
   17235         (WebCore::reportException): Added a null check.
   17236 
   17237 2009-04-24  Simon Fraser  <simon.fraser (a] apple.com>
   17238 
   17239         Reviewed by Darin Adler
   17240         
   17241         https://bugs.webkit.org/show_bug.cgi?id=23219
   17242 
   17243         Add support for transtions and animations of background-position, -webkit-background-size,
   17244         -webkit-mask-position and -webkit-mask-size.
   17245 
   17246         Tests: transitions/background-transitions.html
   17247                transitions/mask-transitions.html
   17248 
   17249         * page/animation/AnimationBase.cpp:
   17250         (WebCore::blendFunc):
   17251         Add a blend func for LengthSize.
   17252         
   17253         (WebCore::ensurePropertyMap):
   17254         Add wrappers for the new properties.
   17255         
   17256         (WebCore::addShorthandProperties):
   17257         Add a shorthand property for CSSPropertyBackgroundPosition to map to
   17258         CSSPropertyBackgroundPositionX and CSSPropertyBackgroundPositionY, 
   17259         add CSSPropertyWebkitMask for CSSPropertyWebkitMaskPosition, and add
   17260         CSSPropertyWebkitMaskPosition for CSSPropertyWebkitMaskPositionX and
   17261         CSSPropertyWebkitMaskPositionY.
   17262         
   17263         * rendering/style/RenderStyle.h:
   17264         (WebCore::InheritedFlags::setBackgroundXPosition):
   17265         (WebCore::InheritedFlags::setBackgroundYPosition):
   17266         (WebCore::InheritedFlags::setBackgroundSize):
   17267         (WebCore::InheritedFlags::setMaskXPosition):
   17268         (WebCore::InheritedFlags::setMaskYPosition):
   17269         (WebCore::InheritedFlags::setMaskSize):
   17270         Add setters for the properties that can be animated now.
   17271 
   17272 2009-04-24  Adele Peterson  <adele (a] apple.com>
   17273 
   17274         Reviewed by Darin Adler.
   17275 
   17276         Fix for <rdar://problem/5089327> Newline gets stripped when pasting whole lines in certain markup
   17277 
   17278         Test: editing/pasteboard/paste-blockquote-after-blockquote.html
   17279 
   17280         When we have matching quote levels, its ok to merge the starts of the inserted and existing blocks more frequently.
   17281         But we should only merge here if the selection start was inside a mail blockquote.  This prevents against removing a 
   17282         blockquote from newly pasted quoted content that was pasted into an unquoted position.  If that unquoted position happens 
   17283         to be right after another blockquote, we don't want to merge and risk stripping a valid block (and newline) from the pasted content.
   17284 
   17285         * editing/ReplaceSelectionCommand.cpp:
   17286         (WebCore::ReplaceSelectionCommand::shouldMergeStart): Also added an early return to always return false when we're already moving paragraphs.
   17287         (WebCore::ReplaceSelectionCommand::doApply): Removed redundant check for when we're moving paragraphs.
   17288         * editing/ReplaceSelectionCommand.h:
   17289 
   17290 2009-04-23  Francisco Tolmasky  <francisco (a] 280north.com>
   17291 
   17292         BUG 24604: WebKit profiler reports incorrect total times
   17293         <https://bugs.webkit.org/show_bug.cgi?id=24604>
   17294 
   17295         Reviewed by Timothy Hatcher and Kevin McCullough.
   17296 
   17297         Made it so that most of the profiler functions now match the behavior of Shark. Most notably, in the
   17298         heavy view, child nodes now represent the statistics of the root node. Each root node of heavy view
   17299         displays flattened statistics for a particular function that ran during the profile, and each child
   17300         of these root nodes represents a callpath that lead to it. Thus, the statistics for each of these child
   17301         nodes should show how much of the root nodes values came from it. For example, if you had the following to
   17302         stacks take place during the profile:
   17303 
   17304         A ->calls 1 times-> B ->calls 2 times-> C
   17305         D ->calls 4 times-> C
   17306 
   17307         The tree for the C root node would look like this:
   17308 
   17309         C -> B -> A
   17310           -> D
   17311 
   17312         The number of calls values would look like this:
   17313 
   17314         C (6) -> B (2) -> A(2)
   17315               -> D (4)
   17316 
   17317         What this means is that "2 of the total 6 C calls came from B", "2 of the total C calls came from A", and
   17318         "4 of the total C calls came from D".  Notice that the "A ->calls 2 time->" is completely ignored. This becomes
   17319         particularly tricky during recursive calls, because each child note can represent multiple possible paths. This
   17320         is the reason that we would get things like 40000% previously with recursion.
   17321 
   17322         This is also the way gprof works, and as close as we can get to Shark's behavior (Shark is not instrumented so it
   17323         can't know exactly how many calls came from where, etc).
   17324 
   17325         * English.lproj/localizedStrings.js: Added "Average" for average times in the profile.
   17326         * inspector/JavaScriptProfile.cpp:
   17327         (WebCore::ProfileClass):
   17328         * inspector/JavaScriptProfileNode.cpp:
   17329         (WebCore::getParent):
   17330         (WebCore::getHead):
   17331         (WebCore::getCallUID):
   17332         (WebCore::ProfileNodeClass):
   17333         * inspector/front-end/BottomUpProfileDataGridTree.js: Added.
   17334         (WebInspector.BottomUpProfileDataGridTree):
   17335         (WebInspector.BottomUpProfileDataGridTree.prototype.focus):
   17336         (WebInspector.BottomUpProfileDataGridNode):
   17337         (WebInspector.BottomUpProfileDataGridNode.prototype._takePropertiesFromProfileDataGridNode):
   17338         (WebInspector.BottomUpProfileDataGridNode.prototype._keepOnlyChild):
   17339         (WebInspector.BottomUpProfileDataGridNode.prototype._exclude):
   17340         (WebInspector.BottomUpProfileDataGridNode.prototype._merge):
   17341         (WebInspector.BottomUpProfileDataGridNode.prototype._populate):
   17342         * inspector/front-end/DataGrid.js:
   17343         (WebInspector.DataGrid.prototype.insertChild):
   17344         (WebInspector.DataGrid.prototype.removeChild):
   17345         (WebInspector.DataGrid.prototype.removeChildren):
   17346         (WebInspector.DataGridNode.prototype.set hasChildren):
   17347         (WebInspector.DataGridNode.prototype.get hasChildren):
   17348         * inspector/front-end/ProfileDataGridTree.js: Added.
   17349         (WebInspector.ProfileDataGridNode):
   17350         (WebInspector.ProfileDataGridNode.prototype.get data.formatMilliseconds):
   17351         (WebInspector.ProfileDataGridNode.prototype.get data):
   17352         (WebInspector.ProfileDataGridNode.prototype.createCell):
   17353         (WebInspector.ProfileDataGridNode.prototype.select):
   17354         (WebInspector.ProfileDataGridNode.prototype.deselect):
   17355         (WebInspector.ProfileDataGridNode.prototype.expand):
   17356         (WebInspector.ProfileDataGridNode.prototype.insertChild):
   17357         (WebInspector.ProfileDataGridNode.prototype.removeChild):
   17358         (WebInspector.ProfileDataGridNode.prototype.removeChildren):
   17359         (WebInspector.ProfileDataGridNode.prototype.findChild):
   17360         (WebInspector.ProfileDataGridNode.prototype.get averageTime):
   17361         (WebInspector.ProfileDataGridNode.prototype.get averagePercent):
   17362         (WebInspector.ProfileDataGridNode.prototype.get selfPercent):
   17363         (WebInspector.ProfileDataGridNode.prototype.get totalPercent):
   17364         (WebInspector.ProfileDataGridNode.prototype._save):
   17365         (WebInspector.ProfileDataGridNode.prototype._restore):
   17366         (WebInspector.ProfileDataGridNode.prototype._merge):
   17367         (WebInspector.ProfileDataGridTree):
   17368         (WebInspector.ProfileDataGridTree.prototype.get expanded):
   17369         (WebInspector.ProfileDataGridTree.prototype.appendChild):
   17370         (WebInspector.ProfileDataGridTree.prototype.insertChild):
   17371         (WebInspector.ProfileDataGridTree.prototype.removeChildren):
   17372         (WebInspector.ProfileDataGridTree.prototype.findChild.WebInspector.ProfileDataGridNode.prototype.findChild.sort.WebInspector.ProfileDataGridNode.prototype.sort._save):
   17373         (WebInspector.ProfileDataGridTree.propertyComparator.comparator):
   17374         (WebInspector.ProfileDataGridTree.propertyComparator.else.comparator):
   17375         (WebInspector.ProfileDataGridTree.propertyComparator):
   17376         * inspector/front-end/ProfileView.js:
   17377         (WebInspector.ProfileView):
   17378         (WebInspector.ProfileView.prototype.set profile):
   17379         (WebInspector.ProfileView.prototype.get bottomUpProfileDataGridTree):
   17380         (WebInspector.ProfileView.prototype.get topDownProfileDataGridTree):
   17381         (WebInspector.ProfileView.prototype.get currentTree):
   17382         (WebInspector.ProfileView.prototype.set currentTree):
   17383         (WebInspector.ProfileView.prototype.get topDownTree):
   17384         (WebInspector.ProfileView.prototype.get bottomUpTree):
   17385         (WebInspector.ProfileView.prototype.refresh):
   17386         (WebInspector.ProfileView.prototype.refreshVisibleData):
   17387         (WebInspector.ProfileView.prototype.refreshShowAsPercents):
   17388         (WebInspector.ProfileView.prototype.performSearch.matchesQuery):
   17389         (WebInspector.ProfileView.prototype.performSearch):
   17390         (WebInspector.ProfileView.prototype._changeView):
   17391         (WebInspector.ProfileView.prototype._focusClicked):
   17392         (WebInspector.ProfileView.prototype._excludeClicked):
   17393         (WebInspector.ProfileView.prototype._resetClicked):
   17394         (WebInspector.ProfileView.prototype._sortProfile):
   17395         * inspector/front-end/ProfilesPanel.js:
   17396         (WebInspector.ProfilesPanel.prototype.showProfile):
   17397         (WebInspector.ProfilesPanel.prototype.showView):
   17398         (WebInspector.ProfilesPanel.prototype.searchMatchFound):
   17399         * inspector/front-end/TopDownProfileDataGridTree.js: Added.
   17400         (WebInspector.TopDownProfileDataGridNode):
   17401         (WebInspector.TopDownProfileDataGridNode.prototype._populate):
   17402         (WebInspector.TopDownProfileDataGridNode.prototype._exclude):
   17403         (WebInspector.TopDownProfileDataGridTree):
   17404         (WebInspector.TopDownProfileDataGridTree.prototype.focus):
   17405         (WebInspector.TopDownProfileDataGridTree.prototype.exclude):
   17406         * inspector/front-end/WebKit.qrc:
   17407         * inspector/front-end/inspector.css:
   17408         * inspector/front-end/inspector.html:
   17409 
   17410 2009-04-23  Eric Seidel  <eric (a] webkit.org>
   17411 
   17412         Reviewed by Sam Weinig.
   17413 
   17414         Use static functions (and a couple templates)
   17415         to further reduce the amount of copy/paste code in SVGRenderTreeAsText
   17416 
   17417         No test changes, only code cleanup.
   17418 
   17419         * rendering/SVGRenderTreeAsText.cpp:
   17420         (WebCore::writeNameValuePair):
   17421         (WebCore::writeNameAndQuotedValue):
   17422         (WebCore::writeIfNotEmpty):
   17423         (WebCore::writeIfNotDefault):
   17424         (WebCore::writeStyle):
   17425         (WebCore::writePositionAndStyle):
   17426         (WebCore::operator<<):
   17427 
   17428 2009-04-23  Eric Seidel  <eric (a] webkit.org>
   17429 
   17430         Reviewed by Simon Fraser.
   17431 
   17432         SVGRenderTreeAsText cleanup/code sharing.
   17433 
   17434         No test changes, only code cleanup.
   17435 
   17436         * rendering/RenderText.cpp:
   17437         (WebCore::RenderText::firstRunOrigin):
   17438         * rendering/RenderText.h:
   17439         * rendering/SVGRenderTreeAsText.cpp:
   17440         (WebCore::writeStandardPrefix):
   17441         (WebCore::writeChildren):
   17442         (WebCore::write):
   17443         (WebCore::writeRenderResources):
   17444 
   17445 2009-04-23  Beth Dakin  <bdakin (a] apple.com>
   17446 
   17447         Reviewed by Darin Adler.
   17448 
   17449         WebCore part of fix for <rdar://problem/6333461> REGRESSION 
   17450         (r36864-r36869): Dragging stocks widget scrollbar drags the whole 
   17451         widget
   17452 
   17453         * platform/Scrollbar.h:
   17454         (WebCore::Scrollbar::isScrollbar):
   17455         * platform/Widget.h:
   17456         (WebCore::Widget::isScrollbar):
   17457 
   17458 2009-04-23  Kevin McCullough  <kmccullough (a] apple.com>
   17459 
   17460         Reviewed by Adam Roben.
   17461 
   17462         <rdar://problem/6808109> "Deletion UI" is not available for many
   17463         portions of HTML content
   17464 
   17465         This patch makes the deletion UI show up in some new situations:
   17466         1) If a block's background color is different from its parent's
   17467         2) If a block has a background image.
   17468         3) If a block has a single visible border.
   17469         However the block must now not only be at least a minimum width and
   17470         height, but also exceed a minimum area.  In practice this has led to
   17471         much better element selection. 
   17472 
   17473         * editing/DeleteButtonController.cpp:
   17474         (WebCore::isDeletableElement):
   17475 
   17476 2009-04-23  Kevin Ollivier  <kevino (a] theolliviers.com>
   17477 
   17478         wx build fix. Adding XMLTokenizerScope.cpp to the build.
   17479 
   17480         * WebCoreSources.bkl:
   17481 
   17482 2009-04-23  Adele Peterson  <adele (a] apple.com>
   17483 
   17484         Reviewed by Darin Adler.
   17485 
   17486         Fix for <rdar://problem/6788905> REGRESSION (41928?): hang in Position::upstream
   17487         https://bugs.webkit.org/show_bug.cgi?id=25312
   17488 
   17489         I was unable to reproduce the problem, but I'm pretty sure this will fix it.
   17490 
   17491         * rendering/RenderObject.cpp: (WebCore::RenderObject::createVisiblePosition):
   17492         Since VisiblePosition doesn't ensure the offset is good, we shouldn't pass max int as an offset.
   17493 
   17494 2009-04-23  Dimitri Glazkov  <dglazkov (a] chromium.org>
   17495 
   17496         Reviewed by Darin Adler.
   17497 
   17498         https://bugs.webkit.org/show_bug.cgi?id=25313
   17499         Missing scroll bars in GMail.
   17500 
   17501         Test: fast/overflow/overflow-y-scroll.html
   17502 
   17503         * platform/ScrollView.cpp:
   17504         (WebCore::ScrollView::updateScrollbars): Added check for the ScrollbarAlwaysOn
   17505         scroll mode.
   17506 
   17507 2009-04-23  Dan Bernstein  <mitz (a] apple.com>
   17508 
   17509         Reviewed by Justin Garcia.
   17510 
   17511         - fix <rdar://problem/6081309> Mail crash when pressing down arrow in
   17512           some messages in WebCore::canHaveChildrenForEditing
   17513 
   17514         Test: editing/selection/extend-by-line-anonymous-content-crash.html
   17515 
   17516         * editing/visible_units.cpp:
   17517         (WebCore::previousLinePosition): Null-check node. If p is not an
   17518         editable position, then closestLeafChildForXPos() may have returned a
   17519         non-editable box, and in particular one belonging to anonymous content.
   17520         If node is 0, fall back on RenderObject::positionForPoint, which
   17521         finds the closest position in non-anonymous content.
   17522         (WebCore::nextLinePosition): Ditto.
   17523         * rendering/RenderObject.cpp:
   17524         (WebCore::RenderObject::createVisiblePosition): Fixed a typo.
   17525 
   17526 2009-04-23  Alexey Proskuryakov  <ap (a] webkit.org>
   17527 
   17528         Reviewed by Adele Peterson.
   17529 
   17530         <rdar://problem/6791439> REGRESSION: Get an error page instead of login page navigating back in gmail
   17531 
   17532         Test: http/tests/history/back-to-post.php
   17533 
   17534         * platform/network/cf/ResourceRequestCFNet.cpp: (WebCore::ResourceRequest::doUpdatePlatformRequest):
   17535         Apply a new cache policy if it changed after the platform request was first created.
   17536         While at it, also made sure to update timeout.
   17537 
   17538 2009-04-23  Zan Dobersek  <zandobersek (a] gmail.com>
   17539 
   17540         Reviewed by Gustavo Noronha.
   17541 
   17542         When creating a new drawable object, collect system's
   17543         information about the best depth it can provide and use it
   17544         in a new colormap that the new drawable requires.
   17545 
   17546         * platform/graphics/gtk/ImageGtk.cpp:
   17547         (WebCore::BitmapImage::getGdkPixbuf):
   17548 
   17549 2009-04-23  Zan Dobersek  <zandobersek (a] gmail.com>
   17550 
   17551         Reviewed by Gustavo Noronha.
   17552 
   17553         https://bugs.webkit.org/show_bug.cgi?id=15654
   17554         GdkPixbuf support for ImageCairo
   17555 
   17556         Add support for converting a Cairo surface to a GdkPixbuf.
   17557 
   17558         * platform/graphics/BitmapImage.h:
   17559         * platform/graphics/Image.h:
   17560         (WebCore::Image::getGdkPixbuf):
   17561         * platform/graphics/gtk/ImageGtk.cpp:
   17562         (WebCore::BitmapImage::getGdkPixbuf):
   17563 
   17564 2009-04-23  Kenneth Rohde Christiansen  <kenneth.christiansen (a] openbossa.org>
   17565 
   17566         Reviewed by Simon Hausmann.
   17567 
   17568         Make windowed plugins (on X11, Qt) behave nicer with wheel scrolling.
   17569 
   17570         Basically, what we want is to send wheel events to the plugin *only*
   17571         when it has focus, or else send it to the parent frame.
   17572 
   17573         This is a work around, and basically what we do, is to steal the
   17574         wheel events from the plugin, modify the window ID, and put the
   17575         event back into the Qt event loop.
   17576 
   17577         * plugins/qt/PluginContainerQt.cpp:
   17578         (PluginClientWrapper::PluginClientWrapper):
   17579         (PluginClientWrapper::~PluginClientWrapper):
   17580         (PluginClientWrapper::x11Event):
   17581         (PluginContainerQt::PluginContainerQt):
   17582         (PluginContainerQt::~PluginContainerQt):
   17583         (PluginContainerQt::on_clientClosed):
   17584         (PluginContainerQt::on_clientIsEmbedded):
   17585         (PluginContainerQt::redirectWheelEventsToParent):
   17586         (PluginContainerQt::x11Event):
   17587         (PluginContainerQt::focusInEvent):
   17588         * plugins/qt/PluginContainerQt.h:
   17589 
   17590 2009-04-22  Brady Eidson  <beidson (a] apple.com>
   17591 
   17592         Reviewed by Maciej Stachowiak
   17593 
   17594         <rdar://problem/6786961> - "Are you sure you want to resubmit this form?" nag displays twice.
   17595 
   17596         For most loads, we were consulting the navigation policy delegate twice.  Once from FrameLoader before
   17597         the load started and once from MainResourceLoader in its willSendRequest callback.
   17598 
   17599         In the past we tried removing MainResourceLoader's call altogether.  This caused a regression where urls 
   17600         that redirect to a url handled by an external application would no longer work in Safari.  It probably 
   17601         also broke other WebKit apps in subtle ways.
   17602 
   17603         Changing MainResourceLoader to make the check only on redirects fixes both bugs.  We now only call the 
   17604         policy delegate once for most standard loads, but we do correctly call it a second time for redirects.
   17605 
   17606         Tests: http/tests/misc/policy-delegate-called-twice.html
   17607                http/tests/misc/redirect-to-external-url.html
   17608 
   17609         * loader/MainResourceLoader.cpp:
   17610         (WebCore::MainResourceLoader::willSendRequest): Call the navigation policy delegate only for redirects.
   17611 
   17612 2009-04-22  Sam Weinig  <sam (a] webkit.org>
   17613 
   17614         Reviewed by Mark Rowe.
   17615 
   17616         Fix for <rdar://problem/6800695>
   17617 
   17618         Add a hack to only allow navigating (via a link from a http page)
   17619         to feed: urls (same for feeds: and feedsearch:) that map to http:
   17620         or https: via their nested protocol. This includes both feed://example.com
   17621         and feed:http://example.com.
   17622 
   17623         * loader/FrameLoader.cpp:
   17624         (WebCore::isFeedWithNestedProtocolInHTTPFamily):
   17625         (WebCore::FrameLoader::loadFrameRequest):
   17626 
   17627 2009-04-22  Sam Weinig  <sam (a] webkit.org>
   17628 
   17629         Reviewed by Anders Carlsson.
   17630 
   17631         Autogenerate the XMLHttpRequest constructor getter/setter for the
   17632         WorkerContext and remove the now no longer needed JSWorkerContextBase.lut.h
   17633         file.
   17634 
   17635         * DerivedSources.make: Remove JSWorkerContextBase.lut.h
   17636         * WebCore.xcodeproj/project.pbxproj: Ditto.
   17637 
   17638         * bindings/js/JSWorkerContextBase.cpp:
   17639         * bindings/js/JSWorkerContextBase.h: Remove code to support hand written
   17640         code for XMLHttpRequest constructor lookup and shadowing.
   17641 
   17642         * bindings/js/JSWorkerContextCustom.cpp:
   17643         (WebCore::JSWorkerContext::customGetOwnPropertySlot): Remove JSC prefixes.
   17644         (WebCore::JSWorkerContext::xmlHttpRequest): Added. Custom implementation of
   17645         cached constructor lookup.
   17646         * workers/WorkerContext.idl: Make the XMLHttpRequestConstructor accessor not
   17647         V8 specific.
   17648 
   17649 2009-04-22  Darin Adler  <darin (a] apple.com>
   17650 
   17651         * page/Navigator.idl: Touch this file to fix build since Geolocation
   17652         configuration was recently turned off.
   17653 
   17654 2009-04-22  Justin Garcia  <justin.garcia (a] apple.com>
   17655 
   17656         Reviewed by Darin Adler.
   17657 
   17658         https://bugs.webkit.org/show_bug.cgi?id=25322
   17659         Can't delete empty paragraph after a block image
   17660         
   17661         Empty paragraph removal would have been handled by mergeParagraphs, but we stopped short
   17662         because of some code that avoided problems that would arise from Positions that would go
   17663         bad during deletion.  
   17664         
   17665         We have several checks that prevent us from using bad Positions, this one in particular
   17666         was added to avoid bad Positions that result from text removal.  So, I removed the check
   17667         and started correctly updating m_downstreamEnd during text removal so that it doesn't go
   17668         bad.  m_upstreamStart doesn't need to be updated during text removal, since only text
   17669         after it will ever be removed.
   17670 
   17671         * editing/DeleteSelectionCommand.cpp:
   17672         (WebCore::DeleteSelectionCommand::deleteTextFromNode):
   17673         (WebCore::DeleteSelectionCommand::handleGeneralDelete):
   17674         (WebCore::DeleteSelectionCommand::mergeParagraphs):
   17675 
   17676 2009-04-22  Oliver Hunt  <oliver (a] apple.com>
   17677 
   17678         Reviewed by Darin Adler.
   17679 
   17680         <rdar://problem/6757346> SAP: Prevent default on mouseDown does not stop iframe from capturing subsequent mouse moves
   17681 
   17682         Make mouseUp target the correct frame when the original
   17683         mousedown made the drag non-capturing.
   17684 
   17685         * page/mac/EventHandlerMac.mm:
   17686         (WebCore::EventHandler::passSubframeEventToSubframe):
   17687 
   17688 2009-04-22  Oliver Hunt  <oliver (a] apple.com>
   17689 
   17690         Reviewed by Darin Adler.
   17691 
   17692         <rdar://problem/6757346> SAP: Prevent default on mouseDown does not stop iframe from capturing subsequent mouse moves
   17693 
   17694         This is the first step of allowing drag events to match the behaviour
   17695         of mouse move events when the default action of the initial mouse down
   17696         is prevented.  Remaining issue is that the final mouse up event still
   17697         targets the original root frame.
   17698 
   17699         Test: fast/events/mouse-drag-from-frame-to-other-frame.html
   17700 
   17701         * page/mac/EventHandlerMac.mm:
   17702         (WebCore::EventHandler::passSubframeEventToSubframe):
   17703 
   17704 2009-04-22  Simon Fraser  <simon.fraser (a] apple.com>
   17705 
   17706         Reviewed by Adele Peterson
   17707         
   17708         <rdar://problem/6702882> QT movie's video fails to be displayed after switching between tabs
   17709         <rdar://problem/6754957> Resizing Web browser window and hitting play will cause video blocks and artifacting
   17710 
   17711         When in a media document, MediaPlayerPrivateQTKit uses a QTMovieView which may get
   17712         layer backing under some circumstances. However, drawing the view via
   17713         displayRectIgnoringOpacity:inContext: bypasses any layer setup that AppKit normally performs.
   17714         So when in the media document, we draw via displayRectIgnoringOpacity:.
   17715 
   17716         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   17717         (WebCore::MediaPlayerPrivate::paint):
   17718 
   17719 2009-04-22  Timothy Hatcher  <timothy (a] apple.com>
   17720 
   17721         Fix a crash in Mail when forwarding a specific HTML email.
   17722         Caused by the fix for <rdar://problem/6512520> (r42096).
   17723         Unable to create a test case that works outside of Mail.
   17724 
   17725         <rdar://problem/6796069>
   17726 
   17727         Reviewed by Ada Chan.
   17728 
   17729         * editing/markup.cpp:
   17730         (WebCore::createMarkup): Null check pastEnd before trying to
   17731         call Range::compareBoundaryPoints.
   17732 
   17733 2009-04-22  Sam Weinig  <sam (a] webkit.org>
   17734 
   17735         Rubber-stamped by Darin Adler.
   17736 
   17737         Fix for <rdar://problem/6816957>
   17738         Turn off Geolocation by default
   17739 
   17740         * Configurations/FeatureDefines.xcconfig:
   17741 
   17742 2009-04-22  Eric Seidel  <eric (a] webkit.org>
   17743 
   17744         Rubber-stamped by David Hyatt.
   17745 
   17746         Change RenderSVGImage to dump as RenderSVGImage instead of RenderImage
   17747 
   17748         * rendering/RenderSVGImage.h:
   17749         (WebCore::RenderSVGImage::renderName):
   17750 
   17751 2009-04-21  Timothy Hatcher  <timothy (a] apple.com>
   17752 
   17753         Fix a crash on Gmail when they remove a "before unload" event listener when
   17754         it was never added to the pending map in the first place.
   17755 
   17756         <rdar://problem/6814144>
   17757 
   17758         Reviewed by Darin Adler.
   17759 
   17760         * page/DOMWindow.cpp:
   17761         (WebCore::allowsPendingBeforeUnloadListeners): Renamed from shouldAddPendingBeforeUnloadListener.
   17762         (WebCore::DOMWindow::addEventListener): Call allowsPendingBeforeUnloadListeners now.
   17763         (WebCore::DOMWindow::removeEventListener): Call allowsPendingBeforeUnloadListeners before
   17764         removing the before unload listener.
   17765         (WebCore::DOMWindow::clearAttributeEventListener): Ditto.
   17766 
   17767 2009-04-22  Kenneth Rohde Christiansen  <kenneth.christiansen (a] openbossa.org>
   17768 
   17769         Reviewed by Ariya Hidayat.
   17770 
   17771         Made windowed plugins move/resize synchronized with the painting, so
   17772         that windowed plugins are not moved before the rest of the parent
   17773         frame during scrolling.
   17774 
   17775         * plugins/qt/PluginContainerQt.cpp:
   17776         (PluginContainerQt::PluginContainerQt):
   17777         (PluginContainerQt::requestGeometry):
   17778         (PluginContainerQt::adjustGeometry):
   17779         * plugins/qt/PluginContainerQt.h:
   17780         * plugins/qt/PluginViewQt.cpp:
   17781         (WebCore::PluginView::updatePluginWidget):
   17782         (WebCore::PluginView::paint):
   17783 
   17784 2009-04-22  Simon Hausmann  <simon.hausmann (a] nokia.com>
   17785 
   17786         Reviewed by Ariya Hidayat.
   17787 
   17788         Fix various bugs in the X11 Qt plugin focus handling.
   17789 
   17790         Notify the focus controller on activation/deactivation of the plugin and
   17791         set focus on the plugin's element when it receives the window system
   17792         focus.
   17793 
   17794         * WebCore.pro: Added PluginContainerQt to the Qt build.
   17795         * plugins/PluginView.cpp:
   17796         (WebCore::PluginView::focusPluginElement): New helper function, moved from PluginViewWin.
   17797         * plugins/PluginView.h:
   17798         (WebCore::PluginView::parentFrame): Added parent frame accessor.
   17799         * plugins/qt/PluginContainerQt.cpp: Added.
   17800         (PluginContainerQt::PluginContainerQt):
   17801         (PluginContainerQt::focusInEvent): Set the focus controller active on focus in events.
   17802         (PluginContainerQt::focusOutEvent): Deactivate the focus controller when loosing the focus.
   17803         * plugins/qt/PluginContainerQt.h: Added.
   17804         * plugins/qt/PluginViewQt.cpp:
   17805         (WebCore::PluginView::init): Allocate a PluginContainerQt instead of QX11EmbedContainer.
   17806         * plugins/win/PluginViewWin.cpp:
   17807         (WebCore::PluginView::handleMouseEvent): Moved the code to set focus on the plugin element
   17808         to PluginView::focusPluginElement.
   17809 
   17810 2009-04-22  Tamas Szirbucz  <szirbucz.tamas (a] stud.u-szeged.hu>
   17811 
   17812         Reviewed by Ariya Hidayat.
   17813 
   17814         https://bugs.webkit.org/show_bug.cgi?id=25023
   17815         Delete reply in QNetworkReplyHandler::abort() to avoid leak.
   17816 
   17817         * platform/network/qt/QNetworkReplyHandler.cpp:
   17818         (WebCore::QNetworkReplyHandler::abort):
   17819 
   17820 2009-04-21  Jon Honeycutt  <jhoneycutt (a] apple.com>
   17821 
   17822         Allow the UI delegate to control cursor-setting.
   17823 
   17824         Reviewed by Ada Chan.
   17825 
   17826         * page/Chrome.cpp:
   17827         (WebCore::Chrome::setCursor):
   17828         Pass the call to the client.
   17829 
   17830         * page/Chrome.h:
   17831 
   17832         * page/ChromeClient.h:
   17833         (WebCore::ChromeClient::setCursor):
   17834         Stubbed; returns false.
   17835 
   17836         * platform/Cursor.h:
   17837         Define PlatformCursorHandle for each platform.
   17838 
   17839         * platform/win/WidgetWin.cpp:
   17840         Reordered some includes. Added an include of Page.h.
   17841         (WebCore::Widget::setCursor):
   17842         Fixed a typo in the comment about ignoreNextSetCursor. Get the Page, and
   17843         call its Chrome's setCursor() method with the passed cursor. Fall back
   17844         to SetCursor() if the Page is not available.
   17845 
   17846         * plugins/win/PluginViewWin.cpp:
   17847         (WebCore::PluginView::handleMouseEvent):
   17848         Remove an unused variable. Cleaned up some whitespace.
   17849 
   17850 2009-04-21  John Abd-El-Malek  <jam (a] google.com>
   17851 
   17852         Reviewed by Dimitri Glazkov.
   17853 
   17854         Add a method to purge the Chromium plugin list cache.
   17855         https://bugs.webkit.org/show_bug.cgi?id=25318
   17856 
   17857         * plugins/chromium/PluginDataChromium.cpp:
   17858         (WebCore::resetChromiumPluginCache):
   17859 
   17860 2009-04-21  Mark Rowe  <mrowe (a] apple.com>
   17861 
   17862         Reviewed by Darin Adler.
   17863 
   17864         Fix <https://bugs.webkit.org/show_bug.cgi?id=25164> / <rdar://problem/6786319>.
   17865 
   17866         We need to ensure that XMLTokenizer sets the current DocLoader before calling in to
   17867         any libxml2 methods that may trigger a load.  The presence of a DocLoader indicates
   17868         that the load was originated by WebCore's use of libxml2 and that we should enforce
   17869         the same-origin policy on it.  XMLTokenizer::initializeParserContext,
   17870         XMLTokenizer::doWrite and XMLTokenizer::doEnd were three methods that were not setting
   17871         the current DocLoader when they should have.
   17872 
   17873         The XMLTokenizerScope class is introduced to simplify the pattern of saving, setting and
   17874         restoring the current DocLoader and libxml2 error handlers.  The DocLoader and error handlers
   17875         are saved and set when the scope is allocated, and restored to their previous values when
   17876         the scope is exited.
   17877 
   17878         Test: http/tests/security/xss-DENIED-xml-external-entity.xhtml
   17879 
   17880         * GNUmakefile.am:
   17881         * WebCore.pro:
   17882         * WebCore.scons:
   17883         * WebCore.vcproj/WebCore.vcproj:
   17884         * WebCore.xcodeproj/project.pbxproj:
   17885         * dom/XMLTokenizer.cpp:
   17886         * dom/XMLTokenizer.h:
   17887         * dom/XMLTokenizerLibxml2.cpp:
   17888         (WebCore::matchFunc):
   17889         (WebCore::shouldAllowExternalLoad):
   17890         (WebCore::openFunc):
   17891         (WebCore::XMLTokenizer::doWrite):
   17892         (WebCore::XMLTokenizer::initializeParserContext):
   17893         (WebCore::XMLTokenizer::doEnd):
   17894         (WebCore::xmlDocPtrForString):
   17895         * dom/XMLTokenizerScope.cpp:
   17896         (WebCore::XMLTokenizerScope::XMLTokenizerScope):
   17897         (WebCore::XMLTokenizerScope::~XMLTokenizerScope):
   17898         * dom/XMLTokenizerScope.h:
   17899         * xml/XSLStyleSheet.cpp:
   17900         (WebCore::XSLStyleSheet::parseString):
   17901         * xml/XSLTProcessor.cpp:
   17902 
   17903 2009-04-21  Sam Weinig  <sam (a] webkit.org>
   17904 
   17905         Reviewed by Dan Bernstein.
   17906 
   17907         Fix for <rdar://problem/5874009>
   17908         Add port 3659 (apple-sasl / PasswordServer) to the list of blocked ports.
   17909 
   17910         * platform/network/ResourceHandle.cpp:
   17911         (WebCore::portAllowed):
   17912 
   17913 2009-04-21  Justin Garcia  <justin.garcia (a] apple.com>
   17914 
   17915         Reviewed by Dan Bernstein.
   17916 
   17917         https://bugs.webkit.org/show_bug.cgi?id=25320
   17918         Crash when changing block styles in a root that contains no visible content (but contains nodes with renderers)
   17919 
   17920         * editing/CompositeEditCommand.cpp:
   17921         (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary): If the enclosing block is the 
   17922         root editable element and it contains no visible content, create a new block but don't try and move 
   17923         content into it, since there's nothing for moveParagraphs to move.
   17924         
   17925 
   17926 2009-04-21  Darin Adler  <darin (a] apple.com>
   17927 
   17928         Reviewed by Dan Bernstein.
   17929 
   17930         Bug 25162: REGRESSION (r41176-r41242): Drag-selection above/below the line does not select to beginning/end
   17931         https://bugs.webkit.org/show_bug.cgi?id=25162
   17932         rdar://problem/6764354
   17933 
   17934         * page/Settings.cpp:
   17935         (WebCore::Settings::Settings): Initialize editing behavior to Mac-style for PLATFORM(MAC).
   17936         Later we may want to change this default to encompass other versions running on Mac.
   17937 
   17938         * page/Settings.h: Added EditingBehavior, setEditingBehavior, editingBehavior, and
   17939         m_editingBehavior. Also moved m_maximumDecodedImageSize out of the middle of all
   17940         the bit fields.
   17941 
   17942         * platform/graphics/IntPoint.h: Added a constructor to turn an IntSize into an IntPoint.
   17943         I'm not sure the distinction here is serving us well at the moment. When converting from
   17944         global to local coordinates you want to do IntPoint - IntPoint and have the result be
   17945         another IntPoint, not an IntSize. And so on.
   17946 
   17947         * rendering/RenderBlock.cpp:
   17948         (WebCore::positionForPointRespectingEditingBoundaries): Changed to use pointers more and
   17949         separate coordinates less.
   17950         (WebCore::RenderBlock::positionForPointWithInlineChildren): Turned into a member function.
   17951         Added separate cases to support the Mac and Windows behavior.
   17952         (WebCore::RenderBlock::positionForPoint): Updated for the change above. Also moved the
   17953         computation of pointInContents closer to the place it's used.
   17954 
   17955         * rendering/RenderBlock.h: Updated for the new private member function.
   17956 
   17957 2009-04-17  Timothy Hatcher  <timothy (a] apple.com>
   17958 
   17959         Change pending unload and beforeunload counts to store the listeners
   17960         in a single data structure that can be quickly iterated for dispatch.
   17961 
   17962         <rdar://problem/6383352&6383379&6383940>
   17963 
   17964         Reviewed by Darin Adler.
   17965 
   17966         * WebCore.base.exp: Change what symbols are exported.
   17967         * loader/FrameLoader.cpp:
   17968         (WebCore::FrameLoader::stopLoading): Remove count updating code
   17969         and move an if inside a block already checking m_frame->document().
   17970         * page/Chrome.cpp: Remove disableSuddenTermination/enableSuddenTermination.
   17971         * page/Chrome.h: Ditto.
   17972         * page/ChromeClient.h: Ditto.
   17973         * page/DOMWindow.cpp:
   17974         (WebCore::pendingUnloadEventListenerMap): Create a static map.
   17975         (WebCore::pendingBeforeUnloadEventListenerMap): Ditto.
   17976         (WebCore::addPendingEventListener): Add the event listener to the map.
   17977         (WebCore::removePendingEventListener): Remove the event listener from the map.
   17978         (WebCore::removePendingEventListeners): Remove all listeners for the window.
   17979         (WebCore::dispatchWindowEventToListeners): Dispatch the event to the given listeners.
   17980         (WebCore::DOMWindow::dispatchAllPendingBeforeUnloadEvents): Send the beforeunload event.
   17981         (WebCore::DOMWindow::pendingUnloadEventListeners): Return a count of pending listeners.
   17982         (WebCore::DOMWindow::dispatchAllPendingUnloadEvents): Send the unload event.
   17983         (WebCore::DOMWindow::~DOMWindow): Remove the window from both event listener maps.
   17984         (WebCore::DOMWindow::addEventListener): Call addPendingEventListener when needed.
   17985         (WebCore::DOMWindow::removeEventListener): Call removePendingEventListener when needed.
   17986         (WebCore::DOMWindow::removeAllEventListeners): Call removePendingEventListeners.
   17987         (WebCore::DOMWindow::removeInlineEventListenerForType): Call removePendingEventListener when needed.
   17988         * page/DOMWindow.h:
   17989         (WebCore::DOMWindow::frame): Changed to be const.
   17990         * page/EventHandler.cpp:
   17991         (WebCore::EventHandler::EventHandler): Remove count tracking code.
   17992         * page/EventHandler.h: Ditto.
   17993         * page/Page.cpp:
   17994         (WebCore::Page::Page): Ditto.
   17995         * page/Page.h: Ditto.
   17996 
   17997 2009-04-21  Justin Garcia  <justin.garcia (a] apple.com>
   17998 
   17999         Reviewed by Darin Adler.
   18000 
   18001         https://bugs.webkit.org/show_bug.cgi?id=19644
   18002         Text copied with Select All pastes with a indent but shouldn't
   18003         <rdar://problem/6102483> 
   18004         Pasting the content of an HTML message in Mail causes addition nested <div> elements to be added
   18005         
   18006         To improve selectall/copy/paste fidelity of certain pages, we began wrapping copied content with
   18007         a div that held properties and attributes from the fully selected body.  To fix the above issues, 
   18008         only do this if if the body has certain properties or attributes.  We'll begin adding to this list as 
   18009         necessary.  For now it's just background colors and images.  Tested copy/paste of nytimes, wired,
   18010         arstechnica, and several others.
   18011         
   18012         Massive nesting can still happen, it will just be much less common.
   18013 
   18014         * editing/markup.cpp:
   18015         (WebCore::createMarkup): 
   18016 
   18017 2009-04-21  Peter Kasting  <pkasting (a] google.com>
   18018 
   18019         Reviewed by David Hyatt.
   18020 
   18021         https://bugs.webkit.org/show_bug.cgi?id=25250
   18022         Allow platforms to snap the scroll thumb back to the drag origin
   18023         during a drag.  Implement functions for Safari/Win and Chromium/Win
   18024         to do this snapping at distances approximating the native ones.
   18025 
   18026         * platform/Scrollbar.cpp:
   18027         (WebCore::Scrollbar::Scrollbar):
   18028         (WebCore::Scrollbar::setValue):
   18029         (WebCore::Scrollbar::scroll):
   18030         (WebCore::Scrollbar::moveThumb):
   18031         (WebCore::Scrollbar::setCurrentPos):
   18032         (WebCore::Scrollbar::mouseMoved):
   18033         (WebCore::Scrollbar::mouseDown):
   18034         * platform/Scrollbar.h:
   18035         * platform/ScrollbarTheme.h:
   18036         (WebCore::ScrollbarTheme::shouldSnapBackToDragOrigin):
   18037         * platform/chromium/ScrollbarThemeChromium.h:
   18038         * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
   18039         (WebCore::ScrollbarThemeChromium::shouldSnapBackToDragOrigin):
   18040         * platform/chromium/ScrollbarThemeChromiumWin.cpp:
   18041         (WebCore::ScrollbarThemeChromium::shouldSnapBackToDragOrigin):
   18042         * platform/win/ScrollbarThemeWin.cpp:
   18043         (WebCore::ScrollbarThemeWin::shouldCenterOnThumb):
   18044         (WebCore::ScrollbarThemeWin::shouldSnapBackToDragOrigin):
   18045         * platform/win/ScrollbarThemeWin.h:
   18046 
   18047 2009-04-21  Adam Roben  <aroben (a] apple.com>
   18048 
   18049         Windows build fix
   18050 
   18051         * bindings/js/JSLazyEventListener.cpp:
   18052         (WebCore::eventParameterName): Remove unreachable code when SVG is
   18053         enabled.
   18054 
   18055 2009-04-21  Kevin Ollivier  <kevino (a] theolliviers.com>
   18056 
   18057         !ENABLE(SVG) build fix.
   18058         
   18059         * bindings/js/JSLazyEventListener.cpp:
   18060         (WebCore::eventParameterName):
   18061 
   18062 2009-04-21  Dave Moore  <davemoore (a] google.com>
   18063 
   18064         Reviewed by Dimitri Glazkov.
   18065 
   18066         https://bugs.webkit.org/show_bug.cgi?id=25309
   18067         Better use AtomicStrings when calling from the V8
   18068         bindings into WebCore code.
   18069 
   18070         * bindings/v8/custom/V8DOMWindowCustom.cpp:
   18071         * bindings/v8/custom/V8HTMLCollectionCustom.cpp:
   18072         * bindings/v8/custom/V8HTMLFormElementCustom.cpp:
   18073         * bindings/v8/custom/V8HTMLFrameSetElementCustom.cpp:
   18074 
   18075 2009-04-21  Chris Fleizach  <cfleizach (a] apple.com>
   18076 
   18077         Reviewed by Darin Adler.
   18078  
   18079         Bug 25304: AX: Safari not identifying a secure text field
   18080         https://bugs.webkit.org/show_bug.cgi?id=25304
   18081 
   18082         Secure text fields need to be able to return AXTitleUIElements.
   18083 
   18084         Test: accessibility/secure-textfield-title-ui.html
   18085 
   18086         * page/mac/AccessibilityObjectWrapper.mm:
   18087         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
   18088 
   18089 2009-04-21  Dan Bernstein  <mitz (a] apple.com>
   18090 
   18091         - fix the Tiger build
   18092 
   18093         * page/mac/EventHandlerMac.mm:
   18094         (method_setImplementation):
   18095 
   18096 2009-04-21   Laszlo Gombos  <laszlo.1.gombos (a] nokia.com>
   18097 
   18098         Reviewed by Sam Weinig.
   18099 
   18100         https://bugs.webkit.org/show_bug.cgi?id=25271
   18101 
   18102         Fix the build with disabled DOM storage or disabled database support.
   18103 
   18104         * bindings/js/ScriptObjectQuarantine.cpp:
   18105         * bindings/js/ScriptObjectQuarantine.h:
   18106 
   18107 2009-04-21  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   18108 
   18109         Unreviewed build fix.
   18110 
   18111         Compile fix for r42633. const qualifier does not work
   18112         on a static method.
   18113 
   18114         * dom/Document.h:
   18115         (WebCore::Document::isSVGDocument):
   18116 
   18117 2009-04-21  Dan Bernstein  <mitz (a] apple.com>
   18118 
   18119         Reviewed by Darin Adler and John Sullivan.
   18120 
   18121         - fix <rdar://problem/5914146> Crash at -[NSScrollView scrollWheel:]
   18122 
   18123         -[NSScrollView scrollWheel:] runs a nested event-tracking run loop
   18124         in a mode that allows WebCore timers to fire and NSURLConnection
   18125         callbacks to be dispatched, which can release the NSScrollView and
   18126         cause it to be deallocated (one example is a DOM timer callback that
   18127         removes a subframe from the document). This leads to a crash in
   18128         -scrollView:.
   18129 
   18130         The fix is to replace the implementation of -[NSScrollView scrollWheel:]
   18131         with one that optionally retains the receiver for the duration of the
   18132         call.
   18133 
   18134         * page/mac/EventHandlerMac.mm:
   18135         (WebCore::nsScrollViewScrollWheelShouldRetainSelf): Added.
   18136         (WebCore::setNSScrollViewScrollWheelShouldRetainSelf): Added. Replaces
   18137         the implementation of -[NSScrollView scrollWheel:] with the
   18138         self-retaining one, and sets a static boolean that tells it whether to
   18139         retain the receiver around the call to the original implementation.
   18140         (WebCore::selfRetainingNSScrollViewScrollWheel): Added. If
   18141         setNSScrollViewScrollWheelShouldRetainSelf(true) was called and this
   18142         function is executing on the main thread, it retains the NSScrollView,
   18143         invokes the original -[NSScrollView scrollWheel:], then releases the
   18144         view. Otherwise it just calls through to the original implementation.
   18145         (WebCore::EventHandler::passWheelEventToWidget): Added calls to
   18146         setNSScrollViewScrollWheelShouldRetainSelf() around the call to
   18147         -scrollWheel:.
   18148 
   18149 2009-04-21  Geoffrey Garen  <ggaren (a] apple.com>
   18150 
   18151         Reviewed by Mark Rowe.
   18152 
   18153         Tiger crash fix: Put VM tags in their own header file, and fixed up the
   18154         #ifdefs so they're not used on Tiger.
   18155 
   18156         * ForwardingHeaders/wtf/VMTags.h: Copied from WebCore/ForwardingHeaders/wtf/HashTraits.h.
   18157 
   18158 2009-04-21  Xan Lopez  <xlopez (a] igalia.com>
   18159 
   18160         Reviewed by Gustavo Noronha.
   18161 
   18162         https://bugs.webkit.org/show_bug.cgi?id=21546
   18163         [GTK] ATK accessibility enhancements
   18164 
   18165         Based on a patch by Alp Toker.
   18166 
   18167         Implement AtkComponent interface.
   18168 
   18169         * page/gtk/AccessibilityObjectWrapperAtk.cpp:
   18170         (core):
   18171 
   18172 2009-04-21  Xan Lopez  <xlopez (a] igalia.com>
   18173 
   18174         Reviewed by Gustavo Noronha.
   18175 
   18176         https://bugs.webkit.org/show_bug.cgi?id=21546
   18177         [GTK] ATK accessibility enhancements
   18178 
   18179         Only implement AtkAction interface if we actually have an action.
   18180 
   18181         * page/gtk/AccessibilityObjectWrapperAtk.cpp:
   18182 
   18183 2009-04-20  Alexey Proskuryakov  <ap (a] webkit.org>
   18184 
   18185         Reviewed by Darin Adler.
   18186 
   18187         https://bugs.webkit.org/show_bug.cgi?id=25290
   18188         REGRESSION(r41732): Crash when constructing XMLHttpRequest in a detached document
   18189 
   18190         Test: fast/dom/xmlhttprequest-constructor-in-detached-document.html
   18191 
   18192         * bindings/js/JSAudioConstructor.cpp:
   18193         (WebCore::JSAudioConstructor::JSAudioConstructor):
   18194         * bindings/js/JSAudioConstructor.h:
   18195         * bindings/js/JSDOMGlobalObject.h:
   18196         (WebCore::getDOMConstructor):
   18197         * bindings/js/JSImageConstructor.cpp:
   18198         (WebCore::JSImageConstructor::JSImageConstructor):
   18199         * bindings/js/JSImageConstructor.h:
   18200         * bindings/js/JSMessageChannelConstructor.cpp:
   18201         (WebCore::JSMessageChannelConstructor::JSMessageChannelConstructor):
   18202         * bindings/js/JSMessageChannelConstructor.h:
   18203         * bindings/js/JSOptionConstructor.cpp:
   18204         (WebCore::JSOptionConstructor::JSOptionConstructor):
   18205         * bindings/js/JSOptionConstructor.h:
   18206         * bindings/js/JSXMLHttpRequestConstructor.cpp:
   18207         (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
   18208         * bindings/js/JSXMLHttpRequestConstructor.h:
   18209         Avoid accessing JSDOMGlobalObject via ScriptExecutionContext, since it may not
   18210         work during frame teardown.
   18211 
   18212 2009-04-20  Geoffrey Garen  <ggaren (a] apple.com>
   18213 
   18214         Rubber stamped by Darin Adler and Sam Weinig.
   18215 
   18216         Renamed "*InlineEventListener*" => "*AttributeEventListener*", and
   18217         "isInline" => "isAttribute".
   18218 
   18219         * bindings/js/JSDOMGlobalObject.cpp:
   18220         (WebCore::JSDOMGlobalObject::createJSAttributeEventListener):
   18221         * bindings/js/JSEventListener.cpp:
   18222         (WebCore::JSEventListener::JSEventListener):
   18223         (WebCore::JSEventListener::~JSEventListener):
   18224         (WebCore::JSEventListener::handleEvent):
   18225         (WebCore::JSEventListener::virtualisAttribute):
   18226         * bindings/js/JSEventListener.h:
   18227         (WebCore::JSEventListener::create):
   18228         (WebCore::JSEventListener::isAttribute):
   18229         * bindings/js/JSLazyEventListener.cpp:
   18230         (WebCore::createAttributeEventListener):
   18231         * bindings/js/JSLazyEventListener.h:
   18232         * bindings/scripts/CodeGeneratorJS.pm:
   18233         * dom/Element.cpp:
   18234         (WebCore::Element::setWindowAttributeEventListener):
   18235         * dom/Element.h:
   18236         * dom/EventListener.h:
   18237         (WebCore::EventListener::isAttribute):
   18238         (WebCore::EventListener::virtualisAttribute):
   18239         * dom/Node.cpp:
   18240         (WebCore::Node::clearAttributeEventListener):
   18241         (WebCore::Node::setAttributeEventListener):
   18242         (WebCore::Node::getAttributeEventListener):
   18243         (WebCore::Node::onabort):
   18244         (WebCore::Node::setOnabort):
   18245         (WebCore::Node::onblur):
   18246         (WebCore::Node::setOnblur):
   18247         (WebCore::Node::onchange):
   18248         (WebCore::Node::setOnchange):
   18249         (WebCore::Node::onclick):
   18250         (WebCore::Node::setOnclick):
   18251         (WebCore::Node::oncontextmenu):
   18252         (WebCore::Node::setOncontextmenu):
   18253         (WebCore::Node::ondblclick):
   18254         (WebCore::Node::setOndblclick):
   18255         (WebCore::Node::onerror):
   18256         (WebCore::Node::setOnerror):
   18257         (WebCore::Node::onfocus):
   18258         (WebCore::Node::setOnfocus):
   18259         (WebCore::Node::oninput):
   18260         (WebCore::Node::setOninput):
   18261         (WebCore::Node::onkeydown):
   18262         (WebCore::Node::setOnkeydown):
   18263         (WebCore::Node::onkeypress):
   18264         (WebCore::Node::setOnkeypress):
   18265         (WebCore::Node::onkeyup):
   18266         (WebCore::Node::setOnkeyup):
   18267         (WebCore::Node::onload):
   18268         (WebCore::Node::setOnload):
   18269         (WebCore::Node::onmousedown):
   18270         (WebCore::Node::setOnmousedown):
   18271         (WebCore::Node::onmousemove):
   18272         (WebCore::Node::setOnmousemove):
   18273         (WebCore::Node::onmouseout):
   18274         (WebCore::Node::setOnmouseout):
   18275         (WebCore::Node::onmouseover):
   18276         (WebCore::Node::setOnmouseover):
   18277         (WebCore::Node::onmouseup):
   18278         (WebCore::Node::setOnmouseup):
   18279         (WebCore::Node::onmousewheel):
   18280         (WebCore::Node::setOnmousewheel):
   18281         (WebCore::Node::onbeforecut):
   18282         (WebCore::Node::setOnbeforecut):
   18283         (WebCore::Node::oncut):
   18284         (WebCore::Node::setOncut):
   18285         (WebCore::Node::onbeforecopy):
   18286         (WebCore::Node::setOnbeforecopy):
   18287         (WebCore::Node::oncopy):
   18288         (WebCore::Node::setOncopy):
   18289         (WebCore::Node::onbeforepaste):
   18290         (WebCore::Node::setOnbeforepaste):
   18291         (WebCore::Node::onpaste):
   18292         (WebCore::Node::setOnpaste):
   18293         (WebCore::Node::ondragenter):
   18294         (WebCore::Node::setOndragenter):
   18295         (WebCore::Node::ondragover):
   18296         (WebCore::Node::setOndragover):
   18297         (WebCore::Node::ondragleave):
   18298         (WebCore::Node::setOndragleave):
   18299         (WebCore::Node::ondrop):
   18300         (WebCore::Node::setOndrop):
   18301         (WebCore::Node::ondragstart):
   18302         (WebCore::Node::setOndragstart):
   18303         (WebCore::Node::ondrag):
   18304         (WebCore::Node::setOndrag):
   18305         (WebCore::Node::ondragend):
   18306         (WebCore::Node::setOndragend):
   18307         (WebCore::Node::onreset):
   18308         (WebCore::Node::setOnreset):
   18309         (WebCore::Node::onresize):
   18310         (WebCore::Node::setOnresize):
   18311         (WebCore::Node::onscroll):
   18312         (WebCore::Node::setOnscroll):
   18313         (WebCore::Node::onsearch):
   18314         (WebCore::Node::setOnsearch):
   18315         (WebCore::Node::onselect):
   18316         (WebCore::Node::setOnselect):
   18317         (WebCore::Node::onselectstart):
   18318         (WebCore::Node::setOnselectstart):
   18319         (WebCore::Node::onsubmit):
   18320         (WebCore::Node::setOnsubmit):
   18321         (WebCore::Node::onunload):
   18322         (WebCore::Node::setOnunload):
   18323         * dom/Node.h:
   18324         * editing/ReplaceSelectionCommand.cpp:
   18325         (WebCore::ReplacementFragment::ReplacementFragment):
   18326         * html/HTMLBodyElement.cpp:
   18327         (WebCore::HTMLBodyElement::parseMappedAttribute):
   18328         * html/HTMLButtonElement.cpp:
   18329         (WebCore::HTMLButtonElement::parseMappedAttribute):
   18330         * html/HTMLElement.cpp:
   18331         (WebCore::HTMLElement::parseMappedAttribute):
   18332         * html/HTMLFormElement.cpp:
   18333         (WebCore::HTMLFormElement::parseMappedAttribute):
   18334         * html/HTMLFrameElementBase.cpp:
   18335         (WebCore::HTMLFrameElementBase::parseMappedAttribute):
   18336         * html/HTMLFrameSetElement.cpp:
   18337         (WebCore::HTMLFrameSetElement::parseMappedAttribute):
   18338         * html/HTMLImageElement.cpp:
   18339         (WebCore::HTMLImageElement::parseMappedAttribute):
   18340         * html/HTMLInputElement.cpp:
   18341         (WebCore::HTMLInputElement::parseMappedAttribute):
   18342         * html/HTMLObjectElement.cpp:
   18343         (WebCore::HTMLObjectElement::parseMappedAttribute):
   18344         * html/HTMLScriptElement.cpp:
   18345         (WebCore::HTMLScriptElement::parseMappedAttribute):
   18346         * html/HTMLSelectElement.cpp:
   18347         (WebCore::HTMLSelectElement::parseMappedAttribute):
   18348         * html/HTMLTextAreaElement.cpp:
   18349         (WebCore::HTMLTextAreaElement::parseMappedAttribute):
   18350         * page/AccessibilityRenderObject.cpp:
   18351         (WebCore::AccessibilityRenderObject::mouseButtonListener):
   18352         * page/DOMWindow.cpp:
   18353         (WebCore::DOMWindow::setAttributeEventListener):
   18354         (WebCore::DOMWindow::clearAttributeEventListener):
   18355         (WebCore::DOMWindow::getAttributeEventListener):
   18356         (WebCore::DOMWindow::onabort):
   18357         (WebCore::DOMWindow::setOnabort):
   18358         (WebCore::DOMWindow::onblur):
   18359         (WebCore::DOMWindow::setOnblur):
   18360         (WebCore::DOMWindow::onchange):
   18361         (WebCore::DOMWindow::setOnchange):
   18362         (WebCore::DOMWindow::onclick):
   18363         (WebCore::DOMWindow::setOnclick):
   18364         (WebCore::DOMWindow::ondblclick):
   18365         (WebCore::DOMWindow::setOndblclick):
   18366         (WebCore::DOMWindow::onerror):
   18367         (WebCore::DOMWindow::setOnerror):
   18368         (WebCore::DOMWindow::onfocus):
   18369         (WebCore::DOMWindow::setOnfocus):
   18370         (WebCore::DOMWindow::onkeydown):
   18371         (WebCore::DOMWindow::setOnkeydown):
   18372         (WebCore::DOMWindow::onkeypress):
   18373         (WebCore::DOMWindow::setOnkeypress):
   18374         (WebCore::DOMWindow::onkeyup):
   18375         (WebCore::DOMWindow::setOnkeyup):
   18376         (WebCore::DOMWindow::onload):
   18377         (WebCore::DOMWindow::setOnload):
   18378         (WebCore::DOMWindow::onmousedown):
   18379         (WebCore::DOMWindow::setOnmousedown):
   18380         (WebCore::DOMWindow::onmousemove):
   18381         (WebCore::DOMWindow::setOnmousemove):
   18382         (WebCore::DOMWindow::onmouseout):
   18383         (WebCore::DOMWindow::setOnmouseout):
   18384         (WebCore::DOMWindow::onmouseover):
   18385         (WebCore::DOMWindow::setOnmouseover):
   18386         (WebCore::DOMWindow::onmouseup):
   18387         (WebCore::DOMWindow::setOnmouseup):
   18388         (WebCore::DOMWindow::onmousewheel):
   18389         (WebCore::DOMWindow::setOnmousewheel):
   18390         (WebCore::DOMWindow::onreset):
   18391         (WebCore::DOMWindow::setOnreset):
   18392         (WebCore::DOMWindow::onresize):
   18393         (WebCore::DOMWindow::setOnresize):
   18394         (WebCore::DOMWindow::onscroll):
   18395         (WebCore::DOMWindow::setOnscroll):
   18396         (WebCore::DOMWindow::onsearch):
   18397         (WebCore::DOMWindow::setOnsearch):
   18398         (WebCore::DOMWindow::onselect):
   18399         (WebCore::DOMWindow::setOnselect):
   18400         (WebCore::DOMWindow::onsubmit):
   18401         (WebCore::DOMWindow::setOnsubmit):
   18402         (WebCore::DOMWindow::onunload):
   18403         (WebCore::DOMWindow::setOnunload):
   18404         (WebCore::DOMWindow::onbeforeunload):
   18405         (WebCore::DOMWindow::setOnbeforeunload):
   18406         (WebCore::DOMWindow::onwebkitanimationstart):
   18407         (WebCore::DOMWindow::setOnwebkitanimationstart):
   18408         (WebCore::DOMWindow::onwebkitanimationiteration):
   18409         (WebCore::DOMWindow::setOnwebkitanimationiteration):
   18410         (WebCore::DOMWindow::onwebkitanimationend):
   18411         (WebCore::DOMWindow::setOnwebkitanimationend):
   18412         (WebCore::DOMWindow::onwebkittransitionend):
   18413         (WebCore::DOMWindow::setOnwebkittransitionend):
   18414         * page/DOMWindow.h:
   18415         * svg/SVGElement.cpp:
   18416         (WebCore::SVGElement::parseMappedAttribute):
   18417         * svg/SVGElementInstance.cpp:
   18418         (WebCore::SVGElementInstance::onabort):
   18419         (WebCore::SVGElementInstance::setOnabort):
   18420         (WebCore::SVGElementInstance::onblur):
   18421         (WebCore::SVGElementInstance::setOnblur):
   18422         (WebCore::SVGElementInstance::onchange):
   18423         (WebCore::SVGElementInstance::setOnchange):
   18424         (WebCore::SVGElementInstance::onclick):
   18425         (WebCore::SVGElementInstance::setOnclick):
   18426         (WebCore::SVGElementInstance::oncontextmenu):
   18427         (WebCore::SVGElementInstance::setOncontextmenu):
   18428         (WebCore::SVGElementInstance::ondblclick):
   18429         (WebCore::SVGElementInstance::setOndblclick):
   18430         (WebCore::SVGElementInstance::onerror):
   18431         (WebCore::SVGElementInstance::setOnerror):
   18432         (WebCore::SVGElementInstance::onfocus):
   18433         (WebCore::SVGElementInstance::setOnfocus):
   18434         (WebCore::SVGElementInstance::oninput):
   18435         (WebCore::SVGElementInstance::setOninput):
   18436         (WebCore::SVGElementInstance::onkeydown):
   18437         (WebCore::SVGElementInstance::setOnkeydown):
   18438         (WebCore::SVGElementInstance::onkeypress):
   18439         (WebCore::SVGElementInstance::setOnkeypress):
   18440         (WebCore::SVGElementInstance::onkeyup):
   18441         (WebCore::SVGElementInstance::setOnkeyup):
   18442         (WebCore::SVGElementInstance::onload):
   18443         (WebCore::SVGElementInstance::setOnload):
   18444         (WebCore::SVGElementInstance::onmousedown):
   18445         (WebCore::SVGElementInstance::setOnmousedown):
   18446         (WebCore::SVGElementInstance::onmousemove):
   18447         (WebCore::SVGElementInstance::setOnmousemove):
   18448         (WebCore::SVGElementInstance::onmouseout):
   18449         (WebCore::SVGElementInstance::setOnmouseout):
   18450         (WebCore::SVGElementInstance::onmouseover):
   18451         (WebCore::SVGElementInstance::setOnmouseover):
   18452         (WebCore::SVGElementInstance::onmouseup):
   18453         (WebCore::SVGElementInstance::setOnmouseup):
   18454         (WebCore::SVGElementInstance::onmousewheel):
   18455         (WebCore::SVGElementInstance::setOnmousewheel):
   18456         (WebCore::SVGElementInstance::onbeforecut):
   18457         (WebCore::SVGElementInstance::setOnbeforecut):
   18458         (WebCore::SVGElementInstance::oncut):
   18459         (WebCore::SVGElementInstance::setOncut):
   18460         (WebCore::SVGElementInstance::onbeforecopy):
   18461         (WebCore::SVGElementInstance::setOnbeforecopy):
   18462         (WebCore::SVGElementInstance::oncopy):
   18463         (WebCore::SVGElementInstance::setOncopy):
   18464         (WebCore::SVGElementInstance::onbeforepaste):
   18465         (WebCore::SVGElementInstance::setOnbeforepaste):
   18466         (WebCore::SVGElementInstance::onpaste):
   18467         (WebCore::SVGElementInstance::setOnpaste):
   18468         (WebCore::SVGElementInstance::ondragenter):
   18469         (WebCore::SVGElementInstance::setOndragenter):
   18470         (WebCore::SVGElementInstance::ondragover):
   18471         (WebCore::SVGElementInstance::setOndragover):
   18472         (WebCore::SVGElementInstance::ondragleave):
   18473         (WebCore::SVGElementInstance::setOndragleave):
   18474         (WebCore::SVGElementInstance::ondrop):
   18475         (WebCore::SVGElementInstance::setOndrop):
   18476         (WebCore::SVGElementInstance::ondragstart):
   18477         (WebCore::SVGElementInstance::setOndragstart):
   18478         (WebCore::SVGElementInstance::ondrag):
   18479         (WebCore::SVGElementInstance::setOndrag):
   18480         (WebCore::SVGElementInstance::ondragend):
   18481         (WebCore::SVGElementInstance::setOndragend):
   18482         (WebCore::SVGElementInstance::onreset):
   18483         (WebCore::SVGElementInstance::setOnreset):
   18484         (WebCore::SVGElementInstance::onresize):
   18485         (WebCore::SVGElementInstance::setOnresize):
   18486         (WebCore::SVGElementInstance::onscroll):
   18487         (WebCore::SVGElementInstance::setOnscroll):
   18488         (WebCore::SVGElementInstance::onsearch):
   18489         (WebCore::SVGElementInstance::setOnsearch):
   18490         (WebCore::SVGElementInstance::onselect):
   18491         (WebCore::SVGElementInstance::setOnselect):
   18492         (WebCore::SVGElementInstance::onselectstart):
   18493         (WebCore::SVGElementInstance::setOnselectstart):
   18494         (WebCore::SVGElementInstance::onsubmit):
   18495         (WebCore::SVGElementInstance::setOnsubmit):
   18496         (WebCore::SVGElementInstance::onunload):
   18497         (WebCore::SVGElementInstance::setOnunload):
   18498         * svg/SVGSVGElement.cpp:
   18499         (WebCore::SVGSVGElement::parseMappedAttribute):
   18500 
   18501 2009-04-20  Geoffrey Garen  <ggaren (a] apple.com>
   18502 
   18503         Approved by Mark Rowe, Cameron Zwarich, Oliver Hunt, and Ojan Vafai.
   18504         
   18505         Used svn merge to roll out revisions 42678, 42690, 42694, 42697 because
   18506         they broke the Tiger and Windows buildbots.
   18507 
   18508         * css/html4.css:
   18509         * css/themeWin.css:
   18510         * platform/graphics/SimpleFontData.cpp:
   18511         * platform/graphics/SimpleFontData.h:
   18512         * platform/graphics/chromium/SimpleFontDataChromiumWin.cpp:
   18513         * platform/graphics/chromium/SimpleFontDataLinux.cpp:
   18514         * platform/graphics/gtk/SimpleFontDataGtk.cpp:
   18515         * platform/graphics/gtk/SimpleFontDataPango.cpp:
   18516         * platform/graphics/mac/SimpleFontDataMac.mm:
   18517         * platform/graphics/qt/SimpleFontDataQt.cpp:
   18518         * platform/graphics/win/SimpleFontDataCGWin.cpp:
   18519         * platform/graphics/win/SimpleFontDataCairoWin.cpp:
   18520         * platform/graphics/win/SimpleFontDataWin.cpp:
   18521         * platform/graphics/wx/SimpleFontDataWx.cpp:
   18522         * rendering/RenderTextControl.cpp:
   18523         * rendering/RenderTextControlMultiLine.cpp:
   18524         * rendering/RenderTextControlSingleLine.cpp:
   18525 
   18526 2009-04-20  Geoffrey Garen  <ggaren (a] apple.com>
   18527 
   18528         Reviewed by Adam Roben.
   18529 
   18530         One last loose end, discovered using COLLECT_ON_EVERY_ALLOCATION, for
   18531         https://bugs.webkit.org/show_bug.cgi?id=21260
   18532         Unbounded memory growth when churning elements with anonymous event handler functions
   18533         
   18534         * bindings/js/JSSVGElementInstanceCustom.cpp:
   18535         (WebCore::JSSVGElementInstance::mark): Don't ASSERT that an ElementInstance's
   18536         correspondingElement has a JS wrapper. If a GC falls exactly between the
   18537         allocation of the ElementInstance wrapper and the correspondingElement
   18538         wrapper, the correspondingElement won't have a wrapper at the time we
   18539         mark the ElementInstance's wrapper.
   18540 
   18541 2009-04-20  Brady Eidson  <beidson (a] apple.com>
   18542 
   18543         Rubberstamped by Mark Rowe
   18544 
   18545         Clean builds are broken on case-sensitive filesystems.  Let's fix, shall we?
   18546 
   18547         * platform/graphics/SimpleFontData.cpp: Remove "String.h" include.  Ojan probably intended to include
   18548           "PlatformString.h" which was unnecessary because it is pulled in through other headers.  This wasn't a 
   18549           build failure on case-insensitive file systems because those systems would find the system <string.h>, averting
   18550           the warning.
   18551 
   18552 2009-04-20  Geoffrey Garen  <ggaren (a] apple.com>
   18553 
   18554         Reviewed by Darin Adler.
   18555 
   18556         Last patch for https://bugs.webkit.org/show_bug.cgi?id=21260
   18557         Unbounded memory growth when churning elements with anonymous event handler functions
   18558         
   18559         Converted "lazy" event listeners to be unprotected, just like all the others.
   18560 
   18561         * bindings/js/JSEventListener.cpp:
   18562         (WebCore::JSEventListener::JSEventListener):
   18563         (WebCore::JSEventListener::~JSEventListener):
   18564         (WebCore::JSEventListener::jsFunction):
   18565         (WebCore::JSEventListener::markJSFunction):
   18566         (WebCore::JSEventListener::handleEvent):
   18567         (WebCore::JSEventListener::virtualIsInline):
   18568         * bindings/js/JSEventListener.h:
   18569         (WebCore::JSEventListener::isInline): Merged JSAbstractEventListener
   18570         into JSEventListener. Now that the only difference between JSEventListener
   18571         and JSLazyEventListener is that JSLazyEventListener compiles lazily,
   18572         there's no need for an abstract base class.
   18573 
   18574         * bindings/js/JSLazyEventListener.cpp: Converted JSLazyEventListener to
   18575         inherit from JSEventListener and match its un-GC-protected behavior.
   18576         (WebCore::JSLazyEventListener::JSLazyEventListener): ditto
   18577         (WebCore::JSLazyEventListener::parseCode): ditto
   18578         (WebCore::createInlineEventListener): When creating a lazy event listener,
   18579         ensure that the related node has a JS wrapper to mark the listener. Since
   18580         the parser makes these listeners, it's possible that no JS reference has
   18581         been made to the node yet.
   18582         * bindings/js/JSLazyEventListener.h: ditto
   18583 
   18584         * dom/EventListener.h:
   18585         (WebCore::EventListener::clearJSFunction): Removed an usused function.
   18586 
   18587 2009-04-20  Justin Garcia  <justin.garcia (a] apple.com>
   18588 
   18589         Reviewed by Dan Bernstein.
   18590 
   18591         https://bugs.webkit.org/show_bug.cgi?id=25299
   18592         Don't bound caret to root line box if it is still inside its containing block
   18593         
   18594         Can't yet write tests for behavior of non-standard caret widths.
   18595 
   18596         * rendering/RenderText.cpp:
   18597         (WebCore::RenderText::localCaretRect):
   18598 
   18599 2009-04-20  Steve Falkenburg  <sfalken (a] apple.com>
   18600 
   18601         Separate JavaScriptCore.dll from WebKit.dll.
   18602         Slight performance improvement or no change on benchmarks.
   18603         
   18604         Allows us to break a circular dependency between CFNetwork and WebKit on Windows,
   18605         and simplifies standalone JavaScriptCore builds.
   18606 
   18607         Reviewed by Oliver Hunt.
   18608 
   18609         * config.h: Specify __declspec(dllexport/dllimport) appropriately when exporting data.
   18610 
   18611 2009-04-20  Anders Carlsson  <andersca (a] apple.com>
   18612 
   18613         Reviewed by Sam Weinig.
   18614 
   18615         <rdar://problem/6722845> In the Cocoa event model, NPWindow's window field should be null
   18616 
   18617         * bridge/npapi.h:
   18618         (_NPCocoaEvent::):
   18619         Add a CGContextRef member to the draw struct. Add an NPCoordinateSpace enum.
   18620         
   18621         * plugins/npfunctions.h:
   18622         Add a prototype for NPN_ConvertPoint.
   18623 
   18624 2009-04-10  Ojan Vafai  <ojan (a] chromium.org>
   18625 
   18626         Reviewed by Dan Bernstein.
   18627 
   18628         Make textarea and text input metrics more closely match IEs.
   18629         https://bugs.webkit.org/show_bug.cgi?id=15312
   18630 
   18631         This involves:
   18632         -set text input width to size*avgCharWidth + maxCharWidth - avgCharWidth
   18633         -set textarea width to cols*avgCharWidth
   18634         -Make default CSS match IEs
   18635         -Correctly initializing m_avgCharWidth and m_maxCharWidth for each platform and SVG.
   18636 
   18637         Those values for textarea and inputs were derived by doing a ton of manual
   18638         testing of IE's width values for various textareas and fonts.
   18639 
   18640         To get the average and max character width of a font, we do the following
   18641         for each platform:
   18642         -Win: TextMetrics expose avgCharWidth and maxCharWidth
   18643         -SVG: avgCharWidth = width of an '0', fallback on width of a space glyph, then m_xHeight
   18644             maxCharWidth = width of a 'W' for roman fonts, fallback on m_ascent
   18645         -Linux: avgCharWidth = width of an '0', fallback on m_xHeight
   18646             maxCharWidth = max of avgCharWidth and m_ascent
   18647         -Mac: look in the OS/2 table for avgCharWidth and grab the maxCharWidth off the font.
   18648             If either one is not there, then calculate the value using the Linux approach.
   18649 
   18650         Linux ports could probably dig into the OS/2 table as well, but I'll leave
   18651         that up to them to implement.
   18652 
   18653         Tests: fast/forms/text-control-intrinsic-widths.html
   18654                fast/forms/textarea-metrics.html
   18655                svg/custom/svg-fonts-in-text-controls.html
   18656 
   18657         * css/html4.css:
   18658         * css/themeWin.css:
   18659         * platform/graphics/SimpleFontData.cpp:
   18660         (WebCore::SimpleFontData::SimpleFontData):
   18661         (WebCore::SimpleFontData::initCharWidths):
   18662         * platform/graphics/SimpleFontData.h:
   18663         (WebCore::SimpleFontData::maxCharWidth):
   18664         (WebCore::SimpleFontData::avgCharWidth):
   18665         * platform/graphics/chromium/SimpleFontDataChromiumWin.cpp:
   18666         (WebCore::SimpleFontData::platformCharWidthInit):
   18667         * platform/graphics/chromium/SimpleFontDataLinux.cpp:
   18668         (WebCore::SimpleFontData::platformCharWidthInit):
   18669         * platform/graphics/gtk/SimpleFontDataGtk.cpp:
   18670         (WebCore::SimpleFontData::platformCharWidthInit):
   18671         * platform/graphics/gtk/SimpleFontDataPango.cpp:
   18672         (WebCore::SimpleFontData::platformCharWidthInit):
   18673         * platform/graphics/mac/SimpleFontDataMac.mm:
   18674         (WebCore::SimpleFontData::platformCharWidthInit):
   18675         * platform/graphics/qt/SimpleFontDataQt.cpp:
   18676         (WebCore::SimpleFontData::platformCharWidthInit):
   18677         * platform/graphics/win/SimpleFontDataCGWin.cpp:
   18678         (WebCore::SimpleFontData::platformCharWidthInit):
   18679         * platform/graphics/win/SimpleFontDataCairoWin.cpp:
   18680         (WebCore::SimpleFontData::platformInit):
   18681         (WebCore::SimpleFontData::platformCharWidthInit):
   18682         * platform/graphics/win/SimpleFontDataWin.cpp:
   18683         (WebCore::SimpleFontData::initGDIFont):
   18684         * platform/graphics/wx/SimpleFontDataWx.cpp:
   18685         (WebCore::SimpleFontData::platformCharWidthInit):
   18686         * rendering/RenderTextControl.cpp:
   18687         (WebCore::RenderTextControl::calcPrefWidths):
   18688         * rendering/RenderTextControlMultiLine.cpp:
   18689         (WebCore::RenderTextControlMultiLine::createInnerTextStyle):
   18690         * rendering/RenderTextControlSingleLine.cpp:
   18691         (WebCore::RenderTextControlSingleLine::preferredContentWidth):
   18692 
   18693 2009-04-17  Eric Seidel  <eric (a] webkit.org>
   18694 
   18695         Reviewed by Simon Fraser.
   18696 
   18697         Remove m_absoluteBounds hack from SVG renderers and move outlineBoundsForRepaint into RenderSVGModelObject
   18698         https://bugs.webkit.org/show_bug.cgi?id=25276
   18699 
   18700         This also exposed a buggy paint check in RenderSVGContainer::layout()
   18701         we should repaint if we are self painting OR if our kids changed, not AND.
   18702 
   18703         Writing real outlineBoundsForRepaint required writing a mapLocalToContainer() function
   18704 
   18705         No functional changes, thus no tests.
   18706 
   18707         * rendering/RenderPath.cpp:
   18708         (WebCore::RenderPath::localToParentTransform):
   18709         (WebCore::RenderPath::layout):
   18710         * rendering/RenderPath.h:
   18711         * rendering/RenderSVGContainer.cpp:
   18712         (WebCore::RenderSVGContainer::layout):
   18713         * rendering/RenderSVGContainer.h:
   18714         * rendering/RenderSVGModelObject.cpp:
   18715         (WebCore::RenderSVGModelObject::mapLocalToContainer):
   18716         (WebCore::RenderSVGModelObject::outlineBoundsForRepaint):
   18717         * rendering/RenderSVGModelObject.h:
   18718         * rendering/RenderSVGRoot.cpp:
   18719         (WebCore::RenderSVGRoot::layout):
   18720         (WebCore::RenderSVGRoot::paint):
   18721         (WebCore::RenderSVGRoot::localToParentTransformWithoutCSSParentOffset):
   18722         (WebCore::RenderSVGRoot::localToParentTransform):
   18723         (WebCore::RenderSVGRoot::computeRectForRepaint):
   18724         * rendering/RenderSVGRoot.h:
   18725         * rendering/RenderSVGViewportContainer.cpp:
   18726         (WebCore::RenderSVGViewportContainer::layout):
   18727 
   18728 2009-04-20  Simon Fraser  <simon.fraser (a] apple.com>
   18729 
   18730         Reviewed by Eric Seidel
   18731 
   18732         https://bugs.webkit.org/show_bug.cgi?id=25282
   18733         
   18734         outlineBoundsForRepaint() should compute a quad relative to the
   18735         repaintContainer. This fixes the repaint issues originally fixed in
   18736         https://bugs.webkit.org/show_bug.cgi?id=12885 for elements in compositing layers.
   18737         Failure was only apparent when building with ACCELERATED_COMPOSITING enabled.
   18738 
   18739         Tests: compositing/repaint/content-into-overflow.html
   18740                compositing/repaint/overflow-into-content.html
   18741 
   18742         * rendering/RenderBox.cpp:
   18743         (WebCore::RenderBox::outlineBoundsForRepaint):
   18744 
   18745 2009-04-20  Sam Weinig  <sam (a] webkit.org>
   18746 
   18747         Rubber-stamped by Tim Hatcher.
   18748 
   18749         Add licenses for xcconfig files.
   18750 
   18751         * Configurations/Base.xcconfig:
   18752         * Configurations/DebugRelease.xcconfig:
   18753         * Configurations/FeatureDefines.xcconfig:
   18754         * Configurations/Version.xcconfig:
   18755         * Configurations/WebCore.xcconfig:
   18756 
   18757 2009-04-20  Eric Roman  <eroman (a] chromium.org>
   18758 
   18759         Reviewed by Dimitri Glazkov.
   18760 
   18761         https://bugs.webkit.org/show_bug.cgi?id=25261
   18762         Implement the V8 binding for DOMWindow.event similarly to JSC, by using
   18763         the custom getter boilerplate from the IDL file. 
   18764         Also, stub out DOMWindow.crypto which is defined by the idl.
   18765 
   18766         * bindings/v8/V8AbstractEventListener.cpp:
   18767         (WebCore::V8AbstractEventListener::invokeEventHandler):
   18768         * bindings/v8/custom/V8DOMWindowCustom.cpp:
   18769         (WebCore::ACCESSOR_GETTER):
   18770 
   18771 2009-04-20  Gustavo Noronha Silva  <gustavo.noronha (a] collabora.co.uk>
   18772 
   18773         Reviewed by Xan Lopez.
   18774 
   18775         https://bugs.webkit.org/show_bug.cgi?id=25243
   18776         Crash when data:// loads are cancelled
   18777 
   18778         Properly handle cancellation of the load for data:// loads. This
   18779         fixes crashing in the followin test:
   18780 
   18781         plugins/return-error-from-new-stream-callback-in-full-frame-plugin.html
   18782 
   18783         * platform/network/soup/ResourceHandleSoup.cpp:
   18784         (WebCore::parseDataUrl):
   18785 
   18786 2009-04-19  Dan Bernstein  <mitz (a] apple.com>
   18787 
   18788         - maybe fix release builds
   18789 
   18790         * dom/ScriptElement.cpp:
   18791         (WebCore::ScriptElementData::notifyFinished):
   18792 
   18793 2009-04-19  Dan Bernstein  <mitz (a] apple.com>
   18794 
   18795         - not fix release builds
   18796 
   18797         * dom/Document.cpp:
   18798         (WebCore::Document::executeScriptSoonTimerFired):
   18799 
   18800 2009-04-19  Dan Bernstein  <mitz (a] apple.com>
   18801 
   18802         Reviewed by Mark Rowe.
   18803 
   18804         - fix <rdar://problem/6734365> REGRESSION eBay "Save this search" link
   18805           does nothing the second time search results are opened
   18806 
   18807         Test: fast/dom/HTMLScriptElement/nested-execution.html
   18808 
   18809         Instead of executing scripts as soon as they finish loading, which may
   18810         happen synchronously during execution of another script, defer their
   18811         execution until the next run loop iteration, using a queue that is
   18812         similar to the HTML5 notion of the "list of scripts that will execute as
   18813         soon as possible", and in my testing was consistent with how Firefox
   18814         behaved.
   18815 
   18816         * dom/Document.cpp:
   18817         (WebCore::Document::Document): Initialize m_executeScriptSoonTimer.
   18818         (WebCore::Document::~Document): deref() script elements in
   18819         m_scriptsToExecuteSoon.
   18820         (WebCore::Document::executeScriptSoonTimerFired): Added. Executes the
   18821         scripts in m_scriptsToExecuteSoon and deref()s them.
   18822         (WebCore::Document::executeScriptSoon): Added. Appends to
   18823         m_scriptsToExecuteSoon and ref()s the script element, which keeps the
   18824         ScriptElementData alive as well.
   18825         * dom/Document.h:
   18826         * dom/ScriptElement.cpp:
   18827         (WebCore::ScriptElementData::ScriptElementData): Initialize m_requested.
   18828         (WebCore::ScriptElementData::requestScript): Set m_requested to true, to
   18829         prevent further load requests.
   18830         (WebCore::ScriptElementData::execute): Added. Moved the code from
   18831         notifyFinished() which should not execute synchronously here, to be
   18832         called by the Document on a 0-interval timer.
   18833         (WebCore::ScriptElementData::notifyFinished): Moved the code to
   18834         dispatch events and evaluate the script, which should not execute
   18835         synchronously, out of here.
   18836         (WebCore::ScriptElementData::ignoresLoadRequest): Changed to test for
   18837         m_requested instead of m_cachedScript, because the latter is cleared
   18838         before the script is evaluated.
   18839         * dom/ScriptElement.h:
   18840 
   18841 2009-04-19  Oliver Hunt  <oliver (a] apple.com>
   18842 
   18843         Reviewed by Antti Koivisto and Darin Adler.
   18844 
   18845         <rdar://problem/6127705> Excessive memory consumption on image load failure
   18846 
   18847         When we fail to decode an image we clear most of the image data, but not the
   18848         input data itself, which can be backed by a CFData object that itself holds onto
   18849         a few hundred Kbs of memory.  This patch merely ensures that this buffer gets
   18850         cleared.
   18851 
   18852         * loader/CachedImage.cpp:
   18853         (WebCore::CachedImage::error):
   18854 
   18855 2009-04-19  Darin Adler  <darin (a] apple.com>
   18856 
   18857         Reviewed by Sam Weinig.
   18858 
   18859         Add hooks so sudden termination will not cause loss of icons or local storage.
   18860         rdar://problem/5951701
   18861 
   18862         * loader/icon/IconDatabase.cpp: Marked various constants static to give them
   18863         internal linkage.
   18864         (WebCore::IconDatabase::IconDatabase): Added initial value for m_syncTimer.
   18865         Removed unneeded initial value for m_defaultIconRecord. Changed assertion to
   18866         work cross-platform.
   18867         (WebCore::IconDatabase::wakeSyncThread): Added disableSuddenTermination, so
   18868         we won't terminate until the sync thread has done its thing.
   18869         (WebCore::IconDatabase::scheduleOrDeferSyncTimer): Added disableSuddenTermination,
   18870         so we won't terminate if we have an outstanding sync timer.
   18871         (WebCore::IconDatabase::syncTimerFired): Added enableSuddenTermination, to
   18872         balance the one in scheduleOrDeferSyncTimer.
   18873         (WebCore::IconDatabase::syncThreadMainLoop): Added enableSuddenTermination, to
   18874         balance the one in wakeSyncThread.
   18875         (WebCore::IconDatabase::deleteAllPreparedStatements): Use clear() instead of set(0).
   18876 
   18877         * loader/icon/IconDatabase.h: Use a Timer instead of an OwnPtr<Timer>.
   18878 
   18879         * storage/LocalStorageArea.cpp:
   18880         (WebCore::LocalStorageArea::scheduleFinalSync): Added disableSuddenTermination.
   18881         (WebCore::LocalStorageArea::scheduleItemForSync): Ditto.
   18882         (WebCore::LocalStorageArea::scheduleClear): Ditto.
   18883         (WebCore::LocalStorageArea::syncTimerFired): Added a disableSuddenTermination if
   18884         we schedule a performSync callback for later and an unconditional
   18885         enableSuddenTermination to balance the ones in the schedule calls above.
   18886         (WebCore::LocalStorageArea::sync): Factored out the work of the sync function so it
   18887         can continue to use early return idiom.
   18888         (WebCore::LocalStorageArea::performSync): Added a call to enableSuddenTermination.
   18889 
   18890         * storage/LocalStorageArea.h: Added declaration of the sync function.
   18891 
   18892 2009-04-19  David Kilzer  <ddkilzer (a] apple.com>
   18893 
   18894         Make FEATURE_DEFINES completely dynamic
   18895 
   18896         Reviewed by Darin Adler.
   18897 
   18898         Make FEATURE_DEFINES depend on individual ENABLE_FEATURE_NAME
   18899         variables for each feature, making it possible to remove all
   18900         knowledge of FEATURE_DEFINES from build-webkit.
   18901 
   18902         * Configurations/FeatureDefines.xcconfig: Extract a variable
   18903         from FEATURE_DEFINES for each feature setting.
   18904 
   18905 2009-04-18  Geoffrey Garen  <ggaren (a] apple.com>
   18906 
   18907         Reviewed by Alexey Proskuryakov.
   18908 
   18909         More fix for https://bugs.webkit.org/show_bug.cgi?id=21260
   18910         Unbounded memory growth when churning elements with anonymous event handler functions
   18911         
   18912         Removed a little more complexity from event handler creation and destruction.
   18913         
   18914         Removed the jsProtectedEventListeners, jsProtectedInlineEventListeners,
   18915         and jsInlineEventListeners maps, and all the code for managing them.
   18916         
   18917         ProtectedEventListeners don't exist anymore, so they're easy to nix.
   18918         
   18919         Inline EventListeners do still exist, but there's no reason to track
   18920         them in a map. The map exists to enable 'removeEventListener' to associate
   18921         a unique JSEventListener with a given JavaScript function. But the
   18922         'removeEventListener' API only works with non-inline event listeners!
   18923         
   18924         * bindings/js/JSDOMGlobalObject.cpp:
   18925         (WebCore::JSDOMGlobalObject::~JSDOMGlobalObject):
   18926         (WebCore::JSDOMGlobalObject::findJSEventListener):
   18927         (WebCore::JSDOMGlobalObject::findOrCreateJSEventListener):
   18928         (WebCore::JSDOMGlobalObject::createJSInlineEventListener):
   18929         * bindings/js/JSDOMGlobalObject.h:
   18930         * bindings/js/JSEventListener.cpp:
   18931         (WebCore::JSEventListener::JSEventListener):
   18932         (WebCore::JSEventListener::clearJSFunctionInline):
   18933         * bindings/js/JSLazyEventListener.cpp:
   18934         (WebCore::JSLazyEventListener::~JSLazyEventListener):
   18935         (WebCore::JSLazyEventListener::parseCode):
   18936         * bindings/scripts/CodeGeneratorJS.pm:
   18937 
   18938 2009-04-18  Dan Bernstein  <mitz (a] apple.com>
   18939 
   18940         - try to fix the Windows build
   18941 
   18942         * editing/VisiblePosition.cpp:
   18943         (WebCore::VisiblePosition::characterAfter):
   18944 
   18945 2009-04-18  Dan Bernstein  <mitz (a] apple.com>
   18946 
   18947         - revert the previous change, which was to a file that the Windows
   18948           port does not even use
   18949 
   18950         * icu/unicode/utf16.h:
   18951 
   18952 2009-04-18  Dan Bernstein  <mitz (a] apple.com>
   18953 
   18954         Reviewed by Geoffrey Garen.
   18955 
   18956         - try to fix the Windows build
   18957 
   18958         * icu/unicode/utf16.h:
   18959 
   18960 2009-04-18  Simon Fraser  <simon.fraser (a] apple.com>
   18961 
   18962         Reviewed by Antti Koivisto.
   18963         
   18964         https://bugs.webkit.org/show_bug.cgi?id=25066
   18965         
   18966         When a <video> element gained a RenderLayer via opacity, reflection etc., the
   18967         layer hierarchy was not correctly updated because RenderMedia skipped a level
   18968         when asked for its children; it skipped m_controlsShadowRoot's renderer, which
   18969         actually has a layer.
   18970 
   18971         Test: fast/layers/video-layer.html
   18972 
   18973         * rendering/MediaControlElements.cpp:
   18974         (WebCore::MediaControlShadowRootElement::MediaControlShadowRootElement):
   18975         Don't manually call setParent() on the renderer. It will happen later
   18976         as a result of addChild().
   18977         
   18978         * rendering/RenderMedia.cpp:
   18979         (WebCore::RenderMedia::createControlsShadowRoot):
   18980         Add m_controlsShadowRoot's renderer as a child. 
   18981 
   18982         * rendering/RenderMedia.h:
   18983         (WebCore::RenderMedia::children):
   18984         Now maintain a RenderObjectChildList, m_children, and remove the unneeded
   18985         removeChild() method. Make the two children() methods inline.
   18986 
   18987         * rendering/RenderObject.cpp:
   18988         (WebCore::RenderObject::moveLayers):
   18989         Assert if moveLayers() is called with an oldParent that is not the
   18990         layer's actual parent (which would have revealed this bug).
   18991 
   18992 2009-04-18  Geoffrey Garen  <ggaren (a] apple.com>
   18993 
   18994         Reviewed by Cameron Zwarich.
   18995 
   18996         Fixed a layout test failure, caused by my last check-in
   18997         (fast/dom/script-element-gc.html).
   18998 
   18999         * bindings/js/JSDOMBinding.cpp:
   19000         (WebCore::isObservableThroughDOM):
   19001         * html/HTMLScriptElement.h:
   19002         (WebCore::HTMLScriptElement::haveFiredLoadEvent): Treat script elements
   19003         just like image elements: if a script element is loading, mark its JS
   19004         wrapper, even if the element is not in the document.
   19005 
   19006 2009-04-18  Jian Li  <jianli (a] chromium.org>
   19007 
   19008         Reviewed by Dimitri Glazkov.
   19009 
   19010         https://bugs.webkit.org/show_bug.cgi?id=25170
   19011         Upstream V8WorkerCustom.cpp and V8WorkerContextCustom.cpp for V8 bindings.
   19012 
   19013         * bindings/v8/WorkerContextExecutionProxy.cpp:
   19014         (WebCore::WorkerContextExecutionProxy::findOrCreateEventListener):
   19015         * bindings/v8/WorkerContextExecutionProxy.h:
   19016         * bindings/v8/custom/V8WorkerContextCustom.cpp: Added.
   19017         * bindings/v8/custom/V8WorkerCustom.cpp: Added.
   19018 
   19019 2009-04-18  Jian Li  <jianli (a] chromium.org>
   19020 
   19021         Reviewed by Dimitri Glazkov.
   19022 
   19023         https://bugs.webkit.org/post_bug.cg://bugs.webkit.org/show_bug.cgi?id=25167 
   19024         Change createHiddenXHRDependency and removeHiddenXHRDependency so that they can be used by other custom code in V8 bindings.
   19025 
   19026         * bindings/v8/V8Utilities.cpp: Renamed from WebCore/bindings/v8/V8XMLHttpRequestUtilities.cpp.
   19027         (WebCore::createHiddenDependency):
   19028         (WebCore::removeHiddenDependency):
   19029         * bindings/v8/V8Utilities.h: Renamed from WebCore/bindings/v8/V8XMLHttpRequestUtilities.h.
   19030         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
   19031         (WebCore::ACCESSOR_SETTER):
   19032         (WebCore::CALLBACK_FUNC_DECL):
   19033         * bindings/v8/custom/V8XMLHttpRequestUploadCustom.cpp:
   19034         (WebCore::ACCESSOR_SETTER):
   19035         (WebCore::CALLBACK_FUNC_DECL):
   19036 
   19037 2009-04-18  Drew Wilson  <amw (a] apple.com>
   19038 
   19039         <rdar://problem/6781407> VisiblePosition.characterAfter should return UChar32
   19040 
   19041         Reviewed by Dan Bernstein.
   19042 
   19043         No test case since there is no change in behavior.
   19044 
   19045         * editing/VisiblePosition.cpp:
   19046         (WebCore::VisiblePosition::characterAfter): Now handles surrogate
   19047         pairs correctly and returns a UChar32.
   19048         * editing/VisiblePosition.h:
   19049         (WebCore::VisiblePosition::characterBefore): Now returns a UChar32.
   19050         * editing/visible_units.cpp:
   19051         (WebCore::endOfFirstWordBoundaryContext): Renamed
   19052         firstNonComplexContextLineBreak() to this. Changed it to use the
   19053         generic requiresContextForWordBoundary() instead of
   19054         hasLineBreakingPropertyComplexContext().
   19055         (WebCore::startOfLastWordBoundaryContext): Replaces
   19056         lastNonComplexContextLineBreak(), but returns the offset of
   19057         the character after the last character that does not require
   19058         context for word breaking. Also changed to use
   19059         requiresContextForWordBoundary().
   19060         (WebCore::previousBoundary): Updated for the above changes in
   19061         names and semantics, and changed to use
   19062         requiresContextForWordBoundary().
   19063         (WebCore::nextBoundary): Ditto.
   19064         (WebCore::startWordBoundary): Ditto.
   19065         (WebCore::endWordBoundary): Ditto.
   19066         (WebCore::previousWordPositionBoundary): Ditto.
   19067         (WebCore::nextWordPositionBoundary): Ditto.
   19068         * platform/text/TextBoundaries.h:
   19069         (WebCore::requiresContextForWordBoundary): Added.
   19070         * platform/text/mac/TextBoundaries.mm:
   19071 
   19072 2009-04-18  Geoffrey Garen  <ggaren (a] apple.com>
   19073 
   19074         Reviewed by Cameron Zwarich.
   19075 
   19076         Fixed <rdar://problem/6797442> | https://bugs.webkit.org/show_bug.cgi?id=25285
   19077         REGRESSION (r42569): Profiles cannot be selected in inspector profiler
   19078         
   19079         EventListeners are shared; RegisteredEventListeners are not. Therefore,
   19080         when a node wrapper needs to invalidate the node's JS event listeners,
   19081         it should invalidate its RegisteredEventListeners, not its EventListeners.
   19082         Otherwise, it might invalidate an EventListener shared by another node.
   19083 
   19084         * dom/RegisteredEventListener.h:
   19085         (WebCore::invalidateEventListeners): ditto
   19086 
   19087 2009-04-18  Pierre d'Herbemont  <pdherbemont (a] apple.com>
   19088 
   19089         Reviewed by Mark Rowe.
   19090 
   19091         <rdar://problem/6781295> video.buffered and video.seekable are not
   19092         the same. video.buffered should return only what is buffered and
   19093         not what is seekable
   19094 
   19095         * WebCore.base.exp: Added wkQTMovieMaxTimeSeekable.
   19096 
   19097         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   19098         (WebCore::MediaPlayerPrivate::maxTimeSeekable): Return wkQTMovieMaxTimeSeekable.
   19099 
   19100         * platform/mac/WebCoreSystemInterface.h: Add wkQTMovieMaxTimeSeekable.
   19101         * platform/mac/WebCoreSystemInterface.mm: Ditto.
   19102 
   19103 2009-04-18  Pierre d'Herbemont  <pdherbemont (a] apple.com>
   19104 
   19105         Reviewed by Adele Peterson.
   19106 
   19107         <rdar://problem/6747241> work around QTKit no longer reaching
   19108         QTMovieLoadStateComplete
   19109 
   19110         * WebCore.base.exp: Export wkQTMovieMaxTimeLoadedChangeNotification.
   19111 
   19112         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   19113         (WebCore::MediaPlayerPrivate::createQTMovie): observe QTMovieMaxTimeLoadedChangeNotification.
   19114         (WebCore::MediaPlayerPrivate::updateStates): compare duuration() with maxTimeLoaded() instead of
   19115         using QTMovieLoadStateComplete to determine if a movie are fully loaded.
   19116 
   19117         * platform/mac/WebCoreSystemInterface.h: Add wkQTMovieMaxTimeLoadedChangeNotification.
   19118         * platform/mac/WebCoreSystemInterface.mm: Ditto.
   19119 
   19120 2009-04-18  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   19121 
   19122         Reviewed by George Staikos.
   19123 
   19124         Make WML work again, most regressions test were failing.
   19125 
   19126         * dom/Document.cpp: Be sure to create WML elements in WML namespace. Otherwhise hasTagName() comparisions fail.
   19127         (WebCore::Document::createElement):
   19128         * wml/WMLCardElement.cpp: Add ASSERT(hasTagName(cardTag)) to catch errors like this in future.
   19129         (WebCore::WMLCardElement::WMLCardElement):
   19130         * wml/WMLTagNames.in: Wrap comment in #if 0/#endif blocks, to silence the generation script.
   19131 
   19132 2009-04-17  Justin Garcia  <justin.garcia (a] apple.com>
   19133 
   19134         Reviewed by Dan Bernstein.
   19135 
   19136         https://bugs.webkit.org/show_bug.cgi?id=25277
   19137         If there is no line wrapping, a caret can leave its containing block but it shouldn't leave its root line box
   19138         
   19139         Also added code to handle a caret wider than one pixel.
   19140         
   19141         Added fast/inline/25277.html and fast/inline/25277-2.html
   19142 
   19143         * rendering/RenderText.cpp:
   19144         (WebCore::RenderText::localCaretRect): Distribute a caret's width to either side of the offset,
   19145         so that a caret between two characters doesn't hang over one character more than the other.
   19146         If there is no wrapping, the caret can leave its containing block, but not its root line box.
   19147 
   19148 2009-04-17  Geoffrey Garen  <ggaren (a] apple.com>
   19149 
   19150         Reviewed by Oliver Hunt.
   19151 
   19152         More fix for https://bugs.webkit.org/show_bug.cgi?id=21260
   19153         Unbounded memory growth when churning elements with anonymous event handler functions
   19154         
   19155         Some refactoring of "inline" event listeners.
   19156         
   19157         Renames:
   19158             dispatchEventForType => dispatchEvent
   19159             setWindowInlineEventListenerForTypeAndAttribute => setWindowInlineEventListener
   19160             removeInlineEventListenerForType => clearInlineEventListener
   19161             setInlineEventListenerForType => setInlineEventListener
   19162             inlineEventListenerForType => getInlineEventListener
   19163 
   19164         * bindings/js/JSLazyEventListener.cpp:
   19165         (WebCore::eventParameterName):
   19166         (WebCore::JSLazyEventListener::JSLazyEventListener):
   19167         (WebCore::createInlineEventListener):
   19168         * bindings/js/JSLazyEventListener.h: Added two helper functions for
   19169         creating "inline" event listeners. These replace Document::createEventListener,
   19170         and abstract the creation of JS event listeners for DOM attributes out
   19171         of the DOM. Removed legacy JSProtectedEventListener constructor code for
   19172         adding the event listener's function to a map, since lazy event listeners
   19173         don't have functions at construction time.
   19174 
   19175         * dom/Document.cpp:
   19176         (WebCore::Document::setFocusedNode):
   19177         * dom/Document.h:
   19178         (WebCore::Document::isSVGDocument):
   19179         * dom/Element.cpp:
   19180         (WebCore::Element::setWindowInlineEventListener):
   19181         * dom/Element.h: Updated for renames. Nixed Document::createEventListener,
   19182         mentioned above. Moved setWindowInlineEventListenerForTypeAndAttribute
   19183         to Element, for simplicity.
   19184 
   19185         * dom/InputElement.cpp:
   19186         (WebCore::InputElement::setValueFromRenderer):
   19187         * dom/Node.cpp:
   19188         (WebCore::Node::dispatchFocusEvent):
   19189         (WebCore::Node::dispatchBlurEvent):
   19190         (WebCore::Node::dispatchEvent):
   19191         (WebCore::Node::clearInlineEventListener):
   19192         (WebCore::Node::setInlineEventListener):
   19193         (WebCore::Node::getInlineEventListener):
   19194         (WebCore::Node::onabort):
   19195         (WebCore::Node::setOnabort):
   19196         (WebCore::Node::etc.):
   19197         * dom/Node.h: Updated for renames.
   19198         
   19199         * editing/ReplaceSelectionCommand.cpp:
   19200         (WebCore::ReplacementFragment::ReplacementFragment): Updated for renames.
   19201         
   19202         Updated these files for renames, and to use the new createInlineEventListener
   19203         helper function:
   19204 
   19205         * html/HTMLBodyElement.cpp:
   19206         (WebCore::HTMLBodyElement::parseMappedAttribute):
   19207         * html/HTMLButtonElement.cpp:
   19208         (WebCore::HTMLButtonElement::parseMappedAttribute):
   19209         * html/HTMLElement.cpp:
   19210         (WebCore::HTMLElement::parseMappedAttribute):
   19211         * html/HTMLFormControlElement.cpp:
   19212         (WebCore::HTMLFormControlElement::onChange):
   19213         * html/HTMLFormElement.cpp:
   19214         (WebCore::HTMLFormElement::prepareSubmit):
   19215         (WebCore::HTMLFormElement::reset):
   19216         (WebCore::HTMLFormElement::parseMappedAttribute):
   19217         * html/HTMLFrameElementBase.cpp:
   19218         (WebCore::HTMLFrameElementBase::parseMappedAttribute):
   19219         * html/HTMLFrameSetElement.cpp:
   19220         (WebCore::HTMLFrameSetElement::parseMappedAttribute):
   19221         * html/HTMLImageElement.cpp:
   19222         (WebCore::HTMLImageElement::parseMappedAttribute):
   19223         * html/HTMLImageLoader.cpp:
   19224         (WebCore::HTMLImageLoader::dispatchLoadEvent):
   19225         * html/HTMLInputElement.cpp:
   19226         (WebCore::HTMLInputElement::parseMappedAttribute):
   19227         (WebCore::HTMLInputElement::onSearch):
   19228         * html/HTMLMediaElement.cpp:
   19229         (WebCore::HTMLMediaElement::loadInternal):
   19230         * html/HTMLObjectElement.cpp:
   19231         (WebCore::HTMLObjectElement::parseMappedAttribute):
   19232         * html/HTMLScriptElement.cpp:
   19233         (WebCore::HTMLScriptElement::parseMappedAttribute):
   19234         (WebCore::HTMLScriptElement::dispatchLoadEvent):
   19235         (WebCore::HTMLScriptElement::dispatchErrorEvent):
   19236         * html/HTMLSelectElement.cpp:
   19237         (WebCore::HTMLSelectElement::parseMappedAttribute):
   19238         * html/HTMLTextAreaElement.cpp:
   19239         (WebCore::HTMLTextAreaElement::parseMappedAttribute):
   19240         * html/HTMLTokenizer.cpp:
   19241         (WebCore::HTMLTokenizer::notifyFinished):
   19242         * page/AccessibilityRenderObject.cpp:
   19243         (WebCore::AccessibilityRenderObject::mouseButtonListener):
   19244         * page/DOMWindow.cpp:
   19245         * page/DOMWindow.h:
   19246         (WebCore::DOMWindow::eventListeners):
   19247         * page/EventHandler.cpp:
   19248         (WebCore::EventHandler::canMouseDownStartSelect):
   19249         (WebCore::EventHandler::canMouseDragExtendSelect):
   19250         (WebCore::EventHandler::sendScrollEvent):
   19251         * page/Page.cpp:
   19252         (WebCore::networkStateChanged):
   19253         * rendering/RenderListBox.cpp:
   19254         (WebCore::RenderListBox::valueChanged):
   19255         * rendering/RenderTextControl.cpp:
   19256         (WebCore::RenderTextControl::selectionChanged):
   19257         * svg/SVGElement.cpp:
   19258         (WebCore::SVGElement::parseMappedAttribute):
   19259         * svg/SVGElementInstance.cpp:
   19260         * svg/SVGImageLoader.cpp:
   19261         (WebCore::SVGImageLoader::dispatchLoadEvent):
   19262         * svg/SVGSVGElement.cpp:
   19263         (WebCore::SVGSVGElement::parseMappedAttribute):
   19264         * svg/SVGScriptElement.cpp:
   19265         (WebCore::SVGScriptElement::dispatchErrorEvent):
   19266         * wml/WMLInputElement.cpp:
   19267         (WebCore::WMLInputElement::defaultEventHandler):
   19268 
   19269 2009-04-17  David Kilzer  <ddkilzer (a] apple.com>
   19270 
   19271         Simplify FEATURE_DEFINES definition
   19272 
   19273         Reviewed by Darin Adler.
   19274 
   19275         This moves FEATURE_DEFINES and its related ENABLE_FEATURE_NAME
   19276         variables to their own FeatureDefines.xcconfig file.  It also
   19277         extracts a new ENABLE_GEOLOCATION variable so that
   19278         FEATURE_DEFINES only needs to be defined once.
   19279 
   19280         * Configurations/FeatureDefines.xcconfig: Added.
   19281         * Configurations/WebCore.xcconfig: Removed definition of
   19282         ENABLE_SVG_DOM_OBJC_BINDINGS and FEATURE_DEFINES.  Added include
   19283         of FeatureDefines.xcconfig.
   19284         * WebCore.xcodeproj/project.pbxproj: Added
   19285         FeatureDefines.xcconfig file.
   19286         * bindings/scripts/CodeGeneratorObjC.pm: When creating a list of
   19287         command-line macro definitions, split on one-or-more spaces
   19288         instead of a single space since the FEATURE_DEFINES macro may
   19289         now contain more than one space between macros if some macros
   19290         aren't defined.
   19291 
   19292 2009-04-17  Brady Eidson  <beidson (a] apple.com>
   19293 
   19294         Reviewed by Mark Rowe
   19295 
   19296         <rdar://problem/6786999> Tiger WebKit shouldn't try to POST on back/forward without nagging.
   19297 
   19298         * platform/network/mac/ResourceHandleMac.mm:
   19299         (WebCore::ResourceHandle::willLoadFromCache):
   19300 
   19301 2009-04-17  Darin Adler  <darin (a] apple.com>
   19302 
   19303         Reviewed by Timothy Hatcher.
   19304 
   19305         Added sudden termination functions that can be called without involving
   19306         the page or client.
   19307 
   19308         * GNUmakefile.am: Added SuddenTermination.h.
   19309         * WebCore.vcproj/WebCore.vcproj: Ditto.
   19310         * WebCore.xcodeproj/project.pbxproj: Ditto. Also added SuddenTermination.mm.
   19311 
   19312         * platform/SuddenTermination.h: Added.
   19313         * platform/mac/SuddenTermination.mm: Added.
   19314 
   19315 2009-04-17  Eric Seidel  <eric (a] webkit.org>
   19316 
   19317         Reviewed by Simon Fraser.
   19318 
   19319         Move more code into RenderSVGModelObject
   19320 
   19321         needsLayer() already returns false from RenderSVGModelObject
   19322         lineHeight and baselinePosition are from days of RenderPath having RenderBox parents.
   19323 
   19324         I also added comments to explain how focus rings work (now that I understand)
   19325         I got rid of two more uses of m_absoluteBounds (nearly dead!)
   19326 
   19327         * rendering/RenderPath.cpp:
   19328         * rendering/RenderPath.h:
   19329         * rendering/RenderSVGContainer.cpp:
   19330         (WebCore::RenderSVGContainer::paint):
   19331         (WebCore::RenderSVGContainer::addFocusRingRects):
   19332         * rendering/RenderSVGContainer.h:
   19333         * rendering/RenderSVGModelObject.cpp:
   19334         (WebCore::RenderSVGModelObject::absoluteRects):
   19335         (WebCore::RenderSVGModelObject::absoluteQuads):
   19336         * rendering/RenderSVGModelObject.h:
   19337 
   19338 2009-04-16  Peter Kasting  <pkasting (a] google.com>
   19339 
   19340         Reviewed by Adele Peterson.
   19341 
   19342         https://bugs.webkit.org/show_bug.cgi?id=25238
   19343         Invalidate the hovered scrollbar part when resetting the pressed part,
   19344         since once there is no pressed part we can draw a hovered state.
   19345 
   19346         * platform/Scrollbar.cpp:
   19347         (WebCore::Scrollbar::setHoveredPart):
   19348         (WebCore::Scrollbar::setPressedPart):
   19349 
   19350 2009-04-16  Darin Fisher  <darin (a] chromium.org>
   19351 
   19352         Reviewed by Darin Adler.
   19353 
   19354         https://bugs.webkit.org/show_bug.cgi?id=25223
   19355         REGRESSION: Back button after form submission to the same URL fails to navigate.
   19356 
   19357         Test: http/tests/navigation/post-goback-same-url.html
   19358 
   19359         * loader/FrameLoader.cpp:
   19360         (WebCore::FrameLoader::loadItem): Check if the page we are leaving has
   19361         FormData.
   19362 
   19363 2009-04-17  Nikolas Zimmermann  <nikolas.zimmerman (a] torchmobile.com>
   19364 
   19365         Not reviewed. Fix WML enabled builds.
   19366 
   19367         * rendering/RenderTableRow.cpp: Remove dead code, which is no longer necessary.
   19368         (WebCore::RenderTableRow::addChild):
   19369         * wml/WMLInputElement.cpp: Apply same fix HTMLInputElement received. Covert RenderObject's to RenderTextControl where needed.
   19370         (WebCore::WMLInputElement::defaultEventHandler):
   19371 
   19372 2009-04-17  Pierre d'Herbemont  <pdherbemont (a] apple.com>
   19373 
   19374         Reviewed by Simon Fraser.
   19375         
   19376         https://bugs.webkit.org/show_bug.cgi?id=24849
   19377 
   19378         Add support for the media element 'played' attribute.
   19379         This involves support of "normalized TimeRanges" as described by
   19380         the spec.
   19381 
   19382         Test: media/video-played.html
   19383 
   19384         * html/HTMLMediaElement.cpp:
   19385         (WebCore::HTMLMediaElement::HTMLMediaElement): Renamed 
   19386         m_currentTimeDuringSeek->m_lastSeekTime. Added m_playing and m_playedTimeRanges.
   19387         (WebCore::HTMLMediaElement::loadInternal): Reset m_playing, m_lastSeekTime, and
   19388         m_playedTimeRanges
   19389         (WebCore::HTMLMediaElement::seek): Set current time to m_playedTimeRanges
   19390         (WebCore::HTMLMediaElement::currentTime): m_currentTimeDuringSeek -> m_lastSeekTime
   19391         (WebCore::HTMLMediaElement::played): Returns m_playedTimeRanges.
   19392         (WebCore::HTMLMediaElement::updatePlayState): Add the new played time ranges when pausing. 
   19393         Set the m_playing flag.
   19394         * html/HTMLMediaElement.h:
   19395 
   19396         * html/TimeRanges.cpp:
   19397         (TimeRanges::add): Merge range(s) if overlap.
   19398         * html/TimeRanges.h: Add various helpers (below).
   19399         (WebCore::TimeRanges::Range::isPointInRange): Added.
   19400         (WebCore::TimeRanges::Range::isOverlappingRange): Ditto.
   19401         (WebCore::TimeRanges::Range::unionWithOverlappingRange): Ditto.
   19402         (WebCore::TimeRanges::Range::isBeforeRange): Ditto.
   19403 
   19404 2009-04-17  Darin Adler  <darin (a] apple.com>
   19405 
   19406         Reviewed by Antti Koivisto.
   19407 
   19408         Bug 25210: don't use ObjC methods to wrap/unwrap DOM objects with ObjC
   19409         https://bugs.webkit.org/show_bug.cgi?id=25210
   19410 
   19411         * WebCore.base.exp: Export the core and kit function overloads that are used
   19412         in WebKit. Also resorted this file.
   19413 
   19414         * WebCore.xcodeproj/project.pbxproj: Re-added DOMHTMLCanvasElement.h to fix
   19415         a strange problem with the file type.
   19416 
   19417         * bindings/objc/DOM.mm: Removed the many extraneous includes. Added new includes
   19418         so we can use and implement the new core and kit functions. Import DOMInternal.h
   19419         first so it can do its public/private magic.
   19420         (-[DOMNode _rootObject]): Changed to use early-return style.
   19421         (kitClass): Added. Tells the wrapper generator what kind of node class to create
   19422         to wrap DOM nodes. This has the code that used to be in the _wrapNode method.
   19423         (kit): Added. Takes an EventTarget and makes the appropriate type of wrapper,
   19424         dpending on whether it's a Node or an SVGElementInstance. This replace methods
   19425         that used to be on both of those classes.
   19426         (-[DOMNode boundingBox]): Changed to use early return, and the core function.
   19427         (-[DOMNode lineBoxRects]): Ditto.
   19428         (-[DOMNode renderedImage]): Ditto.
   19429         (-[DOMRange boundingBox]): Ditto.
   19430         (-[DOMRange lineBoxRects]): Ditto.
   19431         (-[DOMElement image]): Ditto.
   19432         (-[DOMElement _font]): Ditto.
   19433         (-[DOMElement _imageTIFFRepresentation]): Ditto.
   19434         (-[DOMElement _getURLAttribute:]): Ditto.
   19435         (-[DOMElement isFocused]): Ditto.
   19436         (kit): Hand-wrote the version of this for NodeFilter, since it's a protocol,
   19437         not a class in the binding.
   19438         (core): Ditto.
   19439         (-[DOMNodeFilter acceptNode:]): Use core.
   19440 
   19441         * bindings/objc/DOMAbstractView.mm:
   19442         (-[DOMAbstractView document]): Use kit.
   19443         (-[DOMAbstractView _disconnectFrame]): Call removeDOMWrapper, which is no longer
   19444         in the WebCore namespace, since it's headed for WebKit in the future.
   19445         (core): Hand-wrote the version of this for DOMAbstractView.mm, since we store
   19446         a pointer to the Frame, not the DMWindow.
   19447         (kit): Ditto.
   19448 
   19449         * bindings/objc/DOMCSS.mm:
   19450         (kitClass): Added. Tells the wrapper generator what kind of node class to create
   19451         to wrap CSS objects. This has the code that used to be in the _wrapStyleSheet,
   19452         _wrapCSSRule, and _wrapCSSValue methods.
   19453 
   19454         * bindings/objc/DOMEvents.mm:
   19455         (kitClass): Added. Tells the wrapper generator what kind of node class to create
   19456         to wrap event objects. This has the code that used to be in the _wrapEvent methods.
   19457 
   19458         * bindings/objc/DOMHTML.mm:
   19459         (-[DOMHTMLDocument createDocumentFragmentWithMarkupString:baseURL:]): Use kit and core.
   19460         (-[DOMHTMLDocument createDocumentFragmentWithText:]): Ditto.
   19461         (-[DOMHTMLDocument _createDocumentFragmentWithMarkupString:baseURLString:]): Ditto.
   19462         (-[DOMHTMLInputElement _rectOnScreen]): Ditto.
   19463         (-[DOMHTMLInputElement _replaceCharactersInRange:withString:selectingFromIndex:]): Ditto.
   19464         (-[DOMHTMLInputElement _selectedRange]): Ditto.
   19465         (-[DOMHTMLInputElement _setAutofilled:]): Ditto.
   19466         (-[DOMHTMLSelectElement _activateItemAtIndex:]): Ditto.
   19467         (-[DOMHTMLInputElement _isEdited]): Ditto.
   19468         (-[DOMHTMLTextAreaElement _isEdited]): Ditto.
   19469         (kitClass): Added. Gives HTMLOptionCollection objects an appropriate wrapper.
   19470 
   19471         * bindings/objc/DOMInternal.h: Removed most of the imports. There's no reason
   19472         to have this header include all the other internal DOM headers. Removed unneeded
   19473         interfaces, including the redeclaration of _init in DOMObject, since it's already
   19474         inherited from WebScriptObject. Moved all the functions out of the WebCore
   19475         namespace since this code is destined for WebKit, which doesn't use a namespace.
   19476         Added kit and core functions for the two classes that live in this header.
   19477 
   19478         * bindings/objc/DOMInternal.mm:
   19479         (-[WebScriptObject _initializeScriptDOMNodeImp]): Use core.
   19480 
   19481         * bindings/objc/DOMObject.h: Made the _internal field be private instead of
   19482         protected. This also allows the "#define private public" trick to be used to
   19483         make the field accessible inside the bindings code.
   19484 
   19485         * bindings/objc/DOMObject.mm:
   19486         (-[DOMObject dealloc]): Updated for namespace change.
   19487         (-[DOMObject sheet]): Use core and kit functions.
   19488 
   19489         * bindings/objc/DOMRGBColor.mm:
   19490         (-[DOMRGBColor dealloc]): Updated for namespace change.
   19491         (-[DOMRGBColor red]): Use kit function.
   19492         (-[DOMRGBColor green]): Ditto.
   19493         (-[DOMRGBColor blue]): Ditto.
   19494         (-[DOMRGBColor alpha]): Ditto.
   19495         (core): Added. Replaces the _RGBColor method.
   19496         (kit): Added. Replaces the _wrapRGBColor method.
   19497 
   19498         * bindings/objc/DOMSVGPathSegInternal.mm:
   19499         (kitClass): Added. Replaces the _wrapSVGPathSeg method.
   19500 
   19501         * bindings/objc/DOMUtility.mm:
   19502         (JSC::createDOMWrapper): Use kit function.
   19503         (createDOMWrapper): Ditto.
   19504 
   19505         * bindings/objc/DOMXPath.mm:
   19506         (core): Added. Replaces the _xpathNSResolver method.
   19507         (kit): Added. Replaces the _wrapXPathNSResolver method.
   19508 
   19509         * bindings/objc/ObjCEventListener.mm:
   19510         (WebCore::ObjCEventListener::find): Changed to use early return.
   19511         (WebCore::ObjCEventListener::handleEvent): Use kit function.
   19512 
   19513         * bindings/objc/ObjCNodeFilterCondition.mm:
   19514         (WebCore::ObjCNodeFilterCondition::acceptNode): Use kit function.
   19515 
   19516         * bindings/objc/WebScriptObject.mm:
   19517         (+[WebScriptObject scriptObjectForJSObject:originRootObject:rootObject:]):
   19518         Updated for namespace change.
   19519 
   19520         * bindings/scripts/CodeGeneratorObjC.pm: Changed spelling of "license"
   19521         to U.S. spelling. Removed GetObjCTypeMaker, GetObjCTypeGetterName,
   19522         GetInternalTypeGetterSignature, and GetInternalTypeMakerSignature.
   19523         Changed includes to conform to new scheme. Generate core and kit
   19524         functions instead of methods and calls to those functions. Added a new
   19525         attribute, Polymorphic, to indicate classes that have derived subclasses.
   19526         Removed the old ObjCCustomInternalImpl attribute.
   19527 
   19528         * css/CSSRule.idl: Use Polymorphic attribute, so core and kit functions
   19529         will be generated, with kit calling kitClass. This requires less hand-
   19530         written code than the old ObjCCustomInternalImpl.
   19531         * css/CSSValue.idl: Ditto.
   19532         * css/StyleSheet.idl: Ditto.
   19533         * dom/Event.idl: Ditto.
   19534         * dom/Node.idl: Ditto.
   19535         * html/HTMLCollection.idl: Ditto.
   19536         * svg/SVGPathSeg.idl: Ditto.
   19537 
   19538         * editing/TextAffinity.h: Moved kit and core functions out of the
   19539         WebCore namespace since this code is destined for WebKit, which
   19540         doesn't use a namespace
   19541 
   19542         * platform/mac/ClipboardMac.mm:
   19543         (WebCore::ClipboardMac::declareAndWriteDragImage): Use kit function.
   19544 
   19545         * platform/mac/DragDataMac.mm:
   19546         (WebCore::DragData::asFragment): Use core function.
   19547 
   19548         * platform/mac/PasteboardMac.mm:
   19549         (WebCore::Pasteboard::writeSelection): Use kit function.
   19550 
   19551         * svg/SVGElementInstance.idl: Removed now-unneeded ObjCCustomInternalImpl
   19552         function. This can be generated in a standard way now.
   19553         * svg/SVGViewSpec.idl: Ditto.
   19554 
   19555 2009-04-17  Brady Eidson  <beidson (a] apple.com>
   19556 
   19557         Reviewed by Maciej Stachowiak
   19558 
   19559         <rdar://problem/5753299> "Private Browsing" doesn't affect HTML 5 Database storage
   19560 
   19561         If the Page is in private browsing mode when a statement is queued up, flag that 
   19562         statement as read-only.
   19563 
   19564         It would be better to set the read-only flag on the database thread when it actually
   19565         executes, but that would either require making Settings access a lock-protected operation
   19566         or involve a synchronous callback to the WebCore thread, neither of which seem worth it.
   19567         If it becomes an issue in practice, we can revisit this later.
   19568 
   19569         Test: storage/private-browsing-readonly.html
   19570 
   19571         * storage/Database.cpp:
   19572         (WebCore::Database::setAuthorizerReadOnly):
   19573         * storage/Database.h:
   19574 
   19575         * storage/DatabaseAuthorizer.cpp:  For all action types that would alter the database,
   19576           deny when in read-only mode.
   19577         (WebCore::DatabaseAuthorizer::reset):
   19578         (WebCore::DatabaseAuthorizer::createTable):
   19579         (WebCore::DatabaseAuthorizer::dropTable):
   19580         (WebCore::DatabaseAuthorizer::allowAlterTable):
   19581         (WebCore::DatabaseAuthorizer::createIndex):
   19582         (WebCore::DatabaseAuthorizer::dropIndex):
   19583         (WebCore::DatabaseAuthorizer::createTrigger):
   19584         (WebCore::DatabaseAuthorizer::dropTrigger):
   19585         (WebCore::DatabaseAuthorizer::createVTable):
   19586         (WebCore::DatabaseAuthorizer::dropVTable):
   19587         (WebCore::DatabaseAuthorizer::allowDelete):
   19588         (WebCore::DatabaseAuthorizer::allowInsert):
   19589         (WebCore::DatabaseAuthorizer::allowUpdate):
   19590         (WebCore::DatabaseAuthorizer::setReadOnly):
   19591         * storage/DatabaseAuthorizer.h:
   19592 
   19593         * storage/SQLStatement.cpp:
   19594         (WebCore::SQLStatement::create): Add a m_readOnly flag.
   19595         (WebCore::SQLStatement::SQLStatement): Ditto.
   19596         (WebCore::SQLStatement::execute): If m_readOnly is set, tell the authorizer to change
   19597           to read-only mode.
   19598         * storage/SQLStatement.h:
   19599 
   19600         * storage/SQLTransaction.cpp:
   19601         (WebCore::SQLTransaction::executeSQL): Flag the statement as read-only if the Page is
   19602           currently in private browsing mode.
   19603 
   19604 2009-04-17  Eric Seidel  <eric (a] webkit.org>
   19605 
   19606         Reviewed by Antti Koivisto.
   19607 
   19608         Move RenderPath and RenderSVGContainer onto a unified clippedOverflowRectForRepaint
   19609         https://bugs.webkit.org/show_bug.cgi?id=25268
   19610 
   19611         Lots of minus lines.  Now we're sharing more sane code
   19612         (which will respect -webkit-transforms! and scroll offsets correctly)
   19613 
   19614         Which means this fixes:
   19615         https://bugs.webkit.org/show_bug.cgi?id=20769 and
   19616         https://bugs.webkit.org/show_bug.cgi?id=21968 too!
   19617 
   19618         We're no longer expanding the paint rect "for anti-aliasing", since
   19619         I can't find a case where that's required.  If it is, repaintRectInLocalCoordinates()
   19620         should be fixed to handle those cases instead of here.
   19621 
   19622         This fixes svg/custom/scroll-hit-test (now that we respect scroll offsets when repainting)
   19623         as well as improves our focus ring drawing seen in svg/custom/focus-ring
   19624         focus rings are now closer to transformed content by a couple pixels (they were needlessly outset by the antialiasing hack)
   19625         Also, it fixes the dumped rects for markers, causing a progression in svg/custom/marker-overflow-clip
   19626 
   19627         * rendering/RenderPath.cpp:
   19628         (WebCore::RenderPath::repaintRectInLocalCoordinates):
   19629         (WebCore::RenderPath::setPath):
   19630         * rendering/RenderPath.h:
   19631         * rendering/RenderSVGContainer.cpp:
   19632         (WebCore::RenderSVGContainer::repaintRectInLocalCoordinates):
   19633         * rendering/RenderSVGContainer.h:
   19634         * rendering/RenderSVGModelObject.cpp:
   19635         (WebCore::RenderSVGModelObject::clippedOverflowRectForRepaint):
   19636         (WebCore::RenderSVGModelObject::computeRectForRepaint):
   19637         * rendering/RenderSVGModelObject.h:
   19638         * rendering/RenderSVGRoot.cpp:
   19639         (WebCore::RenderSVGRoot::computeRectForRepaint):
   19640         * rendering/RenderSVGRoot.h:
   19641 
   19642 2009-04-17  Chris Fleizach  <cfleizach (a] apple.com>
   19643 
   19644         Reviewed by Darin Adler.
   19645 
   19646         Bug 25259: AX: VoiceOver cmd-cntl-space does not follow the google.com->more link
   19647         https://bugs.webkit.org/show_bug.cgi?id=25259
   19648   
   19649         When a node becomes visible or hidden, accessibility needs to be told to update.
   19650 
   19651         Test: accessibility/visible-elements.html
   19652 
   19653         * rendering/RenderObject.cpp:
   19654         (WebCore::RenderObject::styleWillChange):
   19655 
   19656 2009-04-17  Kevin Ollivier  <kevino (a] theolliviers.com>
   19657 
   19658         wx build fix, added missing header.
   19659 
   19660         * platform/graphics/wx/TransformationMatrixWx.cpp:
   19661 
   19662 2009-04-17  Simon Hausmann  <simon.hausmann (a] nokia.com>
   19663 
   19664         Unreviewed build fix.
   19665 
   19666         Fix the build with enabled SVG filters
   19667 
   19668         * rendering/RenderSVGModelObject.cpp: Include SVGResourceFilter.h.
   19669 
   19670 2009-04-16  Eric Roman  <eroman (a] chromium.org>
   19671 
   19672         Reviewed by Dimitri Glazkov.
   19673 
   19674         https://bugs.webkit.org/show_bug.cgi?id=25196
   19675         Add a missing V8DOMMap include.
   19676 
   19677         * bindings/v8/WorkerScriptController.cpp: Included V8DOMMap.h.
   19678 
   19679 2009-04-16  Dimitri Glazkov  <dglazkov (a] chromium.org>
   19680 
   19681         Reviewed by Darin Fisher.
   19682 
   19683         https://bugs.webkit.org/show_bug.cgi?id=25260
   19684         Finish V8 custom bindings for InspectorController.
   19685 
   19686         * bindings/v8/custom/V8InspectorControllerCustom.cpp:
   19687         (WebCore::CALLBACK_FUNC_DECL): Added.
   19688 
   19689 2009-04-16  Kevin Watters  <kevinwatters (a] gmail.com>
   19690 
   19691         Reviewed by Kevin Ollivier.
   19692 
   19693         Switch to wxGraphicsBitmap when using wxGraphicsContext so that we're not doing
   19694         unnecessary conversions internally when drawing bitmaps.
   19695         
   19696         https://bugs.webkit.org/show_bug.cgi?id=25248
   19697 
   19698         * platform/graphics/ImageSource.h:
   19699         * platform/graphics/wx/ImageSourceWx.cpp:
   19700         (WebCore::ImageSource::createFrameAtIndex):
   19701         * platform/graphics/wx/ImageWx.cpp:
   19702         (WebCore::BitmapImage::draw):
   19703         (WebCore::BitmapImage::drawPattern):
   19704 
   19705 2009-04-16  Justin Garcia  <justin.garcia (a] apple.com>
   19706 
   19707         Reviewed by Dan Bernstein.
   19708 
   19709         Performing a block style change in an editable root that contains only a br adds a newline
   19710         https://bugs.webkit.org/show_bug.cgi?id=25256
   19711 
   19712         * editing/CompositeEditCommand.cpp:
   19713         (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary): Fix a bad check for an root
   19714         block that didn't handle a root that contained a placeholder.
   19715 
   19716 2009-04-16  Eric Seidel  <eric (a] webkit.org>
   19717 
   19718         Reviewed by Simon Fraser.
   19719 
   19720         Fix computeContainerBoundingBox to respect viewport translations
   19721         https://bugs.webkit.org/show_bug.cgi?id=25254
   19722 
   19723         Previously computeContainerBoundingBox was just adding the viewportTranslation.
   19724         Which, although it has a confusing name, only contains the scale and translation
   19725         for the viewBox/preserveAspectRatio adjustment.  It does not contain the
   19726         translation for the x/y offset of the viewport.
   19727         localToParentTransform() does contain this offset, so we use that instead
   19728         of the previous hacky code.
   19729 
   19730         * rendering/RenderSVGContainer.h:
   19731         * rendering/RenderSVGViewportContainer.h:
   19732         * rendering/SVGRenderSupport.cpp:
   19733         (WebCore::computeContainerBoundingBox):
   19734 
   19735 2009-04-16  Eric Seidel  <eric (a] webkit.org>
   19736 
   19737         Reviewed by Simon Fraser.
   19738 
   19739         Add a localToParentTransform() method which includes the
   19740         full transform between local and parent local coordinates.
   19741         https://bugs.webkit.org/show_bug.cgi?id=25226
   19742 
   19743         Moved m_localTransform up into RenderSVGTransformableContainer
   19744         and added a comment to RenderSVGViewportContainer to make it more
   19745         clear that it does not have a localTransform().
   19746 
   19747         This patch reveals two more failed design decisions:
   19748         1.  Use of RenderBox::absoluteTransform() to mean "absoluteTransform()
   19749             including only my localTransform()" callers are probably using it
   19750             incorrectly anyway and are just masking bugs in the confused code.
   19751         2.  computeContainerBoundingBox does not include viewport translations in
   19752             its computed bounding box, so bounding boxes will be off for parents of
   19753             inner <svg> elements.  I'll fix this an updated the results in a separate change.
   19754 
   19755         No functional changes, thus no tests.
   19756 
   19757         * rendering/RenderObject.cpp:
   19758         (WebCore::RenderObject::localToParentTransform):
   19759         (WebCore::RenderObject::absoluteTransform):
   19760         * rendering/RenderObject.h:
   19761         * rendering/RenderSVGContainer.cpp:
   19762         (WebCore::RenderSVGContainer::layout):
   19763         * rendering/RenderSVGContainer.h:
   19764         (WebCore::RenderSVGContainer::viewportTransform):
   19765         * rendering/RenderSVGHiddenContainer.cpp:
   19766         * rendering/RenderSVGHiddenContainer.h:
   19767         (WebCore::RenderSVGHiddenContainer::absoluteTransform):
   19768         * rendering/RenderSVGRoot.cpp:
   19769         (WebCore::RenderSVGRoot::localToParentTransform):
   19770         (WebCore::RenderSVGRoot::absoluteTransform):
   19771         * rendering/RenderSVGRoot.h:
   19772         * rendering/RenderSVGTransformableContainer.cpp:
   19773         (WebCore::RenderSVGTransformableContainer::localToParentTransform):
   19774         (WebCore::RenderSVGTransformableContainer::localTransform):
   19775         * rendering/RenderSVGTransformableContainer.h:
   19776         * rendering/RenderSVGViewportContainer.cpp:
   19777         (WebCore::RenderSVGViewportContainer::localToParentTransform):
   19778         (WebCore::RenderSVGViewportContainer::absoluteTransform):
   19779         * rendering/RenderSVGViewportContainer.h:
   19780         * rendering/SVGRenderSupport.cpp:
   19781         (WebCore::computeContainerBoundingBox):
   19782 
   19783 2009-04-16  Adam Langley  <agl (a] google.com>
   19784 
   19785         Reviewed by Darin Fisher.
   19786 
   19787         Fix Chromium's rendering of <option> elements inside of <optgroups>.
   19788 
   19789         https://bugs.webkit.org/show_bug.cgi?id=25244
   19790 
   19791         Test (will included as a manual test by https://bugs.webkit.org/show_bug.cgi?id=24900):
   19792 
   19793         <select>
   19794           <optgroup label="Should be bold">
   19795             <option>Should not be bold</option>
   19796           </optgroup>
   19797         </select>
   19798 
   19799         * css/themeWin.css: adding comments
   19800         * platform/chromium/PopupMenuChromium.cpp:
   19801         (WebCore::PopupListBox::getRowFont): use menuStyle() rather than the item's style
   19802 
   19803 2009-04-16  Eric Roman  <eroman (a] chromium.org>
   19804 
   19805         Reviewed by Alexey Proskuryakov.
   19806 
   19807         https://bugs.webkit.org/show_bug.cgi?id=25218
   19808 
   19809         Make DOMWindow::inlineEventListenerForType not have the "inline"
   19810         keyword. As this method gets used outside of DOMWindow.
   19811 
   19812         * page/DOMWindow.cpp:
   19813         (WebCore::DOMWindow::inlineEventListenerForType):
   19814 
   19815 2009-04-16  Greg Bolsinga  <bolsinga (a] apple.com>
   19816 
   19817         Reviewed by Antti Koivisto.
   19818 
   19819         Fix <rdar://problem/6766969>
   19820         
   19821         When deferred repaints are enabled and being reset and there is a active
   19822         timer, stop the timer and do the deferred repaints immediately.
   19823 
   19824         * page/FrameView.cpp:
   19825         (WebCore::FrameView::resetDeferredRepaintDelay):
   19826 
   19827 2009-04-16  Xan Lopez  <xlopez (a] igalia.com>
   19828 
   19829         Reviewed by Sam Weinig.
   19830 
   19831         https://bugs.webkit.org/show_bug.cgi?id=25241
   19832         Remove superfluous NotImplemented.h includes.
   19833 
   19834         * html/CanvasRenderingContext2D.cpp:
   19835         * html/CanvasStyle.cpp:
   19836         * page/AccessibilityRenderObject.cpp:
   19837         * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
   19838         * platform/graphics/GraphicsContext.cpp:
   19839         * platform/graphics/cairo/ImageBufferCairo.cpp:
   19840         * platform/graphics/cairo/PathCairo.cpp:
   19841         * platform/graphics/chromium/SimpleFontDataLinux.cpp:
   19842         * platform/graphics/gtk/FontGtk.cpp:
   19843         * platform/graphics/gtk/IconGtk.cpp:
   19844         * platform/graphics/qt/IconQt.cpp:
   19845         * platform/graphics/qt/ImageQt.cpp:
   19846         * platform/graphics/qt/ImageSourceQt.cpp:
   19847         * platform/graphics/skia/ImageBufferSkia.cpp:
   19848         * platform/graphics/skia/ImageSkia.cpp:
   19849         * platform/graphics/win/ColorSafari.cpp:
   19850         * platform/graphics/win/FontWin.cpp:
   19851         * platform/graphics/win/GraphicsContextCGWin.cpp:
   19852         * platform/graphics/win/GraphicsContextCairoWin.cpp:
   19853         * platform/graphics/win/SimpleFontDataCairoWin.cpp:
   19854         * platform/graphics/wx/ImageWx.cpp:
   19855         * platform/graphics/wx/TransformationMatrixWx.cpp:
   19856         * platform/gtk/PlatformScreenGtk.cpp:
   19857         * platform/gtk/PopupMenuGtk.cpp:
   19858         * platform/gtk/ScrollViewGtk.cpp:
   19859         * platform/gtk/ScrollbarGtk.cpp:
   19860         * platform/network/cf/ResourceHandleCFNet.cpp:
   19861         * platform/posix/FileSystemPOSIX.cpp:
   19862         * platform/qt/DragDataQt.cpp:
   19863         * platform/qt/FileSystemQt.cpp:
   19864         * platform/qt/Localizations.cpp:
   19865         * platform/qt/PopupMenuQt.cpp:
   19866         * platform/win/EditorWin.cpp:
   19867         * platform/win/PasteboardWin.cpp:
   19868         * platform/wx/KeyboardEventWx.cpp:
   19869         * platform/wx/PopupMenuWx.cpp:
   19870         * platform/wx/SharedTimerWx.cpp:
   19871         * plugins/gtk/PluginViewGtk.cpp:
   19872         * plugins/mac/PluginPackageMac.cpp:
   19873         * plugins/qt/PluginPackageQt.cpp:
   19874         * plugins/win/PluginViewWin.cpp:
   19875         * rendering/RenderThemeChromiumLinux.cpp:
   19876         * svg/graphics/SVGImage.cpp:
   19877 
   19878 2009-04-16  Geoffrey Garen  <ggaren (a] apple.com>
   19879 
   19880         Reviewed by Sam Weinig.
   19881 
   19882         More fix for https://bugs.webkit.org/show_bug.cgi?id=21260
   19883         Unbounded memory growth when churning elements with anonymous event handler functions
   19884         
   19885         Some cleanup in event handling code.
   19886 
   19887         * bindings/js/JSDOMGlobalObject.cpp:
   19888         * bindings/js/JSDOMGlobalObject.h: Removed findJSProtectedEventListener
   19889         and findJSProtectedEventListener because they are now unused.
   19890 
   19891         * bindings/js/JSEventListener.cpp:
   19892         * bindings/js/JSEventListener.h:
   19893         (WebCore::JSEventListener::clearGlobalObject):
   19894         * bindings/js/JSLazyEventListener.cpp:
   19895         (WebCore::JSLazyEventListener::JSLazyEventListener):
   19896         (WebCore::JSLazyEventListener::~JSLazyEventListener):
   19897         (WebCore::JSLazyEventListener::globalObject):
   19898         * bindings/js/JSLazyEventListener.h:
   19899         (WebCore::JSLazyEventListener::clearGlobalObject): Nixed JSProtectedEventListener,
   19900         and merged it with JSLazyEventListener, the only remaining event listener
   19901         that still GC-protects its function and global object.
   19902 
   19903         * bindings/js/ScriptController.cpp:
   19904         (WebCore::ScriptController::ScriptController):
   19905         * bindings/js/ScriptController.h:
   19906         (WebCore::ScriptController::setEventHandlerLineNumber):
   19907         (WebCore::ScriptController::eventHandlerLineNumber): Renamed handlerLineno =>
   19908         handlerLineNumber, because anything less would be uncivilized. Removed
   19909         createInlineEventListener because it mostly did irrelevent work, so it
   19910         just got in the way of understanding how event handler creation works.
   19911 
   19912         * dom/Document.cpp:
   19913         (WebCore::Document::createEventListener):
   19914         * dom/XMLTokenizerLibxml2.cpp:
   19915         (WebCore::XMLTokenizer::startElementNs):
   19916         * html/HTMLTokenizer.cpp:
   19917         (WebCore::HTMLTokenizer::processToken): Ditto.
   19918 
   19919 2009-04-16  Beth Dakin  <bdakin (a] apple.com>
   19920 
   19921         Reviewed by Dave Hyatt.
   19922 
   19923         Fix for https://bugs.webkit.org/show_bug.cgi?id=20765 Website 
   19924         crashes on load due to messy HTML in search form
   19925         -and corresponding-
   19926         <rdar://problem/6210633>
   19927 
   19928         Before this patch, <form>s were allowed to sit inside tables 
   19929         without being wrapped by anonymous table parts. There was also a 
   19930         concept that such a form could be "demoted" and would not be 
   19931         allowed to have any children. This patch has the HTML parser mark 
   19932         form elements that have been demoted as such, and then the demoted 
   19933         forms are not given renderers. I also removed the code that allowed 
   19934         forms to sit in tables without anonymous table sections. So now any 
   19935         forms that do manage to get a renderer inside a table will also be 
   19936         wrapped with appropriate table parts.
   19937 
   19938         * html/HTMLFormElement.cpp:
   19939         (WebCore::HTMLFormElement::HTMLFormElement):
   19940         (WebCore::HTMLFormElement::rendererIsNeeded):
   19941         * html/HTMLFormElement.h:
   19942         (WebCore::HTMLFormElement::setDemoted):
   19943         (WebCore::HTMLFormElement::isDemoted):
   19944         * html/HTMLParser.cpp:
   19945         (WebCore::HTMLParser::insertNode):
   19946         * rendering/RenderTable.cpp:
   19947         (WebCore::RenderTable::addChild):
   19948         * rendering/RenderTableRow.cpp:
   19949         (WebCore::RenderTableRow::addChild):
   19950         * rendering/RenderTableSection.cpp:
   19951         (WebCore::RenderTableSection::addChild):
   19952 
   19953 2009-04-16  Xiaomei Ji  <xji (a] chromium.org>
   19954 
   19955         Reviewed by Simon Fraser.
   19956 
   19957         Fix https://bugs.webkit.org/show_bug.cgi?id=24527
   19958         caret does not paint the first time you focus on a 0px right padding RTL div
   19959 
   19960         Test: fast/forms/caret-rtl.html
   19961 
   19962         * rendering/RenderBlock.cpp:
   19963         (WebCore::RenderBlock::localCaretRect): When calculating x-axis if 
   19964         alignment is alignRight, we need to subtract the caretWidth so that the
   19965         caret at IntRect(x, y, caretWidth, height) is inside the block.
   19966 
   19967 2009-04-16  Justin Garcia  <justin.garcia (a] apple.com>
   19968 
   19969         Reviewed by Simon Fraser.
   19970 
   19971         https://bugs.webkit.org/show_bug.cgi?id=25228
   19972         SelectionController::absoluteCaretBounds returns an inflated caret (the caret repaint rect)
   19973         
   19974         Return the bounds of the transformed caret, not the transformed repaint rect for the caret (which is inflated).
   19975 
   19976         * editing/SelectionController.cpp:
   19977         (WebCore::SelectionController::localCaretRect):
   19978         (WebCore::SelectionController::absoluteBoundsForLocalRect):
   19979         (WebCore::SelectionController::caretRepaintRect):
   19980         (WebCore::SelectionController::recomputeCaretRect):
   19981         * editing/SelectionController.h:
   19982 
   19983 2009-04-16  Pierre d'Herbemont  <pdherbemont (a] apple.com>
   19984 
   19985         Reviewed by Simon Fraser.
   19986 
   19987         https://bugs.webkit.org/show_bug.cgi?id=25187
   19988         Bug 25187: <video> may not be rendered upon certain racy conditions
   19989 
   19990         Always create the video renderer when the load state reaches QTMovieLoadStateLoaded and
   19991         the element is visible, not just when the movie has just been opened.
   19992 
   19993         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   19994         (WebCore::MediaPlayerPrivate::updateStates): Make sure we do not make false
   19995         assumption on the state changes order. Create the renderer if none is present,
   19996         when movie is loaded instead.
   19997 
   19998 2009-04-16  Eric Seidel  <eric (a] webkit.org>
   19999 
   20000         Reviewed by Geoffrey Garen.
   20001 
   20002         Add filterBoundingBox() to RenderSVGModelObject to share a tiny bit of code
   20003 
   20004         RenderSVGModelObject has much more interesting code it can share,
   20005         but I'm just trying to get the commits out of my local branch and into
   20006         the repository in any order I can. :)  This one was small.
   20007 
   20008         This will be used by the unified RenderSVGModelObject
   20009         clippedOverflowRectForRepaint patch coming soon.
   20010 
   20011         * rendering/RenderPath.cpp:
   20012         (WebCore::RenderPath::clippedOverflowRectForRepaint):
   20013         * rendering/RenderSVGContainer.cpp:
   20014         (WebCore::RenderSVGContainer::clippedOverflowRectForRepaint):
   20015         * rendering/RenderSVGModelObject.cpp:
   20016         (WebCore::RenderSVGModelObject::filterBoundingBox):
   20017         * rendering/RenderSVGModelObject.h:
   20018 
   20019 2009-04-16  Geoffrey Garen  <ggaren (a] apple.com>
   20020 
   20021         Reviewed by Eric Seidel and Adam Roben.
   20022 
   20023         More fix for https://bugs.webkit.org/show_bug.cgi?id=21260
   20024         Unbounded memory growth when churning elements with anonymous event handler functions
   20025         
   20026         Simplified some EventHandler creation code.
   20027         
   20028         Removed a pile of code whose sole purpose was to allow SVG event handlers
   20029         to supply a parameter named "evt" instead of the normal "event", and
   20030         replaced it with a single parameter to JSLazyEventListener's constructor
   20031         specifying the parameter name to use.
   20032 
   20033         * bindings/js/JSDOMWindowBase.h:
   20034         * bindings/js/JSLazyEventListener.cpp:
   20035         (WebCore::JSLazyEventListener::JSLazyEventListener):
   20036         (WebCore::JSLazyEventListener::parseCode):
   20037         * bindings/js/JSLazyEventListener.h:
   20038         (WebCore::JSLazyEventListener::create):
   20039         * bindings/js/ScriptController.cpp:
   20040         (WebCore::ScriptController::createInlineEventListener):
   20041         * bindings/js/ScriptController.h:
   20042         * dom/Document.cpp:
   20043         (WebCore::Document::createEventListener):
   20044 
   20045 2009-04-15  Eric Seidel  <eric (a] webkit.org>
   20046 
   20047         Reviewed by David Hyatt.
   20048 
   20049         Split out objectBoundingBox and repaintRectInLocalCoordinates from relativeBBox
   20050         in preparation for simplifying (and fixing) repaint logic in the SVG rendering tree.
   20051         https://bugs.webkit.org/show_bug.cgi?id=25224
   20052 
   20053         objectBoundingBox() matches the SVG 1.1 concept of a "bounding box"
   20054 
   20055         repaintRectInLocalCoordinates() should return the a rect covering all painted content.
   20056         However, repaintRectInLocalCoordinates() still only returns the "stroke bounding box"
   20057         in this patch.  In a future patch, repaintRectInLocalCoordinates will be fixed to return
   20058         a rect covering all painted content.  In order to avoid changing several hundred layout test results, I've left
   20059         the behavior as-is for now.  The returned rect is used by various repaintRectInLocalCoordinates
   20060         implementations and sometimes adjusted to include all painted content, but not always, and
   20061         the places where the adjustments are made are sometimes wrong.  Again, will be fixed in
   20062         an upcoming patch.
   20063 
   20064         This patch discovered a bug in Font::drawTextUsingSVGFont, which is probably causing
   20065         bounding-box relative gradients on SVGFont glyphs to not paint correctly.
   20066         I chose not to try and fix the bug in this patch and instead left a FIXME.
   20067 
   20068         This patch also discovered that at least tspan.getBBox() is broken.  This
   20069         along with the foreignObject.getBBox() change will be tested (and fixed) in a
   20070         later patch.  https://bugs.webkit.org/show_bug.cgi?id=25225
   20071 
   20072         No change in behavior (besides the above mentioned foreignObject.getBBox()), thus no tests.
   20073 
   20074         * rendering/RenderForeignObject.cpp:
   20075         (WebCore::RenderForeignObject::objectBoundingBox): this is a behavior improvement for getBBox() test case coming in a later patch
   20076         (WebCore::RenderForeignObject::repaintRectInLocalCoordinates): only really used for layout test results, might some day be used for repaint.
   20077         * rendering/RenderForeignObject.h:
   20078         * rendering/RenderObject.cpp:
   20079         (WebCore::RenderObject::objectBoundingBox): new methods, ASSERT if used but not implemented.
   20080         (WebCore::RenderObject::repaintRectInLocalCoordinates):
   20081         * rendering/RenderObject.h:
   20082         * rendering/RenderPath.cpp:
   20083         (WebCore::RenderPath::objectBoundingBox):
   20084         (WebCore::RenderPath::repaintRectInLocalCoordinates):
   20085         (WebCore::RenderPath::clippedOverflowRectForRepaint):
   20086         (WebCore::RenderPath::lineHeight):
   20087         (WebCore::RenderPath::baselinePosition):
   20088         (WebCore::RenderPath::paint):
   20089         (WebCore::RenderPath::addFocusRingRects):
   20090         * rendering/RenderPath.h:
   20091         * rendering/RenderSVGContainer.cpp:
   20092         (WebCore::RenderSVGContainer::paint):
   20093         (WebCore::RenderSVGContainer::objectBoundingBox):
   20094         (WebCore::RenderSVGContainer::repaintRectInLocalCoordinates):
   20095         * rendering/RenderSVGContainer.h:
   20096         * rendering/RenderSVGGradientStop.h:
   20097         (WebCore::RenderSVGGradientStop::objectBoundingBox):
   20098         (WebCore::RenderSVGGradientStop::repaintRectInLocalCoordinates):
   20099         * rendering/RenderSVGHiddenContainer.cpp:
   20100         (WebCore::RenderSVGHiddenContainer::objectBoundingBox):
   20101         (WebCore::RenderSVGHiddenContainer::repaintRectInLocalCoordinates):
   20102         * rendering/RenderSVGHiddenContainer.h:
   20103         * rendering/RenderSVGImage.cpp:
   20104         (WebCore::RenderSVGImage::objectBoundingBox):
   20105         (WebCore::RenderSVGImage::repaintRectInLocalCoordinates):
   20106         (WebCore::RenderSVGImage::calculateAbsoluteBounds):
   20107         (WebCore::RenderSVGImage::addFocusRingRects):
   20108         * rendering/RenderSVGImage.h:
   20109         * rendering/RenderSVGRoot.cpp:
   20110         (WebCore::RenderSVGRoot::paint):
   20111         (WebCore::RenderSVGRoot::objectBoundingBox):
   20112         (WebCore::RenderSVGRoot::repaintRectInLocalCoordinates):
   20113         * rendering/RenderSVGRoot.h:
   20114         * rendering/RenderSVGTSpan.h:
   20115         (WebCore::RenderSVGTSpan::objectBoundingBox):
   20116         (WebCore::RenderSVGTSpan::repaintRectInLocalCoordinates):
   20117         * rendering/RenderSVGText.cpp:
   20118         (WebCore::RenderSVGText::clippedOverflowRectForRepaint):
   20119         (WebCore::RenderSVGText::absoluteRects):
   20120         (WebCore::RenderSVGText::absoluteQuads):
   20121         (WebCore::RenderSVGText::objectBoundingBox):
   20122         (WebCore::RenderSVGText::repaintRectInLocalCoordinates):
   20123         * rendering/RenderSVGText.h:
   20124         * rendering/RenderSVGViewportContainer.cpp:
   20125         (WebCore::RenderSVGViewportContainer::viewportTransform):
   20126         * rendering/SVGRenderSupport.cpp:
   20127         (WebCore::computeContainerBoundingBox):
   20128         * rendering/SVGRenderSupport.h:
   20129         * rendering/SVGRenderTreeAsText.cpp:
   20130         (WebCore::operator<<):
   20131         * svg/SVGFont.cpp:
   20132         (WebCore::Font::drawTextUsingSVGFont):
   20133         * svg/SVGLocatable.cpp:
   20134         (WebCore::SVGLocatable::getBBox):
   20135         * svg/SVGPatternElement.cpp:
   20136         (WebCore::SVGPatternElement::buildPattern):
   20137         * svg/graphics/SVGPaintServerGradient.cpp:
   20138         (WebCore::createMaskAndSwapContextForTextGradient):
   20139         (WebCore::clipToTextMask):
   20140         (WebCore::SVGPaintServerGradient::setup):
   20141         * svg/graphics/SVGPaintServerPattern.cpp:
   20142         (WebCore::SVGPaintServerPattern::setup):
   20143 
   20144 2009-04-16  Dan Bernstein  <mitz (a] apple.com>
   20145 
   20146         Reviewed by Darin Adler.
   20147 
   20148         - fix <rdar://problem/6032139> Table cell widths calculated
   20149           incorrectly on table that uses table-layout:fixed, colspans, and a mix
   20150           of percentage and pixel widths
   20151 
   20152         Test: fast/table/fixed-granular-cols.html
   20153 
   20154         The incorrect widths resulted from incorrect handling of the case where
   20155         the <col> elements are more granular than the table cells.
   20156 
   20157         * rendering/FixedTableLayout.cpp:
   20158         (WebCore::FixedTableLayout::calcWidthArray): When processing <col>
   20159         elements, append effective columns or split existing effective columns
   20160         as needed.
   20161 
   20162 2009-04-16  Alexey Proskuryakov  <ap (a] webkit.org>
   20163 
   20164         <rdar://problem/6795285> Infinite recursion in ResourceHandle::receivedRequestToContinueWithoutCredential
   20165 
   20166         Rolled out <http://trac.webkit.org/projects/webkit/changeset/42536> - the two instances of
   20167         authentication challenge are different, after all. Added a FIXME comment about a possible
   20168         future improvement.
   20169 
   20170         * platform/network/ResourceHandle.cpp:
   20171         (WebCore::ResourceHandle::clearAuthentication):
   20172         * platform/network/ResourceHandleInternal.h:
   20173         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
   20174         * platform/network/cf/ResourceHandleCFNet.cpp:
   20175         (WebCore::ResourceHandle::didReceiveAuthenticationChallenge):
   20176         (WebCore::ResourceHandle::receivedCredential):
   20177         (WebCore::ResourceHandle::receivedRequestToContinueWithoutCredential):
   20178         (WebCore::ResourceHandle::receivedCancellation):
   20179         * platform/network/mac/ResourceHandleMac.mm:
   20180         (WebCore::ResourceHandle::didReceiveAuthenticationChallenge):
   20181         (WebCore::ResourceHandle::didCancelAuthenticationChallenge):
   20182         (WebCore::ResourceHandle::receivedCredential):
   20183         (WebCore::ResourceHandle::receivedRequestToContinueWithoutCredential):
   20184         (WebCore::ResourceHandle::receivedCancellation):
   20185 
   20186 2009-04-15  Geoffrey Garen  <ggaren (a] apple.com>
   20187 
   20188         Reviewed by Sam Weinig.
   20189         
   20190         More fix for https://bugs.webkit.org/show_bug.cgi?id=21260
   20191         Unbounded memory growth when churning elements with anonymous event handler functions
   20192 
   20193         Also fixed <rdar://problem/6792909> WebInspector crashes when reloading
   20194         a page with breakpoints set
   20195         
   20196         * bindings/js/JSEventListener.cpp:
   20197         (WebCore::JSEventListener::clearJSFunctionInline):
   20198         (WebCore::JSEventListener::markJSFunction):
   20199         * bindings/js/JSEventListener.h: Actually clear our function and global
   20200         object pointers when our client instructs us to. (Oops!) Also, mark
   20201         our global object while we still intend to use it.
   20202 
   20203         * bindings/js/JSSVGElementInstanceCustom.cpp:
   20204         (WebCore::JSSVGElementInstance::mark):
   20205         (WebCore::toJS):
   20206         * bindings/scripts/CodeGeneratorJS.pm:
   20207         * svg/SVGElementInstance.idl: For every SVGElementInstance wrapper, ensure
   20208         that the corresponding element also has a wrapper, to keep its event
   20209         listeners alive.
   20210 
   20211 2009-04-15  Dimitri Glazkov  <dglazkov (a] chromium.org>
   20212 
   20213         Reviewed by Darin Fisher.
   20214 
   20215         https://bugs.webkit.org/show_bug.cgi?id=25201
   20216         Add ScriptFunctionCall/ScriptObject for V8.
   20217 
   20218         * bindings/v8/ScriptFunctionCall.cpp: Added.
   20219         * bindings/v8/ScriptFunctionCall.h: Added.
   20220         * bindings/v8/ScriptObject.cpp: Added.
   20221         * bindings/v8/ScriptObject.h: Added.
   20222         * bindings/v8/ScriptObjectQuarantine.cpp: Added.
   20223         * bindings/v8/ScriptObjectQuarantine.h: Added.
   20224         * bindings/v8/ScriptScope.cpp: Added.
   20225         * bindings/v8/ScriptScope.h: Added.
   20226         * bindings/v8/ScriptState.h:
   20227         (WebCore::ScriptState::ScriptState): Added new constructors.
   20228         (WebCore::ScriptState::frame): Added Frame ptr accessor.
   20229         * bindings/v8/ScriptString.h:
   20230         (WebCore::ScriptString::ScriptString): Added default constructor.
   20231         * bindings/v8/ScriptValue.h:
   20232         (WebCore::ScriptValue::isEqual): Added.
   20233 
   20234 2009-04-15  Gustavo Noronha Silva  <gustavo.noronha (a] collabora.co.uk>
   20235 
   20236         Unreviewed build fix. Add RenderSVGModelObject.* to GTK+'s build.
   20237 
   20238         * GNUmakefile.am:
   20239 
   20240 2009-04-15  Steve Falkenburg  <sfalken (a] apple.com>
   20241 
   20242         <rdar://problem/6785760> WebCore should use a maximum of 6 connections per host, not 4
   20243 
   20244         Reviewed by Adam Roben.
   20245 
   20246         * platform/network/ResourceRequestBase.cpp:
   20247         * platform/network/cf/ResourceRequestCFNet.cpp:
   20248         (WebCore::initializeMaximumHTTPConnectionCountPerHost):
   20249 
   20250 2009-04-15  Sam Weinig  <sam (a] webkit.org>
   20251 
   20252         Reviewed by Mark Rowe.
   20253 
   20254         Add special casing to bindings generator so that custom functions
   20255         starting with xml or xslt conform to WebKit style guidelines.
   20256 
   20257         * bindings/js/JSDOMWindowCustom.cpp:
   20258         (WebCore::JSDOMWindow::xmlHttpRequest):
   20259         (WebCore::JSDOMWindow::xsltProcessor):
   20260         * bindings/scripts/CodeGenerator.pm:
   20261 
   20262 2009-04-15  Eric Seidel  <eric (a] webkit.org>
   20263 
   20264         Reviewed by Simon Fraser.
   20265 
   20266         Add minimal RenderSVGModelObject and make RenderPath and RenderSVGContainer use it.
   20267         https://bugs.webkit.org/show_bug.cgi?id=25221
   20268         
   20269         RenderSVGModelObject is the base rendering class for things which live
   20270         in the SVG rendering tree.  Not all SVG renders are RenderSVGModelObjects yet.
   20271         
   20272         More patches coming.  This is just adding the class, future patches
   20273         will pull more logic out of RenderPath and RenderSVGContainer into RenderSVGModelObject.
   20274 
   20275         * WebCore.pro:
   20276         * WebCore.scons:
   20277         * WebCore.vcproj/WebCore.vcproj:
   20278         * WebCore.xcodeproj/project.pbxproj:
   20279         * rendering/RenderPath.cpp:
   20280         (WebCore::RenderPath::RenderPath):
   20281         * rendering/RenderPath.h:
   20282         * rendering/RenderSVGContainer.cpp:
   20283         (WebCore::RenderSVGContainer::RenderSVGContainer):
   20284         * rendering/RenderSVGContainer.h:
   20285         * rendering/RenderSVGModelObject.cpp: Added.
   20286         (WebCore::RenderSVGModelObject::RenderSVGModelObject):
   20287         * rendering/RenderSVGModelObject.h: Added.
   20288         (WebCore::RenderSVGModelObject::requiresLayer):
   20289         * rendering/RenderTreeAsText.cpp:
   20290         * rendering/SVGRenderTreeAsText.cpp:
   20291 
   20292 2009-04-15  Eric Seidel  <eric (a] webkit.org>
   20293 
   20294         Reviewed by Simon Fraser.
   20295 
   20296         Remove more dead code from RenderSVGHiddenContainer.
   20297 
   20298         lineHeight and baselinePosition used to be on RenderSVGContainer
   20299         (of which this is a subclass) because RenderSVGContainer used
   20300         to be a RenderBox and always the renderer for <svg>
   20301         Now <svg> uses RenderSVGRoot when needing a RenderBox (inside HTML)
   20302         and RenderSVGViewportContainer (when inside SVG content)
   20303         so there is no need for RenderSVGHiddenContainer to have these HTML-specific methods.
   20304 
   20305         * rendering/RenderSVGHiddenContainer.cpp:
   20306         * rendering/RenderSVGHiddenContainer.h:
   20307 
   20308 2009-04-15  Eric Seidel  <eric (a] webkit.org>
   20309 
   20310         Reviewed by Simon Fraser.
   20311 
   20312         Remove unneeded (broken) code from SVG renderers
   20313         https://bugs.webkit.org/show_bug.cgi?id=25214
   20314 
   20315         Mostly due to my historical confusions about the render tree
   20316         and some methods not being removed after classes were split.
   20317 
   20318         RenderSVGRoot is an RenderBox and should just use all the
   20319         standard RenderBox methods for inspector and repaint rects.
   20320 
   20321         RenderSVGContainer is *not* a RenderBox (any more) and thus
   20322         doesn't need lineHeight or width/height or calcBounds.
   20323 
   20324         RenderSVGViewportContainer had some broken code which tried
   20325         to see if the click was inside the container at all, but it
   20326         was using width/height metrics based off of the containing
   20327         block (from calcWidth) which is wrong (since its real
   20328         width/height are from its containing viewport not containing block).
   20329 
   20330         * rendering/RenderSVGContainer.cpp:
   20331         (WebCore::RenderSVGContainer::RenderSVGContainer):
   20332         (WebCore::RenderSVGContainer::layout):
   20333         * rendering/RenderSVGContainer.h:
   20334         * rendering/RenderSVGRoot.cpp:
   20335         * rendering/RenderSVGRoot.h:
   20336         * rendering/RenderSVGViewportContainer.cpp:
   20337         (WebCore::RenderSVGViewportContainer::layout):
   20338         (WebCore::RenderSVGViewportContainer::nodeAtPoint):
   20339 
   20340 2009-04-15  Eric Seidel  <eric (a] webkit.org>
   20341 
   20342         Reviewed by Simon Fraser and Sam Weinig.
   20343 
   20344         https://bugs.webkit.org/show_bug.cgi?id=25217
   20345         Simplify nearestViewportElement and farthestViewportElement using isViewportElement and a for loop
   20346         Add ASSERT(element) to all these functions since they should never be passed a null element.
   20347 
   20348         * svg/SVGLocatable.cpp:
   20349         (WebCore::isViewportElement):
   20350         (WebCore::SVGLocatable::nearestViewportElement):
   20351         (WebCore::SVGLocatable::farthestViewportElement):
   20352         (WebCore::SVGLocatable::getBBox):
   20353         (WebCore::SVGLocatable::getCTM):
   20354         (WebCore::SVGLocatable::getScreenCTM):
   20355 
   20356 2009-04-15  Sam Weinig  <sam (a] webkit.org>
   20357 
   20358         Reviewed by Anders Carlsson.
   20359 
   20360         Remove support for the ObjCIvar extended attribute from the Objective-C
   20361         bindings generator.  It is not used anymore.
   20362 
   20363         * bindings/scripts/CodeGeneratorObjC.pm:
   20364 
   20365 2009-04-15  Justin Garcia  <justin.garcia (a] apple.com>
   20366 
   20367         Reviewed by Dan Bernstein.
   20368 
   20369         https://bugs.webkit.org/show_bug.cgi?id=25204
   20370         Create a fast path for ReplaceSelectionCommand that merges text nodes
   20371         
   20372         During simple pastes, where we're just pasting a text node into a run of text, we would split the current
   20373         text and insert the new node in between.  This is slow and we hit this bug:
   20374 
   20375         https://bugs.webkit.org/show_bug.cgi?id=6148
   20376 
   20377         in the layout and rendering code where adjacent text nodes don't shape correctly in Arabic.
   20378         
   20379         This change creates a fast path for ReplaceSelectionCommand that inserts text directly into the
   20380         text node that holds the selection (very similar to the fast path we wrote for InsertTextCommand).
   20381 
   20382         * editing/ReplaceSelectionCommand.cpp:
   20383         (WebCore::ReplaceSelectionCommand::doApply):
   20384         (WebCore::ReplaceSelectionCommand::performTrivialReplace):
   20385         * editing/ReplaceSelectionCommand.h:
   20386         * editing/TextIterator.cpp:
   20387 
   20388 2009-04-15  Adam Langley  <agl (a] google.com>
   20389 
   20390         Reviewed by Darin Fisher.
   20391 
   20392         Move VDMX parsing into the Chromium Linux port.
   20393 
   20394         https://bugs.webkit.org/show_bug.cgi?id=25116
   20395 
   20396         VDMX tables are optional tables in TrueType fonts which contain the
   20397         exact pixel height of a given font at a given pel size. In order to
   20398         match Windows font metrics we have to use these numbers.
   20399 
   20400         Previously, the parsing was performed in Skia. As part of the merge
   20401         with upstream Skia, an interface for getting table data from a font
   20402         has been added to Skia and we're moving the parsing into WebKit.
   20403 
   20404         This does not change any layout tests.
   20405 
   20406         * platform/graphics/chromium/FontPlatformDataLinux.cpp:
   20407         (WebCore::FontPlatformData::uniqueID):
   20408         * platform/graphics/chromium/FontPlatformDataLinux.h:
   20409         * platform/graphics/chromium/FontTrueTypeLinux.cpp: Added.
   20410         * platform/graphics/chromium/FontTrueTypeLinux.h: Added.
   20411         * platform/graphics/chromium/SimpleFontDataLinux.cpp:
   20412         (WebCore::SimpleFontData::platformInit):
   20413         (WebCore::SimpleFontData::platformWidthForGlyph):
   20414 
   20415 2009-04-15  Stephen White  <senorblanco (a] chromium.org>
   20416 
   20417         Reviewed by Dimitri Glazkov.
   20418 
   20419         https://bugs.webkit.org/show_bug.cgi?id=25180
   20420 
   20421         Restore stroked outlines to PlatformContextSkia::drawRect().
   20422         These were removed inadvertently in r41805, aka
   20423         https://bugs.webkit.org/show_bug.cgi?id=24662.
   20424         SkRect is { left, top, right, bottom }, not { left, top, width, height }.
   20425 
   20426         * platform/graphics/skia/PlatformContextSkia.cpp:
   20427         (PlatformContextSkia::drawRect):
   20428 
   20429 2009-04-15  Dan Bernstein  <mitz (a] apple.com>
   20430 
   20431         Reviewed by Dave Hyatt.
   20432 
   20433         - fix <rdar://problem/6777374> Generated content with display: run-in
   20434           causes a crash
   20435 
   20436         Test: fast/runin/generated.html
   20437 
   20438         * rendering/RenderBlock.cpp:
   20439         (WebCore::RenderBlock::handleRunInChild): Check if the run-in block is
   20440         generated, and if so, make the RenderInline anonymous instead of passing
   20441         a 0 node to the RenderInline constructor. If the run-in itself is
   20442         generated, do move :before and :after children from the block into the
   20443         inline, as they will not be regenerated. Changed nested ifs into early
   20444         returns.
   20445 
   20446 2009-04-15  Eric Roman  <eroman (a] chromium.org>
   20447 
   20448         Reviewed by Geoffrey Garen.
   20449 
   20450         https://bugs.webkit.org/show_bug.cgi?id=25192
   20451 
   20452         Expose DOMWindow::removeInlineEventListenerForType and
   20453         DOMWindow::inlineEventListenerForType as public.
   20454 
   20455         * page/DOMWindow.h:
   20456 
   20457 2009-04-14  Eric Roman  <eroman (a] chromium.org>
   20458 
   20459         Reviewed by Darin Adler.
   20460 
   20461         https://bugs.webkit.org/show_bug.cgi?id=25198
   20462 
   20463         Wrap RegisteredEventListener's markEventListeners and invalidateEventListeners
   20464         in a USE(JSC), since it doesn't compile with V8 bindings.
   20465 
   20466         * dom/RegisteredEventListener.h:
   20467 
   20468 2009-04-15  Eric Roman  <eroman (a] chromium.org>
   20469 
   20470         Reviewed by Darin Adler.
   20471 
   20472         https://bugs.webkit.org/show_bug.cgi?id=25194
   20473 
   20474         Fix a caller of Settings::javaScriptCanOpenWindowsAutomatically() to
   20475         use the new name.
   20476 
   20477         * bindings/v8/custom/V8DOMWindowCustom.cpp:
   20478 
   20479 2009-04-14  Alexey Proskuryakov  <ap (a] webkit.org>
   20480 
   20481         Rubber-stamped by Darin Adler.
   20482 
   20483         Don't keep platform objects for authentication challenge in ResourceHandleInternal.
   20484         We already have a copy in AuthenticationChallenge object.
   20485 
   20486         * platform/network/ResourceHandle.cpp:
   20487         (WebCore::ResourceHandle::clearAuthentication):
   20488         * platform/network/ResourceHandleInternal.h:
   20489         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
   20490         * platform/network/cf/ResourceHandleCFNet.cpp:
   20491         (WebCore::ResourceHandle::didReceiveAuthenticationChallenge):
   20492         (WebCore::ResourceHandle::receivedCredential):
   20493         (WebCore::ResourceHandle::receivedRequestToContinueWithoutCredential):
   20494         (WebCore::ResourceHandle::receivedCancellation):
   20495         * platform/network/mac/ResourceHandleMac.mm:
   20496         (WebCore::ResourceHandle::didReceiveAuthenticationChallenge):
   20497         (WebCore::ResourceHandle::didCancelAuthenticationChallenge):
   20498         (WebCore::ResourceHandle::receivedCredential):
   20499         (WebCore::ResourceHandle::receivedRequestToContinueWithoutCredential):
   20500         (WebCore::ResourceHandle::receivedCancellation):
   20501 
   20502 2009-04-14  Geoffrey Garen  <ggaren (a] apple.com>
   20503 
   20504         Reviewed by Sam Weinig.
   20505 
   20506         Nixed some now-defunct autogeneration code.
   20507 
   20508         * bindings/scripts/CodeGeneratorJS.pm:
   20509 
   20510 2009-04-14  Eric Carlson  <eric.carlson (a] apple.com>
   20511 
   20512         Reviewed by Alexey Proskuryakov.
   20513         
   20514         Fix <rdar://problem/6755724> <audio> and <video> elements can reference local 
   20515         file:/// URLs from remote in Safari
   20516 
   20517         Tests: http/tests/security/local-video-poster-from-remote.html
   20518                http/tests/security/local-video-source-from-remote.html
   20519                http/tests/security/local-video-src-from-remote.html
   20520 
   20521         * html/HTMLMediaElement.cpp:
   20522         (WebCore::HTMLMediaElement::loadResource): Don't pass url to media engine unless loader->canLoad()
   20523         says it is OK.
   20524 
   20525 2009-04-14  Sam Weinig  <sam (a] webkit.org>
   20526 
   20527         Reviewed by Darin Adler.
   20528 
   20529         Part of <rdar://problem/6150868>
   20530         Fix incorrect handling of content that needs to go into the head element
   20531         once the head element has been removed.
   20532 
   20533         Test: fast/parser/head-content-after-head-removal.html
   20534 
   20535         * html/HTMLParser.cpp:
   20536         (WebCore::HTMLParser::HTMLParser): Remove unneeded initializer of m_head.
   20537         (WebCore::HTMLParser::handleError): Update since m_head is now a RefPtr.
   20538         (WebCore::HTMLParser::createHead): Ditto.
   20539         * html/HTMLParser.h: Make m_head a RefPtr.
   20540 
   20541 2009-04-14  Geoffrey Garen  <ggaren (a] apple.com>
   20542 
   20543         Used svn merge -r42529:42528 to roll out my last patch because it broke
   20544         the build.
   20545 
   20546         * bindings/js/JSDOMGlobalObject.cpp:
   20547         (WebCore::JSDOMGlobalObject::~JSDOMGlobalObject):
   20548         (WebCore::JSDOMGlobalObject::findJSProtectedEventListener):
   20549         (WebCore::JSDOMGlobalObject::findOrCreateJSProtectedEventListener):
   20550         (WebCore::JSDOMGlobalObject::jsProtectedEventListeners):
   20551         (WebCore::JSDOMGlobalObject::jsProtectedInlineEventListeners):
   20552         * bindings/js/JSDOMGlobalObject.h:
   20553 
   20554 2009-04-14  Geoffrey Garen  <ggaren (a] apple.com>
   20555 
   20556         Reviewed by Sam Weinig.
   20557 
   20558         Nixed some now-dead code related to protected event listeners.
   20559 
   20560         * bindings/js/JSDOMGlobalObject.cpp:
   20561         (WebCore::JSDOMGlobalObject::~JSDOMGlobalObject):
   20562         * bindings/js/JSDOMGlobalObject.h:
   20563 
   20564 2009-04-14  Geoffrey Garen  <ggaren (a] apple.com>
   20565 
   20566         Reviewed by Sam Weinig.
   20567 
   20568         More fix for https://bugs.webkit.org/show_bug.cgi?id=21260
   20569         Unbounded memory growth when churning elements with anonymous event handler functions
   20570 
   20571         Stop using protected event listeners on SVGElementInstance.
   20572 
   20573         * bindings/js/JSSVGElementInstanceCustom.cpp:
   20574         (WebCore::JSSVGElementInstance::mark): Mark our event listeners, since
   20575         they're not protected anymore.
   20576 
   20577         (WebCore::JSSVGElementInstance::addEventListener):
   20578         (WebCore::JSSVGElementInstance::removeEventListener): Make unprotected
   20579         event listeners, since we mark them now.
   20580 
   20581         * bindings/scripts/CodeGeneratorJS.pm: Autogenerate event listener
   20582         invalidation for SVGElementInstance.
   20583 
   20584         * svg/SVGElementInstance.h:
   20585         (WebCore::SVGElementInstance::eventListeners): Added an accessor, for
   20586         the sake of autogenerated code.
   20587 
   20588         * svg/SVGElementInstance.idl: Removed the ProtectedEventListener attribute
   20589         from event listener properties. Added a CustomMarkFunction attribute,
   20590         since we need to mark our event listeners.
   20591 
   20592 2009-04-14  Steve Falkenburg  <sfalken (a] apple.com>
   20593 
   20594         Windows build fix.
   20595 
   20596         * WebCore.vcproj/WebCore.vcproj:
   20597 
   20598 2009-04-14  Steve Falkenburg  <sfalken (a] apple.com>
   20599 
   20600         Add header guards to WebCore forwarding headers.
   20601         
   20602         Speeds up WebCore debug build on Windows by 12% on my system,
   20603         since Visual Studio appears to not optimize for standard header
   20604         guards in included files.
   20605         
   20606         Rubber stamped by Ada Chan.
   20607 
   20608         * ForwardingHeaders/debugger/Debugger.h:
   20609         * ForwardingHeaders/debugger/DebuggerActivation.h:
   20610         * ForwardingHeaders/debugger/DebuggerCallFrame.h:
   20611         * ForwardingHeaders/interpreter/CallFrame.h:
   20612         * ForwardingHeaders/interpreter/Interpreter.h:
   20613         * ForwardingHeaders/masm/X86Assembler.h:
   20614         * ForwardingHeaders/parser/Parser.h:
   20615         * ForwardingHeaders/parser/SourceCode.h:
   20616         * ForwardingHeaders/parser/SourceProvider.h:
   20617         * ForwardingHeaders/pcre/pcre.h:
   20618         * ForwardingHeaders/profiler/Profile.h:
   20619         * ForwardingHeaders/profiler/ProfileNode.h:
   20620         * ForwardingHeaders/profiler/Profiler.h:
   20621         * ForwardingHeaders/runtime/ArgList.h:
   20622         * ForwardingHeaders/runtime/ArrayPrototype.h:
   20623         * ForwardingHeaders/runtime/BooleanObject.h:
   20624         * ForwardingHeaders/runtime/CallData.h:
   20625         * ForwardingHeaders/runtime/Collector.h:
   20626         * ForwardingHeaders/runtime/CollectorHeapIterator.h:
   20627         * ForwardingHeaders/runtime/Completion.h:
   20628         * ForwardingHeaders/runtime/ConstructData.h:
   20629         * ForwardingHeaders/runtime/DateInstance.h:
   20630         * ForwardingHeaders/runtime/Error.h:
   20631         * ForwardingHeaders/runtime/FunctionConstructor.h:
   20632         * ForwardingHeaders/runtime/FunctionPrototype.h:
   20633         * ForwardingHeaders/runtime/Identifier.h:
   20634         * ForwardingHeaders/runtime/InitializeThreading.h:
   20635         * ForwardingHeaders/runtime/InternalFunction.h:
   20636         * ForwardingHeaders/runtime/JSArray.h:
   20637         * ForwardingHeaders/runtime/JSByteArray.h:
   20638         * ForwardingHeaders/runtime/JSFunction.h:
   20639         * ForwardingHeaders/runtime/JSGlobalData.h:
   20640         * ForwardingHeaders/runtime/JSGlobalObject.h:
   20641         * ForwardingHeaders/runtime/JSLock.h:
   20642         * ForwardingHeaders/runtime/JSNumberCell.h:
   20643         * ForwardingHeaders/runtime/JSObject.h:
   20644         * ForwardingHeaders/runtime/JSString.h:
   20645         * ForwardingHeaders/runtime/JSValue.h:
   20646         * ForwardingHeaders/runtime/Lookup.h:
   20647         * ForwardingHeaders/runtime/ObjectPrototype.h:
   20648         * ForwardingHeaders/runtime/Operations.h:
   20649         * ForwardingHeaders/runtime/PropertyMap.h:
   20650         * ForwardingHeaders/runtime/PropertyNameArray.h:
   20651         * ForwardingHeaders/runtime/Protect.h:
   20652         * ForwardingHeaders/runtime/PrototypeFunction.h:
   20653         * ForwardingHeaders/runtime/StringObject.h:
   20654         * ForwardingHeaders/runtime/StringObjectThatMasqueradesAsUndefined.h:
   20655         * ForwardingHeaders/runtime/StringPrototype.h:
   20656         * ForwardingHeaders/runtime/Structure.h:
   20657         * ForwardingHeaders/runtime/SymbolTable.h:
   20658         * ForwardingHeaders/runtime/UString.h:
   20659         * ForwardingHeaders/wrec/WREC.h:
   20660         * ForwardingHeaders/wtf/ASCIICType.h:
   20661         * ForwardingHeaders/wtf/AlwaysInline.h:
   20662         * ForwardingHeaders/wtf/Assertions.h:
   20663         * ForwardingHeaders/wtf/ByteArray.h:
   20664         * ForwardingHeaders/wtf/CurrentTime.h:
   20665         * ForwardingHeaders/wtf/Deque.h:
   20666         * ForwardingHeaders/wtf/DisallowCType.h:
   20667         * ForwardingHeaders/wtf/FastMalloc.h:
   20668         * ForwardingHeaders/wtf/Forward.h:
   20669         * ForwardingHeaders/wtf/GetPtr.h:
   20670         * ForwardingHeaders/wtf/HashCountedSet.h:
   20671         * ForwardingHeaders/wtf/HashFunctions.h:
   20672         * ForwardingHeaders/wtf/HashMap.h:
   20673         * ForwardingHeaders/wtf/HashSet.h:
   20674         * ForwardingHeaders/wtf/HashTable.h:
   20675         * ForwardingHeaders/wtf/HashTraits.h:
   20676         * ForwardingHeaders/wtf/ListHashSet.h:
   20677         * ForwardingHeaders/wtf/ListRefPtr.h:
   20678         * ForwardingHeaders/wtf/Locker.h:
   20679         * ForwardingHeaders/wtf/MainThread.h:
   20680         * ForwardingHeaders/wtf/MathExtras.h:
   20681         * ForwardingHeaders/wtf/MessageQueue.h:
   20682         * ForwardingHeaders/wtf/Noncopyable.h:
   20683         * ForwardingHeaders/wtf/NotFound.h:
   20684         * ForwardingHeaders/wtf/OwnArrayPtr.h:
   20685         * ForwardingHeaders/wtf/OwnPtr.h:
   20686         * ForwardingHeaders/wtf/PassRefPtr.h:
   20687         * ForwardingHeaders/wtf/Platform.h:
   20688         * ForwardingHeaders/wtf/PtrAndFlags.h:
   20689         * ForwardingHeaders/wtf/RandomNumber.h:
   20690         * ForwardingHeaders/wtf/RefCounted.h:
   20691         * ForwardingHeaders/wtf/RefCountedLeakCounter.h:
   20692         * ForwardingHeaders/wtf/RefPtr.h:
   20693         * ForwardingHeaders/wtf/RetainPtr.h:
   20694         * ForwardingHeaders/wtf/StdLibExtras.h:
   20695         * ForwardingHeaders/wtf/StringExtras.h:
   20696         * ForwardingHeaders/wtf/ThreadSpecific.h:
   20697         * ForwardingHeaders/wtf/Threading.h:
   20698         * ForwardingHeaders/wtf/TypeTraits.h:
   20699         * ForwardingHeaders/wtf/UnusedParam.h:
   20700         * ForwardingHeaders/wtf/Vector.h:
   20701         * ForwardingHeaders/wtf/VectorTraits.h:
   20702         * ForwardingHeaders/wtf/dtoa.h:
   20703         * ForwardingHeaders/wtf/unicode/Collator.h:
   20704         * ForwardingHeaders/wtf/unicode/UTF8.h:
   20705         * ForwardingHeaders/wtf/unicode/Unicode.h:
   20706         * ForwardingHeaders/wtf/unicode/icu/UnicodeIcu.h:
   20707 
   20708 2009-04-14  Sam Weinig  <sam (a] webkit.org>
   20709 
   20710         Reviewed by Adele Peterson.
   20711 
   20712         Use a template function to generalize the way we create non-caching
   20713         JS function getters.
   20714 
   20715         * bindings/js/JSDOMWindowCustom.cpp:
   20716         * bindings/js/JSDOMWindowCustom.h:
   20717         (WebCore::nonCachingStaticFunctionGetter):
   20718         (WebCore::JSDOMWindow::customGetOwnPropertySlot):
   20719 
   20720 2009-04-14  Benjamin C Meyer  <benjamin.meyer (a] torchmobile.com>
   20721 
   20722         Reviewed by George Staikos.
   20723 
   20724         https://bugs.webkit.org/show_bug.cgi?id=25099
   20725 
   20726         When creating a QNetworkRequest make sure to populate the
   20727         CacheLoadControlAttribute with the value set by the ResourceRequest::cachePolicy() so that the cache will be used as WebKit expects.
   20728 
   20729         * WebKit/qt/tests/qwebpage/tst_qwebpage.cpp:
   20730         (tst_QWebPage::requestCache):
   20731 
   20732         * platform/network/qt/ResourceRequestQt.cpp:
   20733         (WebCore::ResourceRequest::toNetworkRequest):
   20734 
   20735 2009-04-14  Timothy Hatcher  <timothy (a] apple.com>
   20736 
   20737         Fix a world leak caused by opening the Web Inspector. This was
   20738         a regression caused by the InspectorController becoming refcounted.
   20739 
   20740         <rdar://problem/6782944>
   20741 
   20742         Reviewed by Darin Adler.
   20743 
   20744         * bindings/js/ScriptObject.cpp:
   20745         (WebCore::ScriptGlobalObject::get): Renamed to better match the
   20746         other functions.
   20747         (WebCore::ScriptGlobalObject::remove): Added. Deletes the property.
   20748         * bindings/js/ScriptObject.h:
   20749         * inspector/InspectorController.cpp:
   20750         (WebCore::InspectorController::~InspectorController): Do less work
   20751         at destruction time since the object lifetime is tied to JS GC.
   20752         Assert that inspectedPageDestroyed cleared everything needed.
   20753         (WebCore::InspectorController::inspectedPageDestroyed): Do most
   20754         of the work that ~InspectorController was doing.
   20755         (WebCore::InspectorController::scriptObjectReady): Renamed getObject.
   20756 
   20757 2009-04-14  Antony Sargent  <asargent (a] chromium.org>
   20758 
   20759         Reviewed by Dimitri Glazkov.
   20760 
   20761         This is some cleanup motivated by the crash in http://crbug.com/9775 , which 
   20762         happens because of calling window.open inside a window.onload handler. 
   20763 
   20764         These changes are just part of the fix, along with some asserts to help prevent
   20765         breakage on future changes. 
   20766 
   20767         https://bugs.webkit.org/show_bug.cgi?id=25132
   20768 
   20769         * bindings/v8/V8EventListenerList.cpp:
   20770         (WebCore::V8EventListenerList::add):
   20771         (WebCore::V8EventListenerList::remove):
   20772         (WebCore::V8EventListenerList::clear):
   20773         * bindings/v8/V8EventListenerList.h:
   20774         (WebCore::V8EventListenerList::size):
   20775 
   20776 2009-04-14  Evan Martin  <evan (a] chromium.org>
   20777 
   20778         Reviewed by Darin Adler.
   20779 
   20780         https://bugs.webkit.org/show_bug.cgi?id=25142
   20781         Fix a race that can occur between flex and the perl script that parses
   20782         its output.
   20783 
   20784         * css/maketokenizer: Consume all input.
   20785 
   20786 2009-04-14  Rohit Rao  <rohitrao (a] google.com>
   20787 
   20788         Reviewed by Dan Bernstein.
   20789 
   20790         https://bugs.webkit.org/show_bug.cgi?id=25184
   20791         Do not change the text color for selected text in Mac Chromium.
   20792 
   20793         * rendering/RenderThemeChromiumMac.h:
   20794         (WebCore::RenderThemeChromiumMac::supportsSelectionForegroundColors):
   20795         Now returns false, matching the behavior of Safari on Mac.
   20796 
   20797 2009-04-14  Justin Garcia  <justin.garcia (a] apple.com>
   20798 
   20799         Reviewed by Eric Seidel.
   20800 
   20801         https://bugs.webkit.org/show_bug.cgi?id=25172
   20802         Extra partial layout during the first keypress in an empty block
   20803         
   20804         Determining if a placeholder needs to be removed requires the creation of a VisiblePosition 
   20805         which was triggering layout before we were finished modifying the DOM for the insert operation.
   20806         
   20807         Find out if we need to remove a placeholder near the start of the operation, and if we do remember 
   20808         where it's located.  Then, later, remove it along with all of the other DOM operations we perform.
   20809         
   20810         Renamed lineBreakExistsAtPosition to lineBreakExistsAtVisiblePosition and added a lineBreakExistsAtPosition
   20811         that takes in a Position.  In InsertTextCommand, we can use the latter, since we normalize manually.
   20812         
   20813         removePlaceholderAt now takes in a Position that it assumes has already been checked for a placeholder.
   20814         
   20815         No test added as this only effects performance.
   20816 
   20817         * editing/BreakBlockquoteCommand.cpp:
   20818         (WebCore::BreakBlockquoteCommand::doApply):
   20819         * editing/CompositeEditCommand.cpp:
   20820         (WebCore::CompositeEditCommand::removePlaceholderAt):
   20821         (WebCore::CompositeEditCommand::moveParagraphs):
   20822         (WebCore::CompositeEditCommand::breakOutOfEmptyMailBlockquotedParagraph):
   20823         (WebCore::CompositeEditCommand::positionAvoidingSpecialElementBoundary):
   20824         * editing/CompositeEditCommand.h:
   20825         * editing/DeleteSelectionCommand.cpp:
   20826         (WebCore::DeleteSelectionCommand::calculateTypingStyleAfterDelete):
   20827         (WebCore::DeleteSelectionCommand::doApply):
   20828         * editing/FormatBlockCommand.cpp:
   20829         (WebCore::FormatBlockCommand::doApply):
   20830         * editing/InsertLineBreakCommand.cpp:
   20831         (WebCore::InsertLineBreakCommand::doApply):
   20832         * editing/InsertParagraphSeparatorCommand.cpp:
   20833         (WebCore::InsertParagraphSeparatorCommand::doApply):
   20834         * editing/InsertTextCommand.cpp:
   20835         (WebCore::InsertTextCommand::input):
   20836         * editing/htmlediting.cpp:
   20837         (WebCore::lineBreakExistsAtVisiblePosition):
   20838         (WebCore::lineBreakExistsAtPosition):
   20839         * editing/htmlediting.h:
   20840 
   20841 2009-04-14  Adam Roben  <aroben (a] apple.com>
   20842 
   20843         Remove support for profile-guided optimization on Windows
   20844 
   20845         Rubber-stamped by Steve Falkenburg.
   20846 
   20847         * WebCore.vcproj/WebCore.vcproj: Removed the Release_PGO
   20848         configuration.
   20849 
   20850 2009-04-14  Dmitry Titov  <dimich (a] chromium.org>
   20851 
   20852         Reviewed by Dimitri Glazkov.
   20853 
   20854         https://bugs.webkit.org/show_bug.cgi?id=25163
   20855         Upstream fix for releasing v8 objects on worker thread termination in Chromium.
   20856 
   20857         * bindings/v8/V8DOMMap.cpp:
   20858         (WebCore::domDataList): Now uses Vector instead of HashMap.
   20859         (WebCore::domDataListMutex):
   20860         (WebCore::ThreadSpecificDOMData::ThreadSpecificDOMData):  remove usage of currentThread();
   20861         (WebCore::ThreadSpecificDOMData::~ThreadSpecificDOMData): ditto.
   20862         (WebCore::NonMainThreadSpecificDOMData::~NonMainThreadSpecificDOMData): moved call to removeAllDOMObjectsInCurrentThread() to ~WorkerScriptController.
   20863         (WebCore::handleWeakObjectInOwningThread):
   20864         (WebCore::derefDelayedObjects):
   20865         (WebCore::removeAllDOMObjectsInCurrentThread): not static anymore.
   20866         * bindings/v8/V8DOMMap.h:
   20867         * bindings/v8/WorkerContextExecutionProxy.cpp:
   20868         (WebCore::WorkerContextExecutionProxy::dispose): removed code that avoided dual-dereference of WorkerContext.
   20869         (WebCore::WorkerContextExecutionProxy::initContextIfNeeded): this ref() is countered in removeAllDOMObjectsInCurrentThread(), when the WorkerContext is removed from the v8 map.
   20870         * bindings/v8/WorkerScriptController.cpp:
   20871         (WebCore::WorkerScriptController::~WorkerScriptController):
   20872 
   20873 2009-04-14  Adam Roben  <aroben (a] apple.com>
   20874 
   20875         Fix Bug 25183: Split up WebCore.vcproj's settings into vsprops files
   20876 
   20877         <https://bugs.webkit.org/show_bug.cgi?id=25183>
   20878 
   20879         WebCore.vcproj now uses a set of .vsprops files to store most of its
   20880         settings.
   20881 
   20882         Reviewed by Darin Adler.
   20883 
   20884         * WebCore.vcproj/WebCore.vcproj: Moved settings from here into the new
   20885         .vsprops files.
   20886 
   20887         * WebCore.vcproj/WebCoreCFNetwork.vsprops: Added. Contains settings
   20888         for ports that build against CFNetwork.
   20889         * WebCore.vcproj/WebCoreCG.vsprops: Added. Contains settings for ports
   20890         that build against CoreGraphics.
   20891         * WebCore.vcproj/WebCoreCURL.vsprops: Added. Contains settings for
   20892         ports that build against libcurl.
   20893         * WebCore.vcproj/WebCoreCairo.vsprops: Added. Contains settings for
   20894         ports that build against Cairo.
   20895         * WebCore.vcproj/WebCoreCommon.vsprops: Added. Contains settings
   20896         shared by all ports.
   20897         * WebCore.vcproj/WebCoreMediaQT.vsprops: Added. Contains settings for
   20898         ports that use QTMovieWin to implement the MediaPlayerPrivate
   20899         interface.
   20900         * WebCore.vcproj/WebCorePthreads.vsprops: Added. Contains settings for
   20901         ports that build against pthreads.
   20902 
   20903 2009-04-14  Alexey Proskuryakov  <ap (a] webkit.org>
   20904 
   20905         Reviewed by Darin Adler.
   20906 
   20907         http/tests/xmlhttprequest/basic-auth.html fails on Tiger.
   20908 
   20909         Turns out that NSURLCredentialPersistenceNone doesn't work on Tiger, so we have to use
   20910         session persistence.
   20911 
   20912         * platform/network/mac/ResourceHandleMac.mm:
   20913         (WebCore::ResourceHandle::didReceiveAuthenticationChallenge): Route the credential through
   20914         receivedCredential(), ensuring that the Tiger-specific need to use session credentials
   20915         is honored.
   20916         (WebCore::ResourceHandle::receivedCredential): On Tiger, change PersistenceNone to
   20917         PersistenceForSession, because the former doesn't work.
   20918 
   20919 2009-04-14  Adele Peterson  <adele (a] apple.com>
   20920 
   20921         Reviewed by Darin Adler.
   20922 
   20923         Fix for <rdar://problem/6703873> Triple-click quoted line and type Return creates an extra quoted blank line
   20924 
   20925         Test: editing/inserting/6703873.html
   20926 
   20927         * editing/BreakBlockquoteCommand.cpp: (WebCore::BreakBlockquoteCommand::doApply):
   20928         If the startNode's original parent is now empty, we can remove it.  Its already been cloned and copied with the startNode,
   20929         so we only need to keep it around if it actually holds some original content, otherwise it will look like an extra empty 
   20930         container in the document.
   20931 
   20932 2009-04-14  Xan Lopez  <xlopez (a] igalia.com>
   20933 
   20934         Reviewed by Holger Freyther.
   20935 
   20936         https://bugs.webkit.org/show_bug.cgi?id=21546
   20937         [GTK] ATK accessibility enhancements
   20938 
   20939         Add a proper implementation of AtkText::get_text and
   20940         AtkText::get_character_count, which takes into account non
   20941         TextControl text. With this the 'Text' field in Accerciser's
   20942         Interface Viewer is filled correctly.
   20943 
   20944         * page/gtk/AccessibilityObjectWrapperAtk.cpp:
   20945 
   20946 2009-04-14  Xan Lopez  <xlopez (a] igalia.com>
   20947 
   20948         Reviewed by Holger Freyther.
   20949 
   20950         https://bugs.webkit.org/show_bug.cgi?id=21546
   20951         [GTK] ATK accessibility enhancements
   20952 
   20953         Remove some dead code and g_return_if_fail from static functions.
   20954 
   20955         * page/gtk/AccessibilityObjectWrapperAtk.cpp:
   20956 
   20957 2009-04-14  Xan Lopez  <xlopez (a] igalia.com>
   20958 
   20959         Reviewed by Holger Freyther.
   20960 
   20961         https://bugs.webkit.org/show_bug.cgi?id=21546
   20962         [GTK] ATK accessibility enhancements
   20963 
   20964         Also implement text interface for StaticTextRole, which covers
   20965         most of the text in web pages.
   20966 
   20967         * page/gtk/AccessibilityObjectWrapperAtk.cpp:
   20968 
   20969 2009-04-14  Alexey Proskuryakov  <ap (a] webkit.org>
   20970 
   20971         Another Windows build fix.
   20972 
   20973         * platform/network/cf/ResourceHandleCFNet.cpp:
   20974         (WebCore::WebCoreSynchronousLoader::load):
   20975 
   20976 2009-04-14  Alexey Proskuryakov  <ap (a] webkit.org>
   20977 
   20978         Windows build fix.
   20979 
   20980         * platform/network/cf/ResourceHandleCFNet.cpp:
   20981         (WebCore::WebCoreSynchronousLoader::willSendRequest):
   20982         (WebCore::WebCoreSynchronousLoader::didReceiveChallenge):
   20983 
   20984 2009-04-13  Alexey Proskuryakov  <ap (a] webkit.org>
   20985 
   20986         Reviewed by Sam Weinig.
   20987 
   20988         <rdar://problem/6698851> Implement XMLHttpRequest withCredentials attribute
   20989 
   20990         * WebCore.xcodeproj/project.pbxproj: Made ThreadableLoader.h private, as enum definitions
   20991         from it are now used in otehr private headers.
   20992 
   20993         * xml/XMLHttpRequest.h:
   20994         * xml/XMLHttpRequest.idl:
   20995         Added withCredentials attribute. When it is false (default), neither credentials nor cookies
   20996         are sent with cross origin requests, When it is true, those are sent, but the server needs
   20997         to allow handling results via Access-Control-Allow-Credentials header. It was always possible
   20998         to send a cross-site request with credentials via IFRAME or IMG, so this just adds a way to
   20999         read results, as long as the server reports that it's allowed.
   21000         Having the default set to false ensures that requests won't fail unexpectedly because of
   21001         stored credentials and cookies for other resources in the target protection space.
   21002 
   21003         * xml/XMLHttpRequest.cpp:
   21004         (WebCore::XMLHttpRequest::loadRequestSynchronously): Allow stored credentials for same origin
   21005         requests, and for cross origin ones that have withCredentials attribute set. Such code already
   21006         existed for cookies (but it's simpler, because we could just set a ResourceRequest flag).
   21007         (WebCore::XMLHttpRequest::loadRequestAsynchronously): Ditto.
   21008 
   21009         * platform/network/ResourceHandle.h: Added willSendRequest() - just like for other callbacks,
   21010         is is easier to have code in the class. Also, loadResourceSynchronously() now takes a
   21011         StoredCredentials option, matching async case.
   21012 
   21013         * platform/network/ResourceHandleClient.h:
   21014         (WebCore::ResourceHandleClient::receivedCredential): Removed. This method could never be
   21015         called, and no client used it.
   21016         (WebCore::ResourceHandleClient::receivedRequestToContinueWithoutCredential): Ditto.
   21017 
   21018         * platform/network/ResourceHandleInternal.h:
   21019         (WebCore::ResourceHandleInternal::ResourceHandleInternal): Split username and password out
   21020         of request URL. We want to always get a callback for credentials to manage them in WebCore,
   21021         so network back-end shouldn't see them too early.
   21022 
   21023         * platform/network/ResourceRequestBase.cpp:
   21024         (WebCore::ResourceRequestBase::removeCredentials):
   21025         * platform/network/ResourceRequestBase.h:
   21026         Added a removeCredentials() method that removes login and password parts from request URL.
   21027 
   21028         * platform/network/mac/ResourceHandleMac.mm:
   21029         (WebCoreCredentialStorage): Added a simple storage class for per-session credentials.
   21030         (WebCore::ResourceHandle::loadResourceSynchronously): Pass allowStoredCredentials through.
   21031         (WebCore::ResourceHandle::willSendRequest): On a redirect, credentials should be replaced.
   21032         (WebCore::ResourceHandle::didReceiveAuthenticationChallenge): Try credentials from the URL
   21033         and per-session credentials. Code was partially moved from Obj-C callback.
   21034         (WebCore::ResourceHandle::receivedCredential): Intercept per-session credentials and store
   21035         them in WebCore storage.
   21036         (-[WebCoreResourceHandleAsDelegate connection:willSendRequest:redirectResponse:]): Don't
   21037         store the redirected URL - we only needed credentials, which are now stored separately.
   21038         (-[WebCoreResourceHandleAsDelegate connection:didReceiveAuthenticationChallenge:]): Removed
   21039         code that was setting credentials from URL. First, the code is now in ResourceHandle, and
   21040         also, it wasn't actually needed in Leopard release before this patch, see <rdar://problem/5298142>.
   21041         (-[WebCoreSynchronousLoader dealloc]): Release credentials. Note that unlike ResourceHandle,
   21042         this class still needs to track URL for checking whether a redirect is allowed. This is
   21043         not a great solution, and we should unify client code to use the same checks in sync and
   21044         async cases.
   21045         (-[WebCoreSynchronousLoader connection:willSendRequest:redirectResponse:]): Just like in
   21046         async case, put credentials aside to ensure that network back-end asks for them.
   21047         (-[WebCoreSynchronousLoader connection:didReceiveAuthenticationChallenge:]): Use credentials
   21048         from URL, or from WebCore storage.
   21049         (-[WebCoreSynchronousLoader connectionShouldUseCredentialStorage:]): Don't use stored
   21050         credentials when not allowed to.
   21051         (+[WebCoreSynchronousLoader loadRequest:allowStoredCredentials:returningResponse:error:]):
   21052         Put credentials aside to ensure that network back-end asks for them.
   21053 
   21054         * platform/network/cf/ResourceHandleCFNet.cpp:
   21055         (WebCore::WebCoreCredentialStorage::set):
   21056         (WebCore::WebCoreCredentialStorage::get):
   21057         (WebCore::willSendRequest):
   21058         (WebCore::ResourceHandle::start):
   21059         (WebCore::ResourceHandle::willSendRequest):
   21060         (WebCore::ResourceHandle::didReceiveAuthenticationChallenge):
   21061         (WebCore::ResourceHandle::receivedCredential):
   21062         (WebCore::ResourceHandle::loadResourceSynchronously):
   21063         (WebCore::WebCoreSynchronousLoader::willSendRequest):
   21064         (WebCore::WebCoreSynchronousLoader::didReceiveChallenge):
   21065         (WebCore::WebCoreSynchronousLoader::shouldUseCredentialStorage):
   21066         (WebCore::WebCoreSynchronousLoader::load):
   21067         Same changes as in Mac case.
   21068 
   21069         * platform/network/curl/ResourceHandleCurl.cpp:
   21070         (WebCore::ResourceHandle::loadResourceSynchronously):
   21071         * platform/network/qt/ResourceHandleQt.cpp:
   21072         (WebCore::ResourceHandle::loadResourceSynchronously):
   21073         * platform/network/soup/ResourceHandleSoup.cpp:
   21074         (WebCore::ResourceHandle::loadResourceSynchronously):
   21075         Trying not to break the build.
   21076 
   21077         * dom/XMLTokenizerLibxml2.cpp: (WebCore::openFunc):
   21078         * xml/XSLTProcessor.cpp: (WebCore::docLoaderFunc):
   21079         Unconditionally allow stored credentials for these, as they only support same origin loads.
   21080 
   21081         * workers/WorkerContext.cpp: (WebCore::WorkerContext::importScripts):
   21082         WorkerContext.importScripts() can be cross-origin, but sending credentials with it is no worse
   21083         than sending them with <script src=...>, so this is also unconditionally allowed.
   21084 
   21085         * loader/DocumentThreadableLoader.cpp:
   21086         (WebCore::DocumentThreadableLoader::loadResourceSynchronously): Pass through storedCredentials.
   21087         (WebCore::DocumentThreadableLoader::create): Ditto.
   21088         (WebCore::DocumentThreadableLoader::DocumentThreadableLoader): Save storedCredentials and
   21089         sameOrigin flags foruse in callbacks.
   21090         (WebCore::DocumentThreadableLoader::willSendRequest): Assert that loaders aren't all confused.
   21091         (WebCore::DocumentThreadableLoader::didSendData): Ditto.
   21092         (WebCore::DocumentThreadableLoader::didReceiveResponse): Ditto.
   21093         (WebCore::DocumentThreadableLoader::didReceiveData): Ditto.
   21094         (WebCore::DocumentThreadableLoader::didFinishLoading): Ditto.
   21095         (WebCore::DocumentThreadableLoader::didFail): Ditto.
   21096         (WebCore::DocumentThreadableLoader::getShouldUseCredentialStorage): Don't use credential
   21097         storage if that's not allowed by the code that invoked DocumentThreadableLoader.
   21098         (WebCore::DocumentThreadableLoader::didReceiveAuthenticationChallenge): Simulate a failure
   21099         and cancel the request if we are about to ask the user for credentials for a cross-origin
   21100         request, which is forbidden by CORS (and would have been very confusing if allowed).
   21101         (WebCore::DocumentThreadableLoader::receivedCancellation): Assert that loaders aren't all confused.
   21102 
   21103         * loader/DocumentThreadableLoader.h: Updated for the new flags (storedCredentials and
   21104         sameOrigin) that affect the loader. Eventually, we need to move all CORS logic from XHR here.
   21105 
   21106         * loader/ThreadableLoader.h: (StoredCredentials): Added another flag that affects loader
   21107         behavior. We should combine all of these into a structure, and use it for sync requests, too.
   21108 
   21109         * loader/FrameLoader.cpp: (WebCore::FrameLoader::loadResourceSynchronously):
   21110         * loader/FrameLoader.h:
   21111         * loader/ThreadableLoader.cpp:
   21112         (WebCore::ThreadableLoader::create):
   21113         (WebCore::ThreadableLoader::loadResourceSynchronously):
   21114         * loader/WorkerThreadableLoader.cpp:
   21115         (WebCore::WorkerThreadableLoader::WorkerThreadableLoader):
   21116         (WebCore::WorkerThreadableLoader::loadResourceSynchronously):
   21117         (WebCore::WorkerThreadableLoader::MainThreadBridge::MainThreadBridge):
   21118         (WebCore::WorkerThreadableLoader::MainThreadBridge::mainThreadCreateLoader):
   21119         * loader/WorkerThreadableLoader.h:
   21120         (WebCore::WorkerThreadableLoader::create):
   21121         Pass through storedCredentials.
   21122 
   21123 2009-04-13  David Hyatt  <hyatt (a] apple.com>
   21124 
   21125         Reviewed by Cameron Zwarich.
   21126 
   21127         Remove an outdated comment in ScrollView.h
   21128 
   21129         * platform/ScrollView.h:
   21130 
   21131 2009-04-13  Eric Carlson  <eric.carlson (a] apple.com>
   21132 
   21133         Reviewed by Mark Rowe.
   21134 
   21135         https://bugs.webkit.org/show_bug.cgi?id=25177
   21136 
   21137         QTTrack's -media method always return NULL in 64-bit QTKit, so
   21138         MediaPlayerPrivate::disableUnsupportedTracks should use 
   21139         QTTrackMediaTypeAttribute to get a track's type.
   21140 
   21141         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   21142         (WebCore::MediaPlayerPrivate::disableUnsupportedTracks):
   21143 
   21144 2009-04-13  Geoffrey Garen  <ggaren (a] apple.com>
   21145 
   21146         Reviewed by Cameron Zwarich.
   21147 
   21148         More fix for https://bugs.webkit.org/show_bug.cgi?id=21260
   21149         Unbounded memory growth when churning elements with anonymous event handler functions
   21150 
   21151         Stop using protected event listeners on the window object.
   21152 
   21153         * bindings/js/JSDOMWindowCustom.cpp:
   21154         (WebCore::JSDOMWindow::mark): Mark our event listeners, since they're
   21155         no longer protected.
   21156 
   21157         (WebCore::JSDOMWindow::addEventListener):
   21158         (WebCore::JSDOMWindow::removeEventListener): Create unprotected event
   21159         listeners, since we mark them now.
   21160 
   21161         * bindings/js/JSEventListener.h: Made some functions public so
   21162         DOMWindow could call them.
   21163 
   21164         * bindings/js/JSNodeCustom.cpp: Moved markEventListeners to a header,
   21165         so it could be shared.
   21166 
   21167         * bindings/scripts/CodeGeneratorJS.pm: Generate event listener marking
   21168         and invalidating code for the DOMWindow.
   21169 
   21170         * dom/RegisteredEventListener.h:
   21171         (WebCore::markEventListeners):
   21172         (WebCore::invalidateEventListeners): Added helper functions.
   21173 
   21174         * page/DOMWindow.idl: Make the window's event listener attributes not
   21175         protected.
   21176 
   21177 2009-04-13  Eric Carlson  <eric.carlson (a] apple.com>
   21178 
   21179         Reviewed by Mark Rowe.
   21180         
   21181         https://bugs.webkit.org/show_bug.cgi?id=25155
   21182 
   21183         OS X standalone media documents should not switch from <video> to <embed> when 
   21184         QTKit load state is QTMovieLoadStateLoading as that happens frequently when a loading
   21185         with a slow network connection or when a movie is not saved fast-start.
   21186 
   21187         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   21188         (WebCore::MediaPlayerPrivate::updateStates): Don't open movie with plug-in when QTKit's
   21189         loadstate is QTMovieLoadStateLoading, wait until it drops below QTMovieLoadStateError.
   21190 
   21191 2009-04-13  Dmitry Titov  <dimich (a] chromium.org>
   21192 
   21193         Reviewed by Darin Adler.
   21194 
   21195         https://bugs.webkit.org/show_bug.cgi?id=24453
   21196         REGRESSION: If setTimeout is called on a iframe's window, the DOM changes to
   21197         the main document that timer callback makes are not flushed.
   21198 
   21199         * bindings/js/ScheduledAction.cpp:
   21200         (WebCore::ScheduledAction::execute):
   21201         Use Document::updateStyleForAllDocuments() instead of document->updateStyleIfNeeded()
   21202         since timers may affect documents other then their own.
   21203 
   21204 2009-04-13  Gustavo Noronha Silva  <gustavo.noronha (a] collabora.co.uk>
   21205 
   21206         Reviewed by David Hyatt.
   21207 
   21208         Check document for nullity to avoid crashing on GTK+, when
   21209         creating the WebView.
   21210 
   21211         * page/FrameView.cpp:
   21212         (WebCore::FrameView::needsLayout):
   21213 
   21214 2009-04-13  Ada Chan  <adachan (a] apple.com>
   21215 
   21216         Forgot to capitalize the "US".
   21217 
   21218         * platform/text/win/TextBreakIteratorInternalICUWin.cpp:
   21219         (WebCore::currentTextBreakLocaleID):
   21220 
   21221 2009-04-13  Ada Chan  <adachan (a] apple.com>
   21222 
   21223         <rdar://problem/6564956> URL field double-click selects entire domain, rather than single word or entire URL
   21224         Revert back to the old word breaking behavior by using en_US_POSIX locale.        
   21225 
   21226         Reviewed by Steve Falkenburg.
   21227 
   21228         * platform/text/win/TextBreakIteratorInternalICUWin.cpp:
   21229         (WebCore::currentTextBreakLocaleID):
   21230 
   21231 2009-04-13  Darin Adler  <darin (a] apple.com>
   21232 
   21233         Reviewed by Dan Bernstein.
   21234 
   21235         * platform/cf/BinaryPropertyList.cpp: Added comment.
   21236         * platform/cf/BinaryPropertyList.h: Fixed mistakes in comments.
   21237 
   21238 2009-04-13  Darin Adler  <darin (a] apple.com>
   21239 
   21240         Reviewed by Dan Bernstein.
   21241 
   21242         Bug 25158: hit testing doesn't work right in some cases involving anonymous blocks
   21243         https://bugs.webkit.org/show_bug.cgi?id=25158
   21244         rdar://problem/6769693
   21245 
   21246         Test: editing/selection/click-after-nested-block.html
   21247 
   21248         * rendering/RenderBlock.cpp:
   21249         (WebCore::isChildHitTestCandidate): Added. Helper so the two loops in positionForPoint
   21250         can share code.
   21251         (WebCore::RenderBlock::positionForPoint): Removed unneeded special case for first
   21252         child box. Changed special case for last child box to propertly handle the various
   21253         types of child box that are not hit test candidates (the same ones already handled
   21254         by the hit test loop below), adding in a loop so we find the last candidate.
   21255 
   21256 2009-04-13  David Hyatt  <hyatt (a] apple.com>
   21257 
   21258         Reviewed by Sam Weinig.
   21259 
   21260         Fix for https://bugs.webkit.org/show_bug.cgi?id=25125.  Rework scrolling so that a layout happens first when
   21261         it's already needed so that the code doesn't end up making bad decisions based off invalid document sizes.
   21262 
   21263         * WebCore.base.exp:
   21264         * page/FrameView.h:
   21265         (WebCore::FrameView::visibleContentsResized):
   21266         * platform/ScrollView.cpp:
   21267         (WebCore::ScrollView::ScrollView):
   21268         (WebCore::ScrollView::updateScrollbars):
   21269         * platform/ScrollView.h:
   21270 
   21271 2009-04-13  Adam Roben  <aroben (a] apple.com>
   21272 
   21273         Add SharedBuffer::wrapCFData
   21274 
   21275         This is the CF-equivalent of wrapNSData.
   21276 
   21277         Reviewed by Brady Eidson.
   21278 
   21279         * platform/SharedBuffer.h:
   21280         * platform/cf/SharedBufferCF.cpp:
   21281         (WebCore::SharedBuffer::wrapCFData):
   21282 
   21283 2009-04-13  Dan Bernstein  <mitz (a] apple.com>
   21284 
   21285         - build fix
   21286 
   21287         * page/EventHandler.cpp:
   21288         (WebCore::documentPointForWindowPoint):
   21289 
   21290 2009-04-13  Antti Koivisto  <antti (a] apple.com>
   21291 
   21292         Reviewed by Darin Adler.
   21293 
   21294         <rdar://problem/6740294> Increase the connection count per host
   21295         
   21296         Try to use six connections per host if possible.
   21297 
   21298         * WebCore.base.exp:
   21299         * loader/loader.cpp:
   21300         (WebCore::Loader::Loader):
   21301         * platform/mac/WebCoreSystemInterface.h:
   21302         * platform/mac/WebCoreSystemInterface.mm:
   21303         * platform/network/ResourceRequestBase.cpp:
   21304         (WebCore::initMaximumHTTPConnectionCountPerHost):
   21305         * platform/network/ResourceRequestBase.h:
   21306         * platform/network/mac/ResourceRequestMac.mm:
   21307         (WebCore::initMaximumHTTPConnectionCountPerHost):
   21308 
   21309 2009-04-13  Justin Garcia  <justin.garcia (a] apple.com>
   21310 
   21311         Reviewed by Adele Peterson.
   21312 
   21313         https://bugs.webkit.org/show_bug.cgi?id=25153
   21314         Can't place the caret into text field that scrolls the window on focus
   21315         
   21316         We refetch the target node in the shadow node case, and when we do so the window coordinate for the mouse event may
   21317         be invalid because of scrolling that the focus handler did.  Cache the document point (that we derived from the window
   21318         coordinate) and use that any time we refetch.
   21319 
   21320         * page/EventHandler.cpp:
   21321         (WebCore::documentPointForWindowPoint):
   21322         (WebCore::EventHandler::handleMousePressEvent):
   21323         (WebCore::EventHandler::prepareMouseEvent):
   21324 
   21325 2009-04-13  Sam Weinig  <sam (a] webkit.org>
   21326 
   21327         Reviewed by Geoffrey Garen.
   21328 
   21329         Rename JavaScriptCanOpenWindowsAutomatically to javaScriptCanOpenWindowsAutomatically
   21330         to conform to our style guidelines.
   21331 
   21332         * page/DOMWindow.cpp:
   21333         (WebCore::DOMWindow::allowPopUp):
   21334         * page/Settings.h:
   21335         (WebCore::Settings::javaScriptCanOpenWindowsAutomatically):
   21336 
   21337 2009-04-13  Geoffrey Garen  <ggaren (a] apple.com>
   21338 
   21339         Mac build fix: Made another header private.
   21340 
   21341         * WebCore.xcodeproj/project.pbxproj:
   21342 
   21343 2009-04-13  Jian Li  <jianli (a] chromium.org>
   21344 
   21345         Reviewed by Darin Fisher.
   21346 
   21347         https://bugs.webkit.org/show_bug.cgi?id=25121
   21348         Upstream changes to handle error messages from V8 when running worker script.
   21349 
   21350         * bindings/v8/WorkerContextExecutionProxy.cpp:
   21351         (WebCore::reportFatalErrorInV8):
   21352         (WebCore::handleConsoleMessage):
   21353         (WebCore::WorkerContextExecutionProxy::WorkerContextExecutionProxy):
   21354         (WebCore::WorkerContextExecutionProxy::dispose):
   21355         (WebCore::WorkerContextExecutionProxy::initV8IfNeeded):
   21356         (WebCore::WorkerContextExecutionProxy::initContextIfNeeded):
   21357         (WebCore::WorkerContextExecutionProxy::evaluate):
   21358         * bindings/v8/WorkerContextExecutionProxy.h:
   21359 
   21360 2009-04-13  Geoffrey Garen  <ggaren (a] apple.com>
   21361 
   21362         Build fix: Made setInlineEventListenerForType not inline, since Document
   21363         calls it now. Made RegisteredEventListener.h a private header on Mac,
   21364         so WebKit can use it.
   21365 
   21366         * page/DOMWindow.cpp:
   21367         (WebCore::DOMWindow::setInlineEventListenerForType):
   21368 
   21369 2009-04-13  Dan Bernstein  <mitz (a] apple.com>
   21370 
   21371         Reviewed by Sam Weinig.
   21372 
   21373         - fix <rdar://problem/6404439> REGRESSION: Overlapping text and other
   21374           layout issues in View Sample feature of MYOB FIrstEdge v3
   21375 
   21376         * page/Navigator.cpp:
   21377         (WebCore::shouldHideFourDot): Added "tdqm_loader.js" to the list of
   21378         JavaScript files this quirk applies to.
   21379 
   21380 2009-04-13  Sam Weinig  <sam (a] webkit.org>
   21381 
   21382         Reviewed by Oliver Hunt.
   21383 
   21384         Move open and showModalDialog functions out of JSDOMWindowBase
   21385         and into JSDOMWindow by partially generating them.
   21386 
   21387         This slightly changes the behavior of getting window.showModalDialog
   21388         when the embedding app does not support it to return undefined regardless
   21389         of shadowing.  This should not be an issue in a practice, but will be addressed
   21390         when we add a generic way to handle runtime specialization of property
   21391         access.
   21392 
   21393         * DerivedSources.make: Remove JSDOMWindowBase.lut.h
   21394         * WebCore.xcodeproj/project.pbxproj: Ditto.
   21395         * bindings/js/JSDOMWindowBase.cpp:
   21396         (WebCore::):
   21397         (WebCore::JSDOMWindowBase::getOwnPropertySlot): Move canShowModalDialog check from
   21398         here to JSDOMWindow::customGetOwnPropertySlot.
   21399         (WebCore::JSDOMWindowBase::put): Remove dead code.
   21400         * bindings/js/JSDOMWindowCustom.cpp:
   21401         (WebCore::createWindow):
   21402         (WebCore::JSDOMWindow::open):
   21403         (WebCore::JSDOMWindow::showModalDialog):
   21404         * bindings/js/JSDOMWindowCustom.h:
   21405         (WebCore::JSDOMWindow::customGetOwnPropertySlot):
   21406         * page/DOMWindow.cpp:
   21407         (WebCore::DOMWindow::parseModalDialogFeatures): Move from JSDOMWindowBase.
   21408         (WebCore::DOMWindow::allowPopUp): Ditto.
   21409         (WebCore::DOMWindow::canShowModalDialog): Ditto.
   21410         (WebCore::DOMWindow::canShowModalDialogNow): Ditto.
   21411         * page/DOMWindow.h:
   21412         * page/DOMWindow.idl:
   21413 
   21414 2009-04-13  Geoffrey Garen  <ggaren (a] apple.com>
   21415 
   21416         Reviewed by Sam Weinig.
   21417 
   21418         Moved storage for window event listeners into the window object.
   21419 
   21420         * bindings/js/JSDOMWindowCustom.cpp:
   21421         (WebCore::JSDOMWindow::addEventListener):
   21422         (WebCore::JSDOMWindow::removeEventListener): Add / remove window event
   21423         listeners to / from the window object.
   21424 
   21425         * dom/Document.cpp:
   21426         (WebCore::Document::removeAllEventListeners):
   21427         (WebCore::Document::clear):
   21428         (WebCore::Document::setWindowInlineEventListenerForTypeAndAttribute): Moved
   21429         a bunch of code to the DOMWindow class, and left behind a few calls through
   21430         to DOMWindow, to support legacy clients. (Eventually, these will go away, too.)
   21431 
   21432         * dom/Document.h: ditto.
   21433 
   21434         * dom/Node.cpp:
   21435         (WebCore::Node::dispatchGenericEvent):
   21436         (WebCore::Node::dispatchWindowEvent): Dipatch window events on the window
   21437         object, not the document.
   21438 
   21439         * dom/Node.h:
   21440         * dom/RegisteredEventListener.h: Moved RegisteredEventListenerVector
   21441         declaration, since it's required in more places now.
   21442 
   21443         * history/CachedFrame.cpp:
   21444         (WebCore::CachedFrame::clear): Updated for rename. Also, remove event
   21445         listeners before detaching and clearing the document's window pointer,
   21446         since the the document needs its window pointer in order to tell the window
   21447         to clear its event listeners.
   21448 
   21449         * loader/FrameLoader.cpp:
   21450         (WebCore::FrameLoader::stopLoading):
   21451         (WebCore::FrameLoader::canCachePageContainingThisFrame):
   21452         (WebCore::FrameLoader::logCanCacheFrameDecision): Updated for rename, and
   21453         movement of window event listeners into the window.
   21454 
   21455         * loader/ImageDocument.cpp:
   21456         (WebCore::ImageDocument::createDocumentStructure): Updated for movement
   21457         of window event listeners into the window.
   21458 
   21459         * page/DOMWindow.cpp:
   21460         (WebCore::DOMWindow::handleEvent):
   21461         (WebCore::DOMWindow::addEventListener):
   21462         (WebCore::DOMWindow::removeEventListener):
   21463         (WebCore::DOMWindow::removeAllEventListeners):
   21464         (WebCore::DOMWindow::hasEventListener):
   21465         (WebCore::DOMWindow::setInlineEventListenerForType):
   21466         (WebCore::DOMWindow::removeInlineEventListenerForType):
   21467         (WebCore::DOMWindow::inlineEventListenerForType):
   21468         (WebCore::DOMWindow::addPendingFrameUnloadEventCount):
   21469         (WebCore::DOMWindow::removePendingFrameUnloadEventCount):
   21470         (WebCore::DOMWindow::addPendingFrameBeforeUnloadEventCount):
   21471         (WebCore::DOMWindow::removePendingFrameBeforeUnloadEventCount):
   21472         * page/DOMWindow.h: Moved a bunch of code to the DOMWindow class, from the Document.
   21473 
   21474         * page/Frame.cpp:
   21475         (WebCore::Frame::shouldClose): Updated for movement of window event listeners into the window.
   21476 
   21477 2009-04-13  Greg Bolsinga  <bolsinga (a] apple.com>
   21478 
   21479         Reviewed by Sam Weinig.
   21480 
   21481         https://bugs.webkit.org/show_bug.cgi?id=25149
   21482 
   21483         The Geolocation timer needs to start after the UA has granted permission.
   21484 
   21485         * bindings/js/JSGeolocationCustom.cpp: Use PassRefPtr<PositionOptions>
   21486         (WebCore::JSGeolocation::getCurrentPosition):
   21487         (WebCore::JSGeolocation::watchPosition):
   21488         * page/Geolocation.cpp: Add a RefPtr<PositionOptions> so it can be used
   21489         later when the timer is started. Change PositionOptions* to PassRefPtr<PositionOptions>
   21490         where needed.
   21491         (WebCore::Geolocation::GeoNotifier::GeoNotifier):
   21492         (WebCore::Geolocation::GeoNotifier::startTimer):
   21493         (WebCore::Geolocation::getCurrentPosition):
   21494         (WebCore::Geolocation::watchPosition):
   21495         (WebCore::Geolocation::setIsAllowed): Start the timer is the UA allows
   21496         (WebCore::Geolocation::startTimer):
   21497         (WebCore::Geolocation::startTimersForOneShots):
   21498         (WebCore::Geolocation::startTimersForWatchers):
   21499         (WebCore::Geolocation::startTimers):
   21500         * page/Geolocation.h:
   21501         (WebCore::Geolocation::GeoNotifier::create):
   21502 
   21503 2009-04-13  Pamela Greene  <pam (a] chromium.org>
   21504 
   21505         Reviewed by Darin Fisher.
   21506 
   21507         Fix Chromium (V8) build by renaming methods to match changes
   21508         in http://trac.webkit.org/changeset/42377.
   21509 
   21510         https://bugs.webkit.org/show_bug.cgi?id=25141
   21511 
   21512         * bindings/v8/ScheduledAction.cpp:
   21513      (WebCore::ScheduledAction::execute): updateRendering() -> updateStyleIfNeeded()
   21514         * bindings/v8/V8AbstractEventListener.cpp:
   21515         (WebCore::V8AbstractEventListener::handleEvent): updateDocumentsRendering() -> updateStyleForAllDocuments()
   21516 
   21517 2009-04-13  Darin Fisher  <darin (a] chromium.org>
   21518 
   21519         Reviewed by Darin Adler.
   21520 
   21521         https://bugs.webkit.org/show_bug.cgi?id=25136
   21522         CRASH in DocumentLoader::removeSubresourceLoader due to null m_frame
   21523 
   21524         Test: fast/frames/frame-unload-crash.html
   21525 
   21526         * loader/DocumentLoader.cpp:
   21527         (WebCore::DocumentLoader::updateLoading): Added null check of m_frame.
   21528 
   21529 2009-04-13  Sam Weinig  <sam (a] webkit.org>
   21530 
   21531         Reviewed by Tim Hatcher.
   21532 
   21533         Put the MessagePort constructor back in ENABLE_CHANNEL_MESSAGING.
   21534 
   21535         * page/DOMWindow.idl:
   21536 
   21537 2009-04-13  Greg Bolsinga  <bolsinga (a] apple.com>
   21538 
   21539         Fix GTK build break.
   21540 
   21541         * platform/gtk/GeolocationServiceGtk.cpp:
   21542         (WebCore::GeolocationServiceGtk::updatePosition):
   21543 
   21544 2009-04-13  David Hyatt  <hyatt (a] apple.com>
   21545 
   21546         Reviewed by Darin Adler and Dan Bernstein.
   21547 
   21548         Assertion in updateStyleForAllDocuments.  Make sure to unscheduleStyleRecalc when an object goes into
   21549         the page cache.  Disallow scheduling of style recalcs on a document that is already in the page cache.
   21550         Schedule a style recalc if needed when an object comes out of the page cache.
   21551 
   21552         * dom/Document.cpp:
   21553         (WebCore::Document::scheduleStyleRecalc):
   21554         (WebCore::Document::setInPageCache):
   21555 
   21556 2009-04-13  Timothy Hatcher  <timothy (a] apple.com>
   21557 
   21558         Correctly sort (program) scripts in the Scripts panel popup menu.
   21559 
   21560         Reviewed by Ada Chan.
   21561 
   21562         * inspector/front-end/ScriptsPanel.js:
   21563         (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu): Refactor the code
   21564         and sort "(program)" options by the sourceID to maintain some order.
   21565         * inspector/front-end/utilities.js:
   21566         (indexOfObjectInListSortedByFunction): Fix a bug where identical objects would cause
   21567         an incorrect return value that confuses insertionIndexForObjectInListSortedByFunction.
   21568         Just set 'first' and break so the correct result will be returned.
   21569 
   21570 2009-04-13  Greg Bolsinga  <bolsinga (a] apple.com>
   21571 
   21572         Reviewed by Darin Adler.
   21573 
   21574         https://bugs.webkit.org/show_bug.cgi?id=24770
   21575         
   21576         Add custom code for Coordinates that returns null when required by the
   21577         Geolocation spec.
   21578         
   21579         http://dev.w3.org/geo/api/spec-source.html#coordinates
   21580 
   21581         * WebCore.xcodeproj/project.pbxproj:
   21582         * bindings/js/JSCoordinatesCustom.cpp: Added.
   21583         (WebCore::JSCoordinates::altitude): returns null if the value cannot be provided.
   21584         (WebCore::JSCoordinates::altitudeAccuracy): Ditto
   21585         (WebCore::JSCoordinates::heading): Ditto
   21586         (WebCore::JSCoordinates::speed): Ditto
   21587         * page/Coordinates.h:
   21588         (WebCore::Coordinates::create): Add 'canProvide' parameters and values
   21589         (WebCore::Coordinates::canProvideAltitude):
   21590         (WebCore::Coordinates::canProvideAltitudeAccuracy):
   21591         (WebCore::Coordinates::canProvideHeading):
   21592         (WebCore::Coordinates::canProvideSpeed):
   21593         (WebCore::Coordinates::Coordinates):
   21594         * page/Coordinates.idl: specify custom getters
   21595         * platform/mac/GeolocationServiceMac.mm: Set the values correctly if they cannot be provided.
   21596         (-[WebCoreCoreLocationObserver locationManager:didUpdateToLocation:fromLocation:]):
   21597 
   21598 2009-04-13  Adele Peterson  <adele (a] apple.com>
   21599 
   21600         Reviewed by Darin Adler.
   21601 
   21602         Fix for <rdar://problem/5510537> Typing return at start of block quote yields empty quoted line
   21603 
   21604         Test: editing/inserting/5510537.html
   21605 
   21606         * editing/BreakBlockquoteCommand.cpp: (WebCore::BreakBlockquoteCommand::doApply): If the break insertion position
   21607         is at the beginning of the topmost quote, then just insert the <br> before the blockquote.  Otherwise, if the break
   21608         insertion position is at the beginning of any quote, adjust the position so the break comes before the current quote level
   21609         so we don't end up with an empty line in that quote in addition to the new line we're adding with the <br>.
   21610 
   21611 2009-04-11  Darin Adler  <darin (a] apple.com>
   21612 
   21613         Reviewed by Dan Bernstein.
   21614 
   21615         Fix problem when encoding history files with duplicate integer arrays near the end of the file.
   21616         This results in an assertion failure, and if assertions are turned off, corrupted output.
   21617 
   21618         When writing an integer array it's important not to add an object reference to the
   21619         aggregate buffer. The writing of the array does not depend on the aggregate buffer. But,
   21620         more importantly, it's possible this instance integer array is a duplicate and won't be
   21621         written out. If so, there's no guarantee there's enough space in the aggregate buffer to
   21622         store the object references (the references will be ignored). In some cases the aggregate
   21623         buffer can then overrun the data being written; normally this is prevented by the fact that
   21624         the data being written will include a copy of the aggregate buffer.
   21625 
   21626         Also removed a bit of unneeded dead code to handle the integer -1.
   21627 
   21628         * platform/cf/BinaryPropertyList.cpp:
   21629         (WebCore::BinaryPropertyListPlan::BinaryPropertyListPlan): Removed unneeded
   21630         m_integerNegativeOneObjectReference, since property lists support only non-negative integers.
   21631         (WebCore::BinaryPropertyListPlan::writeInteger): Removed support for
   21632         m_integerNegativeOneObjectReference.
   21633         (WebCore::BinaryPropertyListPlan::integerObjectReference): Ditto.
   21634         (WebCore::BinaryPropertyListSerializer::writeIntegerWithoutAddingAggregateObjectReference):
   21635         Added. Factored out most of writeInteger, for use in writeIntegerArray, without calling
   21636         addAggregateObjectReference.
   21637         (WebCore::BinaryPropertyListSerializer::writeInteger): Changed to call the new
   21638         writeIntegerWithoutAddingAggregateObjectReference function.
   21639         (WebCore::BinaryPropertyListSerializer::writeIntegerArray): Call the new
   21640         writeIntegerWithoutAddingAggregateObjectReference function and therefore remove the
   21641         code to save and restore m_currentAggregateBufferByte, which is no longer needed.
   21642 
   21643 2009-04-13  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   21644 
   21645         Unreviewed Qt build fix.
   21646 
   21647         * platform/graphics/qt/FontQt.cpp:
   21648         (WebCore::Font::floatWidthForComplexText):
   21649 
   21650 2009-04-12  Sam Weinig  <sam (a] webkit.org>
   21651 
   21652         Reviewed by Mark Rowe.
   21653 
   21654         Move the event and crypto attributes and the captureEvents and releaseEvents
   21655         functions out of JSDOMWindowBase by partially generating them.
   21656 
   21657         * bindings/js/JSDOMGlobalObject.cpp:
   21658         (WebCore::JSDOMGlobalObject::currentEvent): Make const.
   21659         * bindings/js/JSDOMGlobalObject.h:
   21660         * bindings/js/JSDOMWindowBase.cpp:
   21661         * bindings/js/JSDOMWindowCustom.cpp:
   21662         (WebCore::JSDOMWindow::crypto): Not implemented.
   21663         (WebCore::JSDOMWindow::event):
   21664         (WebCore::JSDOMWindow::captureEvents): Not implemented.
   21665         (WebCore::JSDOMWindow::releaseEvents): Ditto.
   21666         * page/DOMWindow.idl:
   21667 
   21668 2009-04-12  Sam Weinig  <sam (a] webkit.org>
   21669 
   21670         Reviewed by Mark Rowe.
   21671 
   21672         Move more attributes out of JSDOMWindowBase by
   21673         partially generating them.
   21674 
   21675         - Expose the MessagePort constructor.
   21676 
   21677         * bindings/js/JSDOMGlobalObject.h:
   21678         (WebCore::getDOMConstructor):
   21679         * bindings/js/JSDOMWindowBase.cpp:
   21680         (setJSDOMWindowBaseEvent):
   21681         * bindings/js/JSDOMWindowCustom.cpp:
   21682         (WebCore::JSDOMWindow::image):
   21683         (WebCore::JSDOMWindow::option):
   21684         (WebCore::JSDOMWindow::audio):
   21685         (WebCore::JSDOMWindow::webKitPoint):
   21686         (WebCore::JSDOMWindow::webKitCSSMatrix):
   21687         (WebCore::JSDOMWindow::xMLHttpRequest):
   21688         (WebCore::JSDOMWindow::xSLTProcessor):
   21689         (WebCore::JSDOMWindow::messageChannel):
   21690         (WebCore::JSDOMWindow::worker):
   21691         * page/DOMWindow.idl:
   21692 
   21693 2009-04-12  Timothy Hatcher  <timothy (a] apple.com>
   21694 
   21695         A resource's filename is not correct after a redirect in the Inspector.
   21696 
   21697         Reviewed by Dan Bernstein.
   21698 
   21699         * inspector/InspectorResource.cpp:
   21700         (WebCore::InspectorResource::updateScriptObject): Fix a typo in the
   21701         lastPathComponent property name.
   21702 
   21703 2009-04-12  Adele Peterson  <adele (a] apple.com>
   21704 
   21705         Reviewed by Darin Adler.
   21706 
   21707         Test: editing/inserting/6609479-1.html
   21708 
   21709         Follow-up to <rdar://problem/6609479>.
   21710 
   21711         Before my last change, a Mail blockquote would've been broken up earlier, and you would've been guaranteed that the inserted content
   21712         was at the start of a paragraph.  Now we need to check for that explicitly, and only merge the start of the inserted content if it is 
   21713         at the start of a paragraph.
   21714 
   21715         * editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::shouldMergeStart):
   21716 
   21717 2009-04-11  Adele Peterson  <adele (a] apple.com>
   21718 
   21719         Reviewed by Dan Bernstein.
   21720 
   21721         Fix for <rdar://problem/6609479> Pressing return inside a table cell that's inside quoted content will split the table
   21722 
   21723         Test: editing/inserting/6609479.html
   21724 
   21725         Don't break a blockquote if pasting or inserting into a table.
   21726 
   21727         * editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::doApply):
   21728         * editing/TypingCommand.cpp: (WebCore::TypingCommand::insertParagraphSeparatorInQuotedContent):
   21729 
   21730 2009-04-11  Dan Bernstein  <mitz (a] apple.com>
   21731 
   21732         Reviewed by Darin Adler.
   21733 
   21734         - fix <rdar://problem/6643103> Unscaled values from body.scrollHeight
   21735 
   21736         Test: fast/css/zoom-body-scroll.html
   21737 
   21738         Adjust scroll{Left,Top,Width,Height} values for zoom in getters and
   21739         setters.
   21740 
   21741         * html/HTMLBodyElement.cpp:
   21742         (WebCore::adjustForZoom):
   21743         (WebCore::HTMLBodyElement::scrollLeft):
   21744         (WebCore::HTMLBodyElement::setScrollLeft):
   21745         (WebCore::HTMLBodyElement::scrollTop):
   21746         (WebCore::HTMLBodyElement::setScrollTop):
   21747         (WebCore::HTMLBodyElement::scrollHeight):
   21748         (WebCore::HTMLBodyElement::scrollWidth):
   21749 
   21750 2009-04-10  Timothy Hatcher  <timothy (a] apple.com>
   21751 
   21752         Allow page navigation and reload while stopped at a breakpoint.
   21753 
   21754         <rdar://problem/6781108> Having a breakpoint active prevents page reload
   21755 
   21756         Reviewed by Darin Adler.
   21757 
   21758         * inspector/InspectorController.cpp:
   21759         (WebCore::InspectorController::didContinue): Call the resumedScript function.
   21760         * inspector/InspectorController.h: Added didContinue.
   21761         * inspector/JavaScriptDebugListener.h: Ditto.
   21762         * inspector/JavaScriptDebugServer.cpp:
   21763         (WebCore::JavaScriptDebugServer::pauseIfNeeded): Call didContinue on the listeners.
   21764         * inspector/front-end/ScriptsPanel.js:
   21765         (WebInspector.ScriptsPanel.prototype.debuggerResumed): Update the interface and state.
   21766         * inspector/front-end/inspector.js:
   21767         (WebInspector.resumedScript): Call ScriptsPanel.debuggerResumed.
   21768         * loader/FrameLoader.cpp:
   21769         (WebCore::FrameLoader::continueLoadAfterNavigationPolicy): Call resumeDebugger.
   21770 
   21771 2009-04-10  Sam Weinig  <sam (a] webkit.org>
   21772 
   21773         Reviewed by Adele Peterson.
   21774 
   21775         Remove unused include for JSLock.
   21776 
   21777         * page/mac/FrameMac.mm:
   21778 
   21779 2009-04-10  Sam Weinig  <sam (a] webkit.org>
   21780 
   21781         Reviewed by Darin Adler.
   21782 
   21783         Add back the keepAlive timer for after the script execution to
   21784         protect the callers of evaluate, as was part of the original intent
   21785         of timer.
   21786 
   21787         * bindings/js/ScriptController.cpp:
   21788         (WebCore::ScriptController::evaluate):
   21789         * page/mac/FrameMac.mm:
   21790 
   21791 2009-04-10  Chris Marrin  <cmarrin (a] apple.com>
   21792 
   21793         Reviewed by Simon Fraser.
   21794 
   21795         Fixed https://bugs.webkit.org/show_bug.cgi?id=25137
   21796 
   21797         If we reload, the animation controller sticks around and has
   21798         a stale animation time. So the needed delay is computed wrong.
   21799         I added a reset of the animation timer on load.
   21800 
   21801         I did not do a test case because this only happens on reload so I
   21802         couldn't make an automated test. I tried using an iframe and using
   21803         reload() but that doesn't tickle the bug.
   21804 
   21805         * dom/Document.cpp:
   21806         (WebCore::Document::implicitOpen):
   21807 
   21808 2009-04-10  Grace Kloba  <klobag (a] gmail.com>
   21809 
   21810         Reviewed by Darin Adler.
   21811 
   21812         Move WORKERS header files inside ENABLE(WORKERS).
   21813         So if WORKERS is not enabled and the generated files are not generated, the build is still working.
   21814 
   21815         * bindings/js/JSDOMGlobalObject.cpp:
   21816         * bindings/js/JSMessageChannelConstructor.cpp:
   21817         * bindings/js/ScheduledAction.cpp:
   21818 
   21819 2009-04-10  Darin Adler  <darin (a] apple.com>
   21820 
   21821         Reviewed by Brady Eidson.
   21822 
   21823         <rdar://problem/6773515> crash in push_heap inside WebCore when printing
   21824 
   21825         The crash was due to manipulating a timer on a different thread than the one it was created on.
   21826         This adds some diagnostics so we'll catch that kind of mistake immediately.
   21827 
   21828         * platform/Timer.cpp:
   21829         (WebCore::TimerBase::TimerBase): Store the thread identifier in debug versions.
   21830         (WebCore::TimerBase::start): Assert it's the same thread the timer was created on.
   21831         (WebCore::TimerBase::stop): Ditto.
   21832         (WebCore::TimerBase::isActive): Ditto.
   21833         (WebCore::TimerBase::setNextFireTime): Ditto.
   21834 
   21835         * platform/Timer.h: Added the thread identifier data member.
   21836 
   21837 2009-04-10  Chris Marrin  <cmarrin (a] apple.com>
   21838 
   21839         Reviewed by Dan Bernstein
   21840 
   21841         https://bugs.webkit.org/show_bug.cgi?id=25108
   21842 
   21843         If you remove a class with a transition while that transition is running
   21844         the animation timer will continue to fire after the transition is finished.
   21845         This has no visual indication, but it does drain the processor. And in some
   21846         cases it might even cause a glitch in future animations. Unfortunately there
   21847         is no way to test this without putting in printfs.
   21848 
   21849         This happens because the animation logic is never traversed after a transition
   21850         is removed, so we never get a chance to cleanup. So I added cleanup in the logic
   21851         that fires the dispatch of the last style change when the animation finishes.
   21852 
   21853         Test: transitions/remove-transition-style.html
   21854 
   21855         * page/animation/AnimationController.cpp:
   21856         (WebCore::AnimationControllerPrivate::updateStyleIfNeededDispatcherFired):
   21857         * page/animation/CompositeAnimation.cpp:
   21858         (WebCore::CompositeAnimation::updateTransitions):
   21859         (WebCore::CompositeAnimation::animate):
   21860         (WebCore::CompositeAnimation::cleanupFinishedAnimations):
   21861         * page/animation/CompositeAnimation.h:
   21862 
   21863 2009-04-10  Sam Weinig  <sam (a] webkit.org>
   21864 
   21865         Reviewed by Geoffrey Garen.
   21866 
   21867         Fix for <rdar://problem/6648858>
   21868         CrashTracer: [REGRESSION(Safari 4)] 60 crashes in Safari at com.apple.WebCore  WebCore::ScriptController::evaluate + 241
   21869 
   21870         The Frame (and therefore ScriptController) were being destroyed
   21871         during JavaScript execution causing the JSDOMWindowShell to become
   21872         null.
   21873 
   21874         * bindings/js/ScriptController.cpp:
   21875         (WebCore::ScriptController::evaluate): Use a RefPtr to protect the Frame
   21876         instead of the keep-alive timer, since a nested event loop used from with-in 
   21877         JavaScript execution could cause the timer to fire before returning.
   21878 
   21879 2009-04-10  Dimitri Glazkov  <dglazkov (a] chromium.org>
   21880 
   21881         Reviewed by Timothy Hatcher.
   21882 
   21883         https://bugs.webkit.org/show_bug.cgi?id=25133
   21884         Fix an error in InspectorController's bindings, clean up a few header
   21885         includes, make empty object construction in ScriptObject less ambiguous.
   21886 
   21887         * bindings/js/JSInspectorControllerCustom.cpp:
   21888         (WebCore::JSInspectorController::setSetting): Send correct argument from
   21889             the bindings.
   21890         * bindings/js/ScriptObject.cpp:
   21891         (WebCore::ScriptObject::createNew): Added.
   21892         * bindings/js/ScriptObject.h: Removed constructor, added decl for createNew.
   21893         * inspector/ConsoleMessage.cpp: Remove unused header.
   21894         * inspector/ConsoleMessage.h: Ditto.
   21895         * inspector/InspectorResource.cpp:
   21896         (WebCore::createHeadersObject): Changed to use ScriptObject::createNew.
   21897 
   21898 2009-04-10  Chris Marrin  <cmarrin (a] apple.com>
   21899 
   21900         Reviewed by Simon Fraser.
   21901 
   21902         Fixed https://bugs.webkit.org/show_bug.cgi?id=25134
   21903 
   21904         This both fixes a bug where I was not sending in the right time
   21905         to continue the animation and was not recomputing current time
   21906         when coming out of suspend.
   21907 
   21908         * page/animation/AnimationBase.cpp:
   21909         (WebCore::AnimationBase::updateStateMachine):
   21910         * page/animation/AnimationController.cpp:
   21911         (WebCore::AnimationControllerPrivate::suspendAnimations):
   21912         (WebCore::AnimationControllerPrivate::resumeAnimations):
   21913 
   21914 2009-04-10  Adam Roben  <aroben (a] apple.com>
   21915 
   21916         Give Windows's <select> popup menus drop shadows
   21917 
   21918         Rubber-stamped by Steve Falkenburg.
   21919 
   21920         No test possible.
   21921 
   21922         * platform/win/PopupMenuWin.cpp:
   21923         (WebCore::registerPopup): Use the CS_DROPSHADOW window class style.
   21924 
   21925 2009-04-10  Timothy Hatcher  <timothy (a] apple.com>
   21926 
   21927         Fix a bug in the Web Inspector where it would show scripts
   21928         from previous pages when toggling the debugger off and back on.
   21929 
   21930         https://bugs.webkit.org/show_bug.cgi?id=25095
   21931         rdar://problem/6769970
   21932 
   21933         Reviewed by John Sullivan.
   21934 
   21935         * bindings/js/ScriptCachedFrameData.cpp:
   21936         (WebCore::ScriptCachedFrameData::ScriptCachedFrameData): Null out the
   21937         debugger for the scriptController. This balances the attachDebugger
   21938         that was already in ScriptCachedFrameData::restore.
   21939         (WebCore::ScriptCachedFrameData::restore): Clean up an if statement.
   21940         * bindings/js/ScriptController.cpp:
   21941         (WebCore::ScriptController::clearWindowShell): Clear the debugger from
   21942         the current window before setting the new window.
   21943         * inspector/JavaScriptDebugServer.cpp:
   21944         (WebCore::JavaScriptDebugServer::recompileAllJSFunctions): Only accumulate
   21945         source providers for code associated this as the debugger.
   21946 
   21947 2009-04-10  Pierre d'Herbemont  <pdherbemont (a] apple.com>
   21948 
   21949         Reviewed by Adele Peterson.
   21950 
   21951         <rdar://problem/6646998> Avoid starting QTKitServer if possible
   21952         When possible avoid asking QTKit for the MIME types that require QTKitServer
   21953         when running 64-bit.
   21954 
   21955         * WebCore.base.exp: Added new entry point.
   21956 
   21957         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   21958         (WebCore::addFileTypesToCache): Add an NSArray of types to the cache.
   21959         (WebCore::mimeCommonTypesCache): Add all "common" QTKit types to the cache.
   21960         (WebCore::mimeModernTypesCache): Add only "modern" QTKit types to the cache (this list does 
   21961         not start QTKitServer if it is not already running).
   21962         (WebCore::MediaPlayerPrivate::getSupportedTypes): Refactored.
   21963         (WebCore::MediaPlayerPrivate::supportsType): Look in list of "modern" types first to avoid
   21964         starting QTKitServer if possible.
   21965 
   21966         * platform/mac/WebCoreSystemInterface.h: Add wkQTIncludeOnlyModernMediaFileTypes.
   21967         * platform/mac/WebCoreSystemInterface.mm: Ditto.
   21968 
   21969 2009-04-10  Adam Roben  <aroben (a] apple.com>
   21970 
   21971         Turn on window animations for <select> popup menus
   21972 
   21973         We turned these off back when <select> popup menus were partially
   21974         transparent. Now that they're opaque, there's no reason not to
   21975         animate them.
   21976 
   21977         Reviewed by Steve Falkenburg.
   21978 
   21979         No test possible.
   21980 
   21981         * platform/win/PopupMenuWin.cpp:
   21982         (WebCore::PopupMenu::show): Remove the #ifdef that was disabling the
   21983         window animation.
   21984 
   21985 2009-04-10  Dan Bernstein  <mitz (a] apple.com>
   21986 
   21987         Reviewed by Sam Weinig.
   21988 
   21989         - fix a regression from r42379 which made zero-width characters affect
   21990           line height
   21991 
   21992         Test: fixes fast/text/wide-zero-width-space.html
   21993 
   21994         * platform/graphics/mac/FontMacATSUI.mm:
   21995         (WebCore::overrideLayoutOperation): Add to the fallback font list set
   21996         here, and only if the glyph is not zero-width...
   21997         (WebCore::ATSULayoutParameters::initialize): ...instead of doing it
   21998         here. This matches WidthIterator's behavior.
   21999 
   22000 2009-04-10  Darin Fisher  <darin (a] chromium.org>
   22001 
   22002         Fixing build bustage caused by warnings being treated as errors.
   22003         1- A local variable was only be used inside a debug assertion, which
   22004            caused grief for the release build.
   22005         2- Missing initializer for member 'DocumentMarker::activeMatch'
   22006 
   22007         * dom/Document.cpp:
   22008         (WebCore::Document::addMarker):
   22009         (WebCore::Document::setMarkersActive):
   22010 
   22011 2009-04-10  Finnur Thorarinsson  <finnur.webkit (a] gmail.com>
   22012 
   22013         Reviewed by John Sullivan.
   22014 
   22015         Fixing: https://bugs.webkit.org/show_bug.cgi?id=25117
   22016         (TextMatches don't have a concept of active match)
   22017 
   22018         For the ports that use the DocumentMarker as highlighting for FindInPage it is
   22019         useful to have a flag that specifies which marker is active, so it can be drawn
   22020         in a different color.
   22021 
   22022         This allows me to remove the hack to use the SelectionController to highlight
   22023         the active match (in the ChromiumWin port).
   22024 
   22025         * dom/Document.cpp:
   22026         (WebCore::Document::setMarkersActive):
   22027         * dom/Document.h:
   22028         * dom/DocumentMarker.h:
   22029         * rendering/InlineTextBox.cpp:
   22030         (WebCore::InlineTextBox::paintTextMatchMarker):
   22031         * rendering/RenderTheme.cpp:
   22032         (WebCore::RenderTheme::platformActiveTextSearchHighlightColor):
   22033         (WebCore::RenderTheme::platformInactiveTextSearchHighlightColor):
   22034         * rendering/RenderTheme.h:
   22035         * rendering/RenderThemeChromiumWin.cpp:
   22036         (WebCore::RenderThemeChromiumWin::platformActiveSelectionBackgroundColor):
   22037         (WebCore::RenderThemeChromiumWin::platformInactiveSelectionBackgroundColor):
   22038         (WebCore::RenderThemeChromiumWin::platformActiveTextSearchHighlightColor):
   22039         (WebCore::RenderThemeChromiumWin::platformInactiveTextSearchHighlightColor):
   22040         * rendering/RenderThemeChromiumWin.h:
   22041 
   22042 2009-04-10  Pamela Greene  <pam (a] chromium.org>
   22043 
   22044         Reviewed by Dimitri Glazkov.
   22045 
   22046         Build fix for Chromium.
   22047         https://bugs.webkit.org/show_bug.cgi?id=12440
   22048 
   22049         * page/chromium/FrameChromium.cpp:
   22050         (WebCore::computePageRectsForFrame): change docWidth() to overflowWidth()
   22051 
   22052 2009-04-09  David Hyatt  <hyatt (a] apple.com>
   22053 
   22054         Reviewed by Oliver Hunt
   22055 
   22056         Add a timer for style recalc (similar to the one used for scheduling layouts).  For now in order
   22057         to reduce the risk of regressions, I have left in all the synchronous machinery for updating style
   22058         following DOM events and JavaScript timeouts.  Eventually these calls will be removed.
   22059 
   22060         Where the timer will really kick in and be useful is for clients that do style changes from
   22061         Objective-C DOM bindings or that execute JavaScript to manipulate style from the JavaScriptCore C API.
   22062 
   22063         * dom/ContainerNode.cpp:
   22064         (WebCore::ContainerNode::insertBefore):
   22065         (WebCore::ContainerNode::replaceChild):
   22066         (WebCore::ContainerNode::removeChild):
   22067         (WebCore::ContainerNode::appendChild):
   22068         * dom/Document.cpp:
   22069         (WebCore::Document::Document):
   22070         (WebCore::Document::~Document):
   22071         (WebCore::Document::scheduleStyleRecalc):
   22072         (WebCore::Document::unscheduleStyleRecalc):
   22073         (WebCore::Document::styleRecalcTimerFired):
   22074         (WebCore::Document::updateStyleForAllDocuments):
   22075         (WebCore::Document::detach):
   22076         * dom/Document.h:
   22077         * dom/Node.cpp:
   22078         (WebCore::Node::setNeedsStyleRecalc):
   22079         (WebCore::Node::lazyAttach):
   22080 
   22081 2009-04-09  Oliver Hunt  <oliver (a] apple.com>
   22082 
   22083         Reviewed by Gavin Barraclough.
   22084 
   22085         <rdar://problem/6586787> JS debugger does not work in 64-bit
   22086 
   22087         Don't truncate the source id in JSCallFrame
   22088 
   22089         * inspector/JavaScriptCallFrame.h:
   22090 
   22091 2009-04-09  Adam Roben  <aroben (a] apple.com>
   22092 
   22093         Start compiling HistoryPropertyList on Windows
   22094 
   22095         Reviewed by Darin Adler.
   22096 
   22097         * WebCore.vcproj/WebCore.vcproj: Added HistoryPropertyList and its
   22098         dependencies to the project. Copy headers from history/cf to
   22099         $WebKitOutputDir.
   22100         * history/cf/HistoryPropertyList.cpp: Added StringExtras.h so that
   22101         this file will compile on Windows.
   22102 
   22103 2009-04-09  Dan Bernstein  <mitz (a] apple.com>
   22104 
   22105         Reviewed by Dave Hyatt.
   22106 
   22107         - fix <rdar://problem/6166612> Text boxes'metrics should be based on
   22108           the actual fonts used in them, not just the primary font
   22109 
   22110         Covered by many existing layout tests
   22111 
   22112         * platform/graphics/Font.cpp:
   22113         (WebCore::Font::floatWidth): Added a fallbackFonts parameter. If the
   22114         platform supports collecting fallback fonts in its complex font path
   22115         and fallbackFonts is not null, all fallback fonts used for the text run
   22116         will be added to it.
   22117 
   22118         * platform/graphics/Font.h:
   22119         (WebCore::Font::width): Ditto.
   22120 
   22121         * platform/graphics/FontFastPath.cpp:
   22122         (WebCore::Font::glyphDataForCharacter): Removed an unnecessary namespace
   22123         qualifier.
   22124         (WebCore::Font::floatWidthForSimpleText): Added a fallbackFonts
   22125         parameter, which is passed down to WidthIterator.
   22126 
   22127         * platform/graphics/WidthIterator.cpp:
   22128         (WebCore::WidthIterator::WidthIterator): Added a fallbackFonts parameter
   22129         and used it to initialize the m_fallbackFonts member.
   22130         (WebCore::WidthIterator::advance): Track the fonts being used and add
   22131         any fallback fonts to the m_fallbackFonts set. Make sure to only add
   22132         non-small-caps fonts.
   22133 
   22134         * platform/graphics/WidthIterator.h:
   22135 
   22136         * platform/graphics/chromium/FontChromiumWin.cpp:
   22137         (WebCore::Font::canReturnFallbackFontsForComplexText): Added an
   22138         implementation that returns false, meaning this platform's
   22139         implementation of floatWidthForComplexText() does not populate the
   22140         fallbackFonts set.
   22141         (WebCore::Font::floatWidthForComplexText): Updated for the new
   22142         prototype.
   22143 
   22144         * platform/graphics/chromium/FontLinux.cpp: Ditto.
   22145 
   22146         * platform/graphics/gtk/FontGtk.cpp: Ditto.
   22147 
   22148         * platform/graphics/mac/CoreTextController.cpp:
   22149         (WebCore::CoreTextController::CoreTextController): Added a fallbackFonts
   22150         parameter and used it to initialize the m_fallbackFonts member.
   22151         (WebCore::CoreTextController::collectCoreTextRunsForCharacters): Add
   22152         fallback fonts to m_fallbackFonts.
   22153 
   22154         * platform/graphics/mac/CoreTextController.h:
   22155 
   22156         * platform/graphics/mac/FontMac.mm:
   22157         (WebCore::Font::canReturnFallbackFontsForComplexText): Added an
   22158         implementation that returns true, indicating that the Mac
   22159         implementations of floatWidthForComplexText() populate the fallbackFonts
   22160         set.
   22161         * platform/graphics/mac/FontMacATSUI.mm:
   22162         (WebCore::ATSULayoutParameters::ATSULayoutParameters): Added a
   22163         fallbackFonts parameter and used it to initialize the m_fallbackFonts
   22164         member.
   22165         (WebCore::ATSULayoutParameters::initialize): Add fallback fonts to
   22166         m_fallbackFonts.
   22167         (WebCore::Font::floatWidthForComplexText): Added a fallbackFonts
   22168         parameter, which is passed down to ATSULayoutParameters.
   22169 
   22170         * platform/graphics/mac/FontMacCoreText.cpp:
   22171         (WebCore::Font::floatWidthForComplexText): Added a fallbackFonts
   22172         parameter, which is passed down to CoreTextController.
   22173 
   22174         * platform/graphics/win/FontWin.cpp:
   22175         (WebCore::Font::canReturnFallbackFontsForComplexText): Added an
   22176         implementation that returns true, indicating that the
   22177         UniscribeController-based implementations of floatWidthForComplexText()
   22178         populate the fallbackFonts set.
   22179         (WebCore::Font::floatWidthForComplexText): Added a fallbackFonts
   22180         parameter, which is passed down to UniscribeController.
   22181 
   22182         * platform/graphics/win/UniscribeController.cpp:
   22183         (WebCore::UniscribeController::UniscribeController): Added a
   22184         fallbackfonts parameter and used it to initialize m_fallbackFonts.
   22185         (WebCore::UniscribeController::advance): Add fallback fonts to
   22186         m_fallbackFonts.
   22187 
   22188         * platform/graphics/win/UniscribeController.h:
   22189         
   22190         * platform/graphics/wx/FontWx.cpp:
   22191         (WebCore::Font::canReturnFallbackFontsForComplexText): Added an
   22192         implementation that returns false, meaning this platform's
   22193         implementation of floatWidthForComplexText() does not populate the
   22194         fallbackFonts set.
   22195         (WebCore::Font::floatWidthForComplexText): Updated for the new
   22196         prototype.
   22197 
   22198         * rendering/InlineFlowBox.cpp:
   22199         (WebCore::InlineFlowBox::computeLogicalBoxHeights): For an InlineTextBox
   22200         with multiple fonts, compute a common baseline and line height by
   22201         considering all fonts' ascents and descents (and line spacing, if
   22202         applicable).
   22203 
   22204         * rendering/InlineTextBox.cpp:
   22205         (WebCore::InlineTextBox::setFallbackFonts): Added. Temporarily stores
   22206         the set of fallback fonts in a vector.
   22207         (WebCore::InlineTextBox::takeFallbackFonts): Added. Returns the fallback
   22208         fonts previously stored and removes them from storage.
   22209 
   22210         * rendering/InlineTextBox.h:
   22211 
   22212         * rendering/RenderText.cpp:
   22213         (WebCore::RenderText::RenderText): Initialized the
   22214         m_knownNotToUseFallbackFonts to false.
   22215         (WebCore::RenderText::styleDidChange): Reset
   22216         m_knownNotToUseFallbackFonts to false if the style difference is such that
   22217         affects layout.
   22218         (WebCore::RenderText::widthFromCache): Added a fallbackFonts parameter,
   22219         which is passed down to Font::width().
   22220         (WebCore::RenderText::trimmedPrefWidths): Updated for the change to
   22221         widthFromCache().
   22222         (WebCore::RenderText::calcPrefWidths): Made this call a private version
   22223         of calcPrefWidths() that takes a fallbackFonts parameter and set the
   22224         m_knownNotToUseFallbackFonts to true if the set comes back empty.
   22225         The private version passes the fallbackFonts set to widthFromCache().
   22226         (WebCore::RenderText::setText): Reset m_knownNotToUseFallbackFonts to
   22227         false.
   22228         (WebCore::RenderText::createFallbackFontMetricsBox): Added.
   22229         (WebCore::RenderText::width): Added a fallbackFonts parameter, which is
   22230         passed down to calcPrefWidths(), widthFromCache() and Font::width().
   22231         Set m_knownNotToUseFallbackFonts to true when appropriate.
   22232 
   22233         * rendering/RenderText.h:
   22234 
   22235         * rendering/bidi.cpp:
   22236         (WebCore::RenderBlock::constructLine): Added an assertion and a continue
   22237         statement to remove one level of indentation.
   22238         (WebCore::RenderBlock::computeHorizontalPositionsForLine): Temporarily
   22239         store the set of fallback fonts in the InlineTextBox.
   22240         (WebCore::RenderBlock::computeVerticalPositionsForLine): Added an
   22241         assertion.
   22242 
   22243 2009-04-09  David Hyatt  <hyatt (a] apple.com>
   22244 
   22245         Reviewed by Adam Roben
   22246 
   22247         Rename all of the changed()/setChanged()/setDocumentChanged() methods to mention style recalc
   22248         explicitly instead.
   22249 
   22250         * bindings/js/JSCustomPositionCallback.cpp:
   22251         (WebCore::JSCustomPositionCallback::handleEvent):
   22252         * bindings/js/JSCustomPositionErrorCallback.cpp:
   22253         (WebCore::JSCustomPositionErrorCallback::handleEvent):
   22254         * bindings/js/JSCustomSQLStatementCallback.cpp:
   22255         (WebCore::JSCustomSQLStatementCallback::handleEvent):
   22256         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
   22257         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
   22258         * bindings/js/JSCustomSQLTransactionCallback.cpp:
   22259         (WebCore::JSCustomSQLTransactionCallback::handleEvent):
   22260         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
   22261         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
   22262         * bindings/js/JSCustomVoidCallback.cpp:
   22263         (WebCore::JSCustomVoidCallback::handleEvent):
   22264         * bindings/js/JSCustomXPathNSResolver.cpp:
   22265         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
   22266         * bindings/js/JSEventListener.cpp:
   22267         (WebCore::JSAbstractEventListener::handleEvent):
   22268         * bindings/js/ScheduledAction.cpp:
   22269         (WebCore::ScheduledAction::execute):
   22270         * bindings/js/ScriptControllerMac.mm:
   22271         (WebCore::updateStyleIfNeededForBindings):
   22272         (WebCore::ScriptController::initJavaJSBindings):
   22273         * css/CSSMutableStyleDeclaration.cpp:
   22274         (WebCore::CSSMutableStyleDeclaration::removeProperty):
   22275         (WebCore::CSSMutableStyleDeclaration::setNeedsStyleRecalc):
   22276         (WebCore::CSSMutableStyleDeclaration::setProperty):
   22277         (WebCore::CSSMutableStyleDeclaration::setStringProperty):
   22278         (WebCore::CSSMutableStyleDeclaration::setImageProperty):
   22279         (WebCore::CSSMutableStyleDeclaration::parseDeclaration):
   22280         (WebCore::CSSMutableStyleDeclaration::addParsedProperties):
   22281         (WebCore::CSSMutableStyleDeclaration::setCssText):
   22282         (WebCore::CSSMutableStyleDeclaration::merge):
   22283         (WebCore::CSSMutableStyleDeclaration::removePropertiesInSet):
   22284         * css/CSSMutableStyleDeclaration.h:
   22285         * css/CSSStyleSelector.cpp:
   22286         (WebCore::CSSStyleSelector::SelectorChecker::allVisitedStateChanged):
   22287         (WebCore::CSSStyleSelector::SelectorChecker::visitedStateChanged):
   22288         * css/CSSVariablesDeclaration.cpp:
   22289         (WebCore::CSSVariablesDeclaration::removeVariable):
   22290         (WebCore::CSSVariablesDeclaration::setVariable):
   22291         (WebCore::CSSVariablesDeclaration::setNeedsStyleRecalc):
   22292         * css/CSSVariablesDeclaration.h:
   22293         * dom/ContainerNode.cpp:
   22294         (WebCore::ContainerNode::insertBefore):
   22295         (WebCore::ContainerNode::replaceChild):
   22296         (WebCore::ContainerNode::removeChild):
   22297         (WebCore::ContainerNode::appendChild):
   22298         (WebCore::ContainerNode::detach):
   22299         (WebCore::ContainerNode::setFocus):
   22300         (WebCore::ContainerNode::setActive):
   22301         (WebCore::ContainerNode::setHovered):
   22302         * dom/Document.cpp:
   22303         (WebCore::Document::Document):
   22304         (WebCore::Document::~Document):
   22305         (WebCore::Document::scheduleStyleRecalc):
   22306         (WebCore::Document::unscheduleStyleRecalc):
   22307         (WebCore::Document::recalcStyle):
   22308         (WebCore::Document::updateStyleIfNeeded):
   22309         (WebCore::Document::updateStyleForAllDocuments):
   22310         (WebCore::Document::updateLayout):
   22311         (WebCore::Document::implicitClose):
   22312         (WebCore::Document::prepareMouseEvent):
   22313         (WebCore::Document::setFocusedNode):
   22314         (WebCore::Document::setCSSTarget):
   22315         * dom/Document.h:
   22316         * dom/Element.cpp:
   22317         (WebCore::Element::recalcStyle):
   22318         (WebCore::checkForSiblingStyleChanges):
   22319         * dom/InputElement.cpp:
   22320         (WebCore::InputElement::parseMaxLengthAttribute):
   22321         * dom/MouseRelatedEvent.cpp:
   22322         (WebCore::MouseRelatedEvent::receivedTarget):
   22323         * dom/Node.cpp:
   22324         (WebCore::Node::Node):
   22325         (WebCore::Node::setNeedsStyleRecalc):
   22326         (WebCore::Node::lazyAttach):
   22327         (WebCore::Node::dispatchGenericEvent):
   22328         * dom/Node.h:
   22329         (WebCore::Node::needsStyleRecalc):
   22330         (WebCore::Node::childNeedsStyleRecalc):
   22331         (WebCore::Node::setChildNeedsStyleRecalc):
   22332         * dom/OptionElement.cpp:
   22333         (WebCore::OptionElement::setSelectedState):
   22334         * dom/ScriptElement.cpp:
   22335         (WebCore::ScriptElementData::evaluateScript):
   22336         * dom/StyledElement.cpp:
   22337         (WebCore::StyledElement::attributeChanged):
   22338         (WebCore::StyledElement::classAttributeChanged):
   22339         (WebCore::StyledElement::parseMappedAttribute):
   22340         * dom/Text.cpp:
   22341         (WebCore::Text::recalcStyle):
   22342         * dom/XMLTokenizer.cpp:
   22343         (WebCore::XMLTokenizer::insertErrorMessageBlock):
   22344         * editing/DeleteButtonController.cpp:
   22345         (WebCore::DeleteButtonController::enable):
   22346         * editing/Editor.cpp:
   22347         (WebCore::Editor::setBaseWritingDirection):
   22348         * editing/SelectionController.cpp:
   22349         (WebCore::SelectionController::nodeWillBeRemoved):
   22350         (WebCore::SelectionController::layout):
   22351         (WebCore::SelectionController::focusedOrActiveStateChanged):
   22352         * html/HTMLAnchorElement.cpp:
   22353         (WebCore::HTMLAnchorElement::parseMappedAttribute):
   22354         * html/HTMLElement.cpp:
   22355         (WebCore::HTMLElement::setInnerText):
   22356         (WebCore::HTMLElement::isContentEditable):
   22357         (WebCore::HTMLElement::isContentRichlyEditable):
   22358         (WebCore::HTMLElement::contentEditable):
   22359         * html/HTMLEmbedElement.cpp:
   22360         (WebCore::HTMLEmbedElement::updateWidget):
   22361         * html/HTMLFormControlElement.cpp:
   22362         (WebCore::HTMLFormControlElement::parseMappedAttribute):
   22363         * html/HTMLFrameSetElement.cpp:
   22364         (WebCore::HTMLFrameSetElement::parseMappedAttribute):
   22365         (WebCore::HTMLFrameSetElement::recalcStyle):
   22366         * html/HTMLInputElement.cpp:
   22367         (WebCore::HTMLInputElement::parseMappedAttribute):
   22368         (WebCore::HTMLInputElement::setChecked):
   22369         (WebCore::HTMLInputElement::setIndeterminate):
   22370         (WebCore::HTMLInputElement::setValue):
   22371         (WebCore::HTMLInputElement::setAutofilled):
   22372         * html/HTMLMediaElement.cpp:
   22373         (WebCore::HTMLMediaElement::finishParsingChildren):
   22374         * html/HTMLObjectElement.cpp:
   22375         (WebCore::HTMLObjectElement::updateWidget):
   22376         (WebCore::HTMLObjectElement::finishParsingChildren):
   22377         (WebCore::HTMLObjectElement::childrenChanged):
   22378         * html/HTMLSelectElement.cpp:
   22379         (WebCore::HTMLSelectElement::recalcStyle):
   22380         (WebCore::HTMLSelectElement::restoreState):
   22381         (WebCore::HTMLSelectElement::setRecalcListItems):
   22382         (WebCore::HTMLSelectElement::reset):
   22383         (WebCore::HTMLSelectElement::typeAheadFind):
   22384         * html/HTMLTableElement.cpp:
   22385         (WebCore::setTableCellsChanged):
   22386         (WebCore::HTMLTableElement::parseMappedAttribute):
   22387         * html/HTMLTextAreaElement.cpp:
   22388         (WebCore::HTMLTextAreaElement::setValue):
   22389         * loader/FrameLoader.cpp:
   22390         (WebCore::FrameLoader::stopLoading):
   22391         (WebCore::FrameLoader::executeScript):
   22392         (WebCore::FrameLoader::gotoAnchor):
   22393         * page/DOMWindow.cpp:
   22394         (WebCore::DOMWindow::alert):
   22395         (WebCore::DOMWindow::confirm):
   22396         (WebCore::DOMWindow::prompt):
   22397         * page/EventHandler.cpp:
   22398         (WebCore::EventHandler::hoverTimerFired):
   22399         * page/FrameView.cpp:
   22400         (WebCore::FrameView::layout):
   22401         (WebCore::FrameView::needsLayout):
   22402         * page/animation/AnimationBase.cpp:
   22403         (WebCore::AnimationBase::setNeedsStyleRecalc):
   22404         (WebCore::AnimationBase::updateStateMachine):
   22405         * page/animation/AnimationBase.h:
   22406         * page/animation/AnimationController.cpp:
   22407         (WebCore::AnimationControllerPrivate::AnimationControllerPrivate):
   22408         (WebCore::AnimationControllerPrivate::clear):
   22409         (WebCore::AnimationControllerPrivate::updateAnimationTimer):
   22410         (WebCore::AnimationControllerPrivate::updateStyleIfNeededDispatcherFired):
   22411         (WebCore::AnimationControllerPrivate::startupdateStyleIfNeededDispatcher):
   22412         (WebCore::AnimationControllerPrivate::addEventToDispatch):
   22413         (WebCore::AnimationControllerPrivate::addNodeChangeToDispatch):
   22414         (WebCore::AnimationControllerPrivate::animationTimerFired):
   22415         (WebCore::AnimationControllerPrivate::pauseAnimationAtTime):
   22416         (WebCore::AnimationControllerPrivate::pauseTransitionAtTime):
   22417         (WebCore::AnimationControllerPrivate::addToStartTimeResponseWaitList):
   22418         (WebCore::AnimationController::cancelAnimations):
   22419         * page/animation/AnimationControllerPrivate.h:
   22420         * page/animation/ImplicitAnimation.cpp:
   22421         (WebCore::ImplicitAnimation::sendTransitionEvent):
   22422         * page/animation/KeyframeAnimation.cpp:
   22423         (WebCore::KeyframeAnimation::endAnimation):
   22424         (WebCore::KeyframeAnimation::sendAnimationEvent):
   22425         * rendering/RenderObject.cpp:
   22426         (WebCore::RenderObject::updateDragState):
   22427         * rendering/RenderView.cpp:
   22428         (WebCore::RenderView::selectionBounds):
   22429         * svg/SVGAElement.cpp:
   22430         (WebCore::SVGAElement::svgAttributeChanged):
   22431         * svg/SVGAnimationElement.cpp:
   22432         (WebCore::SVGAnimationElement::setTargetAttributeAnimatedValue):
   22433         * svg/SVGCursorElement.cpp:
   22434         (WebCore::SVGCursorElement::svgAttributeChanged):
   22435         * svg/SVGElementInstance.cpp:
   22436         (WebCore::SVGElementInstance::setNeedsUpdate):
   22437         * svg/SVGForeignObjectElement.cpp:
   22438         (WebCore::addCSSPropertyAndNotifyAttributeMap):
   22439         * svg/SVGStopElement.cpp:
   22440         (WebCore::SVGStopElement::parseMappedAttribute):
   22441         * svg/SVGStyledElement.cpp:
   22442         (WebCore::SVGStyledElement::parseMappedAttribute):
   22443         * svg/SVGUseElement.cpp:
   22444         (WebCore::SVGUseElement::svgAttributeChanged):
   22445         (WebCore::SVGUseElement::childrenChanged):
   22446         (WebCore::SVGUseElement::recalcStyle):
   22447         * svg/animation/SMILTimeContainer.cpp:
   22448         (WebCore::SMILTimeContainer::updateAnimations):
   22449         * wml/WMLAElement.cpp:
   22450         (WebCore::WMLAElement::parseMappedAttribute):
   22451         * wml/WMLInputElement.cpp:
   22452         (WebCore::WMLInputElement::setValue):
   22453         (WebCore::WMLInputElement::parseMappedAttribute):
   22454         * wml/WMLNoopElement.cpp:
   22455         (WebCore::WMLNoopElement::insertedIntoDocument):
   22456 
   22457 2009-04-09  Brett Wilson  <brettw (a] chromium.org>
   22458 
   22459         Reviewed by Darin Fisher.
   22460 
   22461         When there is a shadow set but it specifies "no shadow", clear the
   22462         shadow shader. This will prevent Chromium from thinking there's a
   22463         shadow and using the Skia codepath rather than Windows.
   22464 
   22465         * platform/graphics/skia/GraphicsContextSkia.cpp:
   22466         (WebCore::GraphicsContext::setPlatformShadow):
   22467 
   22468 2009-04-09  Eric Seidel  <eric (a] webkit.org>
   22469 
   22470         Reviewed by Simon Fraser.
   22471 
   22472         Crash when accessing svg.viewport on a detached SVGSVGElement
   22473         https://bugs.webkit.org/show_bug.cgi?id=25105
   22474 
   22475         * svg/SVGSVGElement.cpp:
   22476         (WebCore::SVGSVGElement::isOutermostSVG): return "true" that we are the "outermost" SVG element if we have no parent.  (The spec is unclear as to what behavior we should have in this case, and I doubt anyone cares for now).
   22477 
   22478 2009-04-09  Jian Li  <jianli (a] chromium.org>
   22479 
   22480         Reviewed by Dimitri Glazkov.
   22481 
   22482         https://bugs.webkit.org/show_bug.cgi?id=25084
   22483         Upstream changes to V8 bindings for XHR so that it can work under either DOMWindow or WorkerContext.
   22484 
   22485         * bindings/v8/WorkerContextExecutionProxy.cpp:
   22486         (WebCore::WorkerContextExecutionProxy::dispose):
   22487         (WebCore::WorkerContextExecutionProxy::retrieve):
   22488         (WebCore::WorkerContextExecutionProxy::initContextIfNeeded):
   22489         (WebCore::WorkerContextExecutionProxy::findOrCreateEventListenerHelper):
   22490         (WebCore::WorkerContextExecutionProxy::FindOrCreateEventListener):
   22491         (WebCore::WorkerContextExecutionProxy::findOrCreateObjectEventListener):
   22492         * bindings/v8/WorkerContextExecutionProxy.h:
   22493         * bindings/v8/custom/V8XMLHttpRequestConstructor.cpp:
   22494         (WebCore::CALLBACK_FUNC_DECL):
   22495         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
   22496         (WebCore::getEventListener):
   22497         (WebCore::ACCESSOR_SETTER):
   22498         (WebCore::CALLBACK_FUNC_DECL):
   22499 
   22500 2009-04-09  Darin Adler  <darin (a] apple.com>
   22501 
   22502         Reviewed by Anders Carlsson and Sam Weinig.
   22503 
   22504         Part of <rdar://problem/5438063> Saving history containing 100,000 entries causes pauses of 2s while browsing
   22505 
   22506         Longer term solution is to change the design so Safari doesn't read and write all of history.
   22507         This patch is step one: Do the serializing, which is done on the main thread, much faster.
   22508 
   22509         * WebCore.base.exp: Added new entry points.
   22510         * WebCore.xcodeproj/project.pbxproj: Added new source files.
   22511 
   22512         * history/cf: Added.
   22513 
   22514         * history/cf/HistoryPropertyList.cpp: Added.
   22515         * history/cf/HistoryPropertyList.h: Added. Code to write history files. In the future we'll also
   22516         have code for reading here too.
   22517 
   22518         * platform/cf/BinaryPropertyList.cpp: Added.
   22519         * platform/cf/BinaryPropertyList.h: Added. Code to write binary property list files.
   22520 
   22521 2009-04-09  Simon Fraser  <simon.fraser (a] apple.com>
   22522 
   22523         Reviewed by Antti Koivisto
   22524 
   22525         https://bugs.webkit.org/show_bug.cgi?id=25122
   22526 
   22527         If deferred repainting is active, we need to ensure that there are no repaints
   22528         pending at the end of layoutIfNeededRecursive, which is called just before
   22529         painting via -viewWillDraw.
   22530 
   22531         * page/FrameView.cpp:
   22532         (WebCore::FrameView::layoutIfNeededRecursive):
   22533 
   22534 2009-04-09  John Grabowski  <jrg (a] chromium.org>
   22535 
   22536         Reviewed by Darin Fisher.
   22537 
   22538         https://bugs.webkit.org/show_bug.cgi?id=25117
   22539         Fix Mac Chromium form controls.
   22540 
   22541         * rendering/RenderThemeChromiumMac.mm:
   22542         When rendering native controls in Mac Chromium, use a clean NSGraphicsContext.
   22543         Properly save and restore native graphics context.
   22544         (WebCore::RenderThemeChromiumMac::paintCheckbox):
   22545         (WebCore::RenderThemeChromiumMac::paintRadio):
   22546         (WebCore::RenderThemeChromiumMac::paintMenuList):
   22547         (WebCore::RenderThemeChromiumMac::paintSearchFieldCancelButton):
   22548         (WebCore::RenderThemeChromiumMac::paintSearchFieldResultsDecoration):
   22549         (WebCore::RenderThemeChromiumMac::paintSearchFieldResultsButton):
   22550 
   22551 2009-04-09  Drew Wilson  <atwilson (a] google.com>
   22552 
   22553         Reviewed by Alexey Proskuryakov.
   22554 
   22555         https://bugs.webkit.org/show_bug.cgi?id=25030
   22556         Refactor MessagePort code to enable Chrome to use a MessagePortProxy object
   22557         instead of a real MessagePort for the entangledPort, since it could
   22558         theoretically live in a separate process.
   22559 
   22560         The goal of this refactoring is to remove all assumptions that the object
   22561         representing the entangled port is actually of type MessagePort. All
   22562         operations that were previously directly modifying private MessagePort member
   22563         variables in the entangled port (i.e. entangle(), postMessage()) have been changed
   22564         to invoke functions in the  MessagePortProxy interface instead which will allow
   22565         the Chrome bindings to proxy these calls to another process.
   22566 
   22567         No new layout tests, as this is just a refactoring with no bug fixes
   22568         or new functionality.
   22569 
   22570         * GNUmakefile.am:
   22571         * WebCore.vcproj/WebCore.vcproj:
   22572         * WebCore.xcodeproj/project.pbxproj:
   22573         * bindings/js/JSMessagePortCustom.cpp:
   22574         (WebCore::JSMessagePort::mark):
   22575         * dom/MessagePort.cpp:
   22576         (WebCore::MessagePort::clone):
   22577         (WebCore::MessagePort::postMessage):
   22578         (WebCore::MessagePort::deliverMessage):
   22579         (WebCore::MessagePort::startConversation):
   22580         (WebCore::MessagePort::close):
   22581         (WebCore::MessagePort::entangle):
   22582         (WebCore::MessagePort::unentangle):
   22583         * dom/MessagePort.h:
   22584         (WebCore::MessagePort::entangledPort):
   22585         * dom/MessagePortProxy.h: Added.
   22586         (WebCore::MessagePortProxy::~MessagePortProxy):
   22587 
   22588 2009-04-08  Sam Weinig  <sam (a] webkit.org>
   22589 
   22590         Reviewed by Geoffrey "Big Boy" Garen.
   22591 
   22592         Fix for <rdar://problem/5745677> Possible to stop load during an unload event
   22593         Also fixes https://bugs.webkit.org/show_bug.cgi?id=20605
   22594 
   22595         Tests: fast/events/stop-load-in-unload-handler-using-document-write.html
   22596                fast/events/stop-load-in-unload-handler-using-window-stop.html
   22597 
   22598         Don't allow calling methods that would stop the new load inside the unload
   22599         event.
   22600 
   22601         * loader/FrameLoader.cpp:
   22602         (WebCore::FrameLoader::FrameLoader):
   22603         (WebCore::FrameLoader::stopLoading):
   22604         (WebCore::FrameLoader::stopAllLoaders):
   22605         * loader/FrameLoader.h:
   22606 
   22607 2009-04-09  David Kilzer  <ddkilzer (a] apple.com>
   22608 
   22609         Reinstating <rdar://problem/6718589> Option to turn off SVG DOM Objective-C bindings
   22610 
   22611         Rolled r42345 back in.  The build failure was caused by an
   22612         internal script which had not been updated the same way that
   22613         build-webkit was updated.
   22614 
   22615         * Configurations/WebCore.xcconfig:
   22616         * DerivedSources.make:
   22617         * bindings/objc/DOM.mm:
   22618         (WebCore::createElementClassMap):
   22619         (+[DOMNode _wrapNode:WebCore::]):
   22620         * bindings/objc/DOMCSS.mm:
   22621         (+[DOMCSSValue _wrapCSSValue:WebCore::]):
   22622         * bindings/objc/DOMEvents.mm:
   22623         (+[DOMEvent _wrapEvent:WebCore::]):
   22624         * bindings/objc/DOMInternal.h:
   22625         * bindings/objc/ExceptionHandlers.mm:
   22626         (WebCore::raiseDOMException):
   22627         * html/HTMLEmbedElement.idl:
   22628         * html/HTMLFrameElement.idl:
   22629         * html/HTMLIFrameElement.idl:
   22630         * html/HTMLObjectElement.idl:
   22631 
   22632 2009-04-09  Simon Fraser  <simon.fraser (a] apple.com>
   22633 
   22634         Reviewed by Darin Adler
   22635 
   22636         https://bugs.webkit.org/show_bug.cgi?id=25109
   22637 
   22638         Eliminate CompositeAnimationPrivate, which was a needless level
   22639         of abstraction. Remove the methods like addToStyleAvailableWaitList()
   22640         that simply turn around and call the animation controller.
   22641         
   22642         Rename animationControllerPriv() to animationController().
   22643         Rename willNeedService() to timeToNextService().
   22644 
   22645         * page/animation/AnimationBase.cpp:
   22646         (WebCore::AnimationBase::~AnimationBase):
   22647         (WebCore::AnimationBase::updateStateMachine):
   22648         (WebCore::AnimationBase::timeToNextService):
   22649         (WebCore::AnimationBase::beginAnimationUpdateTime):
   22650         * page/animation/AnimationBase.h:
   22651         * page/animation/AnimationController.cpp:
   22652         (WebCore::AnimationControllerPrivate::updateAnimationTimer):
   22653         * page/animation/CompositeAnimation.cpp:
   22654         (WebCore::CompositeAnimation::~CompositeAnimation):
   22655         (WebCore::CompositeAnimation::clearRenderer):
   22656         (WebCore::CompositeAnimation::updateTransitions):
   22657         (WebCore::CompositeAnimation::updateKeyframeAnimations):
   22658         (WebCore::CompositeAnimation::animate):
   22659         (WebCore::CompositeAnimation::getAnimatedStyle):
   22660         (WebCore::CompositeAnimation::setAnimating):
   22661         (WebCore::CompositeAnimation::timeToNextService):
   22662         (WebCore::CompositeAnimation::getAnimationForProperty):
   22663         (WebCore::CompositeAnimation::cleanupFinishedAnimations):
   22664         (WebCore::CompositeAnimation::suspendAnimations):
   22665         (WebCore::CompositeAnimation::resumeAnimations):
   22666         (WebCore::CompositeAnimation::overrideImplicitAnimations):
   22667         (WebCore::CompositeAnimation::resumeOverriddenImplicitAnimations):
   22668         (WebCore::CompositeAnimation::isAnimatingProperty):
   22669         (WebCore::CompositeAnimation::pauseAnimationAtTime):
   22670         (WebCore::CompositeAnimation::pauseTransitionAtTime):
   22671         (WebCore::CompositeAnimation::numberOfActiveAnimations):
   22672         * page/animation/CompositeAnimation.h:
   22673         (WebCore::CompositeAnimation::animationController):
   22674         (WebCore::CompositeAnimation::isSuspended):
   22675         (WebCore::CompositeAnimation::hasAnimations):
   22676         (WebCore::CompositeAnimation::CompositeAnimation):
   22677         * page/animation/ImplicitAnimation.cpp:
   22678         (WebCore::ImplicitAnimation::sendTransitionEvent):
   22679         (WebCore::ImplicitAnimation::timeToNextService):
   22680         * page/animation/ImplicitAnimation.h:
   22681         * page/animation/KeyframeAnimation.cpp:
   22682         (WebCore::KeyframeAnimation::sendAnimationEvent):
   22683         (WebCore::KeyframeAnimation::timeToNextService):
   22684         * page/animation/KeyframeAnimation.h:
   22685 
   22686 2009-04-09  Alexey Proskuryakov  <ap (a] webkit.org>
   22687 
   22688         Reverting <rdar://problem/6718589> Option to turn off SVG DOM Objective-C bindings.
   22689         It broke Mac build, and I don't know how to fix it.
   22690 
   22691         * Configurations/WebCore.xcconfig:
   22692         * DerivedSources.make:
   22693         * bindings/objc/DOM.mm:
   22694         (WebCore::createElementClassMap):
   22695         (+[DOMNode _wrapNode:WebCore::]):
   22696         * bindings/objc/DOMCSS.mm:
   22697         (+[DOMCSSValue _wrapCSSValue:WebCore::]):
   22698         * bindings/objc/DOMEvents.mm:
   22699         (+[DOMEvent _wrapEvent:WebCore::]):
   22700         * bindings/objc/DOMInternal.h:
   22701         * bindings/objc/ExceptionHandlers.mm:
   22702         (WebCore::raiseDOMException):
   22703         * html/HTMLEmbedElement.idl:
   22704         * html/HTMLFrameElement.idl:
   22705         * html/HTMLIFrameElement.idl:
   22706         * html/HTMLObjectElement.idl:
   22707 
   22708 2009-04-09  Xan Lopez  <xlopez (a] igalia.com>
   22709 
   22710         Unreviewed build fix.
   22711 
   22712         RenderView::docWidth() was made private by r42334. That commit
   22713         changes its usage for overflowWidth(), so do that here too.
   22714 
   22715         * page/PrintContext.cpp:
   22716         (WebCore::PrintContext::computePageRects):
   22717 
   22718 2009-04-09  Xan Lopez  <xlopez (a] igalia.com>
   22719 
   22720         Reviewed by Holger Freyther.
   22721 
   22722         https://bugs.webkit.org/show_bug.cgi?id=21546
   22723         [GTK] ATK accessibility enhancements
   22724 
   22725         Based on a patch by Alp Toker.
   22726 
   22727         Implement AtkObject::ref_state_set. Still quite a few states not
   22728         implemented.
   22729 
   22730         * page/gtk/AccessibilityObjectWrapperAtk.cpp:
   22731 
   22732 2009-04-09  Xan Lopez  <xlopez (a] igalia.com>
   22733 
   22734         Reviewed by Holger Freyther.
   22735 
   22736         https://bugs.webkit.org/show_bug.cgi?id=21546
   22737         [GTK] ATK accessibility enhancements
   22738 
   22739         Based on a patch by Alp Toker.
   22740 
   22741         Move fallback object creation to its own function, as it will be
   22742         used in several places.
   22743 
   22744         * page/gtk/AccessibilityObjectWrapperAtk.cpp:
   22745         (fallbackObject):
   22746 
   22747 2009-04-09  Xan Lopez  <xlopez (a] igalia.com>
   22748 
   22749         Reviewed by Holger Freyther.
   22750 
   22751         https://bugs.webkit.org/show_bug.cgi?id=21546
   22752         [GTK] ATK accessibility enhancements
   22753 
   22754         Based on a patch by Alp Toker.
   22755 
   22756         Move AccessibilityObject methods to their file.
   22757 
   22758         * page/gtk/AccessibilityObjectAtk.cpp:
   22759         (WebCore::AccessibilityObject::wrapper):
   22760         (WebCore::AccessibilityObject::setWrapper):
   22761         * page/gtk/AccessibilityObjectWrapperAtk.cpp:
   22762 
   22763 2009-04-09  Xan Lopez  <xlopez (a] igalia.com>
   22764 
   22765         Reviewed by Holger Freyther.
   22766 
   22767         https://bugs.webkit.org/show_bug.cgi?id=21546
   22768         [GTK] ATK accessibility enhancements
   22769 
   22770         Rework accessibility type generation code, based on Mozilla a11y
   22771         implementation.
   22772 
   22773         Have one base a11y type, and generate derived types that implement
   22774         only the necessary interfaces at runtime, based on the specific
   22775         object we are wrapping. This allows to save a lot of code while
   22776         covering all possible cases.
   22777 
   22778         * page/gtk/AccessibilityObjectWrapperAtk.cpp:
   22779 
   22780 2009-04-09  Eric Seidel  <eric (a] webkit.org>
   22781 
   22782         Reviewed by Oliver Hunt.
   22783 
   22784         Fix document.implementation.createDocument(null, "a:b") not to crash!
   22785         https://bugs.webkit.org/show_bug.cgi?id=25096
   22786 
   22787         Test: fast/dom/DOMImplementation/createDocument-namespace-err.html
   22788 
   22789         * dom/ContainerNode.cpp:
   22790         (WebCore::ContainerNode::addChild): add ASSERT() to give a better crash next time
   22791         * dom/DOMImplementation.cpp:
   22792         (WebCore::DOMImplementation::createDocument): check the exception code before using the result
   22793 
   22794 2009-04-08  Adam Roben  <aroben (a] apple.com>
   22795 
   22796         Make <select>s in application chrome documents match the Vista system
   22797         dialog look
   22798 
   22799         Reviewed by Dave Hyatt.
   22800 
   22801         * rendering/RenderThemeWin.cpp:
   22802         (WebCore::documentIsInApplicationChromeMode): Added this simple helper
   22803         function.
   22804         (WebCore::RenderThemeWin::getThemeData): In application chrome mode,
   22805         the drop down button never uses any look but the "normal" look.
   22806         (WebCore::RenderThemeWin::paintMenuList): In application chrome mode,
   22807         use the "readonly" style to match system dialogs.
   22808 
   22809 2009-04-08  Adam Roben  <aroben (a] apple.com>
   22810 
   22811         Fix <rdar://6592515> Crash closing tab with Top Sites or Cover Flow
   22812         showing after clicking "Go Back" in phishing alert
   22813 
   22814         RenderButton's m_timer is not stopped when its Document enters the
   22815         page cache. When the WebView was torn down, the timer would fire after
   22816         the Frame's Page had been destroyed, leading to a crash. This patch
   22817         just makes the timer do nothing when it fires. Making the timer not
   22818         fire when in the page cache is covered by bug 25110.
   22819 
   22820         Reviewed by Dave Hyatt.
   22821 
   22822         No test possible.
   22823 
   22824         * rendering/RenderButton.cpp:
   22825         (WebCore::RenderButton::timerFired): Do nothing when we're in the page
   22826         cache.
   22827 
   22828 2009-04-09  David Hyatt  <hyatt (a] apple.com>
   22829 
   22830         Reviewed by Adam Roben
   22831 
   22832         Fix bugs where we would mistakenly turn off blitting for iframes if an external paint
   22833         caused the checks to be triggered too early in the loading process of the frame.
   22834 
   22835         * rendering/RenderBoxModelObject.cpp:
   22836         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
   22837 
   22838 2009-04-08  Simon Fraser  <simon.fraser (a] apple.com>
   22839 
   22840         Reviewed by Cameron Zwarich
   22841 
   22842         https://bugs.webkit.org/show_bug.cgi?id=25106
   22843         
   22844         Fix signature of virtual function on AnimationBase so that it matches
   22845         those in the derived classes, by removing unused parameter.
   22846         
   22847         * page/animation/AnimationBase.h:
   22848         (WebCore::AnimationBase::endAnimation):
   22849 
   22850 2009-04-08  David Kilzer  <ddkilzer (a] apple.com>
   22851 
   22852         <rdar://problem/6718589> Option to turn off SVG DOM Objective-C bindings
   22853 
   22854         Reviewed by Darin Adler and Maciej Stachowiak.
   22855 
   22856         Introduce the ENABLE_SVG_DOM_OBJC_BINDINGS feature define so
   22857         that SVG DOM Objective-C bindings may be optionally disabled.
   22858 
   22859         * Configurations/WebCore.xcconfig: Added
   22860         ENABLE_SVG_DOM_OBJC_BINDINGS variable and use it in
   22861         FEATURE_DEFINES and EXCLUDED_SOURCE_FILE_NAMES.  When SVG DOM
   22862         Objective-C bindings are disabled, two generated header files no
   22863         longer exist and none of the generated DOMSVG*.mm files should
   22864         be compiled.
   22865         * DerivedSources.make: All of the WebCore.SVG*.exp files contain
   22866         SVG DOM Objective-C bindings classes, so exclude them unless
   22867         ENABLE_SVG_DOM_OBJC_BINDINGS is set.
   22868         * bindings/objc/DOM.mm: Switched from using ENABLE(SVG) to using
   22869         ENABLE(SVG_DOM_OBJC_BINDINGS).
   22870         (WebCore::createElementClassMap):
   22871         (+[DOMNode _wrapNode:WebCore::]):
   22872         * bindings/objc/DOMCSS.mm: Ditto.
   22873         (+[DOMCSSValue _wrapCSSValue:WebCore::]):
   22874         * bindings/objc/DOMEvents.mm: Ditto.
   22875         (+[DOMEvent _wrapEvent:WebCore::]):
   22876         * bindings/objc/DOMInternal.h: Ditto.
   22877         * bindings/objc/ExceptionHandlers.mm: Added use of
   22878         ENABLE(SVG_DOM_OBJC_BINDINGS).
   22879         (WebCore::raiseDOMException):
   22880         * html/HTMLEmbedElement.idl: Excluded -getSVGDocument method
   22881         in generated Objective-C DOM classes if SVG DOM Objective-C
   22882         bindings are disabled.
   22883         * html/HTMLFrameElement.idl: Ditto.
   22884         * html/HTMLIFrameElement.idl: Ditto.
   22885         * html/HTMLObjectElement.idl: Ditto.
   22886 
   22887 2009-04-08  Dan Bernstein  <mitz (a] apple.com>
   22888 
   22889         Reviewed by Sam Weinig.
   22890 
   22891         - limit the workaround for <rdar://problem/5781372> to Mac OS X versions
   22892           that need it
   22893 
   22894         * platform/mac/WebFontCache.mm:
   22895         (fixUpWeight): Changed this function to be a no-op post-Leopard.
   22896 
   22897 2009-04-08  Dan Bernstein  <mitz (a] apple.com>
   22898 
   22899         Reviewed by Dave Hyatt.
   22900 
   22901         - fix <rdar://problem/6771547> Appending to a RenderText causes all its
   22902           lines to be dirtied
   22903 
   22904         Test: fast/repaint/text-append-dirty-lines.html
   22905 
   22906         * rendering/RenderText.cpp:
   22907         (WebCore::RenderText::setTextWithOffset): If no text boxes intersected
   22908         with or came after the new text, dirty the last root box, since the new
   22909         text may begin there. Having at least one dirty line prevents the
   22910         incorrect dirtying of all lines later during layoutInlineChildren().
   22911 
   22912 2009-04-08  Darin Fisher  <darin (a] chromium.org>
   22913 
   22914         Reviewed by Eric Seidel.
   22915 
   22916         https://bugs.webkit.org/show_bug.cgi?id=25100
   22917 
   22918         Fixes a Chromium-specific crash in WebCore::ImageBuffer::context that
   22919         occurs when rendering semi-transparent RTL text.
   22920 
   22921         Test: fast/text/complex-text-opacity.html
   22922 
   22923         * platform/graphics/chromium/FontChromiumWin.cpp: Handle RTL when computing text bounds.
   22924         (WebCore::TransparencyAwareFontPainter::TransparencyAwareUniscribePainter::estimateTextBounds):
   22925 
   22926 2009-04-08  David Hyatt  <hyatt (a] apple.com>
   22927 
   22928         Reviewed by Beth Dakin
   22929 
   22930         Fix a porting error in my previous patch.  A != was supposed to be an ==.
   22931 
   22932         * platform/ScrollView.cpp:
   22933         (WebCore::ScrollView::updateScrollbars):
   22934 
   22935 2009-04-08  David Hyatt  <hyatt (a] apple.com>
   22936 
   22937         Reviewed by Adam Roben and Darin Adler
   22938 
   22939         Fix for https://bugs.webkit.org/show_bug.cgi?id=12440, repaints inconsistent for
   22940         fixed positioned elements.
   22941 
   22942         Rewrite the updateScrollers method to be more correct in its results.
   22943 
   22944         Test: fast/block/positioning/fixed-positioning-scrollbar-bug.html
   22945 
   22946         * dom/Document.cpp:
   22947         (WebCore::Document::recalcStyle):
   22948         (WebCore::Document::implicitClose):
   22949         * page/FrameView.cpp:
   22950         (WebCore::FrameView::createScrollbar):
   22951         (WebCore::FrameView::layout):
   22952         (WebCore::FrameView::adjustPageHeight):
   22953         * page/FrameView.h:
   22954         * page/win/FrameWin.cpp:
   22955         (WebCore::computePageRectsForFrame):
   22956         * platform/ScrollView.cpp:
   22957         (WebCore::ScrollView::ScrollView):
   22958         (WebCore::ScrollView::updateScrollbars):
   22959         * platform/ScrollView.h:
   22960         * rendering/RenderView.cpp:
   22961         (WebCore::RenderView::layout):
   22962         (WebCore::RenderView::docHeight):
   22963         (WebCore::RenderView::docWidth):
   22964         * rendering/RenderView.h:
   22965 
   22966 2009-04-08  Sam Weinig  <sam (a] webkit.org>
   22967 
   22968         Reviewed by Anders Carlsson.
   22969 
   22970         Fix for <rdar://problem/6226200> Implement Microsoft's X-FRAME-OPTIONS anti-framing defense
   22971 
   22972         Tests: http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-in-body.html
   22973                http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-allow.html
   22974                http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-deny.html
   22975                http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag.html
   22976                http/tests/security/XFrameOptions/x-frame-options-deny.html
   22977                http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-allow.html
   22978                http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-deny.html
   22979 
   22980         * dom/Document.cpp:
   22981         (WebCore::Document::processHttpEquiv): Stop the current load and redirect to about:blank
   22982         if an X-FRAME-OPTIONS <meta> tag http-equiq dictates we should.
   22983         * loader/FrameLoader.cpp:
   22984         (WebCore::FrameLoader::shouldInterruptLoadForXFrameOptions): Add logic to parse
   22985         the X-FRAME-OPTIONS parameter.
   22986         * loader/FrameLoader.h:
   22987         * loader/MainResourceLoader.cpp:
   22988         (WebCore::MainResourceLoader::didReceiveResponse): Stop the current load if framed and
   22989         a X-FRAME-OPTIONS header and its parameter dictate that we should.
   22990 
   22991 2009-04-08  Adam Roben  <aroben (a] apple.com>
   22992 
   22993         Fix http/tests/xmlhttprequest/xmlhttprequest-unsafe-redirect.html on Windows
   22994 
   22995         Reviewed by Sam Weinig.
   22996 
   22997         * platform/network/cf/ResourceHandleCFNet.cpp:
   22998         (WebCore::ResourceHandle::loadResourceSynchronously): Mimic the
   22999         ResourceHandleMac code by propagating the CFError's error code for
   23000         kCFErrorDomainCFNetwork errors to the ResourceResponse.
   23001 
   23002 2009-04-08  Anders Carlsson  <andersca (a] apple.com>
   23003 
   23004         Try to fix the PPC build.
   23005         
   23006         * plugins/npfunctions.h:
   23007 
   23008 2009-04-08  Darin Adler  <darin (a] apple.com>
   23009 
   23010         Reviewed by Sam Weinig.
   23011 
   23012         <rdar://problem/5908616> tokenizer resizer should handle edge cases consistently
   23013 
   23014         * html/HTMLTokenizer.cpp:
   23015         (WebCore::HTMLTokenizer::enlargeBuffer): Handle edge cases the same way as a failed fastMalloc.
   23016         (WebCore::HTMLTokenizer::enlargeScriptBuffer): Ditto.
   23017 
   23018 2009-04-08  David Hyatt  <hyatt (a] apple.com>
   23019 
   23020         Reviewed by Darin Adler
   23021 
   23022         Make sure that cloneNode works with SVG attributes that require synchronization.  This fixes
   23023         issues with <use> element shadow tree cloning where the clones can end up not obtaining the
   23024         correct attribute values.
   23025 
   23026         A subsequent patch of mine will expose this problem and cause it to be covered by existing
   23027         layout tests, so no test is required at this time for this problem.
   23028 
   23029         * dom/Element.cpp:
   23030         (WebCore::Element::cloneElementWithoutChildren):
   23031 
   23032 2009-04-08  Dimitri Glazkov  <dglazkov (a] chromium.org>
   23033 
   23034         Reviewed by Timothy Hatcher.
   23035 
   23036         https://bugs.webkit.org/show_bug.cgi?id=25093
   23037         REGRESSION: some scripts are showing in the Inspector with only "true"
   23038         as the source.
   23039 
   23040         * inspector/InspectorController.cpp:
   23041         (WebCore::InspectorController::didParseSource): Fixed conversion issue.
   23042         (WebCore::InspectorController::failedToParseSource): Ditto.
   23043 
   23044 2009-04-08  Adam Barth  <abarth (a] webkit.org>
   23045 
   23046         Reviewed by Alexey Proskuryakov.
   23047 
   23048         https://bugs.webkit.org/show_bug.cgi?id=24904
   23049 
   23050         Verify the MIME type of stylesheets (in standards mode) by looking
   23051         at the Content-Type header directly.  This bypasses any content
   23052         sniffing that might be confusing the issue.
   23053 
   23054         Test: http/tests/mime/standard-mode-loads-stylesheet-without-content-type-header.html
   23055 
   23056         * loader/CachedCSSStyleSheet.cpp:
   23057         (WebCore::CachedCSSStyleSheet::canUseSheet):
   23058 
   23059 2009-04-08  Eric Carlson  <eric.carlson (a] apple.com>
   23060 
   23061         Reviewed by Simon Fraser.
   23062 
   23063         https://bugs.webkit.org/show_bug.cgi?id=25041
   23064         <rdar://problem/6697754>
   23065         Bug 25041: HTMLMediaElement: OSX autoplay broken by r41907
   23066         
   23067         OSX media player should set readyState to HAVE_ENOUGH_DATA when the movie's load state
   23068         reaches QTMovieLoadStatePlaythroughOK, not when the entire file has been downloaded,
   23069         so autoplay can begin when it should.
   23070 
   23071         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   23072         (WebCore::MediaPlayerPrivate::updateStates): Set readState to 
   23073         HAVE_ENOUGH_DATA when QTMovie load state reaches QTMovieLoadStatePlaythroughOK.
   23074         (WebCore::MediaPlayerPrivate::paint): Add braces missed in r42203.
   23075 
   23076 2009-04-08  Alexey Proskuryakov  <ap (a] webkit.org>
   23077 
   23078         Reviewed by David Kilzer. Based on a patch by Grace Kloba.
   23079 
   23080         https://bugs.webkit.org/show_bug.cgi?id=24656
   23081         cacheControlContainsNoCache() in ResourceResponseBase.h is wrong
   23082 
   23083         * platform/network/ResourceResponseBase.cpp:
   23084         (WebCore::ResourceResponseBase::parseCacheControlDirectives): Removed misused code for
   23085         parsing directive values, fixing parsing of directives that we care about.
   23086 
   23087         * platform/network/ResourceResponseBase.h:
   23088         (WebCore::ResourceResponseBase::cacheControlContainsNoCache): Fixed a copy/paste mistake,
   23089         m_cacheControlContainsMustRevalidate was returned instead of m_cacheControlContainsNoCache.
   23090 
   23091 2009-04-08  Adam Roben  <aroben (a] apple.com>
   23092 
   23093         Make text fields match the system look on Vista
   23094 
   23095         Reviewed by Dave Hyatt.
   23096 
   23097         * rendering/RenderThemeWin.cpp:
   23098         (WebCore::RenderThemeWin::getThemeData): Use the new-to-Vista
   23099         EP_EDITBORDER_NOSCROLL part for text fields.
   23100 
   23101 2009-04-07  Alexey Proskuryakov  <ap (a] webkit.org>
   23102 
   23103         Reviewed by Maciej Stachowiak.
   23104 
   23105         https://bugs.webkit.org/show_bug.cgi?id=24957
   23106         REGRESSION: Google calendar widget no longer shows upcoming events
   23107 
   23108         Test: http/tests/xmlhttprequest/authorization-header.html
   23109 
   23110         * xml/XMLHttpRequest.cpp:
   23111         (WebCore::XMLHttpRequestStaticData::XMLHttpRequestStaticData): Removed Authorization from
   23112         the list of forbidden headers.
   23113 
   23114 2009-04-07  miggilin  <mr.diggilin (a] gmail.com>
   23115 
   23116         Reviewed by Kevin Ollivier.
   23117 
   23118         Remove no longer needed debug warning and Windows-specific codepaths
   23119         (as we now use the Safari/Win port's timer there)
   23120 
   23121         https://bugs.webkit.org/show_bug.cgi?id=25070
   23122 
   23123         * platform/wx/SharedTimerWx.cpp:
   23124         (WebCore::setSharedTimerFireTime):
   23125 
   23126 
   23127 2009-04-07  Adam Roben  <aroben (a] apple.com>
   23128 
   23129         Fix many <video> regression tests on Windows
   23130 
   23131         Reviewed by Dave Hyatt.
   23132 
   23133         * platform/graphics/win/QTMovieWin.cpp:
   23134         (QTMovieWin::getNaturalSize): Call GetMovieNaturalBoundsRect, which
   23135         returns the movie's natural bounds (duh), rather than GetMovieBox,
   23136         which returns the movie's current displayed size/position.
   23137 
   23138 2009-04-07  Brady Eidson  <beidson (a] apple.com>
   23139 
   23140         Reviewed by Darin Adler and Sam Weinig
   23141 
   23142         <rdar://problem/5968249> "Private Browsing" doesn't affect HTML 5 LocalStorage
   23143 
   23144         The expected behavior for persistent storage when private browsing mode is undefined by the spec.
   23145         For now we're going with a "read-only when in private browsing" policy until we can get feedback
   23146         and/or get the behavior specified in the spec.
   23147 
   23148         Note that I purposefully made the change to restrict SessionStorage to read-only, also, with the
   23149         understanding that the spec allows for SessionStorage to persist across relaunches, even though
   23150         our implementation currently doesn't do this.
   23151 
   23152         * dom/DOMCoreException.idl: Add some new ExceptionCodes defined in HTML5, one of which is needed
   23153           for LocalStorage changes (QUOTA_EXCEEDED_ERR)
   23154         * dom/ExceptionCode.cpp: 
   23155         * dom/ExceptionCode.h:
   23156 
   23157         * storage/StorageArea.cpp:
   23158         (WebCore::StorageArea::internalSetItem): If private browsing is enabled, throw the QUOTA_EXCEEDED_ERR
   23159           exception as the spec allows.
   23160         (WebCore::StorageArea::internalRemoveItem): If private browsing is enabled, silently fail to remove
   23161           the item.
   23162         (WebCore::StorageArea::internalClear): If private browsing is enabled, silently fail to clear the area.
   23163 
   23164 2009-04-07  Dean Jackson  <dino (a] apple.com>
   23165 
   23166         Reviewed by Simon Fraser.
   23167 
   23168         <rdar://problem/6148255>
   23169 
   23170         Standalone media documents can not always handle everything
   23171         using a <video> element. In these cases switch to an <embed>
   23172         element that uses the QuickTime plugin, in the hope that it
   23173         will have more luck. Typical media types that trigger this
   23174         are streamed media and QTVR.
   23175 
   23176         Equivalent Windows fix to come once reviewed. Note also that
   23177         this area of code needs a cleanup:
   23178         https://bugs.webkit.org/show_bug.cgi?id=25085
   23179 
   23180         * html/HTMLMediaElement.cpp:
   23181         (WebCore::HTMLMediaElement::mediaPlayerSawUnsupportedTracks):
   23182         * html/HTMLMediaElement.h:
   23183         * loader/MediaDocument.cpp:
   23184         (WebCore::MediaDocument::mediaElementSawUnsupportedTracks):
   23185         (WebCore::MediaDocument::replaceVideoWithEmbed):
   23186         * loader/MediaDocument.h:
   23187             - removes the <video> element and puts in an <embed>
   23188         * platform/graphics/MediaPlayer.h:
   23189         (WebCore::MediaPlayerClient::mediaPlayerSawUnsupportedTracks):
   23190             - new internal method for flagging a problem
   23191         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
   23192         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   23193         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
   23194         (WebCore::MediaPlayerPrivate::updateStates):
   23195             - looks for the types of content we don't handle
   23196         (WebCore::MediaPlayerPrivate::rateChanged):
   23197         (WebCore::MediaPlayerPrivate::sizeChanged):
   23198         (WebCore::MediaPlayerPrivate::timeChanged):
   23199         (WebCore::MediaPlayerPrivate::didEnd):
   23200         (WebCore::MediaPlayerPrivate::disableUnsupportedTracks):
   23201         (WebCore::MediaPlayerPrivate::sawUnsupportedTracks):
   23202             - inform the MediaClient that we have a potential problem
   23203 
   23204 2009-04-07  Dan Bernstein  <mitz (a] apple.com>
   23205 
   23206         Reviewed by Darin Adler.
   23207 
   23208         - fix <rdar://problem/6767428> Resurrect
   23209           +[WebFontCache fontWithFamily:traits:size:] for clients that call it
   23210           directly
   23211 
   23212         WebFontCache is a class in the WebCore framework and is not WebKit API,
   23213         but apparently (perhaps mistakenly) some clients call this private
   23214         interface.
   23215 
   23216         This change resurrects the interface and gives it reasonable behavior
   23217         (however, note that WebCore will not call the old interface, so hacks that
   23218         override it will have no effect on WebKit clients).
   23219 
   23220         * platform/mac/WebFontCache.h:
   23221         * platform/mac/WebFontCache.mm:
   23222         (+[WebFontCache fontWithFamily:traits:size:]): Added. Call through to
   23223         +fontWithFamily:traits:weight:size:.
   23224 
   23225 2009-04-07  David Hyatt  <hyatt (a] apple.com>
   23226 
   23227         Reviewed by Adam Roben
   23228 
   23229         Fix ScrollView's algorithm that determines whether or not to show scrollbars.  There was a bug
   23230         with the method mainly because RenderView will size itself to the viewport's size, making it
   23231         impossible to really know the document's "true" size.
   23232 
   23233         In order to solve this problem ScrollView now has a minimumContentsSize method.  This method
   23234         returns the document size excluding the RenderView from the calculation.  This width/height
   23235         is now cached on RenderView in m_docWidth/m_docHeight member variables.
   23236 
   23237         * WebCore.base.exp:
   23238         * page/FrameView.cpp:
   23239         (WebCore::FrameView::adjustPageHeight):
   23240         (WebCore::FrameView::minimumContentsSize):
   23241         * page/FrameView.h:
   23242         * platform/ScrollView.cpp:
   23243         (WebCore::ScrollView::updateScrollbars):
   23244         * platform/ScrollView.h:
   23245         (WebCore::ScrollView::minimumContentsSize):
   23246         * rendering/RenderView.cpp:
   23247         (WebCore::RenderView::layout):
   23248         (WebCore::RenderView::calcDocHeight):
   23249         (WebCore::RenderView::calcDocWidth):
   23250         * rendering/RenderView.h:
   23251         (WebCore::RenderView::docWidth):
   23252         (WebCore::RenderView::docHeight):
   23253 
   23254 2009-04-07  Dimitri Glazkov  <dglazkov (a] chromium.org>
   23255 
   23256         Build fix, not reviewed.
   23257 
   23258         * WebCore.xcodeproj/project.pbxproj: Made ScriptObject.h private.
   23259 
   23260 2009-04-07  Dimitri Glazkov  <dglazkov (a] chromium.org>
   23261 
   23262         Reviewed by Timothy Hatcher.
   23263 
   23264         https://bugs.webkit.org/show_bug.cgi?id=25063
   23265         Refactor InspectorController to use ScriptObject/State.
   23266 
   23267         * GNUmakefile.am: Added ScriptState.cpp.
   23268         * WebCore.pro: Ditto.
   23269         * WebCore.vcproj/WebCore.vcproj: Ditto.
   23270         * WebCore.xcodeproj/project.pbxproj: Ditto.
   23271         * WebCoreSources.bkl: Ditto.
   23272         * bindings/js/JSInspectorControllerCustom.cpp:
   23273         (WebCore::JSInspectorController::addSourceToFrame): Fixed argument index typo.
   23274         * bindings/js/ScriptFunctionCall.cpp:
   23275         (WebCore::ScriptFunctionCall::call): Added reportExceptions parameter.
   23276         (WebCore::ScriptFunctionCall::construct): Ditto.
   23277         * bindings/js/ScriptFunctionCall.h: Ditto.
   23278         * bindings/js/ScriptObject.cpp:
   23279         (WebCore::handleException): Added exception-reporting heloper.
   23280         (WebCore::ScriptObject::set): Changed to use handleException.
   23281         (WebCore::ScriptGlobalObject::set): Ditto,
   23282         * bindings/js/ScriptObject.cpp: Added ScriptGlobalObject.
   23283         (WebCore::ScriptGlobalObject::set): Added.
   23284         (WebCore::ScriptGlobalObject::getObject): Added.
   23285         * bindings/js/ScriptObject.h: Added ScriptGlobalObject decls.
   23286         (WebCore::ScriptGlobalObject::ScriptGlobalObject): Added.
   23287         * bindings/js/ScriptState.cpp: Added.
   23288         * bindings/js/ScriptState.h: Added scriptStateFromPage decl.
   23289         * inspector/ConsoleMessage.cpp:
   23290         (WebCore::ConsoleMessage::addToConsole): Changed to not report exceptions
   23291             to avoid re-entrancy.
   23292         * inspector/InspectorController.cpp: Refactored to use ScriptState/Object.
   23293         * inspector/InspectorController.h: Ditto.
   23294 
   23295 2009-04-07  Adam Langley  <agl (a] google.com>
   23296 
   23297         Reviewed by Darin Fisher.
   23298 
   23299         https://bugs.webkit.org/show_bug.cgi?id=25083
   23300 
   23301         Skia was previously calculating the leading value incorrectly, leading
   23302         us to add fHeight to get the height of a line of text. Now that Skia
   23303         is calculating fLeading correctly, we can remove fHeight.
   23304 
   23305         This doesn't affect any layout tests.
   23306 
   23307         * platform/graphics/chromium/SimpleFontDataLinux.cpp:
   23308         (WebCore::SimpleFontData::platformInit):
   23309 
   23310 2009-04-07  Brian Weinstein  <bweinstein (a] gmail.com>
   23311 
   23312         Reviewed by Darin Adler.
   23313 
   23314         https://bugs.webkit.org/show_bug.cgi?id=24851
   23315 
   23316         This fix removes the status code from the status message in a ResourceResponse, which allows a few more tests in http to pass.
   23317 
   23318         * platform/network/cf/ResourceResponseCFNet.cpp:
   23319         (WebCore::ResourceResponse::platformLazyInit):
   23320 
   23321 2009-04-07  Adam Langley  <agl (a] google.com>
   23322 
   23323         Reviewed by Darin Fisher.
   23324 
   23325         https://bugs.webkit.org/show_bug.cgi?id=25081
   23326 
   23327         Skia is changing from reporting the XRange to reporting the XMin and
   23328         XMax.  Obviously these are equivalent, but other users of the metrics
   23329         need the two numbers to be separate.
   23330 
   23331         This doesn't affect any layout tests.
   23332 
   23333         * platform/graphics/chromium/SimpleFontDataLinux.cpp:
   23334         (WebCore::SimpleFontData::platformInit):
   23335 
   23336 2009-04-07  Adam Roben  <aroben (a] apple.com>
   23337 
   23338         Make the look of <select>s match the system look on Vista
   23339 
   23340         Reviewed by Dave Hyatt.
   23341 
   23342         * rendering/RenderThemeWin.cpp: Added new constants.
   23343         (WebCore::RenderThemeWin::getThemeData): On Vista, use the
   23344         CP_DROPDOWNBUTTONRIGHT part for drop down buttons.
   23345         (WebCore::RenderThemeWin::paintMenuList): On Vista, use the CP_BORDER
   23346         part to draw the border of <select>s.
   23347         (WebCore::RenderThemeWin::paintMenuListButton): On Vista, outset the
   23348         drop down button to make its border coincide with the <select>'s
   23349         border.
   23350 
   23351 2009-04-07  Adam Roben  <aroben (a] apple.com>
   23352 
   23353         Move isRunningOnVistaOrLater to a shared location
   23354 
   23355         Rubber-stamped in advance by Dave Hyatt.
   23356 
   23357         * WebCore.vcproj/WebCore.vcproj: Added SystemInfo.{cpp,h}, and let VS
   23358         have its way with the rest of the file.
   23359         * platform/win/ScrollbarThemeWin.cpp: Moved isRunningOnVistaOrLater
   23360         from here...
   23361         * platform/win/SystemInfo.cpp: Added.
   23362         (WebCore::isRunningOnVistaOrLater): ...to here.
   23363         * platform/win/SystemInfo.h: Added.
   23364 
   23365 2009-04-07  Paul Godavari  <paul (a] chromium.org>
   23366 
   23367         Reviewed by Darin Fisher.
   23368 
   23369         https://bugs.webkit.org/show_bug.cgi?id=24692
   23370         Enable PopupMenuChromium to handle HTML select popups using native
   23371         cocoa controls on the Mac, all other platforms are unchanged.
   23372 
   23373         We also split out the storage container for the popup menu items
   23374         so that ChromeClientChromium can access them for forwarding to
   23375         the embedding host (Chromium.app or test_shell).
   23376 
   23377         * page/chromium/ChromeClientChromium.h:
   23378         * platform/chromium/PopupMenuChromium.cpp:
   23379         (WebCore::PopupListBox::items):
   23380         (WebCore::PopupContainer::PopupContainer):
   23381         (WebCore::PopupContainer::~PopupContainer):
   23382         (WebCore::PopupContainer::showPopup):
   23383         (WebCore::PopupContainer::showExternal):
   23384         (WebCore::PopupContainer::menuItemHeight):
   23385         (WebCore::popupData):
   23386         (WebCore::PopupListBox::pointToRowIndex):
   23387         (WebCore::PopupListBox::getRowBounds):
   23388         (WebCore::PopupListBox::isSelectableItem):
   23389         (WebCore::PopupListBox::updateFromElement):
   23390         (WebCore::PopupListBox::layout):
   23391         (WebCore::PopupListBox::clear):
   23392         (WebCore::PopupMenu::show):
   23393         * platform/chromium/PopupMenuChromium.h:
   23394         (WebCore::PopupItem::):
   23395         (WebCore::PopupItem::PopupItem):
   23396 
   23397 2009-04-07  Geoffrey Garen  <ggaren (a] apple.com>
   23398 
   23399         Reviewed by Oliver Hunt.
   23400         
   23401         Added some double-checking to event handler marking. Now, when the
   23402         wrapper that's responsible for marking an event handler's JavaScript
   23403         function gets collected, it clears the event handler's JavaScript function
   23404         so we won't dereference it after it's collected.
   23405         
   23406         In theory, we would never dereference a JavaScript event handler after
   23407         its node's wrapper was collected anyway, but it's nice to be safe.
   23408 
   23409         * bindings/js/JSDOMApplicationCacheCustom.cpp:
   23410         (WebCore::JSDOMApplicationCache::mark):
   23411         * bindings/js/JSEventListener.cpp:
   23412         (WebCore::JSEventListener::JSEventListener):
   23413         (WebCore::JSEventListener::jsFunction):
   23414         (WebCore::JSEventListener::invalidateJSFunction):
   23415         (WebCore::JSEventListener::markJSFunction):
   23416         * bindings/js/JSEventListener.h:
   23417         * bindings/js/JSMessagePortCustom.cpp:
   23418         (WebCore::JSMessagePort::mark):
   23419         * bindings/js/JSNodeCustom.cpp:
   23420         (WebCore::markEventListeners):
   23421         * bindings/js/JSWorkerContextCustom.cpp:
   23422         (WebCore::JSWorkerContext::mark):
   23423         * bindings/js/JSWorkerCustom.cpp:
   23424         (WebCore::JSWorker::mark):
   23425         * bindings/js/JSXMLHttpRequestCustom.cpp:
   23426         (WebCore::JSXMLHttpRequest::mark):
   23427         * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
   23428         (WebCore::JSXMLHttpRequestUpload::mark):
   23429         * bindings/scripts/CodeGeneratorJS.pm:
   23430         * dom/EventListener.h:
   23431         (WebCore::EventListener::invalidateJSFunction):
   23432         (WebCore::EventListener::markJSFunction):
   23433         (WebCore::markIfNotNull):
   23434 
   23435 2009-04-07  David Levin  <levin (a] chromium.org>
   23436 
   23437         Build fix.
   23438 
   23439         r44280 undid the change in r42268 that made CookieJar.h private.
   23440         This redoes the change.
   23441 
   23442         * WebCore.xcodeproj/project.pbxproj:
   23443 
   23444 2009-04-07  Jian Li  <jianli (a] chromium.org>
   23445 
   23446         Reviewed by Darin Fisher.
   23447 
   23448         Upstream changes to WorkerContextExecutionProxy for enabling V8 preemption.
   23449         https://bugs.webkit.org/show_bug.cgi?id=25034
   23450 
   23451         * bindings/v8/WorkerContextExecutionProxy.cpp:
   23452         (WebCore::WorkerContextExecutionProxy::evaluate):
   23453 
   23454 2009-04-07  Dan Bernstein  <mitz (a] apple.com>
   23455 
   23456         Reviewed by Darin Adler.
   23457 
   23458         - fix <rdar://problem/6764359> Thai word selection misbehaves for the
   23459           last sentence in the document
   23460 
   23461         Test: editing/selection/thai-word-at-document-end.html
   23462 
   23463         * editing/visible_units.cpp:
   23464             - Added a BoundarySearchContextAvailability enum used to indicate
   23465             whether the caller to a boundary search function may be able to provide
   23466             additional text in the search direction and call again.
   23467             - Added a named type for the boundary search function signature. Changed
   23468             the signature to take a context availability parameter and a boolean
   23469             out parameter indicating whether more context is needed to perform
   23470             the search.
   23471         (WebCore::previousBoundary): If the beginning of the range was reached
   23472             but the last search wanted more context, perform the search again, this
   23473             time indicating that there is no earlier text.
   23474         (WebCore::nextBoundary): Similarly, in the other direction.
   23475         (WebCore::startWordBoundary): Check whether more context may be available
   23476             and ask for more context if needed.
   23477         (WebCore::endWordBoundary): Ditto.
   23478         (WebCore::previousWordPositionBoundary): Ditto.
   23479         (WebCore::nextWordPositionBoundary): Ditto.
   23480         (WebCore::startSentenceBoundary):  Updated signature.
   23481         (WebCore::endSentenceBoundary): Ditto.
   23482         (WebCore::previousSentencePositionBoundary): Ditto.
   23483         (WebCore::nextSentencePositionBoundary): Ditto.
   23484 
   23485 2009-04-07  Geoffrey Garen  <ggaren (a] apple.com>
   23486 
   23487         Rubber stamped by Sam Weinig.
   23488         
   23489         A little renaming:
   23490         
   23491         function => jsFunction
   23492         listener => jsFunction
   23493 
   23494         * bindings/js/JSEventListener.cpp:
   23495         (WebCore::JSAbstractEventListener::handleEvent):
   23496         (WebCore::JSEventListener::JSEventListener):
   23497         (WebCore::JSEventListener::~JSEventListener):
   23498         (WebCore::JSEventListener::jsFunction):
   23499         (WebCore::JSEventListener::mark):
   23500         (WebCore::JSProtectedEventListener::JSProtectedEventListener):
   23501         (WebCore::JSProtectedEventListener::~JSProtectedEventListener):
   23502         (WebCore::JSProtectedEventListener::jsFunction):
   23503         * bindings/js/JSEventListener.h:
   23504         (WebCore::JSProtectedEventListener::create):
   23505         * bindings/js/JSLazyEventListener.cpp:
   23506         (WebCore::JSLazyEventListener::jsFunction):
   23507         (WebCore::JSLazyEventListener::parseCode):
   23508         * dom/EventListener.h:
   23509         (WebCore::EventListener::jsFunction):
   23510 
   23511 2009-04-07  Brady Eidson  <beidson (a] apple.com>
   23512 
   23513         Reviewed by Darin Adler
   23514 
   23515         While working on <rdar://problem/5968249>, noticed some glaring problems with LocalStorage.
   23516 
   23517         * page/DOMWindow.cpp:
   23518         (WebCore::DOMWindow::localStorage): Return the cached m_localStorage object if it exists to 
   23519           avoid creating multiple representations for the same underlying StorageArea.
   23520         * page/DOMWindow.h:
   23521         (WebCore::DOMWindow::optionalLocalStorage): Return m_localStorage, not m_sessionStorage.
   23522 
   23523 2009-04-07  Darin Adler  <darin (a] apple.com>
   23524 
   23525         Roll out incorrect build fix.
   23526 
   23527         * WebCore.NPAPI.exp: Reverted.
   23528 
   23529 2009-04-07  Darin Adler  <darin (a] apple.com>
   23530 
   23531         Another build fix.
   23532 
   23533         * WebCore.NPAPI.exp: Added new functions.
   23534 
   23535 2009-04-07  Anders Carlsson  <andersca (a] apple.com>
   23536 
   23537         Another build fix.
   23538         
   23539         * plugins/npfunctions.h:
   23540 
   23541 2009-04-07  Gustavo Noronha Silva  <gustavo.noronha (a] collabora.co.uk>
   23542 
   23543         Unreviewed build fix. Fix non-Mac builds.
   23544 
   23545         * bridge/npapi.h:
   23546 
   23547 2009-04-07  Simon Fraser  <simon.fraser (a] apple.com>
   23548 
   23549         Reviewed by Dan Bernstein
   23550 
   23551         https://bugs.webkit.org/show_bug.cgi?id=25082
   23552         
   23553         Clean up repaint logic when RenderLayers become and stop being composited.
   23554 
   23555         * rendering/RenderLayer.h:
   23556         * rendering/RenderLayer.cpp:
   23557         (WebCore::RenderLayer::rendererContentChanged):
   23558         (WebCore::RenderLayer::repaintIncludingNonCompositingDescendants):
   23559         New compositing-only method that repaints a layer and all its non-composited descendants.
   23560         Takes a repaintContainer for performance; all the repaints necessarily share the same
   23561         repaintContainer.
   23562 
   23563         * rendering/RenderLayerCompositor.h:
   23564         * rendering/RenderLayerCompositor.cpp:
   23565         (WebCore::RenderLayerCompositor::updateLayerCompositingState):
   23566         Rather than use calculateCompositedBounds() to compute the repaint rect (which gave
   23567         the wrong answer when the composited layer tree was in flux), use the new
   23568         repaintOnCompositingChange() method.
   23569         
   23570         (WebCore::RenderLayerCompositor::repaintOnCompositingChange):
   23571         Call repaintIncludingNonCompositingDescendants(), and if necessary make sure
   23572         that the view/layer drawing synchronization happens.
   23573         
   23574         (WebCore::RenderLayerCompositor::computeCompositingRequirements):
   23575         Do a repaintOnCompositingChange() when a layer is going to be composited. This is
   23576         a good place because we haven't started to change the compositing tree.
   23577         
   23578         (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
   23579         After we've finished updating all the descendant layers, we can do a repaint for
   23580         layers that ceased compositing.
   23581 
   23582 2009-04-07  Simon Fraser  <simon.fraser (a] apple.com>
   23583 
   23584         Reviewed by Dave Hyatt
   23585         
   23586         https://bugs.webkit.org/show_bug.cgi?id=25069
   23587         
   23588         Clean up the accelerated compositing code that determines the format of
   23589         the GraphicsLayer hierarchy, being more explicit about which parts have
   23590         to happen before and after descendant layers have been updated. Also remove
   23591         some unhelpful caching of state.
   23592 
   23593         * dom/Document.cpp:
   23594         (WebCore::Document::recalcStyle):
   23595         Only call updateCompositingLayers() if we know we're not going to be
   23596         doing a layout soon.
   23597         
   23598         * platform/graphics/mac/GraphicsLayerCA.mm:
   23599         (WebCore::GraphicsLayerCA::setDrawsContent):
   23600         Toggling drawsContent from false to true should do a setNeedsDisplay().
   23601         
   23602         * rendering/RenderLayer.cpp:
   23603         (WebCore::RenderLayer::styleChanged):
   23604         updateLayerCompositingState() no longer updates the layer geometry, so
   23605         do that here if we're not going to rebuild layers anyway.
   23606         Also, updateLayerCompositingState() no longer does a setContentsNeedDisplay,
   23607         so do that if the style change indicates that a repaint is required.
   23608         
   23609         * rendering/RenderLayerBacking.h:
   23610         * rendering/RenderLayerBacking.cpp:
   23611         (WebCore::RenderLayerBacking::RenderLayerBacking):
   23612         (WebCore::RenderLayerBacking::updateAfterLayout):
   23613         The 'drawing optimizations' logic has been rolled into updateGraphicsLayerConfiguration()
   23614         and updateGraphicsLayerGeometry().
   23615         
   23616         (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration):
   23617         Group that code that decides what GraphicsLayers are needed into this method,
   23618         which deals with clipping layers and 'direct compositing': images that can be
   23619         rendered via the compositor.
   23620         
   23621         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
   23622         Call setDrawsContent() if updateGraphicsLayerConfiguration() didn't already
   23623         figure it out for image layers.
   23624         
   23625         (WebCore::RenderLayerBacking::isSimpleContainerCompositingLayer):
   23626         Remove the m_simpleCompositingLayerStatusDirty cache indicator, since we just
   23627         computed it every time anyway.
   23628         
   23629         * rendering/RenderLayerCompositor.h:
   23630         * rendering/RenderLayerCompositor.cpp:
   23631         (WebCore::RenderLayerCompositor::updateLayerCompositingState):
   23632         updateGraphicsLayers() was renamed to updateGraphicsLayerConfiguration(),
   23633         which calls clippedByAncestor() etc. itself rather than having everything passed in.
   23634         Repaints are taken care of by styleChanged() and setDrawsContent().
   23635         
   23636         (WebCore::RenderLayerCompositor::calculateCompositedBounds):
   23637         !layer->isComposited() && layer->transform() is a synonym for paintsWithTransform().
   23638         
   23639         (WebCore::RenderLayerCompositor::setCompositingParent):
   23640         No need to call updateGraphicsLayerGeometry() here, because we're going to
   23641         rebuild layers anyway.
   23642         
   23643         (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
   23644         Add comments, and test layerBacking instead of layer->isComposited().
   23645 
   23646 2009-04-07  Anders Carlsson  <andersca (a] apple.com>
   23647 
   23648         Fix build.
   23649         
   23650         * WebCore.base.exp:
   23651 
   23652 2009-04-07  Anders Carlsson  <andersca (a] apple.com>
   23653 
   23654         Reviewed by Sam Weinig.
   23655 
   23656         <rdar://problem/6667001> NPAPI: need NPN_Get/SetValueForURL() and NPN_GetAuthenticationInfo()
   23657         
   23658         * WebCore.base.exp:
   23659         Add symbols needed by WebKit.
   23660         
   23661         * WebCore.xcodeproj/project.pbxproj:
   23662         Make CookieJar a private header.
   23663         
   23664         * bridge/npapi.h:
   23665         Add function definitions.
   23666         
   23667         * plugins/npfunctions.h:
   23668         Fix the NPN_SetValueForURLProcPtr signature.
   23669 
   23670 2009-04-07  Adam Roben  <aroben (a] apple.com>
   23671 
   23672         Fix <rdar://6520933> REGRESSION (3.2.1-ToT): Scroll bar disappears in
   23673         WebView and Bookmarks view after switching theme or turning on High
   23674         Contrast mode
   23675 
   23676         Reviewed by Dave Hyatt.
   23677 
   23678         * platform/win/ScrollbarThemeWin.cpp:
   23679         (WebCore::ScrollbarThemeWin::themeChanged): Null out scrollbarTheme
   23680         after closing it so that we'll re-open the theme next time we paint.
   23681 
   23682 2009-04-07  Adam Roben  <aroben (a] apple.com>
   23683 
   23684         Small cleanup/correctness fix in ScrollbarThemeWin
   23685 
   23686         Reviewed by Dave Hyatt.
   23687 
   23688         * platform/win/ScrollbarThemeWin.cpp: Removed the now-unused
   23689         haveTheme boolean.
   23690         (WebCore::checkAndInitScrollbarTheme): Check IsThemeActive() before
   23691         calling OpenThemeData. This seems to be what MSDN recommends.
   23692         (WebCore::ScrollbarThemeWin::themeChanged): Null-check scrollbarTheme
   23693         before closing it, rather than indirectly null-checking it via
   23694         checking haveTheme.
   23695 
   23696 2009-04-07  Dan Bernstein  <mitz (a] apple.com>
   23697 
   23698         Reviewed by John Sullivan.
   23699 
   23700         - when -webkit-line-break: after-white-space is specified but the text
   23701           does not auto-wrap, do not shrink the trailing space to fit in the
   23702           available width
   23703 
   23704         Test: fast/text/whitespace/nowrap-line-break-after-white-space.html
   23705 
   23706         - when shrinking such trailing space, do not shrink below zero
   23707 
   23708         Covered by existing tests
   23709 
   23710         * rendering/bidi.cpp:
   23711         (WebCore::RenderBlock::computeHorizontalPositionsForLine):
   23712         (WebCore::RenderBlock::layoutInlineChildren):
   23713 
   23714 2009-04-07  Eric Seidel  <eric (a] webkit.org>
   23715 
   23716         Reviewed by Darin Adler.
   23717 
   23718         Move RangeBoundaryPoint off of Position, per Darin's suggestion
   23719         https://bugs.webkit.org/show_bug.cgi?id=24966
   23720 
   23721         Rename setToChild to setToBeforeChild (since that's what the method does)
   23722 
   23723         * dom/Position.h:
   23724         (WebCore::Position::offsetInContainerNode):
   23725         * dom/Range.cpp:
   23726         (WebCore::Range::insertNode):
   23727         (WebCore::Range::selectNodeContents):
   23728         (WebCore::boundaryNodeWillBeRemoved):
   23729         * dom/Range.h:
   23730         (WebCore::Range::startPosition):
   23731         (WebCore::Range::endPosition):
   23732         * dom/RangeBoundaryPoint.h:
   23733         (WebCore::RangeBoundaryPoint::RangeBoundaryPoint):
   23734         (WebCore::RangeBoundaryPoint::container):
   23735         (WebCore::RangeBoundaryPoint::childBefore):
   23736         (WebCore::RangeBoundaryPoint::position):
   23737         (WebCore::RangeBoundaryPoint::offset):
   23738         (WebCore::RangeBoundaryPoint::clear):
   23739         (WebCore::RangeBoundaryPoint::set):
   23740         (WebCore::RangeBoundaryPoint::setOffset):
   23741         (WebCore::RangeBoundaryPoint::setToBeforeChild):
   23742         (WebCore::RangeBoundaryPoint::setToStartOfNode):
   23743         (WebCore::RangeBoundaryPoint::setToEndOfNode):
   23744         (WebCore::RangeBoundaryPoint::childBeforeWillBeRemoved):
   23745         (WebCore::RangeBoundaryPoint::invalidateOffset):
   23746 
   23747 2009-04-07  Eric Seidel  <eric (a] webkit.org>
   23748 
   23749         Reviewed by Darin Adler.
   23750 
   23751         Add containerNode(), computeOffsetInContainerNode(),
   23752         computeNodeBeforePosition() and computeNodeAfterPosition().
   23753         https://bugs.webkit.org/show_bug.cgi?id=24763
   23754 
   23755         These functions will replace uses of rangeCompliantPosition()
   23756         in future patches.
   23757 
   23758         No changes in behavior, thus no tests.
   23759 
   23760         * dom/Position.cpp:
   23761         (WebCore::Position::containerNode):
   23762         (WebCore::Position::computeOffsetInContainerNode):
   23763         (WebCore::Position::computeNodeBeforePosition):
   23764         (WebCore::Position::computeNodeAfterPosition):
   23765         (WebCore::Position::anchorType):
   23766         * dom/Position.h:
   23767         (WebCore::Position::):
   23768 
   23769 2009-04-06  Sam Weinig  <sam (a] webkit.org>
   23770 
   23771         Reviewed by Mark Rowe.
   23772 
   23773         Bottleneck dispatching mutation events in a new dispatchMutationEvent
   23774         function.
   23775 
   23776         * dom/CharacterData.cpp:
   23777         (WebCore::CharacterData::dispatchModifiedEvent):
   23778         * dom/ContainerNode.cpp:
   23779         (WebCore::dispatchChildInsertionEvents):
   23780         (WebCore::dispatchChildRemovalEvents):
   23781         * dom/Node.cpp:
   23782         (WebCore::Node::dispatchSubtreeModifiedEvent):
   23783         (WebCore::Node::dispatchMutationEvent):
   23784         * dom/Node.h:
   23785 
   23786 2009-04-06  Dimitri Glazkov  <dglazkov (a] chromium.org>
   23787 
   23788         Reviewed by Darin Fisher.
   23789 
   23790         https://bugs.webkit.org/show_bug.cgi?id=25059
   23791         Remove references to dominantScript, getGenericFontForScript.
   23792 
   23793         * platform/graphics/chromium/FontCacheChromiumWin.cpp: Removed references
   23794             to getGenericFontForScript.
   23795         (WebCore::FontCache::getLastResortFallbackFont): Removed calls to dominantScript.
   23796         * platform/graphics/chromium/FontCacheLinux.cpp: Ditto.
   23797         * rendering/RenderThemeChromiumLinux.cpp:
   23798         (WebCore::defaultGUIFont): Removed Document* arg.
   23799         (WebCore::RenderThemeChromiumLinux::systemFont): Ditto.
   23800         * rendering/RenderThemeChromiumLinux.h: Ditto.
   23801         * rendering/RenderThemeChromiumMac.h: Ditto.
   23802         * rendering/RenderThemeChromiumMac.mm: Ditto.
   23803         (WebCore::RenderThemeChromiumMac::systemFont): Ditto.
   23804         * rendering/RenderThemeChromiumWin.cpp:
   23805         (WebCore::defaultGUIFont): Ditto.
   23806         (WebCore::RenderThemeChromiumWin::systemFont): Ditto.
   23807         * rendering/RenderThemeChromiumWin.h: Ditto.
   23808 
   23809 2009-04-06  Geoffrey Garen  <ggaren (a] apple.com>
   23810 
   23811         Reviewed by Darin Adler.
   23812         
   23813         Fixed https://bugs.webkit.org/show_bug.cgi?id=21260
   23814         Unbounded memory growth when churning elements with anonymous event handler functions
   23815 
   23816         The problem was that a protected event listener's scope chain would end
   23817         up with a reference to the Node protecting it, causing a cycle. The
   23818         solution is to stop protecting event listeners and rely on marking instead.
   23819 
   23820         This patch converts most Node event listeners to use marking instead of
   23821         GC protection.
   23822 
   23823         * bindings/js/JSDOMBinding.cpp:
   23824         (WebCore::isObservableThroughDOM):
   23825         (WebCore::markDOMNodesForDocument): Refactored the test for whether a Node
   23826         needs marking, and added a case for marking the node in order to mark its
   23827         event listeners.
   23828 
   23829         * bindings/js/JSNodeCustom.cpp:
   23830         (WebCore::markEventListeners):
   23831         (WebCore::JSNode::addEventListener):
   23832         (WebCore::JSNode::removeEventListener):
   23833         (WebCore::JSNode::mark): Added code to mark a Node's event listeners when
   23834         marking the Node. Changed code using protected event listeners to use event
   23835         listeners.
   23836 
   23837         * dom/Node.idl: Changed code using protected event listeners to use event
   23838         listeners.
   23839 
   23840 2009-04-06  Sam Weinig  <sam (a] webkit.org>
   23841 
   23842         Reviewed by Darin Adler.
   23843 
   23844         Remove unchecked bool return values for some dispatch event functions.
   23845 
   23846         * dom/Node.cpp:
   23847         (WebCore::Node::dispatchSubtreeModifiedEvent):
   23848         (WebCore::Node::dispatchUIEvent):
   23849         (WebCore::Node::dispatchWebKitAnimationEvent):
   23850         (WebCore::Node::dispatchWebKitTransitionEvent):
   23851         (WebCore::Node::dispatchProgressEvent):
   23852         * dom/Node.h:
   23853 
   23854 2009-04-06  Darin Fisher  <darin (a] chromium.org>
   23855 
   23856         Reviewed by Dimitri Glazkov.
   23857 
   23858         https://bugs.webkit.org/show_bug.cgi?id=25058
   23859         Fix chromium build bustage caused by r42216
   23860 
   23861         * bindings/scripts/CodeGeneratorJS.pm:
   23862         * page/DOMWindow.idl:
   23863 
   23864 2009-04-06  Gustavo Noronha Silva  <gustavo.noronha (a] collabora.co.uk>
   23865 
   23866         Rubber-stamped by Sam Weinig.
   23867 
   23868         https://bugs.webkit.org/show_bug.cgi?id=20575
   23869         No localization in WebKitGtk
   23870 
   23871         * platform/gtk/FileChooserGtk.cpp: Remove usage of glib/gi18n.h,
   23872         since there are not translatable strings.
   23873         * platform/gtk/LocalizedStringsGtk.cpp: Use the glib i18n header
   23874         that is specific for libraries.
   23875 
   23876 2009-04-06  Mike Belshe  <mike (a] belshe.com>
   23877 
   23878         Reviewed by Dimitri Glazkov.
   23879 
   23880         https://bugs.webkit.org/show_bug.cgi?id=24978
   23881         Use custom implementations of a few Node methods so that
   23882         we don't over-aggressively create JS wrappers here.
   23883 
   23884         * bindings/v8/custom/V8NodeCustom.cpp: Added custom implementations.
   23885         * dom/Node.idl: Removed JSC-specifier, making impl custom for V8 as well.
   23886 
   23887 2009-04-06  Dave Moore  <davemoore (a] google.com>
   23888 
   23889         Reviewed by Dimitri Glazkov.
   23890 
   23891         https://bugs.webkit.org/show_bug.cgi?id=25031
   23892         Make the V8 element collections check for named properties *before*
   23893         checking if there are any elements with the same name. Otherwise
   23894         it is both incorrect and slow.
   23895 
   23896         Test: fast/dom/HTMLSelectElement/length-not-overridden.html
   23897 
   23898         Both of these interceptors were attempting to find an element in the
   23899         collection that had a name or id of the property name before checking
   23900         for a JS property with that name.
   23901         * bindings/v8/V8Collection.h:
   23902         (WebCore::collectionNamedPropertyGetter):
   23903         (WebCore::nodeCollectionNamedPropertyGetter):
   23904 
   23905 2009-04-06  Simon Fraser  <simon.fraser (a] apple.com>
   23906 
   23907         Reviewed by Darin Adler
   23908 
   23909         https://bugs.webkit.org/show_bug.cgi?id=25052
   23910         
   23911         Pull the call to updateGraphicsLayerGeometry() out of updateGraphicsLayers(),
   23912         because we need to call it at the end of rebuildCompositingLayerTree() once
   23913         we've determined which descendant layers are composited, otherwise
   23914         calculateCompositedBounds() can give the wrong answer.
   23915         
   23916         Now that updateLayerCompositingState() doesn't end up calling updateGraphicsLayerGeometry(),
   23917         call that explicitly from styleChanged(), if we know a layer update is not pending,
   23918         and similarly from updateAfterLayout().
   23919 
   23920         Test: compositing/overflow/overflow-positioning.html
   23921 
   23922         * rendering/RenderLayer.cpp:
   23923         (WebCore::RenderLayer::styleChanged):
   23924         * rendering/RenderLayerBacking.cpp:
   23925         (WebCore::RenderLayerBacking::updateAfterLayout):
   23926         (WebCore::RenderLayerBacking::updateGraphicsLayers):
   23927         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
   23928         * rendering/RenderLayerCompositor.cpp:
   23929         (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
   23930 
   23931 2009-04-06  Mike Belshe  <mike (a] belshe.com>
   23932 
   23933         Reviewed by Alexey Proskuryakov.
   23934 
   23935         Add accessors to AtomicString which take String/const char* arguments
   23936         so that we don't accidentally thrash the AtomicString table.
   23937 
   23938         https://bugs.webkit.org/show_bug.cgi?id=24979
   23939 
   23940         * platform/text/AtomicString.h:
   23941 
   23942 2009-04-03  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   23943 
   23944         Reviewed by Simon Hausmann.
   23945 
   23946         Make col and row work in WebCore/manual-tests/cursor.html. The issue
   23947         was spotted in the WebKit inspector.
   23948 
   23949         * platform/gtk/CursorGtk.cpp:
   23950         (WebCore::columnResizeCursor):
   23951         (WebCore::rowResizeCursor):
   23952 
   23953 2009-04-06  Tor Arne Vestb  <tor.arne.vestbo (a] nokia.com>
   23954 
   23955         Reviewed by Simon Hausmann.
   23956 
   23957         [Qt] Don't show and hide the platformPluginWidget, as it's our QWebView
   23958 
   23959         * plugins/mac/PluginViewMac.cpp:
   23960         (WebCore::PluginView::show):
   23961         (WebCore::PluginView::hide):
   23962         (WebCore::PluginView::setParentVisible):
   23963 
   23964 2009-04-06  Simon Hausmann  <simon.hausmann (a] nokia.com>
   23965 
   23966         Reviewed by Tor Arne Vestb.
   23967 
   23968         Add new files to the Qt build.
   23969         Export helper function from the Qt JSC binding, needed in WebKit/qt.
   23970 
   23971         * WebCore.pro: Add new files.
   23972         * bridge/qt/qt_runtime.h: Declare convertQVariantToValue.
   23973 
   23974 2009-04-06  Simon Hausmann  <simon.hausmann (a] nokia.com>
   23975 
   23976         Reviewed by Tor Arne Vestb.
   23977 
   23978         Changed ScriptFunctionCall's last argument from a const char* as the function name to a String.
   23979 
   23980         Internally the function name is stored as a WebCore::String and the Qt port wants to use this
   23981         constructor programmatically where the function name is also a WebCore::String.
   23982 
   23983         * bindings/js/ScriptFunctionCall.cpp:
   23984         (WebCore::ScriptFunctionCall::ScriptFunctionCall):
   23985         * bindings/js/ScriptFunctionCall.h:
   23986 
   23987 2009-04-06  Mike Belshe <mike (a] belshe.com>
   23988 
   23989         Reviewed by Eric Seidel.
   23990 
   23991         HTMLCanvasElement crash when ImageBuffer creation fails.
   23992         https://bugs.webkit.org/show_bug.cgi?id=23212
   23993 
   23994         Check for NULL before using the ImageBuffer as we might
   23995         be low on memory and creation may have failed.
   23996 
   23997         Test case creation blocked by:
   23998         https://bugs.webkit.org/show_bug.cgi?id=25055
   23999 
   24000         * html/HTMLCanvasElement.cpp:
   24001         (WebCore::HTMLCanvasElement::createImageBuffer):
   24002 
   24003 2009-04-05  Geoffrey Garen  <ggaren (a] apple.com>
   24004 
   24005         [Originally] Reviewed by Sam Weinig.
   24006 
   24007         Rolled back in r42214 with crashes fixed.
   24008 
   24009         [Removed irrelevant ExecState* parameter from event handler registration code.]
   24010         
   24011         [No change in behavior.]
   24012 
   24013         * bindings/js/JSDOMApplicationCacheCustom.cpp:
   24014         (WebCore::JSDOMApplicationCache::addEventListener):
   24015         (WebCore::JSDOMApplicationCache::removeEventListener):
   24016         * bindings/js/JSDOMGlobalObject.cpp:
   24017         (WebCore::JSDOMGlobalObject::findOrCreateJSProtectedEventListener):
   24018         (WebCore::JSDOMGlobalObject::findJSEventListener):
   24019         (WebCore::JSDOMGlobalObject::findOrCreateJSEventListener):
   24020         * bindings/js/JSDOMGlobalObject.h:
   24021         * bindings/js/JSDOMWindowCustom.cpp:
   24022         (WebCore::JSDOMWindow::addEventListener):
   24023         * bindings/js/JSMessagePortCustom.cpp:
   24024         (WebCore::JSMessagePort::addEventListener):
   24025         (WebCore::JSMessagePort::removeEventListener):
   24026         * bindings/js/JSNodeCustom.cpp:
   24027         (WebCore::JSNode::addEventListener):
   24028         * bindings/js/JSSVGElementInstanceCustom.cpp:
   24029         (WebCore::JSSVGElementInstance::addEventListener):
   24030         * bindings/js/JSWorkerContextCustom.cpp:
   24031         (WebCore::JSWorkerContext::addEventListener):
   24032         (WebCore::JSWorkerContext::removeEventListener):
   24033         * bindings/js/JSWorkerCustom.cpp:
   24034         (WebCore::JSWorker::addEventListener):
   24035         (WebCore::JSWorker::removeEventListener):
   24036         * bindings/js/JSXMLHttpRequestCustom.cpp:
   24037         (WebCore::JSXMLHttpRequest::addEventListener):
   24038         (WebCore::JSXMLHttpRequest::removeEventListener):
   24039         * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
   24040         (WebCore::JSXMLHttpRequestUpload::addEventListener):
   24041         (WebCore::JSXMLHttpRequestUpload::removeEventListener):
   24042         * bindings/scripts/CodeGeneratorJS.pm:
   24043 
   24044 2009-04-05  Erik L. Bunce  <elbunce (a] xendom.com>
   24045 
   24046         Reviewed by Simon Hausmann.
   24047 
   24048         https://bugs.webkit.org/show_bug.cgi?id=25050
   24049 
   24050         Fix an assert failure when dropping an 'empty' text/uri-list on a QWebView. 
   24051 
   24052         * platform/qt/DragDataQt.cpp:
   24053         (WebCore::DragData::asURL):
   24054 
   24055 2009-04-05  Simon Hausmann  <hausmann (a] webkit.org>
   24056 
   24057         Fix the Qt build.
   24058 
   24059         * bridge/qt/qt_runtime.h:
   24060         (JSC::Bindings::QtRuntimeMethod::createPrototype): Take the JSGlobalObject
   24061         as second argument.
   24062 
   24063 2009-04-04  Kevin Ollivier  <kevino (a] theolliviers.com>
   24064 
   24065         Build fixes for wxMac/Tiger.
   24066 
   24067         * platform/wx/wxcode/mac/carbon/fontprops.cpp:
   24068         (wxFontProperties::wxFontProperties):
   24069         * rendering/break_lines.cpp:
   24070         (WebCore::nextBreakablePosition):
   24071         * webcore-wx.bkl:
   24072 
   24073 2009-04-04  Simon Fraser  <simon.fraser (a] apple.com>
   24074 
   24075         Reviewed by Cameron Zwarich
   24076 
   24077         https://bugs.webkit.org/show_bug.cgi?id=24648
   24078         
   24079         Ensure that mapPoint(const IntPoint&) calls the FloatPoint
   24080         version to avoid infinite recursion.
   24081         
   24082         No test because mapPoint(const IntPoint&) isn't ever called
   24083         on Mac, so I can't reproduce.
   24084         
   24085         * platform/graphics/transforms/TransformationMatrix.h:
   24086         (WebCore::TransformationMatrix::mapPoint):
   24087 
   24088 2009-04-04  Dan Bernstein  <mitz (a] apple.com>
   24089 
   24090         Reviewed by Mark Rowe.
   24091 
   24092         - fix <rdar://problem/6757862> REGRESSION: Cannot use the mouse to place
   24093           the insertion point inside a Thai character
   24094 
   24095         Test: fast/text/international/thai-offsetForPosition-inside-character.html
   24096 
   24097         * platform/graphics/mac/CoreTextController.cpp:
   24098         (WebCore::CoreTextController::offsetForPosition): Changed to use
   24099         cursorMovementIterator instead of characterBreakIterator, allowing this
   24100         function to return a valid cursor position even if it is not at
   24101         a character boundary.
   24102 
   24103 2009-04-04  Dan Bernstein  <mitz (a] apple.com>
   24104 
   24105         Reviewed by Mark Rowe.
   24106 
   24107         - fix an assertion failure when clicking at the beginning of a
   24108           glyph cluster at the beginning of a text run
   24109 
   24110         Test: fast/text/offsetForPosition-cluster-at-zero.html
   24111 
   24112         * platform/graphics/mac/CoreTextController.cpp:
   24113         (WebCore::CoreTextController::offsetForPosition): Corrected the bound
   24114         check on firstGlyphBeforeCluster, letting it be 0 or -1, but not less
   24115         than -1.
   24116 
   24117 2009-04-03  Brian Weinstein  <bweinstein (a] gmail.com>
   24118 
   24119         Allows 16 HTML/CSS standard colors to be shown as swatch backgrounds
   24120         when the names are given.
   24121 
   24122         https://bugs.webkit.org/show_bug.cgi?id=25044
   24123 
   24124         Reviewed by Timothy Hatcher.
   24125 
   24126         * inspector/front-end/StylesSidebarPane.js:
   24127         (WebInspector.StylePropertyTreeElement.prototype.updateTitle):
   24128 
   24129 2009-04-03  Sam Weinig  <sam (a] webkit.org>
   24130 
   24131         Reviewed by Darin Adler.
   24132 
   24133         <rdar://problem/6330929>
   24134         https://bugs.webkit.org/show_bug.cgi?id=21456
   24135 
   24136         Don't update the document pointer for all inactive windows on navigations.
   24137         This change causes us to differ slightly from Firefox when accessing the
   24138         document from within a closure tied to a navigated context, but as all
   24139         browsers differ on this edge case, I don't foresee compatibility issues.
   24140 
   24141         Test: http/tests/security/cross-frame-access-document-direct.html
   24142 
   24143         * bindings/js/JSDOMWindowBase.cpp:
   24144         (WebCore::JSDOMWindowBase::~JSDOMWindowBase):
   24145         * bindings/js/ScriptController.cpp:
   24146         (WebCore::ScriptController::clearWindowShell):
   24147         (WebCore::ScriptController::initScript):
   24148         (WebCore::ScriptController::updateDocument):
   24149         * bindings/js/ScriptController.h:
   24150 
   24151 2009-04-03  Chris Marrin  <cmarrin (a] apple.com>
   24152 
   24153         Reviewed by Simon Fraser.
   24154 
   24155         Test: transitions/bad-transition-shorthand-crash.html
   24156 
   24157         Fixed https://bugs.webkit.org/show_bug.cgi?id=24787.
   24158 
   24159         We were starting transitions with 0 duration and delay, which is 
   24160         useless. With accelerated compositing on, this went through a code
   24161         path that tried to use m_toStyle, which never got set because the 
   24162         transitions was short circuited before it had a chance to. So I
   24163         both protect against using that null pointer and avoid starting
   24164         the transition in the first place.
   24165 
   24166         * page/animation/CompositeAnimation.cpp:
   24167         (WebCore::CompositeAnimationPrivate::updateTransitions):
   24168         * page/animation/ImplicitAnimation.cpp:
   24169         (WebCore::ImplicitAnimation::blendPropertyValueInStyle):
   24170 
   24171 2009-04-03  Timothy Hatcher  <timothy (a] apple.com>
   24172 
   24173         Fixes a bug where you could not type any more in the Web Inspector's
   24174         search field after the first match is selected in the Resources panel.
   24175 
   24176         https://bugs.webkit.org/show_bug.cgi?id=23982
   24177         rdar://problem/6592367
   24178 
   24179         Reviewed by Darin Adler.
   24180 
   24181         * inspector/front-end/SourceView.js:
   24182         (WebInspector.SourceView.prototype._jumpToSearchResult): Use the
   24183         window object of the frame to set the selection, not the main window.
   24184 
   24185 2009-04-03  Sam Weinig  <sam (a] webkit.org>
   24186 
   24187         Reviewed by Anders Carlsson.
   24188 
   24189         Fix for https://bugs.webkit.org/show_bug.cgi?id=22081
   24190         <rdar://problem/6346030>
   24191         Don't allow overriding the return value of window.location.
   24192 
   24193         Tests: fast/dom/Window/Location/location-override-toString-on-proto-using-defineGetter.html
   24194                fast/dom/Window/Location/location-override-toString-on-proto-using-with.html
   24195                fast/dom/Window/Location/location-override-toString-on-proto.html
   24196                fast/dom/Window/Location/location-override-toString-using-defineGetter.html
   24197                fast/dom/Window/Location/location-override-toString-using-with.html
   24198                fast/dom/Window/Location/location-override-toString.html
   24199                fast/dom/Window/Location/location-override-valueOf-on-proto-using-defineGetter.html
   24200                fast/dom/Window/Location/location-override-valueOf-on-proto-using-with.html
   24201                fast/dom/Window/Location/location-override-valueOf-on-proto.html
   24202                fast/dom/Window/Location/location-override-valueOf-using-defineGetter.html
   24203                fast/dom/Window/Location/location-override-valueOf-using-with.html
   24204                fast/dom/Window/Location/location-override-valueOf.html
   24205                fast/dom/Window/Location/window-override-location-using-defineGetter.html
   24206                fast/dom/Window/Location/window-override-window-using-defineGetter.html
   24207                fast/dom/Window/Location/window-shadow-location-using-js-object-with-toString.html
   24208                fast/dom/Window/Location/window-shadow-location-using-string.html
   24209                fast/dom/Window/Location/window-shadow-window-using-js-object-with-location-field.html
   24210 
   24211         * bindings/js/JSDOMWindowCustom.cpp:
   24212         (WebCore::JSDOMWindow::defineGetter):
   24213         * bindings/js/JSLocationCustom.cpp:
   24214         (WebCore::JSLocation::customPut):
   24215         (WebCore::JSLocation::defineGetter):
   24216         (WebCore::JSLocationPrototype::customPut):
   24217         (WebCore::JSLocationPrototype::defineGetter):
   24218         * bindings/scripts/CodeGeneratorJS.pm:
   24219         * page/Location.idl:
   24220 
   24221 2009-04-03  Geoffrey Garen  <ggaren (a] apple.com>
   24222 
   24223         Rolled out r42214 since it seems to have caused crashes on the buildbot.
   24224 
   24225         * bindings/js/JSDOMApplicationCacheCustom.cpp:
   24226         (WebCore::JSDOMApplicationCache::addEventListener):
   24227         (WebCore::JSDOMApplicationCache::removeEventListener):
   24228         * bindings/js/JSDOMGlobalObject.cpp:
   24229         (WebCore::JSDOMGlobalObject::findOrCreateJSProtectedEventListener):
   24230         (WebCore::JSDOMGlobalObject::findJSEventListener):
   24231         (WebCore::JSDOMGlobalObject::findOrCreateJSEventListener):
   24232         * bindings/js/JSDOMGlobalObject.h:
   24233         * bindings/js/JSDOMWindowCustom.cpp:
   24234         (WebCore::JSDOMWindow::addEventListener):
   24235         * bindings/js/JSMessagePortCustom.cpp:
   24236         (WebCore::JSMessagePort::addEventListener):
   24237         (WebCore::JSMessagePort::removeEventListener):
   24238         * bindings/js/JSNodeCustom.cpp:
   24239         (WebCore::JSNode::addEventListener):
   24240         (WebCore::JSNode::removeEventListener):
   24241         * bindings/js/JSSVGElementInstanceCustom.cpp:
   24242         (WebCore::JSSVGElementInstance::addEventListener):
   24243         * bindings/js/JSWorkerContextCustom.cpp:
   24244         (WebCore::JSWorkerContext::addEventListener):
   24245         (WebCore::JSWorkerContext::removeEventListener):
   24246         * bindings/js/JSWorkerCustom.cpp:
   24247         (WebCore::JSWorker::addEventListener):
   24248         (WebCore::JSWorker::removeEventListener):
   24249         * bindings/js/JSXMLHttpRequestCustom.cpp:
   24250         (WebCore::JSXMLHttpRequest::addEventListener):
   24251         (WebCore::JSXMLHttpRequest::removeEventListener):
   24252         * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
   24253         (WebCore::JSXMLHttpRequestUpload::addEventListener):
   24254         (WebCore::JSXMLHttpRequestUpload::removeEventListener):
   24255         * bindings/scripts/CodeGeneratorJS.pm:
   24256 
   24257 2009-04-03  Sam Weinig  <sam (a] webkit.org>
   24258 
   24259         Reviewed by Oliver Hunt.
   24260 
   24261         Fix for <rdar://problem/6476356>
   24262         https://bugs.webkit.org/show_bug.cgi?id=23148
   24263 
   24264         - Use the window object the Location and History objects are directly associated with
   24265           instead of the lexical global object to pick the object prototype to serve as the
   24266           base of the their respective prototype chains.
   24267         - Re-factor as necessary to allow passing the correct global object to the createPrototype
   24268           functions.
   24269 
   24270         Tests: http/tests/security/cross-frame-access-history-prototype.html
   24271                http/tests/security/cross-frame-access-location-prototype.html
   24272 
   24273         * bindings/js/JSAudioConstructor.cpp:
   24274         (WebCore::JSAudioConstructor::JSAudioConstructor):
   24275         * bindings/js/JSDOMBinding.cpp:
   24276         (WebCore::getCachedDOMStructure):
   24277         (WebCore::cacheDOMStructure):
   24278         * bindings/js/JSDOMBinding.h:
   24279         (WebCore::getDOMStructure):
   24280         (WebCore::getDOMPrototype):
   24281         * bindings/js/JSDOMWindowCustom.cpp:
   24282         (WebCore::JSDOMWindow::history):
   24283         (WebCore::JSDOMWindow::location):
   24284         * bindings/js/JSDocumentCustom.cpp:
   24285         (WebCore::JSDocument::location):
   24286         * bindings/js/JSImageConstructor.cpp:
   24287         (WebCore::JSImageConstructor::JSImageConstructor):
   24288         * bindings/js/JSMessageChannelConstructor.cpp:
   24289         (WebCore::JSMessageChannelConstructor::JSMessageChannelConstructor):
   24290         * bindings/js/JSNamedNodesCollection.h:
   24291         (WebCore::JSNamedNodesCollection::createPrototype):
   24292         * bindings/js/JSOptionConstructor.cpp:
   24293         (WebCore::JSOptionConstructor::JSOptionConstructor):
   24294         * bindings/js/JSRGBColor.h:
   24295         (WebCore::JSRGBColor::createPrototype):
   24296         * bindings/js/JSWebKitCSSMatrixConstructor.cpp:
   24297         (WebCore::JSWebKitCSSMatrixConstructor::JSWebKitCSSMatrixConstructor):
   24298         * bindings/js/JSWebKitPointConstructor.cpp:
   24299         (WebCore::JSWebKitPointConstructor::JSWebKitPointConstructor):
   24300         * bindings/js/JSWorkerConstructor.cpp:
   24301         (WebCore::JSWorkerConstructor::JSWorkerConstructor):
   24302         * bindings/js/JSXMLHttpRequestConstructor.cpp:
   24303         (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
   24304         * bindings/js/JSXSLTProcessorConstructor.cpp:
   24305         (WebCore::JSXSLTProcessorConstructor::JSXSLTProcessorConstructor):
   24306         * bindings/scripts/CodeGeneratorJS.pm:
   24307         * bridge/objc/objc_runtime.h:
   24308         (JSC::Bindings::ObjcFallbackObjectImp::createPrototype):
   24309         * bridge/runtime_array.h:
   24310         (JSC::RuntimeArray::createPrototype):
   24311         * bridge/runtime_method.h:
   24312         (JSC::RuntimeMethod::createPrototype):
   24313         * bridge/runtime_object.h:
   24314         (JSC::RuntimeObjectImp::createPrototype):
   24315         * page/DOMWindow.idl:
   24316 
   24317 2009-04-03  Jian Li  <jianli (a] chromium.org>
   24318 
   24319         Reviewed by Darin Fisher.
   24320 
   24321         https://bugs.webkit.org/show_bug.cgi?id=25009
   24322         Upstream changes to WorkerContextExecutionProxy for V8 bindings in order to use V8EventListenerList as container.
   24323 
   24324         * bindings/v8/WorkerContextExecutionProxy.cpp:
   24325         (WebCore::WorkerContextExecutionProxy::WorkerContextExecutionProxy):
   24326         (WebCore::WorkerContextExecutionProxy::dispose):
   24327         (WebCore::WorkerContextExecutionProxy::FindOrCreateEventListener):
   24328         (WebCore::WorkerContextExecutionProxy::RemoveEventListener):
   24329         * bindings/v8/WorkerContextExecutionProxy.h:
   24330 
   24331 2009-04-03  Geoffrey Garen  <ggaren (a] apple.com>
   24332 
   24333         Reviewed by Sam Weinig.
   24334 
   24335         Removed irrelevant ExecState* parameter from event handler registration code.
   24336         
   24337         No change in behavior.
   24338 
   24339         * bindings/js/JSDOMApplicationCacheCustom.cpp:
   24340         (WebCore::JSDOMApplicationCache::addEventListener):
   24341         (WebCore::JSDOMApplicationCache::removeEventListener):
   24342         * bindings/js/JSDOMGlobalObject.cpp:
   24343         (WebCore::JSDOMGlobalObject::findOrCreateJSProtectedEventListener):
   24344         (WebCore::JSDOMGlobalObject::findJSEventListener):
   24345         (WebCore::JSDOMGlobalObject::findOrCreateJSEventListener):
   24346         * bindings/js/JSDOMGlobalObject.h:
   24347         * bindings/js/JSDOMWindowCustom.cpp:
   24348         (WebCore::JSDOMWindow::addEventListener):
   24349         * bindings/js/JSMessagePortCustom.cpp:
   24350         (WebCore::JSMessagePort::addEventListener):
   24351         (WebCore::JSMessagePort::removeEventListener):
   24352         * bindings/js/JSNodeCustom.cpp:
   24353         (WebCore::JSNode::addEventListener):
   24354         (WebCore::JSNode::removeEventListener):
   24355         * bindings/js/JSSVGElementInstanceCustom.cpp:
   24356         (WebCore::JSSVGElementInstance::addEventListener):
   24357         * bindings/js/JSWorkerContextCustom.cpp:
   24358         (WebCore::JSWorkerContext::addEventListener):
   24359         (WebCore::JSWorkerContext::removeEventListener):
   24360         * bindings/js/JSWorkerCustom.cpp:
   24361         (WebCore::JSWorker::addEventListener):
   24362         (WebCore::JSWorker::removeEventListener):
   24363         * bindings/js/JSXMLHttpRequestCustom.cpp:
   24364         (WebCore::JSXMLHttpRequest::addEventListener):
   24365         (WebCore::JSXMLHttpRequest::removeEventListener):
   24366         * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
   24367         (WebCore::JSXMLHttpRequestUpload::addEventListener):
   24368         (WebCore::JSXMLHttpRequestUpload::removeEventListener):
   24369         * bindings/scripts/CodeGeneratorJS.pm:
   24370 
   24371 2009-04-03  Dan Bernstein  <mitz (a] apple.com>
   24372 
   24373         Reviewed by Simon Fraser.
   24374 
   24375         - fix <rdar://problem/6634771> Under full-page zoom, cannot scroll
   24376           MobileMe contact list
   24377 
   24378         Test: fast/css/zoom-in-length-round-trip.html
   24379 
   24380         * dom/Element.cpp:
   24381         (WebCore::adjustForLocalZoom): For zoom factors greater than 1, ensure
   24382         that the returned value is equal to the original unscaled value.
   24383         (WebCore::adjustForAbsoluteZoom): Ditto.
   24384 
   24385 2009-04-03  Chris Marrin  <cmarrin (a] apple.com>
   24386 
   24387         Reviewed by David Hyatt.
   24388 
   24389         Fixed https://bugs.webkit.org/show_bug.cgi?id=24941
   24390 
   24391         This fix essentially does a -viewWillDraw call for layout. It adds 
   24392         a CFRunLoopObserver which performs layout just before drawing on the 
   24393         Mac platform. This makes sure layout is complete before rendering and 
   24394         avoids a flash.
   24395 
   24396         * page/ChromeClient.h:
   24397         (WebCore::ChromeClient::scheduleViewUpdate):
   24398         * rendering/RenderLayerCompositor.cpp:
   24399         (WebCore::RenderLayerCompositor::setCompositingLayersNeedUpdate):
   24400         (WebCore::RenderLayerCompositor::scheduleViewUpdate):
   24401         * rendering/RenderLayerCompositor.h:
   24402 
   24403 2009-04-02  Simon Fraser  <simon.fraser (a] apple.com>
   24404 
   24405         Reviewed by Dan Bernstein
   24406 
   24407         https://bugs.webkit.org/show_bug.cgi?id=24648
   24408 
   24409         Optimize mapPoint(), mapRect() and mapQuad() for identity matrix and translations.
   24410         
   24411         * platform/graphics/transforms/TransformationMatrix.cpp:
   24412         (WebCore::TransformationMatrix::mapPoint):
   24413         (WebCore::TransformationMatrix::mapRect):
   24414         (WebCore::TransformationMatrix::mapQuad):
   24415         * platform/graphics/transforms/TransformationMatrix.h:
   24416         (WebCore::TransformationMatrix::mapPoint):
   24417 
   24418 2009-04-02  Simon Fraser  <simon.fraser (a] apple.com>
   24419 
   24420         Reviewed by Dan Bernstein
   24421 
   24422         https://bugs.webkit.org/show_bug.cgi?id=25018
   24423         
   24424         Add containsPoint() and containsQuad() methods to FloatQuad.
   24425 
   24426         * platform/graphics/FloatQuad.cpp:
   24427         (WebCore::dot):
   24428         (WebCore::isPointInTriangle):
   24429         (WebCore::FloatQuad::containsPoint):
   24430         (WebCore::FloatQuad::containsQuad):
   24431         * platform/graphics/FloatQuad.h:
   24432 
   24433 2009-04-03  Kevin Decker  <kdecker (a] apple.com>
   24434 
   24435         Reviewed by Darin.
   24436 
   24437         *  loader/ProgressTracker.cpp: Included DocumentLoader.h
   24438         (WebCore::ProgressTracker::incrementProgress): Limit the 50%-clamp rule to 
   24439         documents that use WebCore's layout system.
   24440 
   24441 2009-04-03  Eric Carlson  <eric.carlson (a] apple.com>
   24442 
   24443         Reviewed by Simon Fraser.
   24444 
   24445         https://bugs.webkit.org/show_bug.cgi?id=25029
   24446         <rdar://problem/6336092> REGRESSION: movie does not resize correctly
   24447 
   24448         Test: media/video-size-intrinsic-scale.html
   24449 
   24450         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   24451         (WebCore::MediaPlayerPrivate::naturalSize): Use QTMovieCurrentSizeAttribute instead 
   24452         of QTMovieNaturalSizeAttribute so we return the correct size for movies saved
   24453         with a non-default matrix.
   24454         (WebCore::MediaPlayerPrivate::setSize): Don't resize the QTMovieView
   24455         because [QTMovieView setFrame] also resizes the movie itself, and as
   24456         the renderer calls setSize immediately when a movie reports a size change
   24457         (QTMovieSizeDidChangeNotification) we can get into a feedback loop
   24458         observing the size change and resetting the size, and this can cause
   24459         QuickTime to miss correctly setting a movie's size when the media size
   24460         changes after opening (as happens with an rtsp movie once the server sends
   24461         the track sizes). Instead, remember the size passed to paint() and 
   24462         resize the view when it changes.
   24463         (WebCore::MediaPlayerPrivate::paint): Resize the view when passed a new size.
   24464 
   24465         * platform/graphics/win/QTMovieWin.cpp:
   24466         (QTMovieWin::getNaturalSize): Use GetMovieBox instead of GetMovieNaturalBoundsRect
   24467         so we return the correct size for movies saved with non-default matrix.
   24468 
   24469 2009-04-03  Darin Fisher  <darin (a] chromium.org>
   24470 
   24471         Reviewed by Darin Adler.
   24472 
   24473         Restore FrameLoader::policyDocumentLoader to fix the Chromium build.
   24474         https://bugs.webkit.org/show_bug.cgi?id=25028
   24475 
   24476         * loader/FrameLoader.h:
   24477         (WebCore::FrameLoader::policyDocumentLoader):
   24478 
   24479 2009-04-02  Michael Nordman  <michaeln (a] google.com>
   24480 
   24481         Reviewed by Alexey Proskuryakov.
   24482 
   24483         Use long long, not int64, when working in webcore (sorry).
   24484         https://bugs.webkit.org/show_bug.cgi?id=25011
   24485 
   24486         No change in functionality, so no tests.
   24487 
   24488         * platform/network/chromium/ResourceResponse.h:
   24489         (WebCore::ResourceResponse::getAppCacheID):
   24490         (WebCore::ResourceResponse::setAppCacheID):
   24491 
   24492 2009-04-03  Gustavo Noronha Silva  <gustavo.noronha (a] collabora.co.uk>
   24493 
   24494         Reviewed by Holger Freyther.
   24495 
   24496         Remove pre-processor checks for GTK+ >= 2.10, since we now require
   24497         at least that version.
   24498 
   24499         * platform/graphics/gtk/FontPlatformDataGtk.cpp:
   24500         (WebCore::FontPlatformData::FontPlatformData):
   24501         * platform/gtk/ContextMenuItemGtk.cpp:
   24502         (WebCore::gtkStockIDFromContextMenuAction):
   24503         * platform/gtk/KeyEventGtk.cpp:
   24504         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
   24505         * platform/gtk/LocalizedStringsGtk.cpp:
   24506         (WebCore::contextMenuItemTagSelectAll):
   24507         * platform/gtk/MouseEventGtk.cpp:
   24508         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
   24509         * platform/gtk/PasteboardGtk.cpp:
   24510         (WebCore::Pasteboard::writeSelection):
   24511         (WebCore::Pasteboard::documentFragment):
   24512         * platform/gtk/WheelEventGtk.cpp:
   24513         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   24514 
   24515 2009-04-02  Simon Fraser  <simon.fraser (a] apple.com>
   24516 
   24517         Reviewed by Dan Bernstein
   24518         
   24519         https://bugs.webkit.org/show_bug.cgi?id=25021
   24520         
   24521         Fix repainting an element with a reflection and transform after layout.
   24522         Telling the reflection to repaint directly is wrong, because, with
   24523         LayoutState enabled, it only takes the reflection's transform into account,
   24524         not that of the element. We can fix this, and keep the benefits of LayoutState,
   24525         by computing the reflected repaint rect, and repainting that using the original
   24526         renderer.
   24527 
   24528         Test: fast/repaint/reflection-repaint-test.html
   24529 
   24530         * rendering/RenderBlock.cpp:
   24531         (WebCore::RenderBlock::layoutBlock):
   24532 
   24533 2009-04-02  Simon Fraser  <simon.fraser (a] apple.com>
   24534 
   24535         Reviewed by Dan Bernstein
   24536         
   24537         https://bugs.webkit.org/show_bug.cgi?id=23307
   24538         
   24539         When repainting during layout (when LayoutState is enabled), we need
   24540         to apply the transform to the dirty rect, before applying x(), y() and
   24541         the offset storted in the LayoutState.
   24542         
   24543         Also bypass LayoutState in mapLocalToContainer() if we have a repaintContainer,
   24544         since LayoutState is always root-relative.
   24545 
   24546         Test: fast/repaint/transform-layout-repaint.html
   24547 
   24548         * rendering/RenderBox.cpp:
   24549         (WebCore::RenderBox::mapLocalToContainer):
   24550         (WebCore::RenderBox::computeRectForRepaint):
   24551 
   24552 2009-04-02  Mark Rowe  <mrowe (a] apple.com>
   24553 
   24554         Fix the Mac build after r42191.
   24555 
   24556         * WebCore.base.exp:
   24557 
   24558 2009-04-02  Mark Rowe  <mrowe (a] apple.com>
   24559 
   24560         Fix Windows build after r42190.
   24561 
   24562         * page/EventHandler.cpp:
   24563         (WebCore::EventHandler::keyEvent):  Update to use the new name of the constant.
   24564 
   24565 2009-04-02  Darin Adler  <darin (a] apple.com>
   24566 
   24567         Reviewed by Brady Eidson.
   24568 
   24569         <rdar://problem/6625840> Previous Page isn't loaded after hitting back button at http://www.breakingnews.ie/
   24570 
   24571         Test: http/tests/navigation/onload-navigation-iframe-2.html
   24572 
   24573         * html/HTMLFrameElement.cpp:
   24574         (WebCore::HTMLFrameElement::HTMLFrameElement): Removed unneeded createdByParser flag.
   24575         * html/HTMLFrameElement.h: Ditto.
   24576         * html/HTMLFrameElementBase.cpp:
   24577         (WebCore::HTMLFrameElementBase::HTMLFrameElementBase): Ditto.
   24578         * html/HTMLFrameElementBase.h: Ditto.
   24579         * html/HTMLFrameOwnerElement.cpp:
   24580         (WebCore::HTMLFrameOwnerElement::HTMLFrameOwnerElement): Ditto.
   24581         * html/HTMLFrameOwnerElement.h: Ditto.
   24582         * html/HTMLIFrameElement.cpp:
   24583         (WebCore::HTMLIFrameElement::HTMLIFrameElement): Ditto.
   24584         * html/HTMLIFrameElement.h: Ditto.
   24585         * html/HTMLPlugInElement.cpp:
   24586         (WebCore::HTMLPlugInElement::HTMLPlugInElement): Ditto.
   24587 
   24588         * loader/FrameLoader.cpp:
   24589         (WebCore::FrameLoader::submitForm): Removed unneeded check of the createdByParser flag.
   24590         The original change that introduced this, http://trac.webkit.org/changeset/25410, does
   24591         not make it clear why this check was needed. And it seems it is not needed.
   24592 
   24593 2009-04-02  Adele Peterson  <adele (a] apple.com>
   24594 
   24595         Reviewed by Darin Adler.
   24596 
   24597         Add a way to get a list of focusable nodes.
   24598 
   24599         * dom/Document.cpp:
   24600         (WebCore::Document::setFocusedNode):
   24601         (WebCore::Document::getFocusableNodes):
   24602         * dom/Document.h:
   24603 
   24604 2009-04-02  Darin Adler  <darin (a] apple.com>
   24605 
   24606         Reviewed by Sam Weinig.
   24607 
   24608         <rdar://problem/6654255> crash due to null FrameView in EventHandler
   24609 
   24610         Lots of code was added to EventHandler that used view() and page() without
   24611         null checking, but both of those can become null due to the frame lifetime.
   24612 
   24613         * page/EventHandler.cpp:
   24614         (WebCore::EventHandler::handleMousePressEventSingleClick):
   24615         (WebCore::EventHandler::eventMayStartDrag):
   24616         (WebCore::EventHandler::handleAutoscroll):
   24617         (WebCore::EventHandler::autoscrollTimerFired):
   24618         (WebCore::EventHandler::setPanScrollCursor):
   24619         (WebCore::EventHandler::allowDHTMLDrag):
   24620         (WebCore::EventHandler::hitTestResultAtPoint):
   24621         (WebCore::EventHandler::stopAutoscrollTimer):
   24622         (WebCore::EventHandler::selectCursor):
   24623         (WebCore::EventHandler::handleMousePressEvent):
   24624         (WebCore::EventHandler::handleMouseMoveEvent):
   24625         (WebCore::EventHandler::dispatchDragEvent):
   24626         (WebCore::EventHandler::prepareMouseEvent):
   24627         (WebCore::EventHandler::dispatchMouseEvent):
   24628         (WebCore::EventHandler::handleWheelEvent):
   24629         (WebCore::EventHandler::hoverTimerFired):
   24630         (WebCore::EventHandler::keyEvent):
   24631         (WebCore::EventHandler::dragHysteresisExceeded):
   24632         (WebCore::EventHandler::shouldDragAutoNode):
   24633         (WebCore::EventHandler::handleDrag):
   24634         (WebCore::EventHandler::handleTextInputEvent):
   24635         (WebCore::EventHandler::addPendingFrameUnloadEventCount):
   24636         (WebCore::EventHandler::removePendingFrameUnloadEventCount):
   24637         (WebCore::EventHandler::clearPendingFrameUnloadEventCount):
   24638         (WebCore::EventHandler::addPendingFrameBeforeUnloadEventCount):
   24639         (WebCore::EventHandler::removePendingFrameBeforeUnloadEventCount):
   24640         (WebCore::EventHandler::clearPendingFrameBeforeUnloadEventCount):
   24641         Added null checks for view() and page(). Made minor code cleanups.
   24642 
   24643 2009-04-02  David Hyatt  <hyatt (a] apple.com>
   24644 
   24645         Reviewed by Oliver Hunt.
   24646 
   24647         Fix regression in <object> layout test.  Make sure that even though a 404 image loads, that <object>
   24648         still considers it an error for the purposes of firing onerror.
   24649 
   24650         * html/HTMLImageLoader.cpp:
   24651         (WebCore::HTMLImageLoader::dispatchLoadEvent):
   24652 
   24653 2009-04-02  Dimitri Glazkov  <dglazkov (a] chromium.org>
   24654 
   24655         Reviewed by Timothy Hatcher.
   24656 
   24657         https://bugs.webkit.org/show_bug.cgi?id=25010
   24658         Refactor InspectorController to replace all JS function invocations with
   24659         ScriptFunctionCall.
   24660 
   24661         * bindings/js/ScriptFunctionCall.cpp:
   24662         (WebCore::ScriptFunctionCall::appendArgument): Added int, UString,
   24663             and JSValuePtr methods.
   24664         (WebCore::ScriptFunctionCall::call): Added simplified, exception-eating
   24665             method.
   24666         * bindings/js/ScriptFunctionCall.h: Decls for above.
   24667         * bindings/js/ScriptObjectQuarantine.cpp: Added helper for Node and DOMWindow.
   24668         (WebCore::getQuarantinedScriptObject):
   24669         * bindings/js/ScriptObjectQuarantine.h: Decls for above.
   24670         * inspector/InspectorController.cpp:
   24671         (WebCore::callSimpleFunction): Made into a static.
   24672         (WebCore::InspectorController::focusNode): Refactored to use ScriptFunctionCall.
   24673         (WebCore::InspectorController::toggleRecordButton): Ditto.
   24674         (WebCore::InspectorController::startGroup): Ditto.
   24675         (WebCore::InspectorController::setAttachedWindow): Ditto.
   24676         (WebCore::InspectorController::inspectedWindowScriptObjectCleared): Ditto.
   24677         (WebCore::InspectorController::addScriptProfile): Ditto.
   24678         (WebCore::InspectorController::didParseSource): Ditto.
   24679         (WebCore::InspectorController::failedToParseSource): Ditto.
   24680         (WebCore::InspectorController::didPause): Ditto.
   24681         * inspector/InspectorController.h: Removed callFunction and callSimpleFunction
   24682             decls.
   24683 
   24684 2009-04-02  Jian Li  <jianli (a] chromium.org>
   24685 
   24686         Reviewed by Darin Fisher.
   24687 
   24688         Upstream changes to V8WorkerContextEventListener for V8 bindings.
   24689         https://bugs.webkit.org/show_bug.cgi?id=25007
   24690 
   24691         * bindings/v8/V8ObjectEventListener.h:
   24692         * bindings/v8/V8WorkerContextEventListener.cpp:
   24693 
   24694 2009-04-02  Jian Li  <jianli (a] chromium.org>
   24695 
   24696         Reviewed by Darin Fisher.
   24697 
   24698         Upstream V8WorkerContextObjectEventListener for V8 bindings.
   24699         https://bugs.webkit.org/show_bug.cgi?id=25005
   24700 
   24701         * bindings/v8/V8WorkerContextObjectEventListener.cpp: Added.
   24702         * bindings/v8/V8WorkerContextObjectEventListener.h: Added.
   24703 
   24704 2009-04-02  Jian Li  <jianli (a] chromium.org>
   24705 
   24706         Reviewed by Darin Fisher.
   24707 
   24708         Upstream V8EventListenerList for V8 bindings.
   24709         https://bugs.webkit.org/show_bug.cgi?id=25004
   24710 
   24711         * bindings/v8/V8EventListenerList.cpp: Added.
   24712         * bindings/v8/V8EventListenerList.h: Added.
   24713 
   24714 2009-04-02  Michael Nordman  <michaeln (a] google.com>
   24715 
   24716         Reviewed by Darin Fisher.
   24717 
   24718         Chromium's ResourceRequest and ResourceResponse structs need some new data members.
   24719         https://bugs.webkit.org/show_bug.cgi?id=24897
   24720 
   24721         These fields are needed to facilitate Chromium's implementation of the HTML5
   24722         ApplicationCache feature. We need to know what frame (or context) is doing the
   24723         requesting, and from what cache the resulting resource was retrieved.
   24724 
   24725         No change in functionality, so no tests.
   24726 
   24727         * platform/network/chromium/ResourceRequest.h:
   24728         (WebCore::ResourceRequest::ResourceRequest):
   24729         (WebCore::ResourceRequest::appCacheContextID):
   24730         (WebCore::ResourceRequest::setAppCacheContextID):
   24731         * platform/network/chromium/ResourceResponse.h:
   24732         (WebCore::ResourceResponse::ResourceResponse):
   24733         (WebCore::ResourceResponse::getAppCacheID):
   24734         (WebCore::ResourceResponse::setAppCacheID):
   24735 
   24736 2009-04-02  David Hyatt  <hyatt (a] apple.com>
   24737 
   24738         Reviewed by Darin Adler
   24739 
   24740         Fix for https://bugs.webkit.org/show_bug.cgi?id=24643.
   24741         
   24742         Make sure images just ignore HTTP error codes and keep loading anyway.  Only <object> checks http error codes and falls back.  Everyone
   24743         else just ignores it and displays the image anyway.
   24744 
   24745         Added http/tests/misc/image-error.html
   24746 
   24747         * html/HTMLImageLoader.cpp:
   24748         (WebCore::HTMLImageLoader::notifyFinished):
   24749         * loader/CachedImage.cpp:
   24750         (WebCore::CachedImage::CachedImage):
   24751         * loader/CachedImage.h:
   24752         (WebCore::CachedImage::httpStatusCodeError):
   24753         (WebCore::CachedImage::httpStatusCodeErrorOccurred):
   24754         * loader/CachedResource.h:
   24755         (WebCore::CachedResource::httpStatusCodeError):
   24756         * loader/loader.cpp:
   24757         (WebCore::Loader::Host::didReceiveData):
   24758 
   24759 2009-04-02  Jian Li  <jianli (a] chromium.org>
   24760 
   24761         Reviewed by Dimitri Glazkov.
   24762 
   24763         Add XHR constructor in WorkerContext.idl for V8 bindings.
   24764         https://bugs.webkit.org/show_bug.cgi?id=24962
   24765 
   24766         * workers/WorkerContext.idl:
   24767 
   24768 2009-04-02  Ben Murdoch  <benm (a] google.com>
   24769 
   24770         Fix Bug 19743: Release build fails on 32-bit Windows
   24771 
   24772         <https://bugs.webkit.org/show_bug.cgi?id=19743>
   24773 
   24774         Combines all the HTML element cpp files into one to help reduce the
   24775         size of WebCore.lib so we can build in release mode on 32bit Windows.
   24776 
   24777         Reviewed by Adam Roben.
   24778 
   24779         * WebCore.vcproj/WebCore.vcproj: Excluded all the separate
   24780         HTML*Element.cpp files from the build. Added HTMLElementsAllInOne.cpp
   24781         to the build.
   24782         * html/HTMLElementsAllInOne.cpp: Added.
   24783 
   24784 2009-04-02  Simon Fraser  <simon.fraser (a] apple.com>
   24785 
   24786         Reviewed by Darin Adler
   24787 
   24788         https://bugs.webkit.org/show_bug.cgi?id=24999
   24789         
   24790         Optimize hit testing with transforms.
   24791 
   24792         * rendering/RenderBox.cpp:
   24793         (WebCore::RenderBox::mapLocalToContainer):
   24794         (WebCore::RenderBox::mapAbsoluteToLocalPoint):
   24795         getTransformFromContainer() change to return the matrix by reference.
   24796 
   24797         * rendering/RenderLayer.cpp:
   24798         (WebCore::RenderLayer::update3DTransformedDescendantStatus):
   24799         The method failed to set m_3DTransformedDescendantStatusDirty to false,
   24800         so did the work every time.
   24801 
   24802         (WebCore::RenderLayer::createLocalTransformState):
   24803         Only call the expensive getTransformFromContainer() if there is a transform,
   24804         otherwise we just have a translation.
   24805 
   24806         * rendering/RenderObject.cpp:
   24807         (WebCore::RenderObject::getTransformFromContainer):
   24808         * rendering/RenderObject.h:
   24809         Change transformFromContainer() to getTransformFromContainer(), and return
   24810         the matrix by reference to reduce copying.
   24811         New enum values for arguments for readability.
   24812 
   24813         * rendering/TransformState.cpp:
   24814         (WebCore::TransformState::move):
   24815         (WebCore::TransformState::applyTransform):
   24816         (WebCore::HitTestingTransformState::translate):
   24817         New method that adds a translation to the accumulated matrix, optionally
   24818         without flattening. Cheaper than applyTransform().
   24819 
   24820         (WebCore::HitTestingTransformState::applyTransform):
   24821         (WebCore::HitTestingTransformState::flatten):
   24822         (WebCore::HitTestingTransformState::flattenWithTransform):
   24823         Add flattenWithTransform(), which is a helper that allows us to
   24824         avoid doing the inverse() twice.
   24825 
   24826         * rendering/TransformState.h:
   24827         (WebCore::TransformState::):
   24828         (WebCore::TransformState::move):
   24829         (WebCore::HitTestingTransformState::):
   24830         New method on HitTestingTransformState that adds a translation to the
   24831         accumulated matrix, optionally without flattening. Cheaper than applyTransform().
   24832         New enum values for arguments for readability.
   24833 
   24834 2009-04-02  Simon Fraser  <simon.fraser (a] apple.com>
   24835 
   24836         Reviewed by Dan Bernstein
   24837         
   24838         https://bugs.webkit.org/show_bug.cgi?id=24648
   24839         
   24840         Optimize common code paths in TransformationMatrix.
   24841 
   24842         * platform/graphics/transforms/TransformationMatrix.cpp:
   24843         (WebCore::TransformationMatrix::translate):
   24844         (WebCore::TransformationMatrix::translate3d):
   24845         Optimize to avoid matrix copy.
   24846         
   24847         (WebCore::TransformationMatrix::isInvertible):
   24848         Test for identity and translation matrices before computing
   24849         the determinant.
   24850         
   24851         (WebCore::TransformationMatrix::inverse):
   24852         Optimize for identity matrix and translations.
   24853         
   24854         * platform/graphics/transforms/TransformationMatrix.h:
   24855         (WebCore::TransformationMatrix::isIdentityOrTranslation):
   24856         Utility method.
   24857 
   24858 2009-04-02  Gustavo Noronha Silva  <gustavo.noronha (a] collabora.co.uk>
   24859 
   24860         Reviewed by Alexey Proskuryakov.
   24861 
   24862         https://bugs.webkit.org/show_bug.cgi?id=24930
   24863         [Gtk] ISO files content is displayed inside the webview instead of being downloaded
   24864 
   24865         Also sniff content of types declared as text/plain. This is
   24866         justified by the fact that it is common to have Apache HTTP
   24867         servers configured to send text/plain as Content-Type by default.
   24868 
   24869         * platform/network/soup/ResourceHandleSoup.cpp:
   24870         (WebCore::gotHeadersCallback):
   24871 
   24872 2009-04-02  Gustavo Noronha Silva  <gustavo.noronha (a] collabora.co.uk>
   24873 
   24874         Reviewed by Alexey Proskuryakov.
   24875 
   24876         Protect the handle when notifying the client that the response was
   24877         received also in gotChunkCallback, or we crash in didReceiveData
   24878         when the load is cancelled in didReceiveResponse.
   24879 
   24880         * platform/network/soup/ResourceHandleSoup.cpp:
   24881         (WebCore::gotChunkCallback):
   24882 
   24883 2009-04-02  Gustavo Noronha Silva  <gustavo.noronha (a] collabora.co.uk>
   24884 
   24885         Reviewed by Alexey Proskuryakov.
   24886 
   24887         https://bugs.webkit.org/show_bug.cgi?id=25001
   24888         Crash when content type parameters have no value
   24889 
   24890         Handle the case where a Content-Type header parameter has no
   24891         value (i.e. no = character), to work-around a bug in libsoup.
   24892 
   24893         * platform/network/soup/ResourceHandleSoup.cpp:
   24894         (WebCore::fillResponseFromMessage):
   24895 
   24896 2009-04-02  Yael Aharon  <yael.aharon (a] nokia.com>
   24897 
   24898         Reviewed by Simon Hausmann.
   24899 
   24900         https://bugs.webkit.org/show_bug.cgi?id=24490
   24901 
   24902         Enable web workers in Qt.
   24903 
   24904         * WebCore.pro:
   24905 
   24906 2009-04-01  Alexey Proskuryakov  <ap (a] webkit.org>
   24907 
   24908         Reviewed by Darin Adler. Based on work of Julien Chaffraix.
   24909 
   24910         https://bugs.webkit.org/show_bug.cgi?id=22475
   24911         REGRESSION: Async XMLHttpRequest never finishes on nonexistent files anymore
   24912 
   24913         https://bugs.webkit.org/show_bug.cgi?id=24886
   24914         XHR requests opened when offline never return
   24915 
   24916         Tests: fast/xmlhttprequest/xmlhttprequest-nonexistent-file.html
   24917                http/tests/xmlhttprequest/state-after-network-error.html
   24918 
   24919         * xml/XMLHttpRequest.cpp:
   24920         (WebCore::XMLHttpRequest::callReadyStateChangeListener): Only dispatch load event if this
   24921         wasn't an error.
   24922         (WebCore::XMLHttpRequest::abort): Fixed formatting.
   24923         (WebCore::XMLHttpRequest::genericError): Change state to DONE and dispatch readystatechange.
   24924         The comment saying that this doesn't match Firefox was added in r33559 without explanation
   24925         or tests, and I don't think that it's accurate. Also, Firefox and Safari 3 both change state
   24926         to HEADERS_RECEIVED before DONE on error - this doesn't match the spec, and I doubt
   24927         that any code depends on this, so I went with the spec here.
   24928 
   24929 2009-04-01  Steve Falkenburg  <sfalken (a] apple.com>
   24930 
   24931         https://bugs.webkit.org/show_bug.cgi?id=24997
   24932         Race conditions in icon database threading code
   24933         
   24934         m_syncThreadRunning set was mistakenly eliminated in r27717.
   24935         This reintroduces it.
   24936 
   24937         Reviewed by Oliver Hunt.
   24938 
   24939         * loader/icon/IconDatabase.cpp:
   24940         (WebCore::IconDatabase::open): Set m_syncThreadRunning.
   24941 
   24942 2009-04-01  Antti Koivisto  <antti (a] apple.com>
   24943 
   24944         Reviewed by Darin Adler.
   24945 
   24946         <rdar://problem/6748609> Use ActiveDOMObject to suspend marquees
   24947         
   24948         Make marquees ActiveDOMObjects, get rid of the special suspension code.
   24949 
   24950         * html/HTMLMarqueeElement.cpp:
   24951         (WebCore::HTMLMarqueeElement::HTMLMarqueeElement):
   24952         (WebCore::HTMLMarqueeElement::canSuspend):
   24953         (WebCore::HTMLMarqueeElement::suspend):
   24954         (WebCore::HTMLMarqueeElement::resume):
   24955         * html/HTMLMarqueeElement.h:
   24956         * page/Frame.cpp:
   24957         (WebCore::Frame::clearTimers):
   24958         * rendering/RenderLayer.cpp:
   24959         * rendering/RenderLayer.h:
   24960         (WebCore::RenderLayer::marquee):
   24961 
   24962 2009-04-01  Dean Jackson  <dino (a] apple.com>
   24963 
   24964         Reviewed by Darin Adler
   24965 
   24966         Make constant values static in previous commit, as suggested
   24967         by Darin.
   24968 
   24969         * rendering/RenderVideo.cpp:
   24970 
   24971 2009-04-01  Dean Jackson  <dino (a] apple.com>
   24972 
   24973         Reviewed by Simon Fraser
   24974 
   24975         https://bugs.webkit.org/show_bug.cgi?id=24993
   24976 
   24977         Standalone media should have a smaller instrinsic
   24978         height.
   24979 
   24980         * rendering/RenderVideo.cpp:
   24981         (WebCore::RenderVideo::RenderVideo):
   24982 
   24983 2009-04-01  Darin Adler  <darin (a] apple.com>
   24984 
   24985         Reviewed by Geoff Garen.
   24986 
   24987         Bug 22378: Crash submitting a form when parsing an XHTML document
   24988         https://bugs.webkit.org/show_bug.cgi?id=22378
   24989         rdar://problem/6388377
   24990 
   24991         Tests: fast/loader/submit-form-while-parsing-1.xhtml
   24992                fast/loader/submit-form-while-parsing-2.html
   24993 
   24994         * WebCore.base.exp: Updated.
   24995 
   24996         * history/HistoryItem.cpp:
   24997         (WebCore::HistoryItem::HistoryItem): Renamed m_subItems to m_children.
   24998         Used uncheckedAppend because we reserveInitialCapacity.
   24999         (WebCore::HistoryItem::addChildItem): Renamed m_subItems to m_children.
   25000         Added an assertion that this is only used to add items that don't have
   25001         duplicate frame names.
   25002         (WebCore::HistoryItem::setChildItem): Added. Replaces an existing item
   25003         if any, preserving the isTargetItem flag.
   25004         (WebCore::HistoryItem::childItemWithTarget): Renamed from childItemWithName
   25005         for consistency with the other functions here that all call the frame name the
   25006         "target". Also updated for rename of m_subItems to m_children.
   25007         (WebCore::HistoryItem::findTargetItem): Renamed from recurseToFindTargetItem.
   25008         Removed unneeded size check.
   25009         (WebCore::HistoryItem::targetItem): Changed to always return the top item
   25010         if no item has the isTargetItem flag set. The old version would instead return
   25011         0 in some cases, but return the top item if it had no children.
   25012         (WebCore::HistoryItem::children): Renamed m_subItems to m_children.
   25013         (WebCore::HistoryItem::hasChildren): Ditto.
   25014         (WebCore::HistoryItem::showTreeWithIndent): Ditto.
   25015 
   25016         * history/HistoryItem.h: Name changes.
   25017 
   25018         * html/HTMLFormElement.cpp:
   25019         (WebCore::HTMLFormElement::submit): Create and pass a FormState instead of
   25020         attaching "recorded form values" and "form about to be submitted" to the frame
   25021         loader. Parameter work fine for this; there's no need to store state on the
   25022         FrameLoader.
   25023 
   25024         * loader/FormState.cpp:
   25025         (WebCore::FormState::FormState): Adopt a vector instead of copying a hash map.
   25026         (WebCore::FormState::create): Ditto.
   25027         * loader/FormState.h: Update to use a vector that we adopt instead of hash map
   25028         that we copy for auto-fill text field values.
   25029 
   25030         * loader/FrameLoader.cpp:
   25031         (WebCore::ScheduledRedirection::ScheduledRedirection): Added a new case for
   25032         form submissions and turned the "wasDuringLoad" state into a separate boolean
   25033         instead of using a special redirection type to track it.
   25034         (WebCore::FrameLoader::createWindow): Updated for name and argument change of
   25035         loadFrameRequest.
   25036         (WebCore::FrameLoader::urlSelected): Ditto.
   25037         (WebCore::FrameLoader::submitForm): Removed the "deferred form submission"
   25038         machinery, replacing it with the "scheduled redirection" mechanism, shared
   25039         with other kinds of redirection and navigation. Moved frame targeting here
   25040         so we can schedule the redirection on the right frame. Moved the multiple
   25041         form submission protection here. Moved the code to implement the rule that
   25042         m_navigationDuringLoad was used for here too.
   25043         (WebCore::FrameLoader::didOpenURL): Use the new wasDuringLoad flag instead
   25044         of the locationChangeDuringLoad type to detect location change during a load.
   25045         (WebCore::FrameLoader::executeScript): Removed call to now-obsolete function,
   25046         submitFormAgain.
   25047         (WebCore::FrameLoader::scheduleLocationChange): Moved the code to stop loading
   25048         out of this function into scheduleRedirection, so it can be shared with the
   25049         new scheduleFormSubmission function.
   25050         (WebCore::FrameLoader::scheduleFormSubmission): Added. Almost the same as
   25051         scheduleLocationChange, but with the arguments for a form submission.
   25052         (WebCore::FrameLoader::scheduleRefresh): Updated for the change to the
   25053         duringLoad flag.
   25054         (WebCore::FrameLoader::isLocationChange): Added case for formSubmission
   25055         and removed case for locationChangeDuringLoad.
   25056         (WebCore::FrameLoader::redirectionTimerFired): Ditto. Also removed unneeded
   25057         completeURL call and just use KURL constructor to match the other cases.
   25058         (WebCore::FrameLoader::provisionalLoadStarted): Removed the code to set up
   25059         the m_navigationDuringLoad, which is no longer needed. The new version of
   25060         this is in the submitForm function and sets the lockHistory boolean.
   25061         (WebCore::FrameLoader::scheduleRedirection): Moved the code to stop a load
   25062         in here that used to be in scheduleLocationChange.
   25063         (WebCore::FrameLoader::startRedirectionTimer): Added case for formSubmission
   25064         and removed case for locationChangeDuringLoad.
   25065         (WebCore::FrameLoader::stopRedirectionTimer): Ditto.
   25066         (WebCore::FrameLoader::completed): Removed call to now-obsolete function,
   25067         submitFormAgain.
   25068         (WebCore::FrameLoader::loadFrameRequest): Renamed from
   25069         loadFrameRequestWithFormAndValues. Replaced form element and form values
   25070         argument with a single FormState argument. Changed frame targeting code
   25071         to use the source frame in the case of a form submission to better match
   25072         the actual target frame.
   25073         (WebCore::FrameLoader::loadURL): Don't search for existing frames in the
   25074         form submission case since we already did that in the submitForm function.
   25075         (WebCore::FrameLoader::clientRedirected): Changed to work with the
   25076         m_isExecutingJavaScriptFormAction data member directly instead of taking
   25077         it as a function parameter.
   25078         (WebCore::FrameLoader::loadPostRequest): Don't search for existing frames
   25079         in the form submission case since we already did that in the submitForm
   25080         function.
   25081         (WebCore::FrameLoader::addBackForwardItemClippedAtTarget): Moved comment
   25082         in here that was misplaced elsewhere in the file.
   25083         (WebCore::FrameLoader::findFrameForNavigation): Changed to use the early
   25084         return idiom.
   25085         (WebCore::FrameLoader::recursiveGoToItem): Updated for HistoryItem changes.
   25086         (WebCore::FrameLoader::childFramesMatchItem): Ditto.
   25087         (WebCore::FrameLoader::updateHistoryForStandardLoad): Removed the
   25088         m_navigationDuringLoad logic; that's now handled by setting lockHistory
   25089         to true in the submitForm function.
   25090         (WebCore::FrameLoader::updateHistoryForRedirectWithLockedBackForwardList):
   25091         Use the new setChildItem function so we don't get multiple items for the
   25092         same frame name in the history item tree in the back/forward list.
   25093 
   25094         * loader/FrameLoader.h: Renamed loadFrameRequestWithFormAndValues to
   25095         loadFrameRequest and made it take a form state object instead of the
   25096         form element and form values. Removed the unused functions
   25097         loadEmptyDocumentSynchronously, provisionalDocumentLoader,
   25098         notifyIconChnaged, and updateBaseURLForEmptyDocument. Changed the
   25099         submitForm function to take a form state argument. Eliminated the
   25100         clearRecordedFormValues, setFormAboutToBeSubmitted, and recordFormValue
   25101         functions, which are replaced by the form state arguments to submitForm
   25102         and loadFrameRequest. Removed the isJavaScriptFormAction argument from
   25103         the clientRedirected function; instead it looks at a data member directly.
   25104         Eliminated the submitFormAgain and overload of the submitForm function;
   25105         these are now subsumed into the remaining submitForm function and the
   25106         scheduleFormSubmission function. Removed unused and obsolete data
   25107         members m_navigationDuringLoad, m_deferredFormSubmission,
   25108         m_formAboutToBeSubmitted and m_formValuesAboutToBeSubmitted.
   25109 
   25110         * page/ContextMenuController.cpp:
   25111         (WebCore::ContextMenuController::contextMenuItemSelected):
   25112         Updated for name and argument change of loadFrameRequest.
   25113 
   25114         * page/Frame.cpp:
   25115         (WebCore::Frame::~Frame): Removed call to the now-unneeded
   25116         clearRecordedFormValues function.
   25117 
   25118 2009-04-01  Dimitri Glazkov  <dglazkov (a] chromium.org>
   25119 
   25120         Unreviewed, fixing previous commit.
   25121 
   25122         https://bugs.webkit.org/show_bug.cgi?id=24994
   25123         Revert V8DOMMap.cpp change which accidentally snuck into the previous
   25124         commit.
   25125 
   25126         * bindings/v8/V8DOMMap.cpp: Revert change in previous commit.
   25127 
   25128 2009-04-01  Dimitri Glazkov  <dglazkov (a] chromium.org>
   25129 
   25130         Reviewed by Darin Fisher.
   25131 
   25132         https://bugs.webkit.org/show_bug.cgi?id=24994
   25133         Fix miscellaneous merge/upstreaming divergencies in Chromium port.
   25134 
   25135         * bindings/v8/V8Collection.h: Added an include.
   25136         * platform/KURLGoogle.cpp:
   25137         (WebCore::KURL::baseAsString): Added to match KURL.cpp.
   25138         * platform/chromium/ClipboardChromium.cpp: Added an include.
   25139 
   25140 2009-04-01  Dimitri Glazkov  <dglazkov (a] chromium.org>
   25141 
   25142         Reviewed by Timothy Hatcher.
   25143 
   25144         https://bugs.webkit.org/show_bug.cgi?id=24989
   25145         Refactor InspectorResource to use ScriptObject/FunctionCall.
   25146 
   25147         * bindings/js/JSInspectorControllerCustom.cpp:
   25148         (WebCore::JSInspectorController::addResourceSourceToFrame): Tweaked to use
   25149             a more appropriate type conversion.
   25150         (WebCore::JSInspectorController::getResourceDocumentNode): Tweaked to
   25151             accommodate for InspectorResource refactoring.
   25152         * bindings/js/ScriptFunctionCall.cpp:
   25153         (WebCore::ScriptFunctionCall::appendArgument): Added long long type to match
   25154             existing jsNumber call signature.
   25155         * bindings/js/ScriptFunctionCall.h: Declaration for above.
   25156         * bindings/js/ScriptObject.cpp:
   25157         (WebCore::createEmptyObject): Added.
   25158         (WebCore::ScriptObject::ScriptObject):
   25159         (WebCore::ScriptObject::set): Added a bunch of property setters.
   25160         * bindings/js/ScriptObject.h: Declarations for above.
   25161         * inspector/InspectorController.cpp: Moved all InspectorResource-managing code
   25162             to InspectorResource.cpp
   25163         (WebCore::InspectorController::populateScriptObjects): Changed to use
   25164             refactored InspectorResource.
   25165         (WebCore::InspectorController::resetScriptObjects): Ditto.
   25166         (WebCore::InspectorController::pruneResources): Ditto.
   25167         (WebCore::InspectorController::didCommitLoad): Ditto.
   25168         (WebCore::InspectorController::addResource): Ditto.
   25169         (WebCore::InspectorController::removeResource): Ditto.
   25170         (WebCore::InspectorController::didLoadResourceFromMemoryCache): Ditto.
   25171         (WebCore::InspectorController::identifierForInitialRequest): Ditto.
   25172         (WebCore::InspectorController::willSendRequest): Ditto.
   25173         (WebCore::InspectorController::didReceiveResponse): Ditto.
   25174         (WebCore::InspectorController::didReceiveContentLength): Ditto.
   25175         (WebCore::InspectorController::didFinishLoading): Ditto.
   25176         (WebCore::InspectorController::didFailLoading): Ditto,
   25177         (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest): Ditto.
   25178         (WebCore::InspectorController::scriptImported): Ditto.
   25179         * inspector/InspectorController.h: Removed InspectorResource-managing code decls
   25180             and tweaked some signatures to use ScriptString and long long for identifier.
   25181         * inspector/InspectorController.idl: Changed to use long long for identifier.
   25182         * inspector/InspectorResource.cpp: Refactored to use ScriptObject/FunctionCall.
   25183         (WebCore::InspectorResource::InspectorResource): Ditto.
   25184         (WebCore::InspectorResource::~InspectorResource): Ditto.
   25185         (WebCore::InspectorResource::createCached): Added.
   25186         (WebCore::InspectorResource::updateRequest): Added.
   25187         (WebCore::InspectorResource::updateResponse): Added.
   25188         (WebCore::createHeadersObject): Added.
   25189         (WebCore::InspectorResource::createScriptObject): Added.
   25190         (WebCore::InspectorResource::updateScriptObject): Added.
   25191         (WebCore::InspectorResource::releaseScriptObject): Added.
   25192         (WebCore::InspectorResource::type): Tweaked to use ScriptString.
   25193         (WebCore::InspectorResource::setXMLHttpResponseText): Added.
   25194         (WebCore::InspectorResource::sourceString): Tweaked to use ScriptString.
   25195         (WebCore::InspectorResource::startTiming): Added.
   25196         (WebCore::InspectorResource::markResponseReceivedTime): Added.
   25197         (WebCore::InspectorResource::endTiming): Added.
   25198         (WebCore::InspectorResource::markFailed): Added.
   25199         (WebCore::InspectorResource::addLength): Added.
   25200         * inspector/InspectorResource.h: Added decls for newly refactored-in methods.
   25201         (WebCore::InspectorResource::create): Added.
   25202         (WebCore::InspectorResource::isSameLoader): Added.
   25203         (WebCore::InspectorResource::markMainResource): Added.
   25204         (WebCore::InspectorResource::identifier): Added.
   25205         (WebCore::InspectorResource::requestURL): Added.
   25206         (WebCore::InspectorResource::frame): Added.
   25207         (WebCore::InspectorResource::mimeType): Added.
   25208         (WebCore::InspectorResource::Changes::Changes): Added new class to track
   25209             resource changes.
   25210         (WebCore::InspectorResource::Changes::hasChange): Added.
   25211         (WebCore::InspectorResource::Changes::set): Added.
   25212         (WebCore::InspectorResource::Changes::clear): Added.
   25213         (WebCore::InspectorResource::Changes::setAll): Added.
   25214         (WebCore::InspectorResource::Changes::clearAll): Added.
   25215 
   25216 2009-04-01  Tony Chang  <tony (a] chromium.org>
   25217 
   25218         Reviewed by Darin Fisher.
   25219 
   25220         Ensure the right click doesn't deselect text under it.  This was
   25221         happening in the Chromium and GTK+ ports because they don't select
   25222         the text under the cursor on right click.
   25223         
   25224         This was regressed in r41715, https://bugs.webkit.org/show_bug.cgi?id=19737
   25225         
   25226         https://bugs.webkit.org/show_bug.cgi?id=24946
   25227 
   25228         Test: fast/events/context-no-deselect.html
   25229 
   25230         * page/EventHandler.cpp:
   25231         (WebCore::EventHandler::handleMouseReleaseEvent):
   25232 
   25233 2009-04-01  Simon Fraser  <simon.fraser (a] apple.com>
   25234 
   25235         Reviewed by Dave Hyatt
   25236 
   25237         https://bugs.webkit.org/show_bug.cgi?id=24991
   25238         
   25239         Need to use toRenderBoxModelObject(), not toRenderBox(), to test for layer()
   25240         when getting the transform.
   25241         
   25242         * rendering/RenderObject.cpp:
   25243         (WebCore::RenderObject::transformFromContainer):
   25244 
   25245 2009-03-31  Darin Adler  <darin (a] apple.com>
   25246 
   25247         Rolled out that last change until I can investigate the regression test failures it seems
   25248         to have caused.
   25249 
   25250         * dom/PositionIterator.cpp:
   25251         (WebCore::PositionIterator::decrement):
   25252         * dom/PositionIterator.h:
   25253         (WebCore::PositionIterator::PositionIterator):
   25254 
   25255 2009-03-31  Darin Adler  <darin (a] apple.com>
   25256 
   25257         Reviewed by Eric Seidel.
   25258 
   25259         Bug 24621: PositionIterator doesn't iterate "after last child" positions when going backwards
   25260         https://bugs.webkit.org/show_bug.cgi?id=24621
   25261 
   25262         * dom/PositionIterator.cpp:
   25263         (WebCore::PositionIterator::decrement): Make sure that when the parent has no children, we
   25264         don't ever use Position::uncheckedPreviousOffset. This is consistent with the forward
   25265         iterator, but also should never arise because of the fix below.
   25266         * dom/PositionIterator.h:
   25267         (WebCore::PositionIterator::PositionIterator): Fixed so m_offset will always be 0 when
   25268         the passed-in node has no children. Like the change above, this is consistent with the rest
   25269         of the class, although in the long run I think it's a bit strange to treat a <p> element
   25270         with no children differently than a <p> element with children.
   25271 
   25272 2009-03-31  Eric Carlson  <eric.carlson (a] apple.com>
   25273 
   25274         Reviewed by Simon Fraser.
   25275 
   25276         https://bugs.webkit.org/show_bug.cgi?id=24965
   25277         Bug 24965: HTMLMediaElement: network state changes can be missed
   25278         
   25279         * html/HTMLMediaElement.cpp:
   25280         (WebCore::HTMLMediaElement::setNetworkState): Always update m_networkState when the
   25281         state changes, even when no event needs to be fired.
   25282 
   25283 2009-03-31  Eric Carlson  <eric.carlson (a] apple.com>
   25284 
   25285         Reviewed by Darin Adler.
   25286         
   25287         https://bugs.webkit.org/show_bug.cgi?id=24964
   25288         Bug 24964: HTMLMediaElement: 'waiting' event may fire twice
   25289 
   25290         * html/HTMLMediaElement.cpp:
   25291         (WebCore::HTMLMediaElement::setReadyState): Only fire 'waiting' event once when ready state
   25292         drops below HAVE_FUTURE_DATA.
   25293 
   25294 2009-03-31  Eric Carlson  <eric.carlson (a] apple.com>
   25295 
   25296         Reviewed by Darin Adler.
   25297 
   25298         https://bugs.webkit.org/show_bug.cgi?id=24846
   25299         Bug 24846: HTMLMediaElement should implement 'autobuffer' attribute
   25300 
   25301         Add 'autobuffer' attrubute to media element. 'autobuffer' is a hint that
   25302         the author recommends downloading the entire resource optimistically, so the
   25303         attribute is made available to the media engine to use if it is able.
   25304 
   25305         Test: media/video-dom-autobuffer.html
   25306 
   25307         * html/HTMLAttributeNames.in: Add autobuffer.
   25308 
   25309         * html/HTMLMediaElement.cpp:
   25310         (WebCore::HTMLMediaElement::parseMappedAttribute): New.
   25311         (WebCore::HTMLMediaElement::autobuffer): Ditto.
   25312         (WebCore::HTMLMediaElement::setAutobuffer): Ditto.
   25313 
   25314         * html/HTMLMediaElement.h: Declare autobuffer and setAutobuffer.
   25315 
   25316         * html/HTMLMediaElement.idl: Add autobuffer.
   25317 
   25318         * platform/graphics/MediaPlayer.cpp:
   25319         (WebCore::MediaPlayer::MediaPlayer): Initialize m_autobuffer.
   25320         (WebCore::MediaPlayer::autobuffer): New.
   25321         (WebCore::MediaPlayer::setAutobuffer): Ditto.
   25322         * platform/graphics/MediaPlayer.h: Declare m_autobuffer, autobuffer and setAutobuffer
   25323 
   25324         * platform/graphics/MediaPlayerPrivate.h:
   25325         (WebCore::MediaPlayerPrivateInterface::setAutobuffer): Declare setAutobuffer.
   25326 
   25327 2009-03-31  Craig Schlenter  <craig.schlenter (a] gmail.com>
   25328 
   25329         Reviewed by Dimitri Glazkov.
   25330 
   25331         https://bugs.webkit.org/show_bug.cgi?id=24550
   25332         Check return value of vasprintf. This should keep gcc 4.3.3
   25333         happy rather than have it complain about attribute warn_unused_result.
   25334 
   25335         * dom/XMLTokenizerLibxml2.cpp:
   25336         (WebCore::XMLTokenizer::error):
   25337 
   25338 2009-03-31  Dean Jackson  <dino (a] apple.com>
   25339 
   25340         Style guide violation!
   25341 
   25342         * loader/MediaDocument.cpp:
   25343         (WebCore::MediaDocument::defaultEventHandler):
   25344 
   25345 2009-03-31  Dean Jackson  <dino (a] apple.com>
   25346 
   25347         Fix Tiger build.
   25348 
   25349         * loader/MediaDocument.cpp:
   25350         (WebCore::MediaDocument::defaultEventHandler):
   25351 
   25352 2009-03-31  Jian Li  <jianli (a] chromium.org>
   25353 
   25354         Reviewed by Darin Fisher.
   25355 
   25356         Upstream V8DOMMap for v8 bindings.
   25357         https://bugs.webkit.org/show_bug.cgi?id=24951
   25358 
   25359         * bindings/v8/V8DOMMap.cpp: Added.
   25360         * bindings/v8/V8DOMMap.h: Added.
   25361 
   25362 2009-03-31  Dean Jackson  <dino (a] apple.com>
   25363 
   25364         Reviewed by Simon Fraser.
   25365 
   25366         https://bugs.webkit.org/show_bug.cgi?id=24955
   25367 
   25368         Spacebar didn't play/pause in standalone MediaDocument
   25369 
   25370         * loader/MediaDocument.cpp:
   25371         (WebCore::MediaDocument::defaultEventHandler):
   25372 
   25373 2009-03-31  Alpha Lam  <hclam (a] chromium.org>
   25374 
   25375         Reviewed by Eric Seidel.
   25376 
   25377         https://bugs.webkit.org/show_bug.cgi?id=24901
   25378         Added the following methods to MediaPlayerPrivate for Chromium port.
   25379         void sizeChanged();
   25380         void rateChanged();
   25381         void durationChanged();
   25382 
   25383         The above changes are to reflect changes in MediaPlayer.cpp.
   25384         More details can be found in the original changeset.
   25385         http://trac.webkit.org/changeset/41907
   25386 
   25387         * platform/graphics/chromium/MediaPlayerPrivateChromium.h:
   25388 
   25389 2009-03-31  Rafael Weinstein  <rafaelw (a] chromium.org>
   25390 
   25391         Reviewed by Eric Seidel.
   25392 
   25393         https://bugs.webkit.org/show_bug.cgi?id=24947
   25394 
   25395         Special-case drawing text-shadow on win32, to let GDI draw in cases
   25396         when both fill & shadow color are opaque and the shadow has no blur.
   25397 
   25398         * platform/graphics/chromium/FontChromiumWin.cpp:
   25399         (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::drawGlyphs):
   25400         (WebCore::Font::drawComplexText):
   25401         * platform/graphics/skia/SkiaFontWin.cpp:
   25402         (WebCore::windowsCanHandleDrawTextShadow):
   25403         (WebCore::windowsCanHandleTextDrawing):
   25404         * platform/graphics/skia/SkiaFontWin.h:
   25405 
   25406 2009-03-31  Jeremy Moskovich  <jeremy (a] chromium.org>
   25407 
   25408         Reviewed by Darin Fisher.
   25409 
   25410         r42055 removed some functions in FrameLoader used by Chrome,
   25411         this CL backs out some of those changes to unbreak the Chrome build.
   25412 
   25413         https://bugs.webkit.org/show_bug.cgi?id=24949
   25414 
   25415         * WebCore.base.exp:
   25416         * loader/FrameLoader.cpp:
   25417         * loader/FrameLoader.h:
   25418 
   25419 2009-03-31  Jeremy Moskovich  <jeremy (a] chromium.org>
   25420 
   25421         Reviewed by Darin Adler.
   25422 
   25423         Build fixes for Chromium.
   25424 
   25425         https://bugs.webkit.org/show_bug.cgi?id=24945
   25426 
   25427         * dom/Document.h:
   25428         * platform/chromium/ClipboardChromium.cpp:
   25429         (WebCore::imageToMarkup):
   25430 
   25431 2009-03-31  Simon Hausmann  <simon.hausmann (a] nokia.com>
   25432 
   25433         Fix the Qt build.
   25434 
   25435         * dom/XMLTokenizerQt.cpp:
   25436         (WebCore::XMLTokenizer::XMLTokenizer): Use NamedNodeMap instead of NamedAttrMap.
   25437 
   25438 2009-03-30  Steve Falkenburg  <sfalken (a] apple.com>
   25439 
   25440         Don't create CFDataRef with a fixed size.
   25441         Fixes synchronous XMLHTTPRequests on Windows.
   25442         
   25443         Reviewed by Ada Chan.
   25444 
   25445         * platform/network/cf/ResourceHandleCFNet.cpp:
   25446         (WebCore::WebCoreSynchronousLoader::didReceiveData):
   25447 
   25448 2009-03-30  Darin Adler  <darin (a] apple.com>
   25449 
   25450         Reviewed by Sam Weinig.
   25451 
   25452         Bug 24594: PolicyDelegate NavigationAction is WebNavigationTypeOther instead of WebNavigationTypeReload
   25453         https://bugs.webkit.org/show_bug.cgi?id=24594
   25454         rdar://problem/6682110
   25455 
   25456         Test: fast/loader/reload-policy-delegate.html
   25457 
   25458         * loader/FrameLoader.cpp:
   25459         (WebCore::FrameLoader::loadWithDocumentLoader): Set the triggering action here where we know it's
   25460         the policy loader and can use m_policyLoadType rather than letting it get set inside
   25461         checkNavigationPolicy.
   25462 
   25463 2009-03-30  Timothy Hatcher  <timothy (a] apple.com>
   25464 
   25465         <rdar://problem/5838871> CrashTracer: 1483 crashes Quicklooking
   25466         in Finder (painting without up to date layout)
   25467 
   25468         Reviewed by Dan Bernstein.
   25469 
   25470         * page/FrameView.cpp:
   25471         (WebCore::FrameView::paintContents): Add an early return when
   25472         painting is attempted when layout is needed.
   25473 
   25474 2009-03-30  Greg Bolsinga  <bolsinga (a] apple.com>
   25475 
   25476         Reviewed by Simon Fraser.
   25477 
   25478         https://bugs.webkit.org/show_bug.cgi?id=24938
   25479         
   25480         Sort alphabetically.
   25481 
   25482         * css/CSSComputedStyleDeclaration.cpp:
   25483         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   25484 
   25485 2009-03-30  Greg Bolsinga  <bolsinga (a] apple.com>
   25486 
   25487         Reviewed by Simon Fraser.
   25488 
   25489         https://bugs.webkit.org/show_bug.cgi?id=24938
   25490         
   25491         Build fixes for building --3d-rendering and --no-svg
   25492 
   25493         * rendering/RenderLayerBacking.cpp:
   25494 
   25495 2009-03-30  Greg Bolsinga  <bolsinga (a] apple.com>
   25496 
   25497         Reviewed by Simon Fraser.
   25498         
   25499         https://bugs.webkit.org/show_bug.cgi?id=24938
   25500 
   25501         Build fixes when building --no-svg
   25502         
   25503         * css/CSSComputedStyleDeclaration.cpp:
   25504         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Add missing CSS properties
   25505         * css/CSSCursorImageValue.cpp:
   25506         (WebCore::CSSCursorImageValue::updateIfSVGCursorIsUsed): Handle unused param
   25507         * css/CSSParser.cpp:
   25508         (WebCore::CSSParser::parseValue): Add missing CSS properties
   25509         * css/CSSStyleSelector.cpp:
   25510         (WebCore::CSSStyleSelector::applyProperty): Add missing CSS properties
   25511         * dom/Node.cpp:
   25512         (WebCore::updateSVGElementInstancesAfterEventListenerChange): Handle unused param
   25513         * platform/graphics/Font.cpp:
   25514         (WebCore::Font::floatWidth): Handle unused param
   25515         * platform/graphics/SimpleFontData.cpp:
   25516         (WebCore::SimpleFontData::SimpleFontData): Handle unused param
   25517 
   25518 2009-03-30  Darin Adler  <darin (a] apple.com>
   25519 
   25520         Reviewed by Adam Roben.
   25521 
   25522         Bug 24916: REGRESSION: NavigationAction policy dispatch broken
   25523         https://bugs.webkit.org/show_bug.cgi?id=24916
   25524 
   25525         * loader/FrameLoader.cpp:
   25526         (WebCore::FrameLoader::loadURL): Rearrange the code so that the "event" PassRefPtr
   25527         is not used twice. This also optimizes the case where a frame name is specified,
   25528         but it's the name of the frame being loaded. Also called release in all the final
   25529         uses of FormState.
   25530 
   25531 2009-03-30  Darin Adler  <darin (a] apple.com>
   25532 
   25533         Reviewed by Adam Roben.
   25534 
   25535         Bug 24937: NamedNodeMap and NamedAttrMap should not be separate classes
   25536         https://bugs.webkit.org/show_bug.cgi?id=24937
   25537 
   25538         Also should fix the Windows COM bindings build.
   25539 
   25540         * bindings/scripts/CodeGeneratorJS.pm: Removed special case for NamedNodeMap.
   25541         * bindings/scripts/CodeGeneratorObjC.pm: Ditto.
   25542 
   25543         * dom/NamedAttrMap.h: Renamed class from NamedAttrMap to
   25544         NamedNodeMap and removed NamedNodeMap base class. Made the NamedNodeMap
   25545         functions all public and non-virtual. Removed virtualLength.
   25546 
   25547         * dom/NamedNodeMap.h: Replaced file with just an include
   25548         of NamedAttrMap.h. As a follow up we will rename the NamedAttrMap
   25549         files and remove this file.
   25550 
   25551         * bindings/js/JSNamedNodesCollection.cpp: Renamed from NamedAttrMap to NamedNodeMap.
   25552         * dom/Attr.h: Ditto.
   25553         * dom/Attribute.h: Ditto.
   25554         * dom/Document.cpp:
   25555         (WebCore::Document::importNode): Ditto.
   25556         * dom/Element.cpp:
   25557         (WebCore::Element::attributes): Ditto.
   25558         (WebCore::Element::setAttributeMap): Ditto.
   25559         (WebCore::Element::createAttributeMap): Ditto.
   25560         (WebCore::Element::insertedIntoDocument): Ditto.
   25561         (WebCore::Element::removedFromDocument): Ditto.
   25562         (WebCore::Element::openTagStartToString): Ditto.
   25563         (WebCore::Element::removeAttributeNode): Ditto.
   25564         (WebCore::Element::getAttributeNode): Ditto.
   25565         (WebCore::Element::getAttributeNodeNS): Ditto.
   25566         (WebCore::Element::hasAttribute): Ditto.
   25567         (WebCore::Element::hasAttributeNS): Ditto.
   25568         (WebCore::Element::normalizeAttributes): Ditto.
   25569         * dom/Element.h: Ditto.
   25570         * dom/NamedAttrMap.cpp:
   25571         (WebCore::NamedNodeMap::detachAttributesFromElement): Ditto.
   25572         (WebCore::NamedNodeMap::~NamedNodeMap): Ditto.
   25573         (WebCore::NamedNodeMap::isMappedAttributeMap): Ditto.
   25574         (WebCore::NamedNodeMap::getNamedItem): Ditto.
   25575         (WebCore::NamedNodeMap::getNamedItemNS): Ditto.
   25576         (WebCore::NamedNodeMap::removeNamedItem): Ditto.
   25577         (WebCore::NamedNodeMap::removeNamedItemNS): Ditto.
   25578         (WebCore::NamedNodeMap::setNamedItem): Ditto.
   25579         (WebCore::NamedNodeMap::item): Ditto.
   25580         (WebCore::NamedNodeMap::getAttributeItem): Ditto.
   25581         (WebCore::NamedNodeMap::clearAttributes): Ditto.
   25582         (WebCore::NamedNodeMap::detachFromElement): Ditto.
   25583         (WebCore::NamedNodeMap::setAttributes): Ditto.
   25584         (WebCore::NamedNodeMap::addAttribute): Ditto.
   25585         (WebCore::NamedNodeMap::removeAttribute): Ditto.
   25586         (WebCore::NamedNodeMap::mapsEquivalent): Ditto.
   25587         * dom/NamedMappedAttrMap.cpp:
   25588         (WebCore::NamedMappedAttrMap::clearAttributes): Ditto.
   25589         * dom/NamedMappedAttrMap.h:
   25590         (WebCore::NamedMappedAttrMap::NamedMappedAttrMap): Ditto.
   25591         * dom/Node.cpp:
   25592         (WebCore::Node::dumpStatistics): Ditto.
   25593         (WebCore::Node::isEqualNode): Ditto.
   25594         (WebCore::Node::isDefaultNamespace): Ditto.
   25595         (WebCore::Node::lookupNamespaceURI): Ditto.
   25596         (WebCore::Node::lookupNamespacePrefix): Ditto.
   25597         (WebCore::Node::compareDocumentPosition): Ditto.
   25598         * dom/Node.h: Ditto.
   25599         * dom/XMLTokenizerLibxml2.cpp:
   25600         (WebCore::XMLTokenizer::XMLTokenizer): Ditto.
   25601         * editing/ApplyStyleCommand.cpp:
   25602         (WebCore::isSpanWithoutAttributesOrUnstyleStyleSpan): Ditto.
   25603         (WebCore::isEmptyFontTag): Ditto.
   25604         (WebCore::areIdenticalElements): Ditto.
   25605         * editing/markup.cpp:
   25606         (WebCore::appendStartMarkup): Ditto.
   25607         (WebCore::completeURLs): Ditto.
   25608         * html/HTMLParser.cpp:
   25609         (WebCore::HTMLParser::handleError): Ditto.
   25610         * rendering/RenderPartObject.cpp:
   25611         (WebCore::RenderPartObject::updateWidget): Ditto.
   25612         * svg/SVGAnimatedProperty.h:
   25613         (WebCore::synchronizeProperty): Ditto.
   25614         * xml/XPathFunctions.cpp:
   25615         (WebCore::XPath::FunLang::evaluate): Ditto.
   25616         * xml/XPathStep.cpp:
   25617         (WebCore::XPath::Step::nodesInAxis): Ditto.
   25618 
   25619 2009-03-30  Gustavo Noronha Silva  <gustavo.noronha (a] collabora.co.uk>
   25620 
   25621         Reviewed by Holger Freyther.
   25622 
   25623         https://bugs.webkit.org/show_bug.cgi?id=24750
   25624         [GTK] requests download instead of displaying page
   25625 
   25626         Use soup facilities to append parameters to the content type, to
   25627         make that more robust;
   25628 
   25629         * platform/network/soup/ResourceHandleSoup.cpp:
   25630         (WebCore::fillResponseFromMessage):
   25631 
   25632 2009-03-30  David Kilzer  <ddkilzer (a] apple.com>
   25633 
   25634         <rdar://problem/6735683> Move SECTORDER_FLAGS from Xcode project to WebCore.xcconfig
   25635 
   25636         Reviewed by Timothy Hatcher, Mark Rowe and Darin Adler.
   25637 
   25638         * Configurations/Base.xcconfig: Moved Production definition of
   25639         SECTORDER_FLAGS to here from Xcode project file.
   25640         * Configurations/DebugRelease.xcconfig: Override SECTORDER_FLAGS
   25641         in Base.xcconfig to the empty string since it is not used for
   25642         Debug and Release configurations.
   25643         * WebCore.xcodeproj/project.pbxproj: Removed SECTORDER_FLAGS.
   25644 
   25645 2009-03-30  Adam Roben  <aroben (a] apple.com>
   25646 
   25647         Windows build fix after recent Node.idl changes
   25648 
   25649         * bindings/scripts/CodeGeneratorCOM.pm: Touched this to force sources
   25650         of classes that derive from Node to rebuild.
   25651 
   25652 2009-03-30  Adam Roben  <aroben (a] apple.com>
   25653 
   25654         Windows build fix
   25655 
   25656         * svg/graphics/SVGImage.cpp: Added a missing #include.
   25657 
   25658 2009-03-30  Mads Ager  <ager (a] chromium.org>
   25659 
   25660         Reviewed by Darin Adler.
   25661 
   25662         https://bugs.webkit.org/show_bug.cgi?id=24879
   25663         Add frame accessor to Screen, Console, and BarInfo objects. Add type 
   25664         accessor to BarInfo objects.
   25665 
   25666         In the V8 JavaScript bindings, we need access to the frame and
   25667         type for already created Screen, Console, and BarInfo objects in
   25668         order to keep their wrappers alive across GCs.
   25669 
   25670         * page/BarInfo.cpp:
   25671         (WebCore::BarInfo::frame): Added.
   25672         (WebCore::BarInfo::type): Added.
   25673         * page/BarInfo.h:
   25674         * page/Console.cpp:
   25675         (WebCore::Console::frame): Added.
   25676         * page/Console.h:
   25677         * page/Screen.cpp:
   25678         (WebCore::Screen::frame): Added.
   25679         * page/Screen.h:
   25680 
   25681 2009-03-29  Darin Adler  <darin (a] apple.com>
   25682 
   25683         Requested by Antti Koivisto.
   25684 
   25685         * loader/DocumentLoader.cpp:
   25686         (WebCore::DocumentLoader::subresource): Tweaked code to be a little clearer and added
   25687         a better comment.
   25688 
   25689 2009-03-29  Darin Adler  <darin (a] apple.com>
   25690 
   25691         Reviewed by Dan Bernstein.
   25692 
   25693         Bug 23445: Copying certain hidden text causes a crash
   25694         https://bugs.webkit.org/show_bug.cgi?id=23445
   25695         rdar://problem/6512520
   25696 
   25697         Test: editing/pasteboard/copy-display-none.html
   25698 
   25699         * editing/markup.cpp:
   25700         (WebCore::createMarkup): Added a check for the case where adjusting the start node moves
   25701         the start of the selection past the end of the range entirely. If we try to iterate we'll
   25702         never hit the end of the range and will probably crash iterating the rest of the document.
   25703 
   25704 2009-03-29  Darin Adler  <darin (a] apple.com>
   25705 
   25706         Reviewed by Dan Bernstein.
   25707 
   25708         Bug 24672: ASSERTION FAILURE: !m_purgeableData in WebCore::CachedResource::data() saving a WebArchive
   25709         https://bugs.webkit.org/show_bug.cgi?id=24672
   25710         rdar://problem/6574263
   25711 
   25712         I couldn't create a test case for this. In fact, the case in the bug doesn't exist any more,
   25713         but there is an Apple-internal website I was able to use to reproduce and fix.
   25714 
   25715         * loader/CachedResource.h: Made makePurgeable public.
   25716         * loader/DocumentLoader.cpp:
   25717         (WebCore::DocumentLoader::subresource): Call makePurgeable to make the resource non-purgeable
   25718         so we can get its data if it hasn't yet been purged.
   25719 
   25720 2009-03-29  Darin Adler  <darin (a] apple.com>
   25721 
   25722         Fix build again.
   25723 
   25724         * loader/EmptyClients.h: Fix typo in name of FormState.h.
   25725 
   25726 2009-03-29  Darin Adler  <darin (a] apple.com>
   25727 
   25728         Try to fix the release build.
   25729 
   25730         * history/CachedPage.cpp: Make include unconditional, not debug-only.
   25731 
   25732 2009-03-29  Greg Bolsinga  <bolsinga (a] apple.com>
   25733 
   25734         Undo that last build fix, since it turned out the file wasn't deleted.
   25735 
   25736         * WebCore.xcodeproj/project.pbxproj:
   25737 
   25738 2009-03-29  Greg Bolsinga  <bolsinga (a] apple.com>
   25739 
   25740         Fix build break by removing references to deleted header files.
   25741 
   25742         * WebCore.xcodeproj/project.pbxproj:
   25743 
   25744 2009-03-29  Darin Adler  <darin (a] apple.com>
   25745 
   25746         Try to fix the Windows build.
   25747 
   25748         * loader/EmptyClients.h: Added include of FormState.h.
   25749         * loader/MainResourceLoader.cpp: Ditto.
   25750 
   25751 2009-03-29  Dmitry Titov  <dimich (a] chromium.org>
   25752 
   25753         Reviewed by Darin Adler.
   25754 
   25755         https://bugs.webkit.org/show_bug.cgi?id=24926
   25756         Fix Chromium build break.
   25757 
   25758         * bindings/v8/custom/V8DOMWindowCustom.cpp:
   25759         (WebCore::CALLBACK_FUNC_DECL(DOMWindowShowModalDialog)): renamed 'features' into 'windowFeatures'.
   25760 
   25761 2009-03-29  Darin Adler  <darin (a] apple.com>
   25762 
   25763         Another attempt to fix the Qt build.
   25764 
   25765         * WebCore.pro: Added CheckedRadioButtons.cpp.
   25766 
   25767 2009-03-29  Darin Adler  <darin (a] apple.com>
   25768 
   25769         Reviewed by Cameron Zwarich.
   25770 
   25771         Bug 24921: remove include of HTMLFormElement.h from Document.h
   25772         https://bugs.webkit.org/show_bug.cgi?id=24921
   25773 
   25774         * GNUmakefile.am: Added CheckedRadioButtons source files.
   25775         * WebCore.scons: Ditto.
   25776         * WebCore.vcproj/WebCore.vcproj: Ditto.
   25777         * WebCore.xcodeproj/project.pbxproj: Ditto.
   25778         * WebCoreSources.bkl: Ditto.
   25779 
   25780         * bindings/objc/PublicDOMInterfaces.h: Changed type of parentElement to Element.
   25781 
   25782         * dom/CheckedRadioButtons.cpp: Copied from WebCore/html/HTMLFormElement.cpp.
   25783         Removed all the code except for CheckedRadioButtons, and moved that out to be
   25784         a namespace-level class instead of a member of HTMLFormElement.
   25785 
   25786         * dom/CheckedRadioButtons.h: Copied from WebCore/html/HTMLFormElement.h.
   25787         Removed all the code except for CheckedRadioButtons, and moved that out to be
   25788         a namespace-level class instead of a member of HTMLFormElement.
   25789 
   25790         * dom/Document.h: Removed unneeded includes, including HTMLFormElement.h.
   25791         Added include of CheckedRadioButtons.h. Changed uses of CheckedRadioButtons
   25792         class to use a namespace-level class instead of a member of HTMLFormElement.
   25793 
   25794         * dom/Node.idl: Changed the type of parentElement from Node to Element for
   25795         two reasons. 1) Node was incorrect, since parentElement returns an Element.
   25796         2) The bindings won't compile any more unless they know parentElement's
   25797         return value is an Element due to include changes.
   25798 
   25799         * html/HTMLFormElement.cpp: Moved definitions of the functions in the
   25800         CheckedRadioButtons class to the new CheckedRadioButtons.cpp.
   25801 
   25802         * html/HTMLFormElement.h: Moved definition of the CheckedRadioButtons
   25803         class to the new CheckedRadioButtons.h.
   25804 
   25805         * html/HTMLInputElement.cpp:
   25806         (WebCore::checkedRadioButtons): Changed use of CheckedRadioButtons
   25807         class to use a namespace-level class instead of a member of HTMLFormElement.
   25808 
   25809         * page/Chrome.cpp:
   25810         (WebCore::Chrome::createWindow): Tweaked formatting.
   25811 
   25812         * css/CSSGrammar.y: Added newly-needed include.
   25813         * dom/Range.cpp: Ditto.
   25814         * editing/BreakBlockquoteCommand.cpp: Ditto.
   25815         * editing/CompositeEditCommand.cpp: Ditto.
   25816         * editing/InsertLineBreakCommand.cpp: Ditto.
   25817         * editing/ModifySelectionListLevel.cpp: Ditto.
   25818         * editing/RemoveFormatCommand.cpp: Ditto.
   25819         * editing/TextIterator.cpp: Ditto.
   25820         * editing/VisiblePosition.cpp: Ditto.
   25821         * loader/DocLoader.cpp: Ditto.
   25822         * page/AccessibilityRenderObject.cpp: Ditto.
   25823         * page/Page.cpp: Ditto.
   25824         * rendering/RenderBlock.cpp: Ditto.
   25825         * rendering/RenderLayer.cpp: Ditto.
   25826         * rendering/RenderObject.h: Ditto.
   25827         * storage/LocalStorageArea.cpp: Ditto.
   25828         * storage/SessionStorageArea.cpp: Ditto.
   25829 
   25830 2009-03-29  Darin Adler  <darin (a] apple.com>
   25831 
   25832         Reviewed by Dan Bernstein.
   25833 
   25834         <rdar://problem/6015407> attr parsing should allow only identifiers
   25835 
   25836         Test: fast/css/attr-parsing.html
   25837 
   25838         * css/CSSParser.cpp:
   25839         (WebCore::CSSParser::parseContent): Allow only CSS_IDENT, and filter out
   25840         identifiers that start with "-".
   25841         * css/CSSPrimitiveValue.cpp:
   25842         (WebCore::CSSPrimitiveValue::cssText): Added a case for CSS_ATTR so the test
   25843         case works. This has the pleasant side effect of fixing a bug too.
   25844 
   25845 2009-03-29  Alexey Proskuryakov  <ap (a] webkit.org>
   25846 
   25847         <rdar://problem/6492712> Cross-origin redirects are not handled correctly.
   25848 
   25849         Forgot to save the file after applying changes for review comments.
   25850 
   25851         * platform/network/cf/ResourceHandleCFNet.cpp:
   25852         (WebCore::willSendRequest):
   25853         (WebCore::didReceiveResponse):
   25854         (WebCore::didReceiveData):
   25855         (WebCore::didSendBodyData):
   25856         (WebCore::didFinishLoading):
   25857         (WebCore::didFail):
   25858         (WebCore::willCacheResponse):
   25859         (WebCore::didReceiveChallenge):
   25860         (WebCore::WebCoreSynchronousLoader::willSendRequest):
   25861         (WebCore::WebCoreSynchronousLoader::didReceiveResponse):
   25862         (WebCore::WebCoreSynchronousLoader::didReceiveData):
   25863         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
   25864         (WebCore::WebCoreSynchronousLoader::didFail):
   25865         (WebCore::WebCoreSynchronousLoader::didReceiveChallenge):
   25866 
   25867 2009-03-28  Alexey Proskuryakov  <ap (a] webkit.org>
   25868 
   25869         Reviewed by Darin Adler.
   25870 
   25871         <rdar://problem/6492712> Cross-origin redirects are not handled correctly.
   25872 
   25873         Test: http/tests/xmlhttprequest/redirect-cross-origin-tripmine.html
   25874 
   25875         * platform/network/cf/ResourceHandleCFNet.cpp:
   25876         (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader):
   25877         (WebCore::ResourceHandle::loadResourceSynchronously):
   25878         (WebCore::WebCoreSynchronousLoader::willSendRequest):
   25879         (WebCore::WebCoreSynchronousLoader::didReceiveResponse):
   25880         (WebCore::WebCoreSynchronousLoader::didReceiveData):
   25881         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
   25882         (WebCore::WebCoreSynchronousLoader::didFail):
   25883         (WebCore::WebCoreSynchronousLoader::didReceiveChallenge):
   25884         (WebCore::WebCoreSynchronousLoader::load):
   25885         Match Mac behavior more closely - we shouldn't rely on underlying library handling of
   25886         synchronous requests.
   25887 
   25888         * loader/DocumentThreadableLoader.cpp: (WebCore::DocumentThreadableLoader::willSendRequest):
   25889         -[NSURLConnection cancel] doesn't fully cancel the connection if called from willSendRequest
   25890         delegate method for a redirect.
   25891 
   25892         * platform/network/mac/ResourceHandleMac.mm:
   25893         (-[WebCoreSynchronousLoader connection:willSendRequest:redirectResponse:]):
   25894         Match async behavior more closely.
   25895 
   25896 2009-03-28  Darin Adler  <darin (a] apple.com>
   25897 
   25898         Reviewed by Mark Rowe.
   25899 
   25900         Bug 24914: empty-string assertion crash when running storage tests
   25901         https://bugs.webkit.org/show_bug.cgi?id=24914
   25902 
   25903         * storage/Database.cpp:
   25904         (WebCore::Database::performOpenAndVerify): Don't store empty version strings
   25905         in the map, since empty strings are per-thread.
   25906 
   25907 2009-03-28  Dmitry Titov  <dimich (a] chromium.org>
   25908 
   25909         Reviewed by Dimitri Glazkov.
   25910 
   25911         https://bugs.webkit.org/show_bug.cgi?id=24910
   25912         Fixes for Chromium build.
   25913 
   25914         * bindings/v8/V8LazyEventListener.h: renamed IsInline() into virtualIsInline()
   25915         * bindings/v8/custom/V8CustomEventListener.h: ditto.
   25916         * dom/EventListener.h: used #if USE(JSC) to fix the build on non-JSC platform.
   25917 
   25918 2009-03-28  Dimitri Glazkov  <dglazkov (a] chromium.org>
   25919 
   25920         Not reviewed, correcting landing error.
   25921 
   25922         https://bugs.webkit.org/show_bug.cgi?id=24812
   25923         Custom bindings should be in v8/custom, not v8.
   25924 
   25925         * bindings/v8/V8HTMLDocumentCustom.cpp: Removed.
   25926         * bindings/v8/custom/V8HTMLDocumentCustom.cpp: Moved from parent dir.
   25927 
   25928 2009-03-28  Mike Belshe  <mike (a] belshe.com>
   25929 
   25930         Reviewed by Dimitri Glazkov.
   25931 
   25932         https://bugs.webkit.org/show_bug.cgi?id=24616
   25933         Add V8 custom bindings for DOMWindow.
   25934 
   25935         * bindings/v8/custom/V8DOMWindowCustom.cpp: Added.
   25936 
   25937 2009-03-28  Mike Belshe  <mike (a] belshe.com>
   25938 
   25939         Reviewed by Dimitri Glazkov.
   25940 
   25941         https://bugs.webkit.org/show_bug.cgi?id=24812
   25942         Add V8 custom bindings for HTMLDocument.
   25943 
   25944         * bindings/v8/V8HTMLDocumentCustom.cpp: Added.
   25945 
   25946 2009-03-27  Mark Rowe  <mrowe (a] apple.com>
   25947 
   25948         Reviewed by Sam Weinig.
   25949 
   25950         Fix two SVG test failures in 64-bit.
   25951 
   25952         getSubStringLength's arguments were declared as unsigned in the IDL and as signed long in the implementation.
   25953         This led to a value of -1 in JavaScript being converted to MAX_UINT in the bindings.  In 32-bit this was
   25954         identical to -1 when interpeted as signed long, but in 64-bit it was still equal to MAX_UINT.
   25955 
   25956         The solution for this is to use the IsIndex attribute on arguments that the SVG spec declares as "unsigned long"
   25957         but requires an exception be thrown when a negative value is passed.  This results in the JS bindings handling the
   25958         check for a negative value and lets the implementation treat the arguments purely as unsigned values.
   25959 
   25960         * svg/SVGTextContentElement.cpp:
   25961         (WebCore::SVGTextContentElement::getNumberOfChars):
   25962         (WebCore::SVGTextContentElement::getSubStringLength):
   25963         (WebCore::SVGTextContentElement::getStartPositionOfChar):
   25964         (WebCore::SVGTextContentElement::getEndPositionOfChar):
   25965         (WebCore::SVGTextContentElement::getExtentOfChar):
   25966         (WebCore::SVGTextContentElement::getRotationOfChar):
   25967         (WebCore::SVGTextContentElement::getCharNumAtPosition):
   25968         (WebCore::SVGTextContentElement::selectSubString):
   25969         * svg/SVGTextContentElement.h:
   25970         * svg/SVGTextContentElement.idl:
   25971 
   25972 2009-03-27  Darin Adler  <darin (a] apple.com>
   25973 
   25974         Reviewed by Sam Weinig.
   25975 
   25976         Get mailto code out of FrameLoader.
   25977 
   25978         * html/HTMLFormElement.cpp:
   25979         (WebCore::transferMailtoPostFormDataToURL): Added. Factored out the mailto
   25980         logic so HTMLFormElement::submit isn't full of ugly bits. This includes the
   25981         part of the logic that involves transformeing the URL that was previously
   25982         inside FrameLoader.
   25983         (WebCore::HTMLFormElement::submit): Call transferMailtoPostFormDataToURL and
   25984         also release the data for slightly less refcount churn.
   25985 
   25986         * loader/FrameLoader.cpp:
   25987         (WebCore::FrameLoader::submitForm): Removed all the special casing for mailto,
   25988         since HTMLFormElement now properly prepares both the URL and the form data.
   25989 
   25990 2009-03-27  Dan Bernstein  <mitz (a] apple.com>
   25991 
   25992         Reviewed by Mark Rowe.
   25993 
   25994         - fix <rdar://problem/6724514> A bit of OpenTypeUtilities cleanup
   25995 
   25996         * platform/graphics/chromium/FontCustomPlatformData.cpp:
   25997         (WebCore::EOTStream::EOTStream): Changed to use EOTHeader.
   25998         (WebCore::createFontCustomPlatformData): Ditto.
   25999         * platform/graphics/opentype/OpenTypeUtilities.cpp:
   26000         (WebCore::EOTHeader::EOTHeader): Added. Initializes the buffer size to
   26001         the size of an EOTPrefix.
   26002         (WebCore::EOTHeader::updateEOTSize): Added. Updates the size field in
   26003         the prefix.
   26004         (WebCore::EOTHeader::appendBigEndianString): Changed the static
   26005         appendBigEndianStringToEOTHeader() into this member function.
   26006         (WebCore::EOTHeader::appendPaddingShort): Added.
   26007         (WebCore::getEOTHeader): Changed to use EOTHeader.
   26008         * platform/graphics/opentype/OpenTypeUtilities.h:
   26009         (WebCore::EOTHeader::size):
   26010         (WebCore::EOTHeader::data):
   26011         (WebCore::EOTHeader::prefix):
   26012         * platform/graphics/win/FontCustomPlatformData.cpp:
   26013         (WebCore::EOTStream::EOTStream): Changed to use EOTHeader.
   26014         (WebCore::createFontCustomPlatformData): Ditto.
   26015 
   26016 2009-03-27  Darin Adler  <darin (a] apple.com>
   26017 
   26018         Reviewed by Sam Weinig.
   26019 
   26020         To prepare for work on a form loading fix, remove some unused functions,
   26021         consolidate some functions, and make many more functions private in
   26022         FrameLoader.
   26023 
   26024         * WebCore.base.exp: Remove some unused entry points, update another.
   26025 
   26026         * dom/Document.cpp:
   26027         (WebCore::Document::detach): Clear m_frame directly instead of using
   26028         clearFramePointer.
   26029         * dom/Document.h: Ditto.
   26030 
   26031         * loader/FrameLoader.cpp:
   26032         (WebCore::FrameLoader::urlSelected): Consolidate the two functions
   26033         of this name into a single function. Also changed the event argument
   26034         to be PassRefPtr<Event>.
   26035         (WebCore::FrameLoader::submitForm): Changed the event argument to
   26036         be PassRefPtr<Event>.
   26037         (WebCore::FrameLoader::scheduleLocationChange): Call completeURL
   26038         explicitly so we can remove the version of changeLocation that does
   26039         completeURL for us.
   26040         (WebCore::FrameLoader::redirectionTimerFired): Ditto.
   26041         (WebCore::FrameLoader::loadURLIntoChildFrame): Set m_provisionalHistoryItem
   26042         directly so we don't need a setProvisionalHistoryItem function.
   26043         (WebCore::FrameLoader::canCachePageContainingThisFrame): Get at
   26044         m_quickRedirectComing directly so we don't need a isQuickRedirectComing
   26045         function.
   26046         (WebCore::FrameLoader::logCanCacheFrameDecision): Ditto.
   26047         (WebCore::FrameLoader::loadFrameRequestWithFormAndValues): Changed the
   26048         event argument to be PassRefPtr<Event>.
   26049         (WebCore::FrameLoader::loadURL): Move the logic of the continueLoadWithData
   26050         function here because this is the only caller. If we want to make the
   26051         resulting function smaller we should refactor some other way. Also
   26052         streamlined the user-chosen encoding logic, but did not change what it does.
   26053         (WebCore::FrameLoader::finishedLoadingDocument): Changed the event argument
   26054         to be PassRefPtr<Event>.
   26055         (WebCore::FrameLoader::loadPostRequest): Ditto.
   26056         (WebCore::FrameLoader::receivedMainResourceError): Moved the logic from
   26057         the didNotOpenURL function here, since this was the only caller.
   26058 
   26059         * loader/FrameLoader.h: Removed include of FormState.h and used a forward
   26060         declaration instead. Removed unneeded forward declation of Element.
   26061         Moved many functions into the private section, and removed some other
   26062         unused or uneeded functions.
   26063 
   26064 2009-03-27  Xiaomei Ji  <xji (a] chromium.org>
   26065 
   26066         Reviewed by Dan Bernstein.
   26067 
   26068         Fix https://bugs.webkit.org/show_bug.cgi?id=24303
   26069         Using keyboard select RTL text, Highlights goes to opposite direction from Firefox and IE.
   26070 
   26071         Test: editing/selection/extend-selection.html
   26072 
   26073         * editing/SelectionController.cpp:
   26074         (WebCore::SelectionController::directionOfEnclosingBlock): Added
   26075         (WebCore::SelectionController::modifyExtendingRight): Added. Currenctly 
   26076         implemented for character and word granularity, all other granularities
   26077         are treated as "forward".
   26078         (WebCore::SelectionController::modifyExtendingForward): Renamed 
   26079         modifyExtendingRightForward() to this.
   26080         (WebCore::SelectionController::modifyExtendingLeft): Added. Currenctly
   26081         implemented for character and word granularity, all other granularities
   26082         are treated as "backward".
   26083         (WebCore::SelectionController::modifyExtendingBackward): Renamed
   26084         modifyExtendingLeftBackward() to this.
   26085         (WebCore::SelectionController::modify): Change to call either the 
   26086         left/right or backward/forward methods depending on the 'dir' argument
   26087         for extends.
   26088         * editing/SelectionController.h:
   26089 
   26090 2009-03-27  John Abd-El-Malek  <jam (a] google.com>
   26091 
   26092         Reviewed by Eric Seidel.
   26093 
   26094         https://bugs.webkit.org/show_bug.cgi?id=24836
   26095         Fix navigator.plugins.refresh(false) in Chromium.
   26096 
   26097         * plugins/chromium/PluginDataChromium.cpp:
   26098         (WebCore::PluginData::refresh):
   26099 
   26100 2009-03-27  Timothy Hatcher  <timothy (a] apple.com>
   26101 
   26102         Make scrollLeft, scrollTop, scrollWidth, and scrollHeight
   26103         virtual to fix the broken layout tests from my last commit.
   26104 
   26105         Reviewed by Mark Rowe.
   26106 
   26107         * dom/Element.cpp:
   26108         (WebCore::Element::scrollLeft):
   26109         (WebCore::Element::scrollTop):
   26110         (WebCore::Element::scrollWidth):
   26111         (WebCore::Element::scrollHeight):
   26112         * dom/Element.h:
   26113         * html/HTMLBodyElement.h:
   26114 
   26115 2009-03-27  Mark Rowe  <mrowe (a] apple.com>
   26116 
   26117         Reviewed by Sam Weinig.
   26118 
   26119         Fix <https://bugs.webkit.org/show_bug.cgi?id=24876>.
   26120         Bug 24876: fast/forms/select-max-length.html times out in debug builds due to HTMLSelectElement::setLength being O(N^2)
   26121 
   26122         * html/HTMLSelectElement.cpp:
   26123         (WebCore::HTMLSelectElement::setLength): Repeatedly calling remove to remove elements causes us to recalculate the list
   26124         items after each node is removed, leading to O(N^2) behaviour.  By inlining the batch removal in to setLength we can avoid
   26125         this gratuitous recalcuation.
   26126 
   26127 2009-03-27  Dirk Schulze  <krit (a] webkit.org>
   26128 
   26129         Reviewed by Eric Seidel.
   26130 
   26131         We don't support images for GtkCursors yet. We need a  placeholder to avoid crashes.
   26132         I took crosshair to have a common behavior with firefox.
   26133 
   26134         [GTK] SVG - Crash on setting the cursor icon
   26135         https://bugs.webkit.org/show_bug.cgi?id=24565
   26136 
   26137         * platform/gtk/CursorGtk.cpp:
   26138         (WebCore::Cursor::Cursor):
   26139 
   26140 2009-03-27  Timothy Hatcher  <timothy (a] apple.com>
   26141 
   26142         Remove redundant attributes and functions from IDL files that have the
   26143         same attributes and functions defined in the super class.
   26144 
   26145         Reviewed by Simon Fraser.
   26146 
   26147         * WebCore.xcodeproj/project.pbxproj: Remove DOMHTMLBodyElementPrivate.h.
   26148         * bindings/objc/PublicDOMInterfaces.h: Remove focus and blur from DOMHTMLElement.
   26149         * html/HTMLBodyElement.idl: Remove scrollLeft, scrollTop, scrollWidth
   26150         and scrollHeight.
   26151         * html/HTMLElement.idl: Remove blur and focus.
   26152 
   26153 2009-03-27  Adam Roben  <aroben (a] apple.com>
   26154 
   26155         Don't include substitute data URLs in global history redirect chains
   26156 
   26157         <rdar://6690169>
   26158 
   26159         Reviewed by Darin Adler.
   26160 
   26161         This might be testable if:
   26162           - support were added to DRT for providing substitute data on failed
   26163             loads
   26164           - support were added to DRT for dumping redirect chains
   26165 
   26166         I tried doing the above and was still unable to make a test.
   26167 
   26168         * loader/FrameLoader.cpp:
   26169         (WebCore::FrameLoader::updateHistoryForStandardLoad):
   26170         (WebCore::FrameLoader::updateHistoryForRedirectWithLockedBackForwardList):
   26171         Call updateGlobalHistoryRedirectLinks only if the load succeeded
   26172         (i.e., there is no unreachableURL). Previous the FrameLoaderClient
   26173         implementations were unconditionally calling
   26174         updateGlobalHistoryRedirectLinks from within updateGlobalHistory.
   26175 
   26176 2009-03-27  Peter Kasting  <pkasting (a] google.com>
   26177 
   26178         Reviewed by Eric Seidel.
   26179 
   26180         https://bugs.webkit.org/show_bug.cgi?id=24861
   26181         Chromium port did not render decorations for <input type="search">.
   26182         This copies RenderThemeWin.*.
   26183 
   26184         * css/themeChromiumWin.css: Removed.
   26185         * rendering/RenderThemeChromiumLinux.cpp:
   26186         (WebCore::RenderThemeChromiumLinux::extraDefaultStyleSheet):
   26187         (WebCore::RenderThemeChromiumLinux::adjustSearchFieldCancelButtonStyle):
   26188         (WebCore::RenderThemeChromiumLinux::paintSearchFieldCancelButton):
   26189         (WebCore::RenderThemeChromiumLinux::adjustSearchFieldDecorationStyle):
   26190         (WebCore::RenderThemeChromiumLinux::adjustSearchFieldResultsDecorationStyle):
   26191         (WebCore::RenderThemeChromiumLinux::paintSearchFieldResultsDecoration):
   26192         (WebCore::RenderThemeChromiumLinux::adjustSearchFieldResultsButtonStyle):
   26193         (WebCore::RenderThemeChromiumLinux::paintSearchFieldResultsButton):
   26194         * rendering/RenderThemeChromiumLinux.h:
   26195         (WebCore::RenderThemeChromiumLinux::paintSearchField):
   26196         * rendering/RenderThemeChromiumWin.cpp:
   26197         (WebCore::):
   26198         (WebCore::RenderThemeChromiumWin::extraDefaultStyleSheet):
   26199         (WebCore::RenderThemeChromiumWin::adjustSearchFieldCancelButtonStyle):
   26200         (WebCore::RenderThemeChromiumWin::paintSearchFieldCancelButton):
   26201         (WebCore::RenderThemeChromiumWin::adjustSearchFieldDecorationStyle):
   26202         (WebCore::RenderThemeChromiumWin::adjustSearchFieldResultsDecorationStyle):
   26203         (WebCore::RenderThemeChromiumWin::paintSearchFieldResultsDecoration):
   26204         (WebCore::RenderThemeChromiumWin::adjustSearchFieldResultsButtonStyle):
   26205         (WebCore::RenderThemeChromiumWin::paintSearchFieldResultsButton):
   26206         * rendering/RenderThemeChromiumWin.h:
   26207         (WebCore::RenderThemeChromiumWin::paintSearchField):
   26208 
   26209 2009-03-27  David Hyatt  <hyatt (a] apple.com>
   26210 
   26211         Reviewed by Simon Fraser
   26212 
   26213         If an object has a self-painting layer, don't count it as part of a block's visual overflow.
   26214         This fix has only been made for block-level children.   The inline-level case is still broken
   26215         (and covered by an existing bug).
   26216 
   26217         Added fast/block/positioning/negative-rel-position.html
   26218 
   26219         * rendering/InlineFlowBox.cpp:
   26220         (WebCore::InlineFlowBox::placeBoxesVertically):
   26221         * rendering/RenderBlock.cpp:
   26222         (WebCore::RenderBlock::layoutBlockChildren):
   26223         (WebCore::RenderBlock::lowestPosition):
   26224         (WebCore::RenderBlock::rightmostPosition):
   26225         (WebCore::RenderBlock::leftmostPosition):
   26226 
   26227 2009-03-27  Anders Carlsson  <andersca (a] apple.com>
   26228 
   26229         Reviewed by Darin Adler.
   26230 
   26231         <rdar://problem/6642221>
   26232         REGRESSION: With the Movie widget, movie trailer fails to load if movie had been previously viewed
   26233         
   26234         Add a dashboard specific workaround so that we always create renderers for object elements, even if display:none is set.
   26235         
   26236         I've filed <rdar://problem/6731022> against the Movies widget.
   26237         
   26238         * html/HTMLObjectElement.cpp:
   26239         (WebCore::HTMLObjectElement::rendererIsNeeded):
   26240 
   26241 2009-03-25  Timothy Hatcher  <timothy (a] apple.com>
   26242 
   26243         Expose new DOM methods as public Objective-C API.
   26244 
   26245         <rdar://problem/5837350> Expose new DOM classes and methods
   26246         as public API (match the additions to the JavaScript DOM)
   26247 
   26248         Reviewed by Mark Rowe and Darin Adler.
   26249 
   26250         * WebCore.xcodeproj/project.pbxproj:
   26251         * bindings/objc/DOMHTML.h:
   26252         * bindings/objc/DOMPrivate.h:
   26253         * bindings/objc/PublicDOMInterfaces.h:
   26254 
   26255 2009-03-27  Zack Rusin <zack (a] kde.org>
   26256 
   26257         Reviewed by Simon Hausmann.
   26258 
   26259         https://bugs.webkit.org/show_bug.cgi?id=24280
   26260 
   26261         Fix propagation of fill rules when rendering paths in the Qt build.
   26262 
   26263         * platform/graphics/qt/GraphicsContextQt.cpp:
   26264         (WebCore::toQtFillRule):
   26265         (WebCore::GraphicsContext::fillPath):
   26266         (WebCore::GraphicsContext::strokePath):
   26267 
   26268 2009-03-27  Zack Rusin <zack (a] kde.org>
   26269 
   26270         Reviewed by Tor Arne Vestb.
   26271 
   26272         https://bugs.webkit.org/show_bug.cgi?id=24275
   26273 
   26274         Fix text field theming in the Qt build with the KDE 4 Oxygen
   26275         style by adjusting the size vertically and horizontally to
   26276         set padding on the element equal to the width of the style painted border.
   26277 
   26278         * platform/qt/RenderThemeQt.cpp:
   26279         (WebCore::RenderThemeQt::RenderThemeQt):
   26280         (WebCore::RenderThemeQt::computeSizeBasedOnStyle):
   26281         (WebCore::RenderThemeQt::adjustTextFieldStyle):
   26282         (WebCore::RenderThemeQt::paintTextField):
   26283         * platform/qt/RenderThemeQt.h:
   26284 
   26285 2009-03-27  Laszlo Gombos  <laszlo.1.gombos (a] nokia.com>
   26286 
   26287         Reviewed by Simon Hausmann.
   26288 
   26289         https://bugs.webkit.org/show_bug.cgi?id=24852
   26290         Build fix for GNU mode RVCT compilation
   26291 
   26292         * html/PreloadScanner.cpp:
   26293 
   26294 2009-03-27  Erik L. Bunce  <elbunce (a] xendom.com>
   26295 
   26296         Reviewed by Simon Hausmann.
   26297 
   26298         https://bugs.webkit.org/show_bug.cgi?id=24868
   26299 
   26300         Make text of the writing direction items more user friendly.
   26301 
   26302         * platform/qt/Localizations.cpp:
   26303         (WebCore::contextMenuItemTagLeftToRight):
   26304         (WebCore::contextMenuItemTagRightToLeft):
   26305 
   26306 2009-03-27  Erik L. Bunce  <elbunce (a] xendom.com>
   26307 
   26308         Reviewed by Simon Hausmann.
   26309 
   26310         https://bugs.webkit.org/show_bug.cgi?id=24274
   26311 
   26312         Fixed the Qt 4.4 Mac build with netscape plugins enabled.
   26313 
   26314         * plugins/mac/PluginViewMac.cpp:
   26315 
   26316 2009-03-26  Mark Rowe  <mrowe (a] apple.com>
   26317 
   26318         Try and fix the Qt build.
   26319 
   26320         * platform/text/TextEncodingDetectorNone.cpp:
   26321         (WebCore::detectTextEncoding):
   26322 
   26323 2009-03-26  Eric Carlson  <eric.carlson (a] apple.com>
   26324 
   26325         Reviewed by Simon Fraser.
   26326 
   26327         https://bugs.webkit.org/show_bug.cgi?id=24874
   26328         24874: HTMLMediaElement: 'duration' defaults to NaN, deal with it
   26329         
   26330         The 'duration' attribute is NaN when no media is available, so the
   26331         media element should take care when comparing with duration().
   26332 
   26333         * html/HTMLMediaElement.cpp:
   26334         (WebCore::HTMLMediaElement::mediaPlayerTimeChanged): Don't compare with duration when
   26335         it is NaN.
   26336         (WebCore::HTMLMediaElement::endedPlayback): Ditto.
   26337 
   26338 2009-03-26  Mark Rowe  <mrowe (a] apple.com>
   26339 
   26340         Fix the build.
   26341 
   26342         * platform/text/TextEncodingDetectorICU.cpp:
   26343         * platform/text/TextEncodingDetectorNone.cpp:
   26344 
   26345 2009-03-26  Jungshik Shin  <jshin (a] chromium.org>
   26346 
   26347         Reviewed by Cameron Zwarich.
   26348 
   26349         1. Fix the crash in setHintEncoding
   26350         2. Fix build failures on Tiger and Qt.
   26351         UnusedParam.h was not included by TextEncodingDetector{None,ICU}.cpp
   26352         in the patch landed in r42023
   26353         for http://bugs.webkit.org/show_bug.cgi?id=16482
   26354 
   26355         * loader/TextResourceDecoder.h:
   26356         (WebCore::TextResourceDecoder::setHintEncoding):
   26357         * platform/text/TextEncodingDetectorICU.cpp:
   26358         * platform/text/TextEncodingDetectorNone.cpp:
   26359 
   26360 2009-03-26  Simon Fraser  <simon.fraser (a] apple.com>
   26361 
   26362         Build fix when ACCELERATED_COMPOSITING is turned on.
   26363 
   26364         * rendering/RenderLayerBacking.cpp:
   26365         (WebCore::RenderLayerBacking::canUseDirectCompositing):
   26366 
   26367 2009-03-26  Eric Seidel  <eric (a] webkit.org>
   26368 
   26369         No additional review, committing previously reviewed files for build fix only.
   26370 
   26371         Add files I missed when commiting Jungshik's patch in r42022.
   26372         https://bugs.webkit.org/show_bug.cgi?id=16482
   26373 
   26374         * icu/unicode/ucsdet.h: Added.
   26375         * platform/text/TextEncodingDetector.h: Added.
   26376         * platform/text/TextEncodingDetectorICU.cpp: Added.
   26377         (WebCore::detectTextEncoding):
   26378         * platform/text/TextEncodingDetectorNone.cpp: Added.
   26379         (WebCore::detectTextEncoding):
   26380 
   26381 2009-03-26  Jungshik Shin  <jshin (a] chromium.org>
   26382 
   26383         Reviewed by Alexey Proskuryakov.
   26384 
   26385         Add an encoding detector 'hook' to TextResourceDecoder.
   26386          - add |usesEncodingDetector| to Settings. It's off by default.
   26387          - add a new encoding source type |EncodingFromParent| 
   26388            to distinguish cases when the encoding is inherited from
   26389            the parent frame from cases when it's actually auto-detected.
   26390          - add TextEncodingDetector* to platform/text. Currently,
   26391            the only implementation uses ICU. Stub is added for 
   26392            ports that do not use ICU and a build on Tiger. Mac OS 
   26393            Tiger comes with ICU 3.2 that does not support encoding detector.
   26394          - add ucsdet.h to icu/unicode for ports using ICU.
   26395 
   26396         Layout tests will be added once bug 20534 is fixed and a WebPreference
   26397         can be controlled in test_shell. With UsesEncodingDetector off, there
   26398         is no change to test. 
   26399 
   26400         http://bugs.webkit.org/show_bug.cgi?id=16482
   26401 
   26402         * WebCore.vcproj/WebCore.vcproj:
   26403         * WebCore.xcodeproj/project.pbxproj:
   26404         * WebCore/GNUmakefile.am
   26405         * WebCore/WebCore.pro
   26406         * WebCore/WebCore.scons
   26407         * WebCore/WebCoreSources.bkl
   26408         * WebCore.base.exp
   26409         * icu/unicode/ucsdet.h
   26410         * loader/FrameLoader.cpp:
   26411         (WebCore::FrameLoader::write): turn on/off encoding detector depending on Settings and set hintEncoding of TextResourceDecoder to the parent frame encoding if necessary and the security policy allows refering to the parent frame encoding.
   26412         * loader/TextResourceDecoder.cpp:
   26413         (WebCore::TextResourceDecoder::TextResourceDecoder):
   26414         (WebCore::TextResourceDecoder::checkForCSSCharset): add check for EncodingFromParentFrame
   26415         (WebCore::TextResourceDecoder::checkForHeadCharset): ditto
   26416         (WebCore::TextResourceDecoder::shouldAutoDetect):
   26417         (WebCore::TextResourceDecoder::decode): call encoding detector if shouldAutoDetect returns true.
   26418         (WebCore::TextResourceDecoder::flush): if encoding is not determined by now, call encoding detector if shouldAutoDetect returns true.
   26419         * loader/TextResourceDecoder.h:
   26420         (WebCore::TextResourceDecoder::):
   26421         (WebCore::TextResourceDecoder::create):
   26422         (WebCore::TextResourceDecoder::setHintEncoding):
   26423         (WebCore::TextResourceDecoder::source):
   26424         * page/Settings.cpp: add m_usesEncodingDetector
   26425         (WebCore::Settings::Settings):
   26426         (WebCore::Settings::setUsesEncodingDetector):
   26427         * page/Settings.h:
   26428         (WebCore::Settings::usesEncodingDetector):
   26429         * platform/text/TextEncodingDetector.h: Added.
   26430         * platform/text/TextEncodingDetectorICU.cpp: Added.
   26431         (WebCore::detectTextEncoding):
   26432         * platform/text/TextEncodingDetectorNone.cpp: Added.
   26433         (WebCore::detectTextEncoding):
   26434 
   26435 2009-03-26  Darin Adler  <darin (a] apple.com>
   26436 
   26437         Reviewed by Geoff Garen.
   26438 
   26439         Removed code that casts EventListener down to derived classes
   26440         without type checking. A crash could happen if you added event
   26441         listeners with Objective-C and then manipulated the class with
   26442         JavaScript.
   26443 
   26444         * bindings/js/JSDOMApplicationCacheCustom.cpp:
   26445         (WebCore::JSDOMApplicationCache::mark): Removed all the casts
   26446         and used the markIfNotNull function and mark functions on
   26447         EventListener instead.
   26448         * bindings/js/JSMessagePortCustom.cpp:
   26449         (WebCore::JSMessagePort::mark): Ditto.
   26450         * bindings/js/JSWorkerContextCustom.cpp:
   26451         (WebCore::JSWorkerContext::mark): Ditto.
   26452         * bindings/js/JSWorkerCustom.cpp:
   26453         (WebCore::JSWorker::mark): Ditto.
   26454         * bindings/js/JSXMLHttpRequestCustom.cpp:
   26455         (WebCore::JSXMLHttpRequest::mark): Ditto.
   26456         * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
   26457         (WebCore::JSXMLHttpRequestUpload::mark): Ditto.
   26458 
   26459         * bindings/js/JSEventListener.cpp:
   26460         (WebCore::JSAbstractEventListener::handleEvent): Used function,
   26461         the new name for what used to be called listenerObj.
   26462         (WebCore::JSAbstractEventListener::virtualIsInline): Renamed since
   26463         this doesn't need to be virtual for callers who have a pointer to
   26464         this class, not the base class.
   26465         (WebCore::JSEventListener::function): Renamed from listenerObj.
   26466         (WebCore::JSProtectedEventListener::function): Ditto.
   26467 
   26468         * bindings/js/JSEventListener.h: Removed unneeded forward class
   26469         declarations. Made all virtual functions private since there's no
   26470         need to call any of them on a particular derived class, only on
   26471         EventListener. Explicitly declare JSEventListener::mark as virtual
   26472         since it's now overriding a function in the EventListener base class.
   26473         Made JSProtectedEventListener::m_globalObject protected so the
   26474         JSLazyEventListener derived class can use it directly instead of using
   26475         a virtual function to get the pointer.
   26476 
   26477         * bindings/js/JSLazyEventListener.cpp:
   26478         (WebCore::JSLazyEventListener::parseCode): Use m_globalObject instead
   26479         of globalObject since the latter is a virtual function and there's no
   26480         need to pay virtual function overhead.
   26481         (WebCore::JSLazyEventListener::function): Renamed from listenerObj.
   26482 
   26483         * bindings/js/JSLazyEventListener.h: Moved forward declaration of the
   26484         Node class here from JSEventListener.h.
   26485 
   26486         * bindings/scripts/CodeGeneratorJS.pm: Removed now-unneeded cast to
   26487         JSEventListener when getting the script object from a listener.
   26488 
   26489         * dom/EventListener.h: Added virtual function and mark functions
   26490         so we can extract the JavaScript function object or mark a JavaScript
   26491         event listener in a type safe manner.
   26492 
   26493 2009-03-26  Peter Kasting  <pkasting (a] google.com>
   26494 
   26495         Reviewed by Adele Peterson.
   26496 
   26497         https://bugs.webkit.org/show_bug.cgi?id=24859
   26498         Use CSS file instead of code to adjust search field styling.
   26499 
   26500         * css/themeWin.css:
   26501         * rendering/RenderThemeWin.cpp:
   26502         * rendering/RenderThemeWin.h:
   26503 
   26504 2009-03-26  Darin Adler  <darin (a] apple.com>
   26505 
   26506         Reviewed by Geoff Garen.
   26507 
   26508         Split JSLazyEventListener out into its own separate source file.
   26509         We'll be removing JSAbstractEventListener and JSProtectedEventListener soon,
   26510         so leave those in the same file with JSEventListener.
   26511 
   26512         * GNUmakefile.am: Added JSLazyEventListener.
   26513         * WebCore.pro: Ditto.
   26514         * WebCore.scons: Ditto.
   26515         * WebCore.vcproj/WebCore.vcproj: Ditto.
   26516         * WebCore.xcodeproj/project.pbxproj: Ditto.
   26517         * WebCoreSources.bkl: Ditto.
   26518 
   26519         * bindings/js/JSEventListener.cpp: Removed the JSLazyEventListener part.
   26520         Removed unneeded includes. Removed incorrect ASSERT_CLASS_FITS_IN_CELL, since
   26521         JSAbstractEventListener is not derived from JSCell.
   26522 
   26523         * bindings/js/JSEventListener.h: Removed the JSLazyEventListener part
   26524         and the now-unneeded include of PlatformString.h.
   26525 
   26526         * bindings/js/JSLazyEventListener.cpp: Copied from bindings/js/JSEventListener.cpp.
   26527         Kept only the JSLazyEventListener part.
   26528         (WebCore::eventParameterName): Made this have internal linkage by adding "static".
   26529         Also moved the default case out of the switch statement so we will get a warning
   26530         if we omit any cases in the future.
   26531 
   26532         * bindings/js/JSLazyEventListener.h: Copied from bindings/js/JSEventListener.h.
   26533         Kept only the JSLazyEventListener part.
   26534 
   26535         * bindings/js/ScriptController.cpp: Removed unneeded includes and sorted the
   26536         remanining ones. Include JSLazyEventListener.h instead of JSEventListener.h.
   26537 
   26538 2009-03-26  Darin Adler  <darin (a] apple.com>
   26539 
   26540         Reviewed by Geoff Garen.
   26541 
   26542         Renamed JSUnprotectedEventListener to JSEventListener.
   26543         And related renames.
   26544 
   26545         Soon Geoff will make all JavaScript event listeners use mark instead
   26546         of protect, so there's no need to emphasize "unprotected".
   26547 
   26548         * bindings/js/JSDOMApplicationCacheCustom.cpp:
   26549         (WebCore::JSDOMApplicationCache::mark):
   26550         (WebCore::JSDOMApplicationCache::addEventListener):
   26551         (WebCore::JSDOMApplicationCache::removeEventListener):
   26552         * bindings/js/JSDOMGlobalObject.cpp:
   26553         (WebCore::JSDOMGlobalObject::~JSDOMGlobalObject):
   26554         (WebCore::JSDOMGlobalObject::findJSEventListener):
   26555         (WebCore::JSDOMGlobalObject::findOrCreateJSEventListener):
   26556         (WebCore::JSDOMGlobalObject::jsEventListeners):
   26557         (WebCore::JSDOMGlobalObject::jsInlineEventListeners):
   26558         * bindings/js/JSDOMGlobalObject.h:
   26559         * bindings/js/JSDOMWindowBase.h:
   26560         * bindings/js/JSEventListener.cpp:
   26561         (WebCore::JSEventListener::JSEventListener):
   26562         (WebCore::JSEventListener::~JSEventListener):
   26563         (WebCore::JSEventListener::listenerObj):
   26564         (WebCore::JSEventListener::globalObject):
   26565         (WebCore::JSEventListener::clearGlobalObject):
   26566         (WebCore::JSEventListener::mark):
   26567         * bindings/js/JSEventListener.h:
   26568         (WebCore::JSEventListener::create):
   26569         * bindings/js/JSMessagePortCustom.cpp:
   26570         (WebCore::JSMessagePort::mark):
   26571         (WebCore::JSMessagePort::addEventListener):
   26572         (WebCore::JSMessagePort::removeEventListener):
   26573         * bindings/js/JSWorkerContextCustom.cpp:
   26574         (WebCore::JSWorkerContext::mark):
   26575         (WebCore::JSWorkerContext::addEventListener):
   26576         (WebCore::JSWorkerContext::removeEventListener):
   26577         * bindings/js/JSWorkerCustom.cpp:
   26578         (WebCore::JSWorker::mark):
   26579         (WebCore::JSWorker::addEventListener):
   26580         (WebCore::JSWorker::removeEventListener):
   26581         * bindings/js/JSXMLHttpRequestCustom.cpp:
   26582         (WebCore::JSXMLHttpRequest::mark):
   26583         (WebCore::JSXMLHttpRequest::addEventListener):
   26584         (WebCore::JSXMLHttpRequest::removeEventListener):
   26585         * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
   26586         (WebCore::JSXMLHttpRequestUpload::mark):
   26587         (WebCore::JSXMLHttpRequestUpload::addEventListener):
   26588         (WebCore::JSXMLHttpRequestUpload::removeEventListener):
   26589         * bindings/scripts/CodeGeneratorJS.pm:
   26590         All just renaming.
   26591 
   26592 2009-03-26  Darin Adler  <darin (a] apple.com>
   26593 
   26594         Reviewed by Geoff Garen.
   26595 
   26596         Renamed JSEventListener to JSProtectedEventListener.
   26597         And related renames.
   26598 
   26599         Soon Geoff will make all JavaScript event listeners use mark instead
   26600         of protect, and so this class will be be obsolete. We will rename
   26601         JSUnrpotectedEventListener to JSEventListener in the next check-in,
   26602         since that one will remain.
   26603 
   26604         * bindings/js/JSDOMGlobalObject.cpp:
   26605         (WebCore::JSDOMGlobalObject::~JSDOMGlobalObject):
   26606         (WebCore::JSDOMGlobalObject::findJSProtectedEventListener):
   26607         (WebCore::JSDOMGlobalObject::findOrCreateJSProtectedEventListener):
   26608         (WebCore::JSDOMGlobalObject::jsProtectedEventListeners):
   26609         (WebCore::JSDOMGlobalObject::jsProtectedInlineEventListeners):
   26610         * bindings/js/JSDOMGlobalObject.h:
   26611         * bindings/js/JSDOMWindowBase.h:
   26612         * bindings/js/JSDOMWindowCustom.cpp:
   26613         (WebCore::JSDOMWindow::addEventListener):
   26614         (WebCore::JSDOMWindow::removeEventListener):
   26615         * bindings/js/JSEventListener.cpp:
   26616         (WebCore::JSProtectedEventListener::JSProtectedEventListener):
   26617         (WebCore::JSProtectedEventListener::~JSProtectedEventListener):
   26618         (WebCore::JSProtectedEventListener::listenerObj):
   26619         (WebCore::JSProtectedEventListener::globalObject):
   26620         (WebCore::JSProtectedEventListener::clearGlobalObject):
   26621         (WebCore::JSLazyEventListener::JSLazyEventListener):
   26622         (WebCore::JSLazyEventListener::parseCode):
   26623         * bindings/js/JSEventListener.h:
   26624         (WebCore::JSProtectedEventListener::create):
   26625         * bindings/js/JSNodeCustom.cpp:
   26626         (WebCore::JSNode::addEventListener):
   26627         (WebCore::JSNode::removeEventListener):
   26628         * bindings/js/JSSVGElementInstanceCustom.cpp:
   26629         (WebCore::JSSVGElementInstance::addEventListener):
   26630         (WebCore::JSSVGElementInstance::removeEventListener):
   26631         * bindings/scripts/CodeGeneratorJS.pm:
   26632         All just renaming.
   26633 
   26634 2009-03-26  Dan Bernstein  <mitz (a] apple.com>
   26635 
   26636         Reviewed by Anders Carlsson.
   26637 
   26638         - fix <rdar://problem/6725042> BidiResolver::createBidiRunsForLine can
   26639           create runs extending beyond the end
   26640 
   26641         No test because Safari does not use this version of
   26642         createBidiRunsForLine() with the end iterator not pointing to the end
   26643         of the text run.
   26644 
   26645         * platform/text/BidiResolver.h:
   26646         (WebCore::BidiResolver::appendRun): Cap the end of the run at the end
   26647         of the line and set the reachedEndOfLine flag. This mirrors the logic
   26648         in the specialized version of appendRun() in bidi.cpp, which is why the
   26649         problem did not show up in HTML. Also avoid creating empty runs.
   26650 
   26651 2009-03-26  Simon Fraser  <simon.fraser (a] apple.com>
   26652 
   26653         Reviewed by Dave Hyatt
   26654         
   26655         https://bugs.webkit.org/show_bug.cgi?id=24864
   26656 
   26657         Change the terminology from "inner content layer" to "direct compositing"
   26658         for cases where we can push an image directly over to the compositing system,
   26659         without having to draw it.
   26660         
   26661         Clean up much of the code which looks at style to determine if this is possible,
   26662         and fix some bugs when backgrounds change dynamically.
   26663         
   26664         * rendering/RenderLayerBacking.cpp:
   26665         (WebCore::hasBorderOutlineOrShadow):
   26666         (WebCore::hasBoxDecorations):
   26667         (WebCore::hasBoxDecorationsWithBackgroundImage):
   26668         (WebCore::RenderLayerBacking::canBeSimpleContainerCompositingLayer):
   26669         (WebCore::RenderLayerBacking::canUseDirectCompositing):
   26670         (WebCore::RenderLayerBacking::detectDrawingOptimizations):
   26671         (WebCore::RenderLayerBacking::rendererContentChanged):
   26672         (WebCore::RenderLayerBacking::updateImageContents):
   26673         * rendering/RenderLayerBacking.h:
   26674 
   26675 2009-03-26  Simon Fraser  <simon.fraser (a] apple.com>
   26676 
   26677         Reviewed by Dave Hyatt
   26678         
   26679         https://bugs.webkit.org/show_bug.cgi?id=23914
   26680 
   26681         Tests: compositing/overflow/ancestor-overflow.html
   26682                compositing/overflow/parent-overflow.html
   26683 
   26684         * rendering/RenderLayer.cpp:
   26685         (WebCore::RenderLayer::calculateClipRects):
   26686         * rendering/RenderLayer.h:
   26687         (WebCore::ClipRects::infiniteRect):
   26688         New static method that returns a large rect that is used by the clipping
   26689         logic.
   26690         
   26691         * rendering/RenderLayerBacking.cpp:
   26692         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
   26693         Use parentClipRects(), rather than calculateRects(), to compute the overflow
   26694         rect that we'll use to create a masking layer for composited clipping.
   26695         
   26696         * rendering/RenderLayerCompositor.cpp:
   26697         (WebCore::RenderLayerCompositor::clippedByAncestor):
   26698         Use parentClipRects() to see whether there's a layer between us and our
   26699         compositing ancestor which applies clipping.
   26700         
   26701         (WebCore::RenderLayerCompositor::clipsCompositingDescendants):
   26702         A layer which imposes clipping to its children doesn't have to be a stacking
   26703         context; it might be a normal flow layer; in either case, we can rely on the
   26704         hasCompositingDescendant() bit.
   26705 
   26706 2009-03-26  Steve Falkenburg  <sfalken (a] apple.com>
   26707 
   26708         https://bugs.webkit.org/show_bug.cgi?id=24837
   26709         Escape key should dismiss select menu
   26710 
   26711         Reviewed by Adam Roben.
   26712 
   26713         * platform/win/PopupMenuWin.cpp:
   26714         (WebCore::PopupWndProc):
   26715 
   26716 2009-03-26  Kevin Ollivier  <kevino (a] theolliviers.com>
   26717 
   26718         Reviewed by Alexey Proskuryakov.
   26719 
   26720         Make sure the script uses LF line endings even on Windows.
   26721         
   26722         https://bugs.webkit.org/show_bug.cgi?id=24805
   26723 
   26724         * WebCore/make-generated-sources.sh: Change svn:eol-style to LF
   26725 
   26726 2009-03-26  Eli Fidler  <eli.fidler (a] torchmobile.com>
   26727 
   26728         Reviewed by George Staikos.
   26729 
   26730         Remove warnings all over the place by making operator precedence
   26731         explicit in cases like x && y || z.  No functional change.
   26732 
   26733         * css/CSSFontSelector.cpp:
   26734         (WebCore::CSSFontSelector::addFontFaceRule):
   26735         * css/CSSParser.cpp:
   26736         (WebCore::CSSParser::parseValue):
   26737         (WebCore::CSSParser::parseShadow):
   26738         * dom/Document.cpp:
   26739         (WebCore::Document::shouldScheduleLayout):
   26740         * dom/Node.cpp:
   26741         (WebCore::Node::isBlockFlowOrBlockTable):
   26742         * dom/Node.h:
   26743         (WebCore::Node::document):
   26744         * dom/Position.cpp:
   26745         (WebCore::Position::next):
   26746         (WebCore::Position::upstream):
   26747         (WebCore::Position::downstream):
   26748         (WebCore::Position::getInlineBoxAndOffset):
   26749         * dom/PositionIterator.cpp:
   26750         (WebCore::PositionIterator::atStart):
   26751         * dom/Range.cpp:
   26752         (WebCore::Range::intersectsNode):
   26753         * editing/Editor.cpp:
   26754         (WebCore::Editor::setBaseWritingDirection):
   26755         * editing/InsertParagraphSeparatorCommand.cpp:
   26756         (WebCore::InsertParagraphSeparatorCommand::doApply):
   26757         * editing/ReplaceSelectionCommand.cpp:
   26758         (WebCore::ReplaceSelectionCommand::doApply):
   26759         * editing/TextIterator.cpp:
   26760         (WebCore::TextIterator::advance):
   26761         (WebCore::SimplifiedBackwardsTextIterator::advance):
   26762         * editing/VisiblePosition.cpp:
   26763         (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
   26764         (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
   26765         (WebCore::VisiblePosition::canonicalPosition):
   26766         * editing/htmlediting.cpp:
   26767         (WebCore::isMailBlockquote):
   26768         (WebCore::lineBreakExistsAtPosition):
   26769         * html/HTMLSelectElement.cpp:
   26770         (WebCore::HTMLSelectElement::parseMappedAttribute):
   26771         * loader/FTPDirectoryDocument.cpp:
   26772         (WebCore::processFileDateString):
   26773         * loader/ImageLoader.cpp:
   26774         (WebCore::ImageLoader::updateFromElement):
   26775         * loader/TextResourceDecoder.cpp:
   26776         (WebCore::TextResourceDecoder::checkForHeadCharset):
   26777         * page/AccessibilityObject.cpp:
   26778         (WebCore::updateAXLineStartForVisiblePosition):
   26779         * page/EventHandler.cpp:
   26780         (WebCore::EventHandler::sendContextMenuEvent):
   26781         * page/animation/AnimationBase.cpp:
   26782         (WebCore::PropertyWrapperGetter::equals):
   26783         (WebCore::PropertyWrapperShadow::equals):
   26784         * platform/ContextMenu.cpp:
   26785         (WebCore::ContextMenu::populate):
   26786         * platform/ScrollView.cpp:
   26787         (WebCore::ScrollView::adjustScrollbarsAvoidingResizerCount):
   26788         * platform/text/Base64.cpp:
   26789         (WebCore::base64Encode):
   26790         * platform/text/BidiResolver.h:
   26791         (WebCore::::raiseExplicitEmbeddingLevel):
   26792         (WebCore::::createBidiRunsForLine):
   26793         * rendering/InlineTextBox.cpp:
   26794         (WebCore::InlineTextBox::placeEllipsisBox):
   26795         * rendering/RenderBlock.cpp:
   26796         (WebCore::RenderBlock::addChild):
   26797         (WebCore::RenderBlock::repaintOverhangingFloats):
   26798         (WebCore::RenderBlock::fillInlineSelectionGaps):
   26799         (WebCore::RenderBlock::positionForPoint):
   26800         (WebCore::RenderBlock::calcInlinePrefWidths):
   26801         (WebCore::RenderBlock::hasLineIfEmpty):
   26802         * rendering/RenderBox.cpp:
   26803         (WebCore::RenderBox::imageChanged):
   26804         (WebCore::RenderBox::localCaretRect):
   26805         (WebCore::RenderBox::positionForPoint):
   26806         (WebCore::RenderBox::shrinkToAvoidFloats):
   26807         * rendering/RenderObject.h:
   26808         (WebCore::objectIsRelayoutBoundary):
   26809         * rendering/RenderTableCell.cpp:
   26810         (WebCore::RenderTableCell::clippedOverflowRectForRepaint):
   26811         * rendering/RenderText.cpp:
   26812         (WebCore::RenderText::calcPrefWidths):
   26813         * rendering/bidi.cpp:
   26814         (WebCore::RenderBlock::determineStartPosition):
   26815         (WebCore::textWidth):
   26816         * rendering/style/RenderStyle.cpp:
   26817         (WebCore::RenderStyle::diff):
   26818         * rendering/style/StyleInheritedData.cpp:
   26819         (WebCore::cursorDataEquivalent):
   26820         * rendering/style/StyleRareInheritedData.cpp:
   26821         (WebCore::StyleRareInheritedData::shadowDataEquivalent):
   26822         * rendering/style/StyleRareNonInheritedData.cpp:
   26823         (WebCore::StyleRareNonInheritedData::shadowDataEquivalent):
   26824         (WebCore::StyleRareNonInheritedData::animationDataEquivalent):
   26825         (WebCore::StyleRareNonInheritedData::transitionDataEquivalent):
   26826 
   26827 2009-03-26  Gustavo Noronha Silva  <gustavo.noronha (a] collabora.co.uk>
   26828 
   26829         Reviewed by Holger Freyther.
   26830 
   26831         https://bugs.webkit.org/show_bug.cgi?id=24804
   26832         [GTK] 401 responses cause rogue content to be loaded
   26833 
   26834         Our soup code handles 401 responses itself, so we should not feed
   26835         the headers and data of those responses to the loader.
   26836 
   26837         * platform/network/soup/ResourceHandleSoup.cpp:
   26838         (WebCore::gotHeadersCallback):
   26839         (WebCore::gotChunkCallback):
   26840 
   26841 2009-03-25  Geoffrey Garen  <ggaren (a] apple.com>
   26842 
   26843         Reviewed by Oliver Hunt and Darin Adler.
   26844         
   26845         Fixed <rdar://problem/6603167> Crash in WebKit!JSC::JSGlobalObject::resetPrototype
   26846         during Stress test (#3 & #7 WER crashes for Safari 4 Beta)
   26847         
   26848         The problem was that allocation of the global object would, for just a
   26849         moment, leave the global object's prototype unprotected from GC. This
   26850         bug doesn't apply to non-global DOM objects because their prototypes are
   26851         cached and marked by the global object.
   26852 
   26853         No test case because the crashing condition is hard to deterministically
   26854         produce in a normal build, and in a Windows Release build with
   26855         COLLECT_ON_EVERY_ALLOCATION set to 1, existing tests crash/hang.
   26856 
   26857         * bindings/js/JSDOMWindowShell.cpp:
   26858         (WebCore::JSDOMWindowShell::setWindow):
   26859         * bindings/js/WorkerScriptController.cpp:
   26860         (WebCore::WorkerScriptController::initScript): Protect the global object's
   26861         prototype from GC during construction, since the global object does not
   26862         yet point to it, and therefore won't mark it.
   26863 
   26864 2009-03-25  Dean Jackson  <dino (a] apple.com>
   26865 
   26866         Reviewed by Simon Fraser
   26867 
   26868         https://bugs.webkit.org/show_bug.cgi?id=23361
   26869 
   26870         When using hardware compositing, some images can be directly
   26871         rendered by the hardware - no need to draw them into a separate
   26872         context, therefore saving memory.
   26873         Only images with certain style properties can be directly
   26874         composited - basically anything that is not a simple image requires
   26875         the usual rendering path (eg. if the image has borders).
   26876 
   26877         Test: compositing/direct-image-compositing.html
   26878 
   26879         * manual-tests/resources/simple_image.png: Added.
   26880         * manual-tests/simple-image-compositing.html: Added.
   26881         * platform/graphics/Image.h:
   26882         (WebCore::Image::startAnimation):
   26883             - move this to public
   26884         * rendering/RenderImage.cpp:
   26885         (WebCore::RenderImage::imageChanged):
   26886             - poke compositing layer if image has changed
   26887         (WebCore::RenderImage::notifyFinished):
   26888             - let the compositing layer know that it can render the image
   26889         * rendering/RenderImage.h:
   26890         * rendering/RenderLayer.cpp:
   26891         (WebCore::RenderLayer::rendererContentChanged):
   26892         * rendering/RenderLayer.h:
   26893         * rendering/RenderLayerBacking.cpp:
   26894         (WebCore::RenderLayerBacking::canUseInnerContentLayer):
   26895         (WebCore::RenderLayerBacking::detectDrawingOptimizations):
   26896         (WebCore::RenderLayerBacking::rendererContentChanged):
   26897         * rendering/RenderLayerBacking.h:
   26898             - code to hook up direct compositing of images where
   26899               possible
   26900 
   26901 2009-03-25  David Levin  <levin (a] chromium.org>
   26902 
   26903         Reviewed by Dimitri Glazkov.
   26904 
   26905         Chromium build fix. Fix #include in V8NodeFilterCondition.cpp due to the
   26906         rename of V8NodeFilter to V8NodeFilterCondition.
   26907 
   26908         * bindings/v8/V8NodeFilterCondition.cpp:
   26909 
   26910 2009-03-25  Simon Fraser  <simon.fraser (a] apple.com>
   26911 
   26912         Reviewed by Darin Adler
   26913         
   26914         https://bugs.webkit.org/show_bug.cgi?id=24817
   26915         
   26916         When the slider range is zero, avoid a divide by zero, which caused the
   26917         thumb to be positioned off in the weeds, which broke painting.
   26918 
   26919         Test: media/video-empty-source.html
   26920 
   26921         * rendering/RenderSlider.cpp:
   26922         (WebCore::SliderRange::proportionFromValue):
   26923         (WebCore::SliderRange::valueFromProportion):
   26924         (WebCore::sliderPosition):
   26925         (WebCore::RenderSlider::setValueForPosition):
   26926 
   26927 2009-03-24  Eric Seidel  <eric (a] webkit.org>
   26928 
   26929         Reviewed by Darin Adler.
   26930 
   26931         Remove dead code and style cleanup
   26932         https://bugs.webkit.org/show_bug.cgi?id=24684
   26933 
   26934         * html/CanvasStyle.cpp:
   26935         (WebCore::CanvasStyle::CanvasStyle):
   26936           Coverty was annoyed that we didn't initialize all of our members.  I agree, but I didn't
   26937           want to paste all 8 members each time, so I just cleaned up the existing constructors and left them.
   26938         * page/FocusController.cpp:
   26939         (WebCore::FocusController::setFocusedNode):
   26940           "node" was checked just above and is already known to be non-null
   26941         * rendering/RenderLayer.cpp:
   26942         (WebCore::RenderLayer::insertOnlyThisLayer):
   26943           We were already using parentLayer w/o a NULL check above, so just add an explicit ASSERT and use it w/o NULL check
   26944         (WebCore::RenderLayer::resize):
   26945           element is already ASSERTed above, no need to null check it here
   26946         * rendering/RenderTableSection.cpp:
   26947         (WebCore::RenderTableSection::addCell):
   26948           currentCell.cell was just assigned to the value "cell" which is known to be non-null, no need to null check again.
   26949 
   26950 2009-03-24  Eric Seidel  <eric (a] webkit.org>
   26951 
   26952         Reviewed by Darin Adler.
   26953 
   26954         Move ASSERT(foo) to before where foo-> is used
   26955         https://bugs.webkit.org/show_bug.cgi?id=24684
   26956 
   26957         * platform/chromium/PasteboardChromium.cpp:
   26958         (WebCore::Pasteboard::writeImage):
   26959           Move ASSERTs to the top of the function, code was using "node" before ASSERT(node), once I moved
   26960           ASSERT(node) to the top of the function it made sense to move the rest of them there too.
   26961         * rendering/SVGRenderSupport.cpp:
   26962         (WebCore::prepareToRenderSVGContent):
   26963           move ASSERT(object) to *before* we use "object" :)
   26964 
   26965 2009-03-24  Eric Seidel  <eric (a] webkit.org>
   26966 
   26967         Reviewed by Simon Fraser.
   26968 
   26969         Make TextTokenizer ASSERT that the buffer was freed
   26970         https://bugs.webkit.org/show_bug.cgi?id=24684
   26971 
   26972         * loader/TextDocument.cpp:
   26973         (WebCore::TextTokenizer::TextTokenizer):
   26974         (WebCore::TextTokenizer::~TextTokenizer):
   26975         (WebCore::TextTokenizer::finish):
   26976           Make it clear by adding a ~TextTokenizer that finish() will always be called and the memory never leaked.
   26977 
   26978 2009-03-24  Eric Seidel  <eric (a] webkit.org>
   26979 
   26980         Reviewed by Darin Adler.
   26981 
   26982         Fix case where lBreak.obj->isBR() when lBreak.obj was NULL
   26983         https://bugs.webkit.org/show_bug.cgi?id=24684
   26984 
   26985         I don't have a test case where we were taking the wrong path here
   26986         However, adding an ASSERT(lBreak.obj) before this usage caused
   26987         multiple bidi tests to fail, so lBreak.obj can be null here.
   26988 
   26989         * rendering/bidi.cpp:
   26990         (WebCore::RenderBlock::findNextLineBreak):
   26991           lBreak.obj can be null, so we can't call ->isBR() on it unconditionally.
   26992 
   26993 2009-03-24  Eric Seidel  <eric (a] webkit.org>
   26994 
   26995         Reviewed by Simon Fraser.
   26996 
   26997         Style cleanup and dead code removal in dom, editing
   26998         https://bugs.webkit.org/show_bug.cgi?id=24684
   26999 
   27000         * dom/ContainerNode.cpp:
   27001         (WebCore::ContainerNode::getUpperLeftCorner):
   27002         (WebCore::ContainerNode::getLowerRightCorner):
   27003         (WebCore::ContainerNode::getRect):
   27004           Coverty was (rightly) confused as to what the hell "o" was being used for
   27005           and whether or not it would ever be NULL.  I added some ASSERTS so that people (and machines)
   27006           would be less confused about the logic in getUpperLeftCorner/getLowerRightCorner
   27007         * dom/Document.cpp:
   27008         (WebCore::Document::recalcStyle):
   27009           Remove dead code, this block already checked that change == Force
   27010         * editing/ApplyStyleCommand.cpp:
   27011         (WebCore::ApplyStyleCommand::removeInlineStyle):
   27012           Coverty correctly identified that traversePreviousNodePostOrder can return NULL, thus
   27013           prev will be null, and we don't really explicitly handle it (like we probably should)
   27014           It's OK though, because we end up creating a null position object, which may not have
   27015           been what we intended, but we certainly don't crash.
   27016         * editing/InsertParagraphSeparatorCommand.cpp:
   27017         (WebCore::InsertParagraphSeparatorCommand::doApply):
   27018           Remove dead code, insertionPosition.node() is already checked to be non-null above.
   27019         * editing/markup.cpp:
   27020         (WebCore::appendStartMarkup):
   27021           removed dead code, annotate is already known to be true at this point in the file
   27022           !annotate was checked above, and break; was called.
   27023 
   27024 2009-03-24  Eric Seidel  <eric (a] webkit.org>
   27025 
   27026         Reviewed by Simon Fraser.
   27027 
   27028         CSS dead code removal and cleanup from Coverty errors
   27029         https://bugs.webkit.org/show_bug.cgi?id=24684
   27030 
   27031         * css/CSSStyleSelector.cpp:
   27032         (WebCore::CSSStyleSelector::applyProperty):
   27033           Every other place in the code we check settings() for NULL, so I made these places
   27034           check too, even though we should never be resolving style against a document which has
   27035           no frame (which I believe is the only time settings() can be null)
   27036         * css/CSSStyleSheet.cpp:
   27037         (WebCore::CSSStyleSheet::styleSheetChanged):
   27038           Removing dead code, "root" can never be null here.
   27039         * css/SVGCSSStyleSelector.cpp:
   27040         (WebCore::colorFromSVGColorCSSValue):
   27041         (WebCore::CSSStyleSelector::applySVGProperty):
   27042           Extra returns in the old macros caused dead code.  Removing the old macros and use modern
   27043           ones instead. :)
   27044           Extra null checks to value were not needed.  Added an ASSERT at the top of the function
   27045           to make it clear that value will never be NULL.
   27046           Added colorFromSVGColorCSSValue to clean up the code a little.
   27047 
   27048 2009-03-24  Eric Seidel  <eric (a] webkit.org>
   27049 
   27050         Reviewed by Simon Fraser.
   27051 
   27052         Font fallback cleanup and added ASSERT for GlyphPageTreeNode
   27053         https://bugs.webkit.org/show_bug.cgi?id=24684
   27054 
   27055         * css/CSSFontSelector.cpp:
   27056         (WebCore::compareFontFaces):
   27057           Coverty was concerned that it was possible to index off the end of weightFallbackRuleSets
   27058           I can't read the code well enough to tell, so I tried to make the code clearer
   27059           and added an ASSERT.        
   27060         * platform/graphics/GlyphPageTreeNode.cpp:
   27061         (WebCore::GlyphPageTreeNode::initializePage):
   27062           Coverty believes we can crash here due to j being larger than GlyphPage::size.  I think to is already
   27063           known to be < GlyphPage::size due to the min() statement above, but not being sure I added an ASSERT.
   27064 
   27065 2009-03-24  Eric Seidel  <eric (a] webkit.org>
   27066 
   27067         Reviewed by Simon Fraser.
   27068 
   27069         Coverty inspired fixes in Animations/Transforms
   27070         https://bugs.webkit.org/show_bug.cgi?id=24684
   27071 
   27072         * page/animation/AnimationBase.h:
   27073           Fix animate() signatures to match so that the virtual methods actually override one another. :)
   27074         * page/animation/AnimationController.cpp:
   27075         (WebCore::AnimationControllerPrivate::removeFromStartTimeResponseWaitList):
   27076           Attempt to fix this method, prevAnimation was never set to anything but NULL,
   27077           as far as I can tell the author originally intended to update it at the end
   27078           of the loop, which is what I changed this code to do.
   27079         * page/animation/ImplicitAnimation.cpp:
   27080         (WebCore::ImplicitAnimation::animate):
   27081           Make method signature match AnimationBase::animate
   27082         * page/animation/ImplicitAnimation.h:
   27083         * page/animation/KeyframeAnimation.cpp:
   27084         (WebCore::KeyframeAnimation::animate):
   27085           Make method signature match AnimationBase::animate
   27086         * page/animation/KeyframeAnimation.h:
   27087         * platform/graphics/transforms/PerspectiveTransformOperation.cpp:
   27088         (WebCore::PerspectiveTransformOperation::blend):
   27089           if (blendToIdentity) already returned above.
   27090         * platform/graphics/transforms/RotateTransformOperation.cpp:
   27091         (WebCore::RotateTransformOperation::blend):
   27092           if (blendToIdentity) already returned above.
   27093 
   27094 2009-03-25  Eli Fidler  <eli.fidler (a] torchmobile.com>
   27095 
   27096         Reviewed by George Staikos.
   27097 
   27098         Fix compiler warnings regarding assignments in if statements.
   27099 
   27100         * html/HTMLFormElement.cpp:
   27101         (WebCore::HTMLFormElement::createFormData):
   27102         * plugins/PluginPackage.cpp:
   27103         (WebCore::PluginPackage::compare):
   27104 
   27105 2009-03-25  Dan Bernstein  <mitz (a] apple.com>
   27106 
   27107         Reviewed by Dave Hyatt.
   27108 
   27109         - fix <rdar://problem/6472150> repro crash in
   27110           RenderBlock::rightmostPosition(bool, bool) const at mercotte.fr using
   27111           menus
   27112 
   27113         Test: fast/inline/continuation-positioned-reparenting.html
   27114 
   27115         * rendering/RenderInline.cpp:
   27116         (WebCore::RenderInline::splitFlow): When repurposing the existing
   27117         container as the "pre" block, clear its positioned objects list, because
   27118         positioned descendants may end up in a different block after the split.
   27119 
   27120 2009-03-24  Simon Fraser  <simon.fraser (a] apple.com>
   27121 
   27122         Reviewed by Dave Hyatt
   27123         
   27124         https://bugs.webkit.org/show_bug.cgi?id=24784
   27125         
   27126         Length values in transform operations need to take zoom into account.
   27127 
   27128         Test: fast/transforms/transforms-with-zoom.html
   27129 
   27130         * css/CSSStyleSelector.cpp:
   27131         (WebCore::CSSStyleSelector::createTransformOperations):
   27132 
   27133 2009-03-25  David Hyatt  <hyatt (a] apple.com>
   27134 
   27135         Reviewed by Simon Fraser.
   27136 
   27137         https://bugs.webkit.org/show_bug.cgi?id=24809, background-clip/origin don't use the correct
   27138         values.  Add support for the new values (while preserving the old values for backwards
   27139         compatibility).
   27140 
   27141         Changed some existing test cases to use the new values.
   27142 
   27143         * css/CSSParser.cpp:
   27144         (WebCore::CSSParser::parseFillProperty):
   27145         * css/CSSPrimitiveValueMappings.h:
   27146         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
   27147         (WebCore::CSSPrimitiveValue::operator EFillBox):
   27148         * css/CSSValueKeywords.in:
   27149 
   27150 2009-03-25  Brett Wilson  <brettw (a] dhcp-172-22-71-191.mtv.corp.google.com>
   27151 
   27152         Reviewed by Dimitri Glazkov.
   27153 
   27154         Fix complex text opacity on the Chromium Windows port.
   27155         https://bugs.webkit.org/show_bug.cgi?id=24757
   27156 
   27157         Test: fast/text/complex-text-opacity.html
   27158 
   27159         * platform/graphics/chromium/FontChromiumWin.cpp:
   27160         (WebCore::):
   27161         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::TransparencyAwareFontPainter):
   27162         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::init):
   27163         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::initializeForGDI):
   27164         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::~TransparencyAwareFontPainter):
   27165         (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::TransparencyAwareGlyphPainter):
   27166         (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::~TransparencyAwareGlyphPainter):
   27167         (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::estimateTextBounds):
   27168         (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::drawGlyphs):
   27169         (WebCore::TransparencyAwareFontPainter::TransparencyAwareUniscribePainter::hdc):
   27170         (WebCore::TransparencyAwareFontPainter::TransparencyAwareUniscribePainter::TransparencyAwareUniscribePainter):
   27171         (WebCore::TransparencyAwareFontPainter::TransparencyAwareUniscribePainter::~TransparencyAwareUniscribePainter):
   27172         (WebCore::TransparencyAwareFontPainter::TransparencyAwareUniscribePainter::estimateTextBounds):
   27173         (WebCore::Font::drawGlyphs):
   27174         (WebCore::Font::drawComplexText):
   27175 
   27176 2009-03-25  David Hyatt  <hyatt (a] apple.com>
   27177 
   27178         Reviewed by Eric Seidel
   27179 
   27180         Fix for bug 23198, border images should not clip to border radii.  The border-image should just ignore
   27181         the border-radius, since the assumption is that any desired rounding will be built into the border-image
   27182         itself.
   27183 
   27184         Note that I do not agree with this change, but I am matching the spec.
   27185 
   27186         Added fast/borders/border-image-border-radius.html
   27187 
   27188         * rendering/RenderBoxModelObject.cpp:
   27189         (WebCore::RenderBoxModelObject::paintNinePieceImage):
   27190 
   27191 2009-03-25  Gustavo Noronha Silva  <gns (a] gnome.org>
   27192 
   27193         Reviewed by Holger Freyther.
   27194 
   27195         https://bugs.webkit.org/show_bug.cgi?id=24750
   27196         [GTK] requests download instead of displaying page
   27197 
   27198         Fix the Content-Type headers we get from soup, so that we set a
   27199         proper media type on the ResourceResponse.
   27200 
   27201         * platform/network/soup/ResourceHandleSoup.cpp:
   27202         (WebCore::fillResponseFromMessage):
   27203 
   27204 2009-03-25  Gustavo Noronha Silva  <gns (a] gnome.org>
   27205 
   27206         Reviewed by Holger Freyther.
   27207 
   27208         https://bugs.webkit.org/show_bug.cgi?id=24600
   27209         [GTK] responses with status code >= 400 should not be given special treatment
   27210 
   27211         Do not special case requests that have HTTP responses >=
   27212         400. Redirects are handled automatically by libsoup, but the rest
   27213         of the responses should be treated like any other.
   27214 
   27215         * platform/network/soup/ResourceHandleSoup.cpp:
   27216         (WebCore::):
   27217         (WebCore::gotHeadersCallback):
   27218         (WebCore::gotChunkCallback):
   27219         (WebCore::finishedCallback):
   27220 
   27221 2009-03-25  Darin Adler  <darin (a] apple.com>
   27222 
   27223         Reviewed by John Sullivan.
   27224 
   27225         Tidy up LegacyWebArchive a bit. And don't include favicons in web archives when
   27226         they are being used only for selections, not an entire document.
   27227 
   27228         * WebCore.base.exp: Remove exported function that's not used in WebKit.
   27229 
   27230         * loader/archive/cf/LegacyWebArchive.cpp:
   27231         (WebCore::LegacyWebArchive::createPropertyListRepresentation): Made a static member
   27232         function so it can share private things with other member functions. Added some FIXME
   27233         comments to a branch of code I think is dead. Changed boolean argument into a named
   27234         one. Renamed to match other similar functions.
   27235         (WebCore::LegacyWebArchive::createResourceResponseFromPropertyListData): Ditto.
   27236         (WebCore::LegacyWebArchive::createResource): Ditto.
   27237         (WebCore::LegacyWebArchive::create): Merged the create and init functions.
   27238         (WebCore::LegacyWebArchive::rawDataRepresentation): Added some assertions because
   27239         we should never fail to write (we can fail to read).
   27240         (WebCore::LegacyWebArchive::createResourceResponseFromMacArchivedData): Made a static
   27241         member function as above.
   27242         (WebCore::LegacyWebArchive::createFromSelection): Ditto.
   27243         (WebCore::LegacyWebArchive::create): Iterate the vector with indices rather than
   27244         iterators. Only include the favicon if the first node is the document since we don't
   27245         want to include the favicon when copying and pasting.
   27246 
   27247         * loader/archive/cf/LegacyWebArchive.h: Made one of the create functions private.
   27248         Made the Mac-specific functions be static member functions. Made other helpers be
   27249         static member functions. Removed the nit function.
   27250 
   27251         * loader/archive/cf/LegacyWebArchiveMac.mm:
   27252         (WebCore::LegacyWebArchive::createResourceResponseFromMacArchivedData): Updated
   27253         comment and made this a static member function.
   27254         (WebCore::LegacyWebArchive::createPropertyListRepresentation): Ditto. Also made
   27255         it so we only type cast in one place.
   27256 
   27257 2009-03-25  Darin Adler  <darin (a] apple.com>
   27258 
   27259         Reviewed by David Hyatt.
   27260 
   27261         Bug 24740: crash in RenderSlider::setPositionFromValue when calling pause() after setting <video> to display: none
   27262         https://bugs.webkit.org/show_bug.cgi?id=24740
   27263         rdar://problem/6679873
   27264 
   27265         Bug 12104: Native Slider: When the thumb's height is specified as a percentage, it is not centered properly
   27266         https://bugs.webkit.org/show_bug.cgi?id=12104
   27267 
   27268         Test: media/video-display-none-crash.html
   27269 
   27270         The problem here was that RenderSlider was trying to position its thumb in a way that
   27271         requires it to call updateLayout inside rendering code. The right way to position a
   27272         child renderer is to do layout, so I had to write a layout function. And then fix a few
   27273         other small problems shown by the same test case.
   27274 
   27275         * rendering/RenderSlider.cpp: Made defaultTrackLength have internal linkage.
   27276         Renamed HTMLSliderThumbElement to SliderThumbElement because we only use the HTML
   27277         prefix for public DOM classes, not elements used as implementation details.
   27278         Made SliderThumbElement function members private and got rid of unneeded default
   27279         argument value for shadowParent.
   27280         (WebCore::SliderRange::SliderRange): Added. Parses precision, max, and min attributes.
   27281         (WebCore::SliderRange::clampValue): Added. Does standard clamping based on the above.
   27282         (WebCore::SliderRange::valueFromElement): Added. Reads the value from the element in
   27283         a way that clamps to the range.
   27284         (WebCore::sliderPosition): Added. Computes the slider position: a double.
   27285         (WebCore::SliderThumbElement::SliderThumbElement): Removed unneeded explicit
   27286         initialization of m_initialClickPoint.
   27287         (WebCore::SliderThumbElement::defaultEventHandler): Call setValueForPosition instead
   27288         of calling setCurrentPosition and valueChanged.
   27289         (WebCore::RenderSlider::RenderSlider): Remove unneeded explicit initialization of m_thumb.
   27290         (WebCore::RenderSlider::styleDidChange): Remove unneeded second argument to createThumbStyle.
   27291         (WebCore::RenderSlider::createThumbStyle): Remove unneeded second argument. Get rid of code
   27292         setting the position to relative and setting the left and top. We now handle positioning
   27293         in a custom layout function.
   27294         (WebCore::RenderSlider::layout): Rewrote to handle positioning of the thumb as layout.
   27295         (WebCore::RenderSlider::updateFromElement): Added code to immediately update the value
   27296         in the element if it's out of range. This clamping used to be done as a side effect of
   27297         setPositionFromValue. Also, this has nothing to do with the renderer, so at some point
   27298         it could be moved into HTMLInputElement. Removed call to setPositionFromValue
   27299         and instead just rely on the call to setNeedsLayout. Fix the setNeedsLayout call to be
   27300         a normal setNeedsLayout(true), not a setNeedsLayout(true, false), because we do want
   27301         this to be propagated to the parent -- it's not called during layout.
   27302         (WebCore::RenderSlider::setValueForPosition): Refactor to use the new SliderRange
   27303         class. Also don't call setCurrentPosition; instead just call setNeedsLayout.
   27304         (WebCore::RenderSlider::currentPosition): Use the actual position of the renderer rather
   27305         than the style to find the position; that means this needs to be done after layout is done.
   27306         Also removed unneeded runtime checks and replaced them with assertions, after checking
   27307         all callers to see they already guarantee this.
   27308         (WebCore::RenderSlider::trackSize): Removed unneeded runtime checks and replaced them
   27309         with assertions, after checking all callers to see they already guarantee this.
   27310         (WebCore::RenderSlider::inDragMode): Added a null check for m_thumb so this won't
   27311         crash if called early on a brand new RenderSlider.
   27312 
   27313         * rendering/RenderSlider.h: Made all functions private except for forwardEvent and inDragMode.
   27314         Renamed HTMLSliderThumbElement to SliderThumbElement because we only use the HTML
   27315         prefix for public DOM classes, not elements used as implementation details. Made the
   27316         mouseEventIsInThumb function non-virtual. Removed the return value and argument from
   27317         setPositionFromValue. Removed valueChanged and setCurrentPosition. Removed the oldStyle
   27318         argument to createThumbStyle (see above). Made SliderThumbElement a friend so it can use some
   27319         private member functions.
   27320 
   27321 2009-03-25  Eli Fidler  <eli.fidler (a] torchmobile.com>
   27322 
   27323         Reviewed by George Staikos.
   27324 
   27325         Fix ambiguous else cases by adding braces to nested if()s with elses.
   27326 
   27327         * loader/MainResourceLoader.cpp:
   27328         (WebCore::MainResourceLoader::continueAfterContentPolicy):
   27329         * page/EventHandler.cpp:
   27330         (WebCore::EventHandler::updateDragAndDrop):
   27331         * rendering/RenderListMarker.cpp:
   27332         (WebCore::toArmenianUnder10000):
   27333         * rendering/TextControlInnerElements.cpp:
   27334         (WebCore::TextControlInnerTextElement::defaultEventHandler):
   27335 
   27336 2009-03-24  Eli Fidler  <eli.fidler (a] torchmobile.com>
   27337 
   27338         Reviewed by George Staikos.
   27339 
   27340         Move variable into proper platform block to quiet warning.
   27341 
   27342         * html/CanvasRenderingContext2D.cpp:
   27343         (WebCore::CanvasRenderingContext2D::drawTextInternal):
   27344 
   27345 2009-03-24  Eric Carlson  <eric.carlson (a] apple.com>
   27346 
   27347         Reviewed by Antti Koivisto.
   27348 
   27349         Fix for <rdar://problem/6719375> Deal with QTKit loadstate changes when playing streaming movies
   27350 
   27351         *  WebCore/html/HTMLMediaElement.cpp:
   27352         (WebCore::HTMLMediaElement::setNetworkState): Deal with media engine reviving after having
   27353         network state of NETWORK_NO_SOURCE.
   27354 
   27355         *  WebCore/platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   27356         (WebCore::MediaPlayerPrivate::updateStates): Reset m_readyState at each state change since
   27357         some types of movies currently cause QTKit's load state to bounce around. QTMovieLoadStatePlaythroughOK
   27358         corresponds to HaveFutureData, not HaveEnoughData.
   27359 
   27360 2009-03-24  Adele Peterson  <adele (a] apple.com>
   27361 
   27362         Reviewed by Darin Adler.
   27363 
   27364         Fix for https://bugs.webkit.org/show_bug.cgi?id=24707
   27365         <rdar://problem/6593021> Deleting with a caret in a blank, quoted line decreases the quoting, but does not delete the line
   27366 
   27367         * editing/TypingCommand.cpp: (WebCore::TypingCommand::deleteKeyPressed):
   27368         After breaking out of an empty mail blockquote, we still want continue with the deletion
   27369         so actual content will get deleted, and not just the quote style.
   27370 
   27371 2009-03-24  Darin Adler  <darin (a] apple.com>
   27372 
   27373         Reviewed by Brady Eidson.
   27374 
   27375         <rdar://problem/6624662> REGRESSION (r39904): can't save certain web pages as web archive (ones without favicons!)
   27376 
   27377         * loader/archive/cf/LegacyWebArchive.cpp:
   27378         (WebCore::LegacyWebArchive::create): Added a null check.
   27379 
   27380 2009-03-24  Adam Langley  <agl (a] google.com>
   27381 
   27382         Reviewed by Darin Fisher.
   27383 
   27384         https://bugs.webkit.org/show_bug.cgi?id=24685
   27385 
   27386         The Skia drawLine function takes subpixel values and attempts to draw
   27387         a line with subpixel precision. This is complex and slow for drawing
   27388         scrollbars which use only vertical and horizontal lines.
   27389 
   27390         This changes the Chromium Linux scrollbar code to use drawIRect.
   27391 
   27392         * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
   27393         (WebCore::ScrollbarThemeChromium::invalidateOnMouseEnterExit):
   27394         (WebCore::drawVertLine):
   27395         (WebCore::drawHorizLine):
   27396         (WebCore::drawBox):
   27397         (WebCore::ScrollbarThemeChromium::paintTrackPiece):
   27398         (WebCore::ScrollbarThemeChromium::paintThumb):
   27399 
   27400 2009-03-24  David Kilzer  <ddkilzer (a] apple.com>
   27401 
   27402         Bug 23310: Setting an absolute path (/abs) on an <iframe> with no src doesn't resolve the URL properly
   27403 
   27404         <https://bugs.webkit.org/show_bug.cgi?id=23310>
   27405 
   27406         Reviewed by Darin Adler.
   27407 
   27408         Test: fast/frames/iframe-no-src-set-location.html
   27409 
   27410         * dom/Document.cpp:
   27411         (WebCore::Document::completeURL): If m_baseURL is empty or is
   27412         about:blank and we have a parent document, use the parent
   27413         document's URL for the base when completing a new URL.
   27414 
   27415 2009-03-24  Simon Fraser  <simon.fraser (a] apple.com>
   27416 
   27417         Reviewed by Dave Hyatt
   27418         
   27419         https://bugs.webkit.org/show_bug.cgi?id=24659
   27420         
   27421         When hit-testing 3d-transformed layers, it doesn't make sense to project the hitTestRect
   27422         into the coordinate space of the layer, and doing so can result in pathalogical quads
   27423         that break hit testing. In that case, simply use the same bounds as used for painting,
   27424         which are the composited bounds for this layer.
   27425 
   27426         Test: transforms/3d/hit-testing/rotated-hit-test.html
   27427 
   27428         * rendering/RenderLayer.cpp:
   27429         (WebCore::RenderLayer::hitTestLayer):
   27430 
   27431 2009-03-24  Simon Fraser  <simon.fraser (a] apple.com>
   27432 
   27433         Reviewed by Dave Hyatt
   27434 
   27435         https://bugs.webkit.org/show_bug.cgi?id=24436
   27436         
   27437         When compositing is enabled, painting and hit testing end up using different
   27438         clipping roots, because, for painting, every composited layer is a clipping root,
   27439         but for hit testing only layers with transforms are. To fix this, we use
   27440         temporary clip rects for hit testing, if the page is in compositing mode.
   27441 
   27442         * rendering/RenderLayer.cpp:
   27443         (WebCore::RenderLayer::paintLayer):
   27444         (WebCore::RenderLayer::hitTestLayer):
   27445         (WebCore::RenderLayer::parentClipRects):
   27446         (WebCore::RenderLayer::calculateRects):
   27447         * rendering/RenderLayer.h:
   27448 
   27449 2009-03-24  Simon Fraser  <simon.fraser (a] apple.com>
   27450 
   27451         Reviewed by Dan Bernstein
   27452         
   27453         https://bugs.webkit.org/show_bug.cgi?id=24782
   27454 
   27455         Fix regression with CSS clip rects with non-length values, by reverting to
   27456         the original code, but passing the zoom multiplier through convertToLength().
   27457         
   27458         Also make stylistic change in createTransformOperations(), renaming 'inStyle'
   27459         to 'style.
   27460         
   27461         Tested by existing tests.
   27462 
   27463         * css/CSSStyleSelector.cpp:
   27464         (WebCore::convertToLength):
   27465         (WebCore::CSSStyleSelector::applyProperty):
   27466         (WebCore::CSSStyleSelector::createTransformOperations):
   27467 
   27468 2009-03-24  David Hyatt  <hyatt (a] apple.com>
   27469 
   27470         Reviewed by Simon Fraser
   27471 
   27472         https://bugs.webkit.org/show_bug.cgi?id=21789, overflow:hidden elements should clip their foreground contents
   27473         to a border-radius.
   27474 
   27475         This patch makes non-self-painting overflow layers and control clips work with border-radius.  RenderLayers
   27476         that should be clipped by overflow ancestors with border-radius are still broken.
   27477 
   27478         Added fast/clip/overflow-border-radius-clip.html
   27479 
   27480         * rendering/RenderBox.cpp:
   27481         (WebCore::RenderBox::pushContentsClip):
   27482 
   27483 2009-03-24  David Hyatt  <hyatt (a] apple.com>
   27484 
   27485         Reviewed by Simon Fraser
   27486 
   27487         https://bugs.webkit.org/show_bug.cgi?id=21789, overflow:hidden elements should clip their foreground contents.
   27488         
   27489         This first patch makes overflow:hidden properly clip the foreground contents of overflow:hidden replaced elements.  Common
   27490         replaced elements now default to overflow:hidden in the UA stylesheet (this is what the spec specifically recommends be
   27491         done).
   27492     
   27493         Added fast/replaced/border-radius-clip.html
   27494 
   27495         * css/html4.css:
   27496         * rendering/RenderReplaced.cpp:
   27497         (WebCore::RenderReplaced::paint):
   27498         * rendering/RenderWidget.cpp:
   27499         (WebCore::RenderWidget::paint):
   27500 
   27501 2009-03-24  Adele Peterson  <adele (a] apple.com>
   27502 
   27503         RS by Mark Rowe.
   27504 
   27505         Only build these Mail quirks checks in on the Mac.
   27506 
   27507         * dom/Document.cpp: (WebCore::disableRangeMutation):
   27508         * html/HTMLElement.cpp: (WebCore::HTMLElement::inEitherTagList):
   27509 
   27510 2009-03-24  Brent Fulgham  <bfulgham (a] webkit.org>
   27511 
   27512         Build fix, no review.
   27513 
   27514         Remove ResourceLoaderCFNet.cpp from build list for Cairo Releas
   27515         and Debug targets.
   27516 
   27517         * WebCore.vcproj/WebCore.vcproj:
   27518 
   27519 2009-03-24  Eric Carlson  <eric.carlson (a] apple.com>
   27520 
   27521         Fix layout tests broken by r41907.
   27522 
   27523         * html/HTMLMediaElement.cpp:
   27524         (WebCore::HTMLMediaElement::setReadyState): Don't set "was playing" based on the new ready state
   27525 
   27526 2009-03-24  Dmitry Titov  <dimich (a] chromium.org>
   27527 
   27528         Reviewed by Dimitri Glazkov.
   27529 
   27530         https://bugs.webkit.org/show_bug.cgi?id=24689
   27531         Fix Chromium compilation errors.
   27532 
   27533         * bindings/v8/WorkerContextExecutionProxy.cpp:
   27534         (WebCore::WorkerContextExecutionProxy::FindOrCreateEventListener):
   27535         (WebCore::WorkerContextExecutionProxy::RemoveEventListener):
   27536 
   27537 2009-03-24  Yury Semikhatsky  <yurys (a] chromium.org>
   27538 
   27539         Reviewed by Darin Adler.
   27540 
   27541         https://bugs.webkit.org/show_bug.cgi?id=24759
   27542         Add missing methods Element.prototype.removeMatchingStyleClasses and
   27543         Node.prototype.enclosingNodeOrSelfWithNodeNameInArray to SourceFrame content
   27544         iframe. These methods are called by Element.prototype.removeStyleClass and
   27545         Node.prototype.enclosingNodeOrSelfWithNodeName.
   27546 
   27547         * inspector/front-end/SourceFrame.js:
   27548         (WebInspector.SourceFrame.prototype._loaded):
   27549 
   27550 2009-03-24  Mark Mentovai  <mark (a] chromium.org>
   27551 
   27552         Reviewed by Mark Rowe.
   27553 
   27554         https://bugs.webkit.org/show_bug.cgi?id=24653
   27555         WebKit should be buildable without prefix header injection.
   27556         Adds missing #includes and forward declarations as needed.
   27557 
   27558         * editing/SmartReplaceCF.cpp:
   27559         * platform/graphics/mac/ColorMac.mm:
   27560         * platform/graphics/mac/FontCacheMac.mm:
   27561         * platform/graphics/mac/FontCustomPlatformData.h:
   27562         * platform/graphics/mac/FontMac.mm:
   27563         * platform/graphics/mac/FontMacATSUI.mm:
   27564         * platform/graphics/mac/FontPlatformData.h:
   27565         * platform/graphics/mac/FontPlatformDataMac.mm:
   27566         * platform/graphics/mac/GraphicsContextMac.mm:
   27567         * platform/graphics/mac/SimpleFontDataMac.mm:
   27568         * platform/mac/FoundationExtras.h:
   27569         * platform/mac/LocalCurrentGraphicsContext.h:
   27570         * platform/mac/WebCoreSystemInterface.h:
   27571         * platform/mac/WebCoreSystemInterface.mm:
   27572         * platform/mac/WebCoreTextRenderer.h:
   27573         * platform/mac/WebCoreTextRenderer.mm:
   27574         * platform/mac/WebFontCache.h:
   27575         * platform/mac/WebFontCache.mm:
   27576         * platform/text/PlatformString.h:
   27577         * platform/text/mac/ShapeArabic.c:
   27578         * platform/text/mac/StringMac.mm:
   27579         * rendering/RenderThemeChromiumMac.h:
   27580 
   27581 2009-03-24  Dan Bernstein  <mitz (a] apple.com>
   27582 
   27583         Reviewed by Darin Adler.
   27584 
   27585         - fix <rdar://problem/6107874> by capping the nesting depth of
   27586           "block-level" elements generated by the parser
   27587 
   27588         Test: fast/parser/block-nesting-cap.html
   27589 
   27590         * html/HTMLParser.cpp:
   27591         (WebCore::HTMLParser::HTMLParser):
   27592         (WebCore::HTMLParser::insertNode):
   27593         (WebCore::HTMLParser::pushBlock):
   27594         (WebCore::HTMLParser::popOneBlockCommon):
   27595         (WebCore::HTMLParser::freeBlock):
   27596         * html/HTMLParser.h:
   27597 
   27598 2009-03-23  Greg Bolsinga  <bolsinga (a] apple.com>
   27599 
   27600         Reviewed by David Kilzer.
   27601 
   27602         https://bugs.webkit.org/show_bug.cgi?id=24771
   27603         
   27604         DOMTimeStamps are based upon 1970.
   27605 
   27606         * platform/mac/GeolocationServiceMac.mm:
   27607         (-[WebCoreCoreLocationObserver locationManager:didUpdateToLocation:fromLocation:]):
   27608 
   27609 2009-03-23  Eric Seidel  <eric (a] webkit.org>
   27610 
   27611         Build fix, no review.
   27612 
   27613         * rendering/RenderObject.cpp:
   27614         (WebCore::RenderObject::createVisiblePosition): change .container to .isNotNull()
   27615 
   27616 2009-03-23  Eric Seidel  <eric (a] webkit.org>
   27617 
   27618         Reviewed by Darin Adler.
   27619 
   27620         Rename Position::container to m_anchorNode and make it private
   27621         https://bugs.webkit.org/show_bug.cgi?id=24760
   27622 
   27623         More code cleanup for Position.
   27624 
   27625         Change all uses of m_container to node()
   27626         Eventually most uses of node() should change to anchorNode() to designate
   27627         that it's the node the Position is anchored to, but not necessarily the
   27628         container of the position (it could be the before/after neighbor).
   27629 
   27630         Remove any code which sets m_container, and change it to use a new
   27631         Position::moveToPosition function which takes a node and offset.
   27632         It never makes sense to change the node and leave the offset.
   27633 
   27634         * dom/Position.h:
   27635         (WebCore::Position::Position):
   27636         (WebCore::Position::clear):
   27637         (WebCore::Position::anchorNode):
   27638         (WebCore::Position::node):
   27639         (WebCore::Position::moveToPosition):
   27640         (WebCore::Position::moveToOffset):
   27641         (WebCore::Position::isNull):
   27642         (WebCore::Position::isNotNull):
   27643         (WebCore::operator==):
   27644         * dom/Range.cpp:
   27645         (WebCore::Range::create):
   27646         (WebCore::Range::compareBoundaryPoints):
   27647         * dom/RangeBoundaryPoint.h:
   27648         (WebCore::RangeBoundaryPoint::container):
   27649         (WebCore::RangeBoundaryPoint::set):
   27650         (WebCore::RangeBoundaryPoint::setOffset):
   27651         (WebCore::RangeBoundaryPoint::setToChild):
   27652         (WebCore::RangeBoundaryPoint::setToStart):
   27653         (WebCore::RangeBoundaryPoint::setToEnd):
   27654 
   27655 2009-03-17  Eric Seidel  <eric (a] webkit.org>
   27656 
   27657         Reviewed by David Hyatt.
   27658 
   27659         document.write() should be able to make a document strict mode
   27660         https://bugs.webkit.org/show_bug.cgi?id=24336
   27661 
   27662         Remove an implicit write of "<html>" on the first document.write call
   27663         this was added as part of a KDE import http://trac.webkit.org/changeset/798
   27664         with no layout test or explanation.  I can't think of any reason why
   27665         an implicit <html> write is necessary (or correct), so I'm removing it and
   27666         adding a test for the correct behavior.  The parser will add any necessary
   27667         HTMLHTMLElements during the write() anyway.
   27668 
   27669         Our behavior is now tested by fast/dom/Document/document-write-doctype
   27670         and matches IE, FF fails this new test.  Mozilla bug filed:
   27671         https://bugzilla.mozilla.org/show_bug.cgi?id=483908
   27672 
   27673         * dom/Document.cpp:
   27674         (WebCore::Document::write):
   27675 
   27676 2009-03-23  Sam Weinig  <sam (a] webkit.org>
   27677 
   27678         Reviewed by Dan Bernstein.
   27679 
   27680         Fix for <rdar://problem/6140966>
   27681         Empty Caches does not clear the Cross-site XMLHttpRequest preflight cache
   27682 
   27683         * WebCore.base.exp:
   27684         * WebCore.xcodeproj/project.pbxproj:
   27685         * loader/CrossOriginPreflightResultCache.cpp:
   27686         (WebCore::CrossOriginPreflightResultCache::empty):
   27687         * loader/CrossOriginPreflightResultCache.h:
   27688 
   27689 2009-03-23  Darin Adler  <darin (a] apple.com>
   27690 
   27691         Reviewed by Adele Peterson.
   27692 
   27693         Bug 24726: hit testing doesn't work right when the click is on anonymous content
   27694         https://bugs.webkit.org/show_bug.cgi?id=24726
   27695         rdar://problem/6696992
   27696 
   27697         Test: editing/selection/hit-test-anonymous.html
   27698 
   27699         * rendering/RenderBR.cpp:
   27700         (WebCore::RenderBR::positionForPoint): Call createVisiblePosition instead of
   27701         creating a VisiblePosition directly. It will handle finding non-anonymous
   27702         content nearby if node() is 0.
   27703         * rendering/RenderBlock.cpp:
   27704         (WebCore::positionForPointRespectingEditingBoundaries): Ditto.
   27705         (WebCore::positionForPointWithInlineChildren): Ditto.
   27706         (WebCore::RenderBlock::positionForPoint): Ditto.
   27707         * rendering/RenderBox.cpp:
   27708         (WebCore::RenderBox::positionForPoint): Ditto.
   27709         * rendering/RenderObject.cpp:
   27710         (WebCore::RenderObject::positionForPoint): Ditto.
   27711         (WebCore::RenderObject::createVisiblePosition): Added.
   27712         * rendering/RenderObject.h: Added createVisiblePosition.
   27713         * rendering/RenderReplaced.cpp:
   27714         (WebCore::RenderReplaced::positionForPoint): Call createVisiblePosition.
   27715         * rendering/RenderSVGInlineText.cpp:
   27716         (WebCore::RenderSVGInlineText::positionForPoint): Ditto.
   27717         * rendering/RenderText.cpp:
   27718         (WebCore::RenderText::positionForPoint): Ditto.
   27719 
   27720 2009-03-23  Adele Peterson  <adele (a] apple.com>
   27721 
   27722         Reviewed by Darin Adler & Dave Hyatt.
   27723 
   27724         Fix for <rdar://problem/6621310> REGRESSION(35185): Apple Travel HTML emails missing some style after Safari 4 upgrade
   27725 
   27726         Leopard Mail doesn't expect <style> to be in the body.  This change reverts back to the old behavior of
   27727         moving <style> to <head> for that version of Mail.
   27728 
   27729         * html/HTMLElement.cpp: (WebCore::HTMLElement::inEitherTagList):
   27730 
   27731 2009-03-23  Adele Peterson  <adele (a] apple.com>
   27732 
   27733         Reviewed by Mark Rowe & Dave Hyatt.
   27734 
   27735         Merge some of the individual Mail quirks into two settings that we can check for future quirks.
   27736 
   27737         * WebCore.base.exp:
   27738         * dom/Document.cpp:
   27739         (WebCore::disableRangeMutation):
   27740         (WebCore::Document::nodeChildrenChanged):
   27741         (WebCore::Document::nodeWillBeRemoved):
   27742         (WebCore::Document::textInserted):
   27743         (WebCore::Document::textRemoved):
   27744         (WebCore::Document::textNodesMerged):
   27745         (WebCore::Document::textNodeSplit):
   27746         * page/Settings.cpp:
   27747         (WebCore::Settings::Settings):
   27748         (WebCore::Settings::setNeedsLeopardMailQuirks):
   27749         (WebCore::Settings::setNeedsTigerMailQuirks):
   27750         * page/Settings.h:
   27751         (WebCore::Settings::needsLeopardMailQuirks):
   27752         (WebCore::Settings::needsTigerMailQuirks):
   27753 
   27754 2009-03-23  Ada Chan  <adachan (a] apple.com>
   27755 
   27756         https://bugs.webkit.org/show_bug.cgi?id=24762
   27757         Support text-indent in <option> elements on windows platform.
   27758 
   27759         Reviewed by Adele Peterson.
   27760 
   27761         * css/themeWin.css:
   27762         * platform/PopupMenuStyle.h: We don't honor font specified on <option> elements right now.  Make this
   27763         explicit via windows themed default stylesheet.
   27764         (WebCore::PopupMenuStyle::PopupMenuStyle): Also store text-indent and text-direction.
   27765         (WebCore::PopupMenuStyle::textIndent):
   27766         (WebCore::PopupMenuStyle::textDirection):
   27767         * platform/win/PopupMenuWin.cpp:
   27768         (WebCore::PopupMenu::paint): Adjust the text's x-coordinate if text-indent is supported for options and 
   27769         text-indent is specified with LTR direction.
   27770         * rendering/RenderMenuList.cpp:
   27771         (WebCore::RenderMenuList::updateOptionsWidth): Take text-indent into account if theme supports text-indent for options.
   27772         (WebCore::RenderMenuList::itemStyle): Use new PopupMenuStyle constructor on windows.
   27773         (WebCore::RenderMenuList::menuStyle): Ditto.
   27774         * rendering/RenderTextControlSingleLine.cpp:
   27775         (WebCore::RenderTextControlSingleLine::menuStyle): Ditto.
   27776         * rendering/RenderTheme.h:
   27777         (WebCore::RenderTheme::popupOptionSupportsTextIndent): Added.  Default is false since we are only supporting it in windows for now.
   27778         * rendering/RenderThemeWin.h:
   27779         (WebCore::RenderThemeWin::popupOptionSupportsTextIndent): Returns true for windows.
   27780 
   27781 2009-03-23  Sam Weinig  <sam (a] webkit.org>
   27782 
   27783         Reviewed by Anders Carlsson.
   27784 
   27785         Fix for https://bugs.webkit.org/show_bug.cgi?id=24699
   27786         REGRESSION: Java Applets broken
   27787         <rdar://problem/6707494>
   27788 
   27789         Fix loading Java applets without a codeBase. Only pass the base (up to the
   27790         the last path component) of the baseURL to the plug-in.
   27791 
   27792         * html/HTMLAppletElement.cpp:
   27793         (WebCore::HTMLAppletElement::createRenderer):
   27794         * platform/KURL.cpp:
   27795         (WebCore::KURL::baseAsString):
   27796         * platform/KURL.h:
   27797 
   27798 2009-03-23  Darin Adler  <darin (a] apple.com>
   27799 
   27800         Reviewed by Sam Weinig.
   27801 
   27802         * platform/KURL.h: Removed now-incorrect comments.
   27803         None of the parts include the separator characters any more, now that
   27804         query doesn't include the "?", so the comments explaining which do and do
   27805         not are no-longer helpful.
   27806 
   27807 2009-03-23  David Levin  <levin (a] chromium.org>
   27808 
   27809         Reviewed by Dimitri Glazkov.
   27810 
   27811         https://bugs.webkit.org/show_bug.cgi?id=24764
   27812 
   27813         Renamed files V8NodeFilter -> V8NodeFilterCondition to reflect
   27814         class names.  Also fixed some headers that got mangled in search/replace
   27815         operations.
   27816 
   27817         No change in behavior, so no test.
   27818 
   27819         * bindings/v8/V8NodeFilter.h: Removed.
   27820         * bindings/v8/V8NodeFilterCondition.cpp: Renamed from WebCore/bindings/v8/V8NodeFilter.cpp.
   27821         * bindings/v8/V8NodeFilterCondition.h: Added.
   27822         * bindings/v8/custom/V8ClipboardCustom.cpp:
   27823         * bindings/v8/custom/V8DocumentCustom.cpp:
   27824         * bindings/v8/custom/V8ElementCustom.cpp:
   27825         * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:
   27826         * bindings/v8/custom/V8NavigatorCustom.cpp:
   27827 
   27828 2009-03-23  Darin Fisher  <darin (a] chromium.org>
   27829 
   27830         Reviewed by Antti Koivisto.
   27831 
   27832         https://bugs.webkit.org/show_bug.cgi?id=24741
   27833 
   27834         Adds a unique across-browser-sessions identifier to FormData, which may
   27835         be used by ResourceHandle as a secondary cache key to enable cached
   27836         form submissions.
   27837 
   27838         At issue: two otherwise identical form submissions may result in
   27839         completely independent responses, which may each be appropriate to
   27840         store and reuse from cache.
   27841 
   27842         * html/HTMLFormElement.cpp: Added call to FormData::setIdentifier so that
   27843         we only enable cached form submissions for those generated by HTML.  This
   27844         way we do not bother with POSTs generated by XMLHttpRequest.
   27845         (WebCore::generateFormDataIdentifier):
   27846         (WebCore::HTMLFormElement::createFormData):
   27847         * platform/network/FormData.cpp: Initialize m_identifier to 0, which means
   27848         the unspecified identifier.  So by default there is no identifier and
   27849         nothing changes.
   27850         (WebCore::FormData::FormData):
   27851         * platform/network/FormData.h: Added m_identifier with setter and getter.
   27852         (WebCore::FormData::setIdentifier):
   27853         (WebCore::FormData::identifier):
   27854 
   27855 2009-03-23  Simon Fraser  <simon.fraser (a] apple.com>
   27856 
   27857         Reviewed by Antti Koivisto
   27858         
   27859         https://bugs.webkit.org/show_bug.cgi?id=24733
   27860         
   27861         Fix media controller with full-page zoom. Previously, the media controller
   27862         shadow nodes never saw style changes on the RenderMedia, so did not respond
   27863         to zooming at all. Now, we update the style on the shadow renderers
   27864         whenever RenderMedia gets a style change. Also fix the video thumb in
   27865         the theme to be scaled properly.
   27866 
   27867         Test: media/video-controls-zoomed.html
   27868 
   27869         * rendering/MediaControlElements.cpp:
   27870         (WebCore::MediaControlShadowRootElement::updateStyle):
   27871         (WebCore::MediaTextDisplayElement::MediaTextDisplayElement):
   27872         (WebCore::MediaTextDisplayElement::updateStyle):
   27873         (WebCore::MediaControlInputElement::MediaControlInputElement):
   27874         (WebCore::MediaControlInputElement::updateStyle):
   27875         * rendering/MediaControlElements.h:
   27876         * rendering/RenderMedia.cpp:
   27877         (WebCore::RenderMedia::styleDidChange):
   27878         * rendering/RenderMedia.h:
   27879         * rendering/RenderThemeMac.mm:
   27880         (WebCore::RenderThemeMac::adjustSliderThumbSize):
   27881 
   27882 2009-03-23  Mike Belshe  <mike (a] belshe.com>
   27883 
   27884         Reviewed by Darin Adler.
   27885 
   27886         https://bugs.webkit.org/show_bug.cgi?id=24739
   27887 
   27888         Rework StringImpl::create methods to try to allocate a single buffer
   27889         rather than allocating both the StringImpl class and a separate data
   27890         buffer.
   27891 
   27892         * platform/text/StringImpl.cpp:
   27893         * platform/text/StringImpl.h:
   27894 
   27895 2009-03-23  Darin Adler  <darin (a] apple.com>
   27896 
   27897         Reviewed by Antti Koivisto.
   27898 
   27899         Based on a patch by Nico Weber <nicolasweber (a] gmx.de>
   27900 
   27901         Bug 24755: LayoutTests/http/tests/misc/url-in-utf16le.html regression
   27902         https://bugs.webkit.org/show_bug.cgi?id=24755
   27903 
   27904         * platform/text/TextEncoding.cpp:
   27905         (WebCore::TextEncoding::isUTF7Encoding): Added. Checks if the current encoding
   27906         is UTF7 without loading extended codecs.
   27907         (WebCore::TextEncoding::encodingForFormSubmission): Use isUTF7Encoding() instead
   27908         of comparing with UTF7Encoding(). Eliminate the explicit check of
   27909         noExtendedTextEncodingNameUsed() because that's now handled by the functions
   27910         that this function calls instead.
   27911 
   27912         * platform/text/TextEncoding.h: Added isUTF7Encoding function.
   27913         Also tweaked formatting a bit.
   27914 
   27915 2009-03-20  Peter Kasting  <pkasting (a] google.com>
   27916 
   27917         Reviewed by Darin Fisher.
   27918 
   27919         https://bugs.webkit.org/show_bug.cgi?id=24720
   27920         RenderThemeChromium should draw something for Slider parts instead of
   27921         dropping them on the floor.
   27922 
   27923         * platform/chromium/ChromiumBridge.h:
   27924         * rendering/RenderThemeChromiumWin.cpp:
   27925         (WebCore::RenderThemeChromiumWin::adjustSliderThumbSize):
   27926         (WebCore::RenderThemeChromiumWin::paintSliderTrack):
   27927         (WebCore::RenderThemeChromiumWin::determineSliderThumbState):
   27928         (WebCore::RenderThemeChromiumWin::getThemeData):
   27929         * rendering/RenderThemeChromiumWin.h:
   27930         (WebCore::RenderThemeChromiumWin::paintSliderThumb):
   27931 
   27932 2009-03-23  Glen Murphy  <glen (a] chromium.org>
   27933 
   27934         Reviewed by Darin Fisher.
   27935 
   27936         https://bugs.webkit.org/show_bug.cgi?id=24657
   27937 
   27938         Fix Skia drawing of highly scaled bitmaps; the conversion to
   27939         IntRect produced visible layout test failures in highly scaled 
   27940         coordinate systems.
   27941 
   27942         Test: svg/custom/image-small-width-height.svg
   27943 
   27944         * WebCore\platform\graphics\skia\ImageSkia.cpp:
   27945 
   27946 2009-03-23  David Kilzer  <ddkilzer (a] apple.com>
   27947 
   27948         Provide JavaScript exception information after slow script timeout
   27949 
   27950         Reviewed by Oliver Hunt.
   27951 
   27952         * bindings/js/ScriptController.cpp:
   27953         (WebCore::ScriptController::evaluate): Changed to report
   27954         exceptions for the Interrupted completion type as well.
   27955 
   27956 2009-03-23  Simon Fraser  <simon.fraser (a] apple.com>
   27957 
   27958         Reviewed by Darin Adler
   27959 
   27960         https://bugs.webkit.org/show_bug.cgi?id=24736
   27961         
   27962         Fix three mostly-unrelated problems with full-page zoom:
   27963         
   27964         * dom/Document.cpp:
   27965         (WebCore::Document::elementFromPoint):
   27966         Document::elementFromPoint() needs to take full-page zoom into account.
   27967         
   27968         * dom/MouseRelatedEvent.cpp:
   27969         (WebCore::MouseRelatedEvent::receivedTarget):
   27970         Take full-page zoom into account when computing offsetX/offsetY.
   27971         
   27972         * html/HTMLSelectElement.cpp:
   27973         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
   27974         Don't use offsetX/offsetY when hit testing list boxes; offsets were broken
   27975         with full-page zoom, and using pageX/pageY is easier because we don't
   27976         have to worry about the event target, and we already have a point in
   27977         absolute coordinates.
   27978 
   27979         Tests: fast/forms/listbox-hit-test-zoomed.html
   27980                fast/forms/search-zoomed.html
   27981                fast/forms/slider-zoomed.html
   27982 
   27983 2009-03-23  Simon Fraser  <simon.fraser (a] apple.com>
   27984 
   27985         Reviewed by Dan Bernstein
   27986 
   27987         https://bugs.webkit.org/show_bug.cgi?id=24753
   27988         
   27989         The rect for CSS 'clip' needs to have zooming applied to it.
   27990 
   27991         Test: fast/css/clip-zooming.html
   27992 
   27993         * css/CSSStyleSelector.cpp:
   27994         (WebCore::CSSStyleSelector::applyProperty):
   27995 
   27996 2009-03-23  Eric Carlson  <eric.carlson (a] apple.com>
   27997 
   27998         Reviewed by Adam Roben.
   27999 
   28000         <rdar://problem/6704282>
   28001         https://bugs.webkit.org/show_bug.cgi?id=24719
   28002         QTMovieWinTimer logic inversion
   28003 
   28004         Fix logic inversion in the Win32 timer used by QTMovieWin that caused it to always
   28005         use SetTimer, even when the intervals was below USER_TIMER_MINIMUM. A side effect of
   28006         this was that a movie timer would sometimes be blocked for significant amounts of time 
   28007         because WM_TIMER messages are not processed when the thread's message queue has any
   28008         higher priority messages, and WebCore/Win's timer uses PostMessage for low interval
   28009         timers. Also change SetTimer call to use HWND and custom message instead of 
   28010         timer function since the timer already has an HWND for processing PostMessage.
   28011 
   28012         Not possible to make a test for this because it is so timing dependant.
   28013 
   28014         * platform/graphics/win/QTMovieWinTimer.cpp:
   28015         (TimerWindowWndProc):
   28016         (setSharedTimerFireDelay):
   28017 
   28018 2009-03-23  Eric Carlson  <eric.carlson (a] apple.com>
   28019 
   28020         Reviewed by Adele Peterson.
   28021 
   28022         https://bugs.webkit.org/show_bug.cgi?id=24588
   28023         
   28024         Update media element implementation to current HTML5 spec
   28025 
   28026         New tests: 
   28027                media/media-constants.html
   28028                media/video-seek-no-src-exception.html
   28029                media/video-source-add-src.html
   28030                media/video-src-invalid-remove.html
   28031                media/video-src-plus-source.html
   28032                media/video-timeupdate-during-playback.html
   28033 
   28034         * dom/EventNames.h: Remove obsolute events, add new ones.
   28035         * html/HTMLMediaElement.cpp:
   28036         (WebCore::HTMLMediaElement::HTMLMediaElement): Initialize new member vars.
   28037         (WebCore::HTMLMediaElement::attributeChanged): Trigger load() only when we don't
   28038         have a source.
   28039         (WebCore::HTMLMediaElement::removedFromDocument): Deal with state name changes.
   28040         (WebCore::HTMLMediaElement::scheduleProgressEvent): New, create a progress event and 
   28041         add it to the event queue to be dispatch when the timer fires.
   28042         (WebCore::HTMLMediaElement::scheduleEvent): New, create a generic event and add
   28043         it to the event queue to be dispatch when the timer fires.
   28044         (WebCore::HTMLMediaElement::enqueueEvent): Add an event to the queue and ticke the 
   28045         asynch event timer.
   28046         (WebCore::HTMLMediaElement::asyncEventTimerFired): Dispatch all pending events.
   28047         (WebCore::HTMLMediaElement::loadTimerFired): Either trigger the initial load or
   28048         try to load the next <source> url.
   28049         (WebCore::HTMLMediaElement::load): Minor style change.
   28050         (WebCore::HTMLMediaElement::loadInternal): The first part of the spec load algorithm, cleanup
   28051         the current load (if any) and set up state for a new load.
   28052         (WebCore::HTMLMediaElement::selectMediaResource): Deal with no 'src' or <source>, post 'loadstart'
   28053         event, and initiate load from 'src' if present.
   28054         (WebCore::HTMLMediaElement::loadNextSourceChild): Initiate load from next <source> url, or trigger
   28055         noneSupported() if no more to consider.
   28056         (WebCore::HTMLMediaElement::loadResource): Instantiate a new MediaPlayer and ask it to load a url.
   28057         (WebCore::HTMLMediaElement::startProgressEventTimer): Start the repeating progress event timer.
   28058         (WebCore::HTMLMediaElement::noneSupported): Post error event and set up state when no valid 
   28059         media url was found.
   28060         (WebCore::HTMLMediaElement::mediaEngineError): Post error event and set up state when no valid 
   28061         media engine failed with a decode error or a network error.
   28062         (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged):
   28063         (WebCore::HTMLMediaElement::setNetworkState): Updated for new spec network states.
   28064         (WebCore::HTMLMediaElement::mediaPlayerReadyStateChanged):
   28065         (WebCore::HTMLMediaElement::setReadyState): Updated for new spec ready state.
   28066         (WebCore::HTMLMediaElement::progressEventTimerFired): Bail if the network is not active.
   28067         (WebCore::HTMLMediaElement::seek): Return INVALID_STATE_ERR exception if state is too low or
   28068         if player hasn't been set up yet. This is necessary becase load() is async. Clear the flag
   28069         we use to guard against sending 'ended' more than once.
   28070         (WebCore::HTMLMediaElement::duration): Don't bother calling media engine before it has metadata.
   28071         (WebCore::HTMLMediaElement::setDefaultPlaybackRate): Remove exception param, 0 is no longer an
   28072         invalid rate. 
   28073         (WebCore::HTMLMediaElement::setPlaybackRate): Remove exception param, 0 is no longer an
   28074         invalid rate. Cache rate being set so we can use it later if media engine isn't ready now.
   28075         (WebCore::HTMLMediaElement::play): Remove exception param, play() before load() now just
   28076         starts loading asynchronously.
   28077         (WebCore::HTMLMediaElement::playInternal): Remove exception param. Fire 'waiting' or 'playing'
   28078         event depending on current state.
   28079         (WebCore::HTMLMediaElement::pause): Remove exception param, pause() before load() now just
   28080         starts loading asynchronously.
   28081         (WebCore::HTMLMediaElement::pauseInternal): Remove exception param.
   28082         (WebCore::HTMLMediaElement::setVolume): dispatchEventAsync -> scheduleEvent
   28083         (WebCore::HTMLMediaElement::setMuted): dispatchEventAsync -> scheduleEvent
   28084         (WebCore::HTMLMediaElement::togglePlayState): Remove exception param.
   28085         (WebCore::HTMLMediaElement::beginScrubbing): pause() doesn't take an exception param.
   28086         (WebCore::HTMLMediaElement::startPlaybackProgressTimer): New, starts timer that fires 4 times per
   28087         second when the movie is playing to timeupdate so we can post 'timeupdate' events.
   28088         (WebCore::HTMLMediaElement::playbackProgressTimerFired): Timer proc.
   28089         (WebCore::HTMLMediaElement::scheduleTimeupdateEvent): Bottleneck around scheduling a 'timeupdate'
   28090         event because we both fire them them when the spec says we should and when the media engine
   28091         says that time has jumped, but we don't want to fire more than one at a given movie time. We also
   28092         use this bottleneck to keep track of the last time one was posted so we won't fire too often
   28093         during playback.
   28094         (WebCore::HTMLMediaElement::canPlay): readyState now tracks whether or not we have metadata.
   28095         (WebCore::HTMLMediaElement::havePotentialSourceChild): New, checks to see if there are a <source>
   28096         element with a 'src' attribute that we have not tried to load yet.
   28097         (WebCore::HTMLMediaElement::nextSourceChild): New, returns the url and content type of the next
   28098         <source> element that we haven't tried to load.
   28099         (WebCore::HTMLMediaElement::mediaPlayerTimeChanged): Schedule 'seeked' event when seeking completes.
   28100         Set a flag when we post the 'ended' event, clear it when time changed and we aren't at the end since
   28101         some media engines call this proc more than once when playback reaches the end and stops, but we
   28102         don't want to post 'ended' more than once.
   28103         (WebCore::HTMLMediaElement::mediaPlayerDurationChanged): New, added so media engine can inform
   28104         when the movie duration changes and we can post 'durationchanged' event.
   28105         (WebCore::HTMLMediaElement::mediaPlayerRateChanged): New, added so media engine can inform when
   28106         the rate changed and we can updated our cached rate. This is useful because we only want to know
   28107         post periodic 'timeupdate' events when the movie is actually playing, and because we want to know
   28108         the actual playback rate when it differs from what we tried to set.
   28109         (WebCore::HTMLMediaElement::mediaPlayerSizeChanged): New, added so media engine can inform when
   28110         a movie's intrinsic size changes and we can inform the renderer.
   28111         (WebCore::HTMLMediaElement::potentiallyPlaying): Renamed from activelyPlaying since the spec now
   28112         uses "actively playing" for this concept. Update logic for new state names and un-comment calls
   28113         to stoppedDueToErrors() and pausedForUserInteraction() since the spec says those condiditons
   28114         are part of the answer.
   28115         (WebCore::HTMLMediaElement::endedPlayback): Update logic for new state names. 
   28116         (WebCore::HTMLMediaElement::stoppedDueToErrors): New, spec says this logic should be part of
   28117         the determination of "potentially playing".
   28118         (WebCore::HTMLMediaElement::pausedForUserInteraction): New, placeholder for when (if) user
   28119         agent supports this spec concept.
   28120         (WebCore::HTMLMediaElement::updatePlayState): Stop timer used to fire periodic 'timeupdate' 
   28121         events when we pauses the movie. Set the media engine rate before calling play() in case it
   28122         wasn't set up when the rate was changed.
   28123         (WebCore::HTMLMediaElement::stopPeriodicTimers): New, stop the progress event and 'timeupate'
   28124         event timers.
   28125         (WebCore::HTMLMediaElement::userCancelledLoad): New, logic pulled out of documentWillBecomeInactive
   28126         and updated for the current spec.
   28127         (WebCore::HTMLMediaElement::documentWillBecomeInactive): Moved some logic to userCancelledLoad.
   28128         (WebCore::HTMLMediaElement::documentDidBecomeActive): Update comments.
   28129         (WebCore::HTMLMediaElement::initialURL): Update for refactoring of code that determines the 
   28130         initial url.
   28131         * html/HTMLMediaElement.h: Change ReadyState and NetworkState enums to match names in the spec,
   28132         update for changes in .cpp.
   28133         (WebCore::HTMLMediaElement::):
   28134 
   28135         * html/HTMLMediaElement.idl: Update ready state and network state constants for spec changes.
   28136         defaultPlaybackRate, playbackRate, play(), and pause() no longer raise exceptions.
   28137 
   28138         * html/HTMLSourceElement.cpp:
   28139         (WebCore::HTMLSourceElement::insertedIntoDocument): Update for network state name changes.
   28140 
   28141         * html/HTMLVideoElement.cpp:
   28142         (WebCore::HTMLVideoElement::updatePosterImage): Update for ready state name changes.
   28143 
   28144         * html/MediaError.h:
   28145         (WebCore::MediaError::): add MEDIA_ERR_NONE_SUPPORTED.
   28146 
   28147         * html/MediaError.idl: add MEDIA_ERR_NONE_SUPPORTED.
   28148 
   28149         * loader/MediaDocument.cpp:
   28150         (WebCore::MediaDocument::defaultEventHandler): play() and pause() don't take an exception.
   28151 
   28152         * platform/graphics/MediaPlayer.cpp:
   28153         (WebCore::NullMediaPlayerPrivate::readyState): Update for newtork state name changes.
   28154         (WebCore::MediaPlayer::sizeChanged): New, so engine can report intrinsic size changes.
   28155         (WebCore::MediaPlayer::rateChanged): New, so engine can report rate changes.
   28156         (WebCore::MediaPlayer::durationChanged): New, so engine can report duration changes.
   28157         * platform/graphics/MediaPlayer.h: Update NetworkState and ReadyState enum names to match spec
   28158         states.
   28159         (WebCore::MediaPlayerClient::mediaPlayerDurationChanged): New.
   28160         (WebCore::MediaPlayerClient::mediaPlayerRateChanged): New.
   28161         (WebCore::MediaPlayerClient::mediaPlayerSizeChanged): New.
   28162         (WebCore::MediaPlayer::):
   28163 
   28164         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
   28165         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate): Update for network/ready state name changes.
   28166         (WebCore::MediaPlayerPrivate::load): Ditto.
   28167         (WebCore::MediaPlayerPrivate::updateStates): Ditto.
   28168         (WebCore::MediaPlayerPrivate::loadingFailed): Ditto.
   28169 
   28170         * platform/graphics/mac/MediaPlayerPrivateQTKit.h: Update for network/ready state name changes.
   28171         Remove endPointTimer, it is no longer necessary. Add m_enabledTrackCount and m_duration.
   28172         (WebCore::MediaPlayerPrivate::metaDataAvailable):
   28173         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   28174         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate): No more m_endPointTimer or m_endTime. Initialize
   28175         m_enabledTrackCount and m_duration. Update for network/ready state name changes.
   28176         (WebCore::MediaPlayerPrivate::load): Update for network/ready state name changes.
   28177         (WebCore::MediaPlayerPrivate::play): No more m_endPointTimer.
   28178         (WebCore::MediaPlayerPrivate::pause): Ditto.
   28179         (WebCore::MediaPlayerPrivate::currentTime): No more m_endTime.
   28180         (WebCore::MediaPlayerPrivate::seek): Ditto.
   28181         (WebCore::MediaPlayerPrivate::doSeek): Ditto, plus don't call setRate(0) when the rate is
   28182         already zero.
   28183         (WebCore::MediaPlayerPrivate::setEndTime): No more m_endTime.
   28184         (WebCore::MediaPlayerPrivate::updateStates): Update for network/ready state name changes. Return
   28185         different errors depending on what causes a failure. Watch for and report duration changes.
   28186         (WebCore::MediaPlayerPrivate::rateChanged): Report rate changes.
   28187         (WebCore::MediaPlayerPrivate::sizeChanged): Report size changes.
   28188         (WebCore::MediaPlayerPrivate::didEnd): No more endpoint timer.
   28189         (WebCore::MediaPlayerPrivate::setVisible): Update for network/ready state name changes.
   28190         (WebCore::MediaPlayerPrivate::disableUnsupportedTracks): Don't return number of unsupported
   28191         tracks, store in m_enabledTrackCount so we can use it to help determine causes of failure.
   28192 
   28193         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
   28194         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate): Update for network/ready state name changes.
   28195         (WebCore::MediaPlayerPrivate::load): Ditto.
   28196         (WebCore::MediaPlayerPrivate::duration): Ditto.
   28197         (WebCore::MediaPlayerPrivate::updateStates): Ditto.
   28198         (WebCore::MediaPlayerPrivate::naturalSize): Ditto.
   28199 
   28200         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
   28201         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate): No more m_endPointTimer. Update for 
   28202         network/ready state name changes.
   28203         (WebCore::MediaPlayerPrivate::load): Update for network/ready state name changes. No more
   28204         m_endPointTimer.
   28205         (WebCore::MediaPlayerPrivate::play): No more m_endPointTimer.
   28206         (WebCore::MediaPlayerPrivate::pause): Ditto. 
   28207         (WebCore::MediaPlayerPrivate::setEndTime): Ditto.
   28208         (WebCore::MediaPlayerPrivate::updateStates): Update for network/ready state name changes.
   28209         (WebCore::MediaPlayerPrivate::didEnd): No more m_endPointTimer.
   28210         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
   28211 
   28212         * rendering/MediaControlElements.cpp:
   28213         (WebCore::MediaControlPlayButtonElement::defaultEventHandler): Update for network/ready state 
   28214         name changes.
   28215         (WebCore::MediaControlSeekButtonElement::defaultEventHandler): Ditto.
   28216 
   28217 2009-03-22  Kevin Ollivier  <kevino (a] theolliviers.com>
   28218 
   28219         wxGTK build fix. Add missing header.
   28220 
   28221         * platform/wx/wxcode/gtk/non-kerned-drawing.cpp:
   28222 
   28223 2009-03-22  Simon Fraser  <simon.fraser (a] apple.com>
   28224 
   28225         Reviewed by Dan Bernstein
   28226         
   28227         https://bugs.webkit.org/show_bug.cgi?id=24665
   28228         
   28229         Image-map code in RenderImage could result in RenderImage::nodeAtPoint()
   28230         setting HitTestResult::innerNode(), but returning false, which violates
   28231         hit testing rules. Use a temporary HitTestResult so that we only fill in
   28232         result when we know we've hit.
   28233 
   28234         * rendering/RenderImage.cpp:
   28235         (WebCore::RenderImage::nodeAtPoint):
   28236 
   28237 2009-03-22  Simon Fraser  <simon.fraser (a] apple.com>
   28238 
   28239         Reviewed by Dan Bernstein
   28240         
   28241         https://bugs.webkit.org/show_bug.cgi?id=24743
   28242         
   28243         Fix hit testing regression from r41840. We need to pass the temporary
   28244         HitTestResult when testing sublayers, then only copy to 'result' when
   28245         the layer is known to have been hit.
   28246 
   28247         Test: fast/layers/zindex-hit-test.html
   28248 
   28249         * rendering/RenderLayer.cpp:
   28250         (WebCore::RenderLayer::hitTestLayer):
   28251 
   28252 2009-03-20  Simon Fraser  <simon.fraser (a] apple.com>
   28253 
   28254         Reviewed by Darin Adler
   28255 
   28256         https://bugs.webkit.org/show_bug.cgi?id=24733
   28257         
   28258         Fix hit testing on video controls after full page zoom by fixing wider issue
   28259         with event->pageX(), pageY() with zooming. pageX and pageY are "fixed" to be
   28260         invariant under zooming (for JavaScript), so we keep an actual page point around
   28261         in MouseEvent::absoluteLocation() to avoid the need to factor in zooming everywhere.
   28262 
   28263         * dom/MouseRelatedEvent.cpp:
   28264         (WebCore::MouseRelatedEvent::initCoordinates):
   28265         (WebCore::MouseRelatedEvent::computePageLocation):
   28266         * dom/MouseRelatedEvent.h:
   28267         (WebCore::MouseRelatedEvent::absoluteLocation):
   28268         (WebCore::MouseRelatedEvent::setAbsoluteLocation):
   28269         Member var, and getter and setter for absoluteLocation.
   28270         New method, computePageLocation(), to compute the actual page point,
   28271         and call it when creating and initting mouse-related events.
   28272 
   28273         * dom/Node.cpp:
   28274         (WebCore::Node::dispatchMouseEvent):
   28275         (WebCore::Node::dispatchWheelEvent):
   28276         Keep non-adjusted pageX and pageY around, and call setAbsoluteLocation()
   28277         on the event to replace a potentially rounded point.
   28278         
   28279         * html/HTMLInputElement.cpp:
   28280         (WebCore::HTMLInputElement::defaultEventHandler):
   28281         Clean up slider handling code.
   28282         
   28283         * html/HTMLSelectElement.cpp:
   28284         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
   28285         Add FIXME comment for use of offsetX/offsetY.
   28286         
   28287         * page/ContextMenuController.cpp:
   28288         (WebCore::ContextMenuController::handleContextMenuEvent):
   28289         Use absoluteLocation() when hit testing for context menus.
   28290         
   28291         * rendering/RenderFrameSet.cpp:
   28292         (WebCore::RenderFrameSet::userResize):
   28293         Use absoluteLocation() when resizing frames.
   28294         
   28295         * rendering/RenderMedia.cpp:
   28296         (WebCore::RenderMedia::forwardEvent):
   28297         Use absoluteLocation() when hit testing media controls.
   28298 
   28299         * rendering/RenderSlider.cpp:
   28300         (WebCore::HTMLSliderThumbElement::defaultEventHandler):
   28301         (WebCore::RenderSlider::mouseEventIsInThumb):
   28302         Use absoluteLocation() when handling slider events.
   28303 
   28304         (WebCore::RenderSlider::forwardEvent):
   28305         Factor some code out of HTMLInputElement::defaultEventHandler().
   28306         
   28307         * rendering/RenderTextControlSingleLine.cpp:
   28308         (WebCore::RenderTextControlSingleLine::forwardEvent):
   28309         Use absoluteLocation() when hit testing search field buttons, which fixees
   28310         bugs in the search field with zooming.
   28311 
   28312 2009-03-21  David Levin  <levin (a] chromium.org>
   28313 
   28314         Reviewed by Dimitri Glazkov.
   28315 
   28316         https://bugs.webkit.org/show_bug.cgi?id=24727
   28317         Add V8XMLHttpRequest*.
   28318 
   28319         * bindings/v8/V8XMLHttpRequestUtilities.cpp: Added.
   28320         * bindings/v8/V8XMLHttpRequestUtilities.h: Added.
   28321         * bindings/v8/custom/V8XMLHttpRequestConstructor.cpp: Added.
   28322         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp: Added.
   28323         * bindings/v8/custom/V8XMLHttpRequestUploadCustom.cpp: Added.
   28324 
   28325 2009-03-21  David Levin  <levin (a] chromium.org>
   28326 
   28327         Reviewed by Dimitri Glazkov.
   28328 
   28329         https://bugs.webkit.org/show_bug.cgi?id=24725
   28330         Add V8NodeFilter.
   28331 
   28332         * bindings/v8/V8NodeFilter.cpp: Added.
   28333         * bindings/v8/V8NodeFilter.h: Added.
   28334 
   28335 2009-03-21  Dan Bernstein  <mitz (a] apple.com>
   28336 
   28337         Rubber-stamped by Kevin Decker
   28338 
   28339         - remove some redundant #include statements
   28340 
   28341         * bindings/js/JSDOMWindowBase.cpp:
   28342 
   28343 2009-03-20  Dan Bernstein  <mitz (a] apple.com>
   28344 
   28345         Reviewed by Mark Rowe.
   28346 
   28347         - fix <rdar://problem/6574185> REGRESSION (3.2.2-TOT): hang in text drawing code
   28348 
   28349         * platform/graphics/win/FontCGWin.cpp:
   28350         (WebCore::drawGDIGlyphs): Changed glyph stroking to fill and stroke each
   28351         glyph as a separate path, instead of all glyphs as a single path. This
   28352         matches what CGContextShowGlyphsWithAdvances() does, and has comparable
   28353         performance.
   28354 
   28355 2009-03-20  Dean Jackson  <dino (a] apple.com>
   28356 
   28357         Reviewed by Simon Fraser
   28358 
   28359         Build fix for ENABLE(3D_RENDERING)
   28360 
   28361         * rendering/RenderObject.h:
   28362         (WebCore::makeMatrixRenderable):
   28363 
   28364 2009-03-20  Dave Moore  <davemoore (a] google.com>
   28365 
   28366         Reviewed by Dimitri Glazkov.
   28367 
   28368         https://bugs.webkit.org/show_bug.cgi?id=24705
   28369 
   28370         A bug in the V8 bindings is preventing chromium from setting the href on the
   28371         location object...any attempt throws a security error, not just for javascript
   28372         protocol
   28373 
   28374         * page/Location.idl:
   28375 
   28376 2009-03-20  Craig Schlenter  <craig.schlenter (a] gmail.com>
   28377 
   28378         Reviewed by Dimitri Glazkov.
   28379 
   28380         https://bugs.webkit.org/show_bug.cgi?id=24608
   28381 
   28382         Include stdio.h needed for printf on gcc 4.4.0
   28383 
   28384         * platform/KURLGoogle.cpp:
   28385 
   28386 2009-03-20  Mike Belshe <mike (a] belshe.com>
   28387 
   28388         Reviewed by Darin Fisher.
   28389 
   28390         https://bugs.webkit.org/show_bug.cgi?id=24577
   28391 
   28392         Don't let comments at the end of an event handler
   28393         break the event handler.
   28394 
   28395         No change in behavior, so no test.
   28396 
   28397         * bindings/v8/V8LazyEventListener.cpp:
   28398         (WebCore::V8LazyEventListener::getWrappedListenerFunction):
   28399 
   28400 2009-03-20  Norbert Leser  <norbert.leser (a] nokia.com>
   28401 
   28402         Reviewed by Darin Adler.
   28403 
   28404         https://bugs.webkit.org/show_bug.cgi?id=24535
   28405 
   28406         Fixes missing line terminator character (;) after macro call.
   28407         It is common practice to add the trailing ";" where macros are substituted
   28408         and not where they are defined with #define.
   28409         This change is consistent with other macro declarations across webkit,
   28410         and it also solves compilation failure with symbian compilers. 
   28411  
   28412         No change in behavior, so no test.
   28413 
   28414         * bindings/js/JSDOMWindowShell.cpp:
   28415         * bindings/js/JSEventListener.cpp:
   28416         * bindings/js/JSImageConstructor.cpp:
   28417         * bindings/js/JSInspectedObjectWrapper.cpp:
   28418         * bindings/js/JSInspectorCallbackWrapper.cpp:
   28419         * bindings/js/JSNamedNodesCollection.cpp:
   28420         * bindings/js/JSNodeFilterCondition.cpp:
   28421         * bindings/js/JSOptionConstructor.cpp:
   28422         * bindings/js/JSQuarantinedObjectWrapper.cpp:
   28423         * bindings/js/JSRGBColor.cpp:
   28424         * bindings/js/JSWorkerContextBase.cpp:
   28425         * bindings/js/JSXMLHttpRequestConstructor.cpp:
   28426         * bindings/js/JSXSLTProcessorConstructor.cpp:
   28427         * bindings/scripts/CodeGeneratorJS.pm:
   28428 
   28429 2009-03-20  Mike Belshe  <mike (a] belshe.com>
   28430 
   28431         Reviewed by Dimitri Glazkov and Dave Hyatt.
   28432 
   28433         https://bugs.webkit.org/show_bug.cgi?id=24324
   28434 
   28435         Make the minimum timer configurable for different platforms.
   28436 
   28437         * page/DOMTimer.cpp:
   28438         (WebCore::DOMTimer::DOMTimer):
   28439         (WebCore::DOMTimer::fired):
   28440         * page/DOMTimer.h:
   28441         (WebCore::DOMTimer::minTimerInterval):
   28442         (WebCore::DOMTimer::setMinTimerInterval):
   28443 
   28444 2009-03-20  Dean McNamee  <deanm (a] chromium.org>
   28445 
   28446         Reviewed by Darin Adler.
   28447 
   28448         https://bugs.webkit.org/show_bug.cgi?id=22834
   28449 
   28450         Make sure to consistently match new/delete and fastMalloc/fastFree.
   28451 
   28452         * css/CSSSelectorList.cpp:
   28453         (WebCore::CSSSelectorList::adoptSelectorVector):
   28454         (WebCore::CSSSelectorList::deleteSelectors):
   28455 
   28456 2009-03-20  Dan Bernstein  <mitz (a] apple.com>
   28457 
   28458         Reviewed by Dave Hyatt.
   28459 
   28460         - fix https://bugs.webkit.org/show_bug.cgi?id=23739
   28461           <rdar://problem/6556371> REGRESSION (r36513): iframe isn't sized properly upon load
   28462 
   28463         * rendering/RenderBlock.cpp:
   28464         (WebCore::RenderBlock::percentHeightDescendants): Added this accessor.
   28465         * rendering/RenderBlock.h:
   28466         * rendering/RenderTableSection.cpp:
   28467         (WebCore::RenderTableSection::layoutRows): Extended the check for
   28468         children that flex to include other descendants with percent height
   28469         which is relative to the cell.
   28470 
   28471 2009-03-20  Dmitry Titov  <dimich (a] chromium.org>
   28472 
   28473         Reviewed by Alexey Proskuryakov.
   28474 
   28475         https://bugs.webkit.org/show_bug.cgi?id=24706
   28476         Remove ScriptExecutionContext::encoding() since Workers do not need it.
   28477         WorkerContext::encoding() is simply removed, while Document::encoding()
   28478         made non-virtual and private. Workers use UTF-8 now except when instructed
   28479         otherwise by http header. Also updated test.
   28480 
   28481         * dom/Document.h: Made encoding() non-virtual and private.
   28482         * dom/ScriptExecutionContext.h: removed encoding().
   28483 
   28484         * workers/Worker.cpp:
   28485         (WebCore::Worker::Worker):
   28486         (WebCore::Worker::notifyFinished):
   28487         * workers/WorkerContext.cpp: removed encoding() implementation.
   28488         (WebCore::WorkerContext::WorkerContext):
   28489         (WebCore::WorkerContext::completeURL):
   28490         * workers/WorkerContext.h: removed encoding()
   28491         (WebCore::WorkerContext::create):
   28492         * workers/WorkerContextProxy.h:
   28493         * workers/WorkerImportScriptsClient.cpp:
   28494         (WebCore::WorkerImportScriptsClient::didReceiveData):
   28495         * workers/WorkerMessagingProxy.cpp:
   28496         (WebCore::WorkerMessagingProxy::startWorkerContext):
   28497         * workers/WorkerMessagingProxy.h:
   28498         * workers/WorkerThread.cpp:
   28499         (WebCore::WorkerThreadStartupData::create):
   28500         (WebCore::WorkerThreadStartupData::WorkerThreadStartupData):
   28501         (WebCore::WorkerThread::create):
   28502         (WebCore::WorkerThread::WorkerThread):
   28503         (WebCore::WorkerThread::workerThread):
   28504         * workers/WorkerThread.h:
   28505         In all these, removed storing encoding and 'inheriting' it from the parent.
   28506         Instead, they are all using UTF-8 now.
   28507 
   28508 2009-03-20  Timothy Hatcher  <timothy (a] apple.com>
   28509 
   28510         Change how threading exceptions are checked so they are reported
   28511         by what round they were added. That way WebKit can decided the
   28512         behavior per-round based on linked-on-or-after checks.
   28513 
   28514         <rdar://problem/6626741&6648478&6635474&6674079>
   28515 
   28516         Reviewed by Darin Adler.
   28517 
   28518         * WebCore.base.exp: Export the new symbols.
   28519         * bindings/objc/DOMAbstractView.mm: Use the new WebCoreThreadViolationCheckRoundOne macro.
   28520         * bindings/scripts/CodeGeneratorObjC.pm: Ditto.
   28521         * platform/ThreadCheck.h:
   28522         * platform/mac/ThreadCheck.mm:
   28523         (WebCore::readThreadViolationBehaviorFromUserDefaults): Refactor how the default is read.
   28524         (WebCore::setDefaultThreadViolationBehavior): Take a round argument.
   28525         (WebCore::reportThreadViolation): Ditto.
   28526         (WebCoreReportThreadViolation): Ditto.
   28527 
   28528 2009-03-20  Geoffrey Garen  <ggaren (a] apple.com>
   28529 
   28530         Reviewed by Sam Weinig.
   28531 
   28532         Fixed up an out-of-date comment.
   28533 
   28534         * bindings/js/JSDOMWindowCustom.h:
   28535         (WebCore::JSDOMWindow::customPut):
   28536 
   28537 2009-03-20  Beth Dakin  <bdakin (a] apple.com>
   28538 
   28539         Reviewed by Dave Hyatt.
   28540 
   28541         Fix for https://bugs.webkit.org/show_bug.cgi?id=20909 REGRESSION 
   28542         (r35318): A press release at pfizer.com does not display correctly
   28543         - and corresponding -
   28544         <rdar://problem/6680073>
   28545 
   28546         * rendering/RenderObject.cpp:
   28547         (WebCore::RenderObject::invalidateContainerPrefWidths):
   28548         * rendering/RenderObject.h:
   28549         (WebCore::RenderObject::markContainingBlocksForLayout):
   28550 
   28551 2009-03-20  Eric Seidel  <eric (a] webkit.org>
   28552 
   28553         Reviewed by Justin Garcia.
   28554 
   28555         maxDeepOffset is confusing and should be removed
   28556         https://bugs.webkit.org/show_bug.cgi?id=24586
   28557 
   28558         Abstract some hard-to-read (but shared) logic into a new renderedAsNonInlineTableOrHR function.
   28559         Add first/lastDeepEditingPositionForNode Position creation functions
   28560         and deploy them to places we used to call maxDeepOffset.
   28561 
   28562         Rename Position::atStart and atEnd to atStartOfTree atEndOfTree
   28563         Add a new Position::atFirst/atLastEditingPositionForNode() and use these
   28564         to replace a few more callers for maxDeepOffset()
   28565         
   28566         Rename maxDeepOffset to lastEditingOffsetForNode (so that we mere mortals have some clue what it does)
   28567 
   28568         "Editing positions" are confusing because they have one
   28569         of two behaviors, depending on if the container node is ignored
   28570         by editing (if editingIgnoresContent(node) returns true) or not.
   28571         Positions referring to nodes ignored by editing are
   28572         neighbor-relative (they are before or after the node) where as
   28573         positions reffering to other nodes are container-relative
   28574         (they are between two child nodes of the container, identified
   28575         by the offset() member).  I will be fixing this confusion in
   28576         future patches.  These renames hopefully make the current behavior clearer.
   28577 
   28578         * dom/Position.cpp:
   28579         (WebCore::Position::previous):
   28580         (WebCore::Position::next):
   28581         (WebCore::Position::atFirstEditingPositionForNode):
   28582         (WebCore::Position::atLastEditingPositionForNode):
   28583         (WebCore::Position::atStartOfTree):
   28584         (WebCore::Position::atEndOfTree):
   28585         (WebCore::Position::previousCharacterPosition):
   28586         (WebCore::Position::nextCharacterPosition):
   28587         (WebCore::Position::upstream):
   28588         (WebCore::Position::isCandidate):
   28589         (WebCore::firstDeepEditingPositionForNode):
   28590         (WebCore::lastDeepEditingPositionForNode):
   28591         * dom/Position.h:
   28592         * dom/PositionIterator.cpp:
   28593         (WebCore::PositionIterator::operator Position):
   28594         (WebCore::PositionIterator::increment):
   28595         (WebCore::PositionIterator::decrement):
   28596         (WebCore::PositionIterator::atEnd):
   28597         (WebCore::PositionIterator::atEndOfNode):
   28598         * editing/CompositeEditCommand.cpp:
   28599         (WebCore::CompositeEditCommand::positionAvoidingSpecialElementBoundary):
   28600         * editing/DeleteSelectionCommand.cpp:
   28601         (WebCore::isTableCellEmpty):
   28602         (WebCore::DeleteSelectionCommand::removeNode):
   28603         (WebCore::DeleteSelectionCommand::handleGeneralDelete):
   28604         * editing/Editor.cpp:
   28605         (WebCore::Editor::advanceToNextMisspelling):
   28606         * editing/InsertLineBreakCommand.cpp:
   28607         (WebCore::InsertLineBreakCommand::doApply):
   28608         * editing/InsertListCommand.cpp:
   28609         (WebCore::InsertListCommand::doApply):
   28610         * editing/ReplaceSelectionCommand.cpp:
   28611         (WebCore::ReplaceSelectionCommand::positionAtEndOfInsertedContent):
   28612         * editing/TypingCommand.cpp:
   28613         (WebCore::TypingCommand::forwardDeleteKeyPressed):
   28614         * editing/VisiblePosition.cpp:
   28615         (WebCore::VisiblePosition::previous):
   28616         (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
   28617         (WebCore::VisiblePosition::left):
   28618         (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
   28619         (WebCore::VisiblePosition::right):
   28620         * editing/VisibleSelection.cpp:
   28621         (WebCore::VisibleSelection::selectionFromContentsOfNode):
   28622         (WebCore::VisibleSelection::adjustSelectionToAvoidCrossingEditingBoundaries):
   28623         * editing/htmlediting.cpp:
   28624         (WebCore::nextVisuallyDistinctCandidate):
   28625         (WebCore::previousVisuallyDistinctCandidate):
   28626         (WebCore::firstEditablePositionAfterPositionInRoot):
   28627         (WebCore::lastEditablePositionBeforePositionInRoot):
   28628         (WebCore::lastOffsetForEditing):
   28629         (WebCore::isFirstPositionAfterTable):
   28630         (WebCore::isLastPositionBeforeTable):
   28631         (WebCore::positionBeforeNode):
   28632         (WebCore::positionAfterNode):
   28633         (WebCore::enclosingEmptyListItem):
   28634         (WebCore::caretMaxOffset):
   28635         * editing/htmlediting.h:
   28636         * editing/visible_units.cpp:
   28637         (WebCore::renderedAsNonInlineTableOrHR):
   28638         (WebCore::startOfParagraph):
   28639         (WebCore::endOfParagraph):
   28640         (WebCore::startOfEditableContent):
   28641         (WebCore::endOfEditableContent):
   28642         * page/AccessibilityObject.cpp:
   28643         (WebCore::endOfStyleRange):
   28644         * page/AccessibilityRenderObject.cpp:
   28645         (WebCore::AccessibilityRenderObject::visiblePositionRange):
   28646         * rendering/RenderBox.cpp:
   28647         (WebCore::RenderBox::positionForPoint):
   28648 
   28649 2009-03-20  Dmitry Titov  <dimich (a] chromium.org>
   28650 
   28651         Reviewed by Dimitri Glazkov.
   28652 
   28653         https://bugs.webkit.org/show_bug.cgi?id=24689
   28654         Add (upstream) V8 bindings for Workers. Mostly style cleaning.
   28655 
   28656         * bindings/v8/WorkerContextExecutionProxy.cpp: Added.
   28657         * bindings/v8/WorkerContextExecutionProxy.h: Added.
   28658         * bindings/v8/WorkerScriptController.cpp: Added.
   28659         * bindings/v8/WorkerScriptController.h: Added.
   28660         * bindings/v8/V8Index.h: Added. This is just a wrapper for v8_index.h, like V8Proxy.h
   28661         * bindings/v8/V8Proxy.h: Added domObjectMap() function that wraps GetDOMObjectMap().
   28662         * bindings/v8/V8WorkerContextEventListener.cpp:
   28663         (WebCore::V8WorkerContextEventListener::callListenerFunction): TrackEvent() renamed trackEvent()
   28664 
   28665 2009-03-20  Stephen White  <senorblanco (a] chromium.org>
   28666 
   28667         Reviewed by Eric Seidel.
   28668 
   28669         Fix for LayoutTests/fast/canvas/canvas-text-alignment.html
   28670         on chromium/skia.  The problem was that the gradient matrix
   28671         for text was being applied twice.  Fixed by reverting some of
   28672         https://bugs.webkit.org/show_bug.cgi?id=23957, so that skiaDrawText
   28673         is no longer responsible for measuring the text and scaling up
   28674         the gradient matrix.  Instead, the text bounding box is passed
   28675         in from SVGPaintServerGradient.  I didn't make this change for CG,
   28676         since it uses a different method (the gradient is drawn using the
   28677         text as a pre-rendered mask).
   28678         https://bugs.webkit.org/show_bug.cgi?id=24687
   28679 
   28680         * platform/graphics/skia/SkiaFontWin.cpp:
   28681         (WebCore::skiaDrawText):
   28682         * svg/graphics/SVGPaintServerGradient.cpp:
   28683         (WebCore::SVGPaintServerGradient::setup):
   28684 
   28685 2009-03-20  Xan Lopez  <xlopez (a] igalia.com>
   28686 
   28687         Rubber-stamped by Holger Freyther.
   28688 
   28689         There seems to be some rounding error in cairo (or in how we use
   28690         cairo) with some fonts, like DejaVu Sans Mono, which makes cairo
   28691         report a height smaller than ascent + descent, which is wrong and
   28692         confuses WebCore's layout system. Workaround this while we figure
   28693         out what's going on.
   28694 
   28695         * platform/graphics/gtk/SimpleFontDataGtk.cpp:
   28696         (WebCore::SimpleFontData::platformInit):
   28697         * platform/graphics/gtk/SimpleFontDataPango.cpp:
   28698         (WebCore::SimpleFontData::platformInit):
   28699 
   28700 2009-03-19  Alexey Proskuryakov  <ap (a] webkit.org>
   28701 
   28702         Reviewed by Darin Adler.
   28703 
   28704         https://bugs.webkit.org/show_bug.cgi?id=24122
   28705         <rdar://problem/6674179>
   28706         REGRESSION: DOM Range extractContents/deleteContents failures seen on Moxiecode tests
   28707 
   28708         Test: fast/dom/Range/deleted-range-endpoints.html
   28709 
   28710         * dom/Range.cpp: (WebCore::Range::processContents): Set the final range in accordance
   28711         to the specification.
   28712 
   28713 2009-03-19  Anders Carlsson  <andersca (a] apple.com>
   28714 
   28715         Reviewed by Dan Bernstein.
   28716 
   28717         <rdar://problem/6682554> Flash content not being rendered (Shockwave Flash 10.0 r22)
   28718         
   28719         If calling updateWidget for some reason resulted in another widget being added to m_widgetUpdateSet, then
   28720         that object would never be updated.
   28721         
   28722         * page/FrameView.cpp:
   28723         (WebCore::FrameView::updateWidgets):
   28724         Factor the widget updating code out into this method. Return true if the update set is empty.
   28725         
   28726         (WebCore::FrameView::performPostLayoutTasks):
   28727         Loop over the update set multiple times until all widgets have been updated or until we reach the cap.
   28728         
   28729         * page/FrameView.h:
   28730 
   28731 2009-03-18  Timothy Hatcher  <timothy (a] apple.com>
   28732 
   28733         Make the defered data loading timer honor the Page's scheduled runloop pairs.
   28734         Introduces a new RunLoopTimer class that has an API mimicking Timer but
   28735         allows it to be scheduled with one or more SchedulePairs.
   28736 
   28737         <rdar://problem/6687342> -[WebView scheduleInRunLoop:forMode:] has no affect on timers
   28738 
   28739         Reviewed by Darin Adler.
   28740 
   28741         * WebCore.xcodeproj/project.pbxproj: Adds the new RunLoopTimer.{cpp,h} files.
   28742         * loader/MainResourceLoader.cpp:
   28743         (WebCore::MainResourceLoader::handleDataLoadNow): Use the MainResourceLoaderTimer typedef.
   28744         (WebCore::MainResourceLoader::startDataLoadTimer): Added. Start the timer and on
   28745         Mac platforms also schedule with the Page's SchedulePairs.
   28746         (WebCore::MainResourceLoader::handleDataLoadSoon): Call startDataLoadTimer().
   28747         (WebCore::MainResourceLoader::setDefersLoading): Ditto.
   28748         * loader/MainResourceLoader.h:
   28749         * platform/cf/RunLoopTimerCF.cpp: Added.
   28750         (WebCore::RunLoopTimerBase::~RunLoopTimerBase):
   28751         (WebCore::timerFired):
   28752         (WebCore::RunLoopTimerBase::start):
   28753         (WebCore::RunLoopTimerBase::schedule):
   28754         (WebCore::RunLoopTimerBase::stop):
   28755         (WebCore::RunLoopTimerBase::isActive):
   28756         * platform/RunLoopTimer.h: Added.
   28757         (WebCore::RunLoopTimerBase::RunLoopTimerBase):
   28758         (WebCore::RunLoopTimerBase::startRepeating):
   28759         (WebCore::RunLoopTimerBase::startOneShot):
   28760         (WebCore::RunLoopTimer::RunLoopTimer):
   28761         (WebCore::RunLoopTimer::fired):
   28762 
   28763 2009-03-19  Dimitri Glazkov  <dglazkov (a] chromium.org>
   28764 
   28765         Reviewed by Darin Fisher.
   28766 
   28767         https://bugs.webkit.org/show_bug.cgi?id=24702
   28768         Upstream miscellaneous bindings changes.
   28769 
   28770         * bindings/v8/ScheduledAction.cpp:
   28771         (WebCore::ScheduledAction::execute): Changed to call lower-case evaluate.
   28772         * bindings/v8/ScriptCallStack.h: Added an extra include.
   28773 
   28774 2009-03-19  Simon Fraser  <simon.fraser (a] apple.com>
   28775 
   28776         Reviewed by Dave Hyatt
   28777 
   28778         https://bugs.webkit.org/show_bug.cgi?id=24686
   28779         
   28780         When hit testing a RenderLayer whose parent lives in a preserves-3D hierarchy,
   28781         we need to compare the computed z-offset with the depth-test z-offset before
   28782         deciding that such a RenderLayer was hit. This fixes an issue, tested by the
   28783         3d-point-mapping-overlapping.html test, where the child of a transformed element
   28784         is found by hit testing, even when some other element with greater Z overlaps
   28785         them both.
   28786         
   28787         Improved the code by adding a utility method, isHitCandidate(), which computes and tests
   28788         z-depth when necessary.
   28789 
   28790         Tests: transforms/3d/point-mapping/3d-point-mapping-coplanar.html
   28791                transforms/3d/point-mapping/3d-point-mapping-overlapping.html
   28792 
   28793         * rendering/RenderLayer.cpp:
   28794         (WebCore::isHitCandidate):
   28795         (WebCore::RenderLayer::hitTestLayer):
   28796 
   28797 2009-03-19  Jeremy Moskovich  <jeremy (a] chromium.org>
   28798 
   28799         Reviewed by Dimitri Glazkov.
   28800 
   28801         https://bugs.webkit.org/show_bug.cgi?id=24456
   28802         Split ColorChromium.cpp into Mac & Windows variants.
   28803         Remove Chromium Dependency on platform/graphics/mac/ColorMac.mm since we
   28804         ultimately need to take a different approach.  For now, createCGColor()
   28805         is copied from ColorMac.mm.
   28806 
   28807         No observable change in behavior, so no test.
   28808 
   28809         * platform/graphics/chromium/ColorChromium.cpp:
   28810         (WebCore::focusRingColor):
   28811         * platform/graphics/chromium/ColorChromiumMac.mm: Added.
   28812 
   28813 2009-03-19  Pavel Feldman  <pfeldman (a] chromium.org>
   28814 
   28815         Reviewed by Dimitri Glazkov.
   28816 
   28817         https://bugs.webkit.org/show_bug.cgi?id=24675
   28818         Unforking frontend: add custom InspectorController methods
   28819         implementation.
   28820 
   28821         * bindings/v8/custom/V8InspectorControllerCustom.cpp: Added.
   28822 
   28823 2009-03-19  Jay Campan  <jcampan (a] google.com>
   28824 
   28825         Reviewed by Dimitri Glazkov.
   28826 
   28827         https://bugs.webkit.org/show_bug.cgi?id=24625
   28828         Adding an accessor to the currently selected index in the PopupMenuChromium.
   28829         This is required for implementing the deletion of an autocomplete entry in Chromium.
   28830 
   28831         * platform/chromium/PopupMenuChromium.cpp:
   28832         (WebCore::PopupContainer::selectedIndex):
   28833         * platform/chromium/PopupMenuChromium.h:
   28834 
   28835 2009-03-19  Evan Stade  <estade (a] chromium.org>
   28836 
   28837         Reviewed by Dimitri Glazkov.
   28838 
   28839         https://bugs.webkit.org/show_bug.cgi?id=24526
   28840         Improve windows skia text stroking.
   28841 
   28842         Test: LayoutTests/svg/custom/struct-use-09-b.svg
   28843 
   28844         * platform/graphics/skia/SkiaFontWin.cpp: Close the path representing
   28845         each font glyph polygon, rather than only closing the path once per
   28846         letter. This fixes stroking for letters with multiple polygons, such
   28847         as 'A' or 'D'.
   28848         (WebCore::getPathForGlyph):
   28849         (WebCore::skiaDrawText):
   28850 
   28851 2009-03-19  Simon Hausmann  <simon.hausmann (a] nokia.com>
   28852 
   28853         Reviewed by Tor Arne Vestb.
   28854 
   28855         Fixed support for doing calls from JavaScript into NPAPI Plugins for the Qt port on Windows.
   28856 
   28857         Removed dead code for distinguishing between Widget and PluginView in the Qt port.
   28858 
   28859         * bindings/js/ScriptControllerQt.cpp:
   28860         (WebCore::ScriptController::createScriptInstanceForWidget): Removed incorrect isNPAPI check.
   28861         * plugins/PluginView.cpp:
   28862         (WebCore::PluginView::PluginView): Removed m_isNPAPIPlugin variable.
   28863         * plugins/PluginView.h: Removed setter/getter.
   28864         * plugins/mac/PluginViewMac.cpp:
   28865         (WebCore::PluginView::init): Removed call to setIsNPAPIPlugin.
   28866         * plugins/qt/PluginViewQt.cpp:
   28867         (WebCore::PluginView::init): Ditto.
   28868 
   28869 2009-03-19  Cameron Zwarich  <cwzwarich (a] uwaterloo.ca>
   28870 
   28871         Reviewed by Oliver Hunt.
   28872 
   28873         Bug 24596: ASSERT in JSC::PropertySlot::slotBase @ iGoogle homepage
   28874         <https://bugs.webkit.org/show_bug.cgi?id=24596>
   28875         <rdar://problem/6686493>
   28876 
   28877         JSDOMWindow::customGetOwnPropertySlot() does an access check after calling
   28878         JSGlobalObject::getOwnPropertySlot(). This causes the PropertySlot to be
   28879         set twice, once to the value that is illegal to access, and then to undefined
   28880         This causes an assertion failure in property access caching code.
   28881 
   28882         The fix is to do the access check before calling JSGlobalObject::getOwnPropertySlot().
   28883 
   28884         * bindings/js/JSDOMWindowCustom.h:
   28885         (WebCore::JSDOMWindow::customGetOwnPropertySlot):
   28886 
   28887 2009-03-18  Alexey Proskuryakov  <ap (a] webkit.org>
   28888 
   28889         Reviewed by Sam Weinig.
   28890 
   28891         https://bugs.webkit.org/show_bug.cgi?id=24676
   28892         Simple cross-origin requests shouldn't dispatch upload progress events
   28893 
   28894         Test: http/tests/xmlhttprequest/simple-cross-origin-progress-events.html
   28895 
   28896         * loader/CrossOriginAccessControl.cpp: (WebCore::passesAccessControlCheck): Added a comment
   28897         explaining the somewhat unexpected behavior of this function.
   28898 
   28899         * xml/XMLHttpRequestUpload.cpp: (WebCore::XMLHttpRequestUpload::hasListeners):
   28900         * xml/XMLHttpRequestUpload.h:
   28901         Report whether there are any event listeners registered.
   28902 
   28903         * xml/XMLHttpRequest.h: Added m_uploadEventsAllowed.
   28904 
   28905         * xml/XMLHttpRequest.cpp:
   28906         (WebCore::XMLHttpRequest::createRequest): Set m_uploadEventsAllowed flag.
   28907         (WebCore::XMLHttpRequest::makeSameOriginRequest): Ditto.
   28908         (WebCore::XMLHttpRequest::makeCrossOriginAccessRequest): Ditto.
   28909         (WebCore::XMLHttpRequest::makeSimpleCrossOriginAccessRequest): Set request body - it can be
   28910         non-empty for POST requests.
   28911         (WebCore::XMLHttpRequest::makeCrossOriginAccessRequestWithPreflight): Set m_uploadEventsAllowed flag.
   28912         (WebCore::XMLHttpRequest::handleAsynchronousPreflightResult): Ditto.
   28913         (WebCore::XMLHttpRequest::abort): Only dispatch upload progress events if allowed.
   28914         (WebCore::XMLHttpRequest::networkError): Ditto.
   28915         (WebCore::XMLHttpRequest::abortError): Ditto.
   28916         (WebCore::XMLHttpRequest::didSendData): Ditto.
   28917 
   28918 2009-03-18  Marc-Antoine Ruel  <maruel (a] chromium.org>
   28919 
   28920         Reviewed by Darin Fisher.
   28921 
   28922         https://bugs.webkit.org/show_bug.cgi?id=24398
   28923         Fix a crash when loading a svg file in Chromium's test_shell and
   28924         then reloading the page.
   28925 
   28926         * history/BackForwardListChromium.cpp:
   28927         (WebCore::BackForwardList::BackForwardList):
   28928         (WebCore::BackForwardList::close):
   28929 
   28930 2009-03-18  Eric Carlson  <eric.carlson (a] apple.com>
   28931 
   28932         Reviewed by Simon Fraser.
   28933 
   28934         Fix for <rdar://problem/6685235>
   28935         <video> element poster cannot be set dynamically if not originally set up in HTML
   28936         
   28937         Allocate the media engine immediately so the plug-in proxy is available for
   28938         scripting right away.
   28939 
   28940         * platform/graphics/MediaPlayer.cpp:
   28941         (WebCore::MediaPlayer::MediaPlayer):
   28942 
   28943 2009-03-18  Beth Dakin  <bdakin (a] apple.com>
   28944 
   28945         Reviewed by Dave Hyatt.
   28946 
   28947         Fix for <rdar://problem/6636747> REGRESSION (Safari 4 PB-r41326): 
   28948         Popup menu appears at the wrong location on page at http://
   28949         www.signonsandiego.com/
   28950 
   28951         This was a regression from http://trac.webkit.org/changeset/40769, 
   28952         which changed the base class of RenderInline to 
   28953         RenderBoxModelObject rather than RenderBox.
   28954 
   28955         * rendering/RenderObject.cpp:
   28956         (WebCore::RenderObject::offsetParent): offsetParent should return a 
   28957         RenderBoxModelObject rather than just a RenderBox, which is more 
   28958         restrictive. 
   28959 
   28960 2009-03-18  Anders Carlsson  <andersca (a] apple.com>
   28961 
   28962         Reviewed by Darin Adler.
   28963 
   28964         <rdar://problem/6504776> 
   28965         CrashTracer: [USER] 188 crashes in Safari at com.apple.WebCore  WTF::HashTableIterator<WTF::RefPtr<WebCore::ResourceLoader>, ...
   28966 
   28967         Return early in case calling the client ends up spinning the run loop and completing/cancelling the load.
   28968         
   28969         * loader/NetscapePlugInStreamLoader.cpp:
   28970         (WebCore::NetscapePlugInStreamLoader::didCancel):
   28971 
   28972 2009-03-18  David Levin  <levin (a] chromium.org>
   28973 
   28974         Reviewed by Dimitri Glazkov.
   28975 
   28976         https://bugs.webkit.org/show_bug.cgi?id=24664
   28977         Upstreaming v8 collection.h
   28978 
   28979         No change in behavior, so no test.
   28980 
   28981         * bindings/v8/V8Collection.h: Added.
   28982 
   28983 2009-03-18  Sam Weinig  <sam (a] webkit.org>
   28984 
   28985         Reviewed by Simon Fraser.
   28986 
   28987         Fix for https://bugs.webkit.org/show_bug.cgi?id=23966
   28988         REGRESSION: Custom arrow navigation functionality doesn't work at dropular.net
   28989         <rdar://problem/6589657>
   28990 
   28991         Match the CSSOM spec for getClientRects and getBoundingClientRect by
   28992         returning a 0x0 rect at the correct top/left position for empty inline
   28993         boxes.
   28994 
   28995         * rendering/RenderInline.cpp:
   28996         (WebCore::RenderInline::absoluteRects):
   28997         (WebCore::RenderInline::absoluteQuads):
   28998 
   28999 2009-03-18  David Levin  <levin (a] chromium.org>
   29000 
   29001         Reviewed by Eric Seidel.
   29002 
   29003         Match the changes done for windows in the bug
   29004         https://bugs.webkit.org/show_bug.cgi?id=24530.
   29005 
   29006         No change in behavior, so no test.
   29007 
   29008         * rendering/RenderThemeChromiumLinux.cpp:
   29009         (WebCore::RenderThemeChromiumLinux::extraDefaultStyleSheet):
   29010 
   29011 2009-03-18  Dirk Schulze  <krit (a] webkit.org>
   29012 
   29013         Reviewed by Holger Freyther.
   29014 
   29015         Added support for SVG's stroked texts to Qt.
   29016 
   29017         [Qt] SVGs stroked text support missing
   29018         https://bugs.webkit.org/show_bug.cgi?id=24262
   29019 
   29020         * platform/graphics/qt/FontQt.cpp:
   29021         (WebCore::Font::drawComplexText):
   29022 
   29023 2009-03-18  Mark Rowe  <mrowe (a] apple.com>
   29024 
   29025         Reviewed by Alexey Proskuryakov.
   29026 
   29027         Fix fast/encoding/char-decoding.html with recent ICU.
   29028 
   29029         * platform/text/TextCodecICU.cpp:
   29030         (WebCore::TextCodecICU::decode): Look for gb18030 case-insensitively,
   29031         as newer versions of ICU use GB18030 as the canonical name.
   29032 
   29033 2009-03-17  David Levin  <levin (a] chromium.org>
   29034 
   29035         Reviewed by Dimitri Glazkov.
   29036 
   29037         https://bugs.webkit.org/show_bug.cgi?id=24662
   29038         Chromium build fixes.
   29039 
   29040         Bug https://bugs.webkit.org/show_bug.cgi?id=24663 tracks
   29041         the invalid implementation of ScriptCallStack.
   29042 
   29043         No change in behavior, so no test.
   29044 
   29045         * bindings/v8/ScriptCallStack.h:
   29046         (WebCore::ScriptCallStack::state):
   29047         * platform/graphics/skia/PlatformContextSkia.cpp:
   29048         (PlatformContextSkia::drawRect):
   29049 
   29050 2009-03-17  David Carson  <dacarson (a] apple.com>
   29051 
   29052         Reviewed by David Hyatt.
   29053 
   29054         Add anchor elements to the simple style sheet so that applications that 
   29055         are using WebKit just for simple text and links will also take advantage
   29056         of the fast path.
   29057 
   29058         * css/CSSStyleSelector.cpp:
   29059         (WebCore::elementCanUseSimpleDefaultStyle):
   29060 
   29061 2009-03-17  Darin Adler  <darin (a] apple.com>
   29062 
   29063         Reviewed by Adele Peterson.
   29064 
   29065         <rdar://problem/6687005> Need support for new move-left/right selectors.
   29066 
   29067         * editing/EditorCommand.cpp:
   29068         (WebCore::executeMoveToLeftEndOfLine): Added.
   29069         (WebCore::executeMoveToLeftEndOfLineAndModifySelection): Added.
   29070         (WebCore::executeMoveToRightEndOfLine): Added.
   29071         (WebCore::executeMoveToRightEndOfLineAndModifySelection): Added.
   29072         Added command entries for the functions above.
   29073 
   29074 2009-03-17  Ojan Vafai  <ojan (a] chromium.org>
   29075 
   29076         Reviewed by Adele Peterson.
   29077 
   29078         Put the padding inside scrollbars on textareas.
   29079         https://bugs.webkit.org/show_bug.cgi?id=24370
   29080         
   29081         Put the padding inside the scrollbars on textareas. This is done by moving the
   29082         overflow from the shadowNode to the RenderTextControlMultiline. As a result,
   29083         all of the scroll handing methods that RenderTextControl overrides can be moved
   29084         down into RenderTextControlSingleLine since RenderTextControlMultiline can now
   29085         just use RenderBlock's versions. This also allows RenderTextControlMultiLine to
   29086         no longer need a custom layout method since the shadowNode can now just size
   29087         like a regular DIV.
   29088 
   29089         * css/CSSStyleSelector.cpp:
   29090         (WebCore::CSSStyleSelector::adjustRenderStyle):
   29091         * rendering/RenderTextControl.cpp:
   29092         (WebCore::RenderTextControl::styleDidChange):
   29093         (WebCore::RenderTextControl::selection):
   29094         (WebCore::RenderTextControl::calcHeight):
   29095         (WebCore::RenderTextControl::hitInnerTextElement):
   29096         * rendering/RenderTextControl.h:
   29097         * rendering/RenderTextControlMultiLine.cpp:
   29098         (WebCore::RenderTextControlMultiLine::nodeAtPoint):
   29099         (WebCore::RenderTextControlMultiLine::createInnerTextStyle):
   29100         * rendering/RenderTextControlMultiLine.h:
   29101         * rendering/RenderTextControlSingleLine.cpp:
   29102         (WebCore::RenderTextControlSingleLine::styleDidChange):
   29103         (WebCore::RenderTextControlSingleLine::autoscroll):
   29104         (WebCore::RenderTextControlSingleLine::scrollWidth):
   29105         (WebCore::RenderTextControlSingleLine::scrollHeight):
   29106         (WebCore::RenderTextControlSingleLine::scrollLeft):
   29107         (WebCore::RenderTextControlSingleLine::scrollTop):
   29108         (WebCore::RenderTextControlSingleLine::setScrollLeft):
   29109         (WebCore::RenderTextControlSingleLine::setScrollTop):
   29110         (WebCore::RenderTextControlSingleLine::scroll):
   29111         * rendering/RenderTextControlSingleLine.h:
   29112         * rendering/TextControlInnerElements.cpp:
   29113         (WebCore::RenderTextControlInnerBlock::RenderTextControlInnerBlock):
   29114         (WebCore::RenderTextControlInnerBlock::positionForPoint):
   29115         (WebCore::TextControlInnerTextElement::createRenderer):
   29116 
   29117 2009-03-17  Darin Adler  <darin (a] apple.com>
   29118 
   29119         Reviewed by David Hyatt.
   29120 
   29121         Bug 24517: REGRESSION (r41552): innerHTML does an updateLayout -- unneeded and can be slow
   29122         https://bugs.webkit.org/show_bug.cgi?id=24517
   29123 
   29124         * editing/DeleteButtonController.cpp:
   29125         (WebCore::DeleteButtonController::enable): Added a call to updateRendering, since
   29126         determining whether to display the delete button involves style and updateRendering
   29127         also updates style (should probably be named updateStyle, in fact). Not needed to fix
   29128         this bug, but would have prevented the crash that led to this bug in the first place.
   29129 
   29130         * editing/EditCommand.cpp:
   29131         (WebCore::EditCommand::EditCommand): Get rid of unneeded null check. All frames have
   29132         delete button controllers.
   29133         * editing/Editor.cpp:
   29134         (WebCore::Editor::rangeForPoint): Ditto.
   29135 
   29136         * editing/markup.cpp:
   29137         (WebCore::appendStartMarkup): Changed a "&" to a "&&" so that generating markup
   29138         doesn't depend on renderers at all when the convertBlocksToInlines boolean is false.
   29139         This allows us to omit the call to updateLayoutIgnorePendingStylesheets in the
   29140         createMarkup function that's called by innerHTML.
   29141         (WebCore::MarkupAccumulator::appendMarkup): Turned this into a class with a member
   29142         function. Added a feature where the accumulator will skip a node. Moved arguments
   29143         that don't change during recursion into an object. This function still is a bit
   29144         inefficient, since it creates a new HashMap at every level as it recurses, but for now
   29145         I did not tackle that. Also replaced the onlyIncludeChildren boolean with EChildrenOnly
   29146         for consistency and clarity.
   29147         (WebCore::createMarkup): Removed the call to updateLayoutIgnorePendingStylesheets.
   29148         Instead of calling disable/enable on the delete button controller's container element,
   29149         pass it in to the markup accumulator as a node to skip.
   29150 
   29151 2009-03-17  Scott Violet  <sky (a] google.com>
   29152 
   29153         Reviewed by Eric Seidel.
   29154 
   29155         https://bugs.webkit.org/show_bug.cgi?id=24651
   29156         Skia does not always render text fill/stroke pattern/gradient/color correctly
   29157 
   29158         Changes Skia's font rendering to only render gradient/pattern if current
   29159         color space indicates the gradient/pattern should be used.
   29160         This is covered by LayoutTests/fast/canvas/canvas-text-alignment.html .
   29161     
   29162         * platform/graphics/GraphicsContext.cpp:
   29163         (WebCore::GraphicsContext::strokeColorSpace):
   29164         (WebCore::GraphicsContext::fillColorSpace):
   29165         * platform/graphics/GraphicsContext.h:
   29166         (WebCore::):
   29167         * platform/graphics/GraphicsContextPrivate.h:
   29168         * platform/graphics/skia/SkiaFontWin.cpp:
   29169         (WebCore::paintSkiaText):
   29170 
   29171 2009-03-17  Adele Peterson  <adele (a] apple.com>
   29172 
   29173         Reviewed by Darin Adler.
   29174 
   29175         Fix for https://bugs.webkit.org/show_bug.cgi?id=24655
   29176         <rdar://problem/6633727> Hitting return at the end of a line with an anchor jumps me to the bottom of the message
   29177 
   29178         Test: editing/inserting/6633727.html
   29179 
   29180         This changes does a few things:
   29181         1) Renames pos to insertionPosition.
   29182         2) Eliminates "startNode".  It doesn't work well to consider the node separately from the insertionPosition.  
   29183            The insertionPosition gets updated at various times, and it seems likely that startNode can get out of sync.
   29184         3) Before building up a list of ancestors to move around when we insert the new block, make sure to use the deepest
   29185            representation of the insertionPosition, so all ancestor nodes are correctly included.
   29186 
   29187         * editing/InsertParagraphSeparatorCommand.cpp: (WebCore::InsertParagraphSeparatorCommand::doApply):
   29188 
   29189 2009-03-17  Laszlo Gombos  <laszlo.1.gombos (a] nokia.com>
   29190 
   29191         Reviewed by Kevin Ollivier.
   29192 
   29193         https://bugs.webkit.org/show_bug.cgi?id=24115
   29194         Introduce platform independent stubs for plugins.
   29195 
   29196         * plugins/PluginDataNone.cpp: Copied from WebCore/plugins/wx/PluginDataWx.cpp.
   29197         * plugins/PluginPackageNone.cpp: Copied from WebCore/plugins/wx/PluginPackageWx.cpp.
   29198         * plugins/PluginViewNone.cpp: Copied from WebCore/plugins/wx/PluginViewWx.cpp.
   29199         * plugins/wx/PluginDataWx.cpp: Removed.
   29200         * plugins/wx/PluginPackageWx.cpp: Removed.
   29201         * plugins/wx/PluginViewWx.cpp: Removed.
   29202         * webcore-wx.bkl:
   29203 
   29204 2009-03-17  Darin Adler  <darin (a] apple.com>
   29205 
   29206         Earlier version reviewed by Adele Peterson.
   29207 
   29208         Bug 24304: REGRESSION (r39864): Hitting the space bar to select an <input type=radio>
   29209         or push an <input type=button> or <button> causes the page to scroll down.
   29210 
   29211         Would be best to add a regression test for Windows eventually; tested that this has
   29212         no effect on the Mac OS X platform.
   29213 
   29214         * html/HTMLInputElement.cpp:
   29215         (WebCore::HTMLInputElement::defaultEventHandler): Added FIXMEs and tweaked formatting.
   29216         Use the code that calls the base class's defaultEventHandler early only in the cases
   29217         where it's needed: keydown and keypress events in text fields. In other cases, do the
   29218         more typical thing and call the default handler only at the end of the function.
   29219         This function already had code to make sure the keypress event for space never gets
   29220         through, but it was running too late since the scrolling code was moved into the
   29221         base class default event handler.
   29222 
   29223 2009-03-17  Simon Fraser  <simon.fraser (a] apple.com>
   29224 
   29225         Reviewed by Dave Hyatt
   29226 
   29227         https://bugs.webkit.org/show_bug.cgi?id=24632
   29228 
   29229         Fix repaint issues when composited layers come and go (only applies
   29230         when ACCELERATED_COMPOSITING is turned on).
   29231         
   29232         * rendering/RenderLayer.cpp:
   29233         (WebCore::RenderLayer::RenderLayer):
   29234         * rendering/RenderLayer.h:
   29235         (WebCore::RenderLayer::mustOverlayCompositedLayers):
   29236         (WebCore::RenderLayer::setMustOverlayCompositedLayers):
   29237         * rendering/RenderLayerBacking.cpp:
   29238         (WebCore::RenderLayerBacking::RenderLayerBacking):
   29239         * rendering/RenderLayerBacking.h:
   29240 
   29241         Move what used to be the 'forceCompositingLayer' flag from RenderLayerBacking
   29242         to RenderLayer, because we don't want the side-effects of creating RenderLayerBacking
   29243         when setting this flag.
   29244         
   29245         * rendering/RenderLayerCompositor.cpp:
   29246         (WebCore::RenderLayerCompositor::updateLayerCompositingState):
   29247         When a RenderLayer flips into or out of compositing mode, compute a repaint
   29248         rect relative to the containerForRepaint, and repaint it.
   29249         
   29250         (WebCore::RenderLayerCompositor::computeCompositingRequirements):
   29251         Call layer->setMustOverlayCompositedLayers() rather than setForcedCompositingLayer().
   29252         
   29253         (WebCore::RenderLayerCompositor::needsToBeComposited):
   29254         (WebCore::RenderLayerCompositor::requiresCompositingLayer):
   29255         (WebCore::RenderLayerCompositor::requiresCompositingForTransform):
   29256         (WebCore::RenderLayerCompositor::requiresCompositingForAnimation):
   29257         * rendering/RenderLayerCompositor.h:
   29258         
   29259         Rename requiresCompositingLayerForTransform() to requiresCompositingForTransform()
   29260         and make it a class static method to match requiresCompositingForAnimation(). Both
   29261         now take RenderObjects, rathern than RenderLayers.
   29262         
   29263         * rendering/style/RenderStyle.h:
   29264         (WebCore::InheritedFlags::hasTransformRelatedProperty):
   29265         Minor tidyup using convenience methods added in an earlier commit.
   29266 
   29267 2009-03-17  Simon Fraser  <simon.fraser (a] apple.com>
   29268 
   29269         Reviewed by Darin Adler
   29270 
   29271         https://bugs.webkit.org/show_bug.cgi?id=24396
   29272 
   29273         * config.h:
   29274         Add WTF_USE_ACCELERATED_COMPOSITING, defined to 0 for now, and add some
   29275         comments to make the #ifdefs more readable.
   29276 
   29277         * css/CSSComputedStyleDeclaration.cpp:
   29278         (WebCore::computedTransform):
   29279         Add a comment to mention that we don't flatten the matrix.
   29280         
   29281         * css/MediaQueryEvaluator.cpp:
   29282         (WebCore::transform_3dMediaFeatureEval):
   29283         Have the 'transform-3d' media query evaluate to 'true' if 3d-rendering
   29284         is supported.
   29285         
   29286         * platform/graphics/mac/GraphicsLayerCA.mm:
   29287         (WebCore::GraphicsLayerCA::animateTransform):
   29288         No need for the #ifdef here. If we don't support 3d, we will have already flattened
   29289         the matrix.
   29290         
   29291         * platform/graphics/transforms/TransformationMatrix.cpp:
   29292         (WebCore::TransformationMatrix::makeAffine):
   29293         * platform/graphics/transforms/TransformationMatrix.h:
   29294         New method to convert the matrix to an affine matrix by throwing a way the non-affine
   29295         parts.
   29296         
   29297         * rendering/RenderLayer.cpp:
   29298         (WebCore::RenderLayer::updateTransform):
   29299         (WebCore::RenderLayer::currentTransform):
   29300         * rendering/RenderLayerBacking.cpp:
   29301         (WebCore::RenderLayerBacking::updateLayerTransform):
   29302         If 3d rendering is not supported, convert the matrix to an affine matrix
   29303         which can be rendered, and used for hit testing.
   29304         
   29305         * rendering/RenderLayerCompositor.cpp:
   29306         Change the name of the exported symbol that webkitdirs.pm uses to know if
   29307         3d rendering is supported. There is no other 3d-rendering-specific symbol we can sniff.
   29308         
   29309         * rendering/RenderObject.cpp:
   29310         (WebCore::RenderObject::transformFromContainer):
   29311         Only take perspective into account if 3d rendering is supported.
   29312 
   29313         * rendering/RenderObject.h:
   29314         (WebCore::makeMatrixRenderable):
   29315         Utility method that flattens a matrix if 3d rendering is not supported.
   29316 
   29317 2009-03-17  Kevin Ollivier  <kevino (a] theolliviers.com>
   29318 
   29319         wx build fix. Fix typo after mouse wheel changes.
   29320 
   29321         * platform/wx/MouseWheelEventWx.cpp:
   29322         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   29323 
   29324 2009-03-17  Darin Adler  <darin (a] apple.com>
   29325 
   29326         * inspector/ConsoleMessage.cpp:
   29327         (WebCore::ConsoleMessage::isEqual): Fix build, remove stray parenthesis.
   29328 
   29329 2009-03-17  Darin Adler  <darin (a] apple.com>
   29330 
   29331         Fix crash seen right away when running run-webkit-tests.
   29332 
   29333         * inspector/ConsoleMessage.cpp:
   29334         (WebCore::ConsoleMessage::isEqual): Restore assertion to its behavior pre-refactoring.
   29335         Also tweaked formatting a bit.
   29336 
   29337 2009-03-17  Alexey Proskuryakov  <ap (a] webkit.org>
   29338 
   29339         Reviewed by Darin Adler.
   29340 
   29341         HTMLSelectElement::add() doesn't look at exception code returned from insertBefore(), so 
   29342         it doesn't need to zero it out before calling.
   29343 
   29344         * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::add): Removed "ec = 0" line.
   29345 
   29346 2009-03-17  Dan Bernstein  <mitz (a] apple.com>
   29347 
   29348         Reviewed by Adam Roben.
   29349 
   29350         - WebCore part of adding a mechanism for controlling the caching of
   29351           responses through WebFrameLoaderClient
   29352 
   29353         Mac already has such a mechanism, and this adds one for CFNetwork ports.
   29354 
   29355         * WebCore.vcproj/WebCore.vcproj: Added EmptyClients.h
   29356         and ResourceLoaderCFNet.cpp.
   29357 
   29358         * loader/EmptyClients.h:
   29359         (WebCore::EmptyFrameLoaderClient::shouldCacheResponse): Added an
   29360         implementation that always returns true.
   29361 
   29362         * loader/FrameLoaderClient.h: Declared shouldCacheResponse().
   29363 
   29364         * loader/ResourceLoader.h: Ditto.
   29365 
   29366         * loader/cf/ResourceLoaderCFNet.cpp: Added.
   29367         (WebCore::ResourceLoader::shouldCacheResponse): Added. Calls through to
   29368         FrameLoaderClient::shouldCacheResponse().
   29369 
   29370         * platform/network/ResourceHandleClient.h:
   29371         (WebCore::ResourceHandleClient::shouldCacheResponse): Added an
   29372         implementation that always returns true.
   29373 
   29374         * platform/network/cf/ResourceHandleCFNet.cpp:
   29375         (WebCore::willCacheResponse): Added a call to
   29376         ResourceHandleClient::shouldCacheResponse(). If the client returns
   29377         false, return 0, which will prevent CFNetwork from caching the response.
   29378 
   29379 2009-03-17  Alexey Proskuryakov  <ap (a] webkit.org>
   29380 
   29381         Reviewed by Darin Adler.
   29382 
   29383         https://bugs.webkit.org/show_bug.cgi?id=13287
   29384         Cannot change SELECT to a dynamically created option
   29385 
   29386         Tests: fast/forms/add-and-remove-option.html
   29387                fast/forms/add-remove-option-modification-event.html
   29388                fast/forms/add-selected-option.html
   29389                fast/forms/select-cache-desynchronization.html
   29390 
   29391         * dom/ContainerNode.cpp:
   29392         (WebCore::dispatchChildInsertionEvents): Increment DOM tree version. This will happen when
   29393         dispatching DOMSubtreeModified again, but the version should be incremented for event
   29394         listeners to have an up to date view of the DOM.
   29395         (WebCore::dispatchChildRemovalEvents): Ditto.
   29396 
   29397         * html/HTMLOptionElement.cpp: (WebCore::HTMLOptionElement::insertedIntoTree):
   29398         Make sure that the select element knows about its new selected option.
   29399 
   29400         * html/HTMLOptionElement.h: Use insertedIntoTree() instead of insertedIntoDocument(),
   29401         because DOM also needs to be updated for forms that are not in document yet. Similar
   29402         problems exist for node removing, but removedFromTree() is called at a wrong time, so
   29403         those problems cannot be fixed without deeper refactoring.
   29404 
   29405         * html/HTMLSelectElement.cpp:
   29406         (WebCore::HTMLSelectElement::setRecalcListItems): Reset m_activeSelectionAnchorIndex - it
   29407         doesn't make sense to keep the anchor after programmatically changing the selection, and
   29408         keeping it was causing a failure in fast/forms/listbox-selection.html.
   29409 
   29410         * html/HTMLSelectElement.h: Removed overrides for ContainerNode methods that only called
   29411         base class versions.
   29412 
   29413 2009-03-17  Steve Falkenburg  <sfalken (a] apple.com>
   29414 
   29415         <rdar://problem/6690324> Accessing FTP sites reads unallocated memory, can result in garbled entries or crashes
   29416         
   29417         Reviewed by Darin Adler.
   29418 
   29419         * loader/FTPDirectoryDocument.cpp:
   29420         (WebCore::FTPDirectoryTokenizer::parseAndAppendOneLine): Assign CString to a local while we hold pointers into it.
   29421 
   29422 2009-03-16  David Hyatt  <hyatt (a] apple.com>
   29423 
   29424         <rdar://problem/6648411> REGRESSION: Layout of page is wrong at http://www.popcap.com/
   29425 
   29426         Make sure that the initial shouldPaint check that looks at enclosingLayers properly skips over
   29427         layers that don't paint themselves.  This is done by adding a new enclosingSelfPaintingLayer method
   29428         so that RenderObjects can walk up the enclosing layer chain and skip any layers that don't paint
   29429         themselves.
   29430 
   29431         Reviewed by Darin Adler.
   29432 
   29433         Added fast/block/float/overlapping-floats-with-overflow-hidden.html
   29434 
   29435         * WebCore.base.exp:
   29436         * rendering/RenderBlock.cpp:
   29437         (WebCore::RenderBlock::addOverhangingFloats):
   29438         * rendering/RenderObject.cpp:
   29439         (WebCore::RenderObject::enclosingSelfPaintingLayer):
   29440         * rendering/RenderObject.h:
   29441 
   29442 2009-03-17  Xan Lopez  <xlopez (a] igalia.com>
   29443 
   29444         Reviewed by Holger Freyther.
   29445 
   29446         https://bugs.webkit.org/show_bug.cgi?id=24592
   29447         [GTK] Crash in FcPatternHash
   29448 
   29449         Style fixes.
   29450 
   29451         * platform/graphics/gtk/FontPlatformDataGtk.cpp:
   29452         (WebCore::FontPlatformData::operator=):
   29453         * platform/graphics/gtk/FontPlatformDataPango.cpp:
   29454 
   29455 2009-03-17  Xan Lopez  <xlopez (a] igalia.com>
   29456 
   29457         Reviewed by Holger Freyther.
   29458 
   29459         https://bugs.webkit.org/show_bug.cgi?id=24592
   29460         [GTK] Crash in FcPatternHash
   29461 
   29462         Sanitize memory management in pango fonts.
   29463 
   29464         Release memory allocated by FontPlatformDataPango in its own
   29465         destructor instead of doing it from other classes, and add copy
   29466         constructor and '=' operator to be able to track referenced
   29467         objects properly.
   29468 
   29469         * platform/graphics/gtk/FontPlatformDataPango.cpp:
   29470         (WebCore::FontPlatformData::~FontPlatformData):
   29471         (WebCore::FontPlatformData::operator=):
   29472         (WebCore::FontPlatformData::FontPlatformData):
   29473         * platform/graphics/gtk/SimpleFontDataPango.cpp:
   29474 
   29475 2009-03-17  Darin Adler  <darin (a] apple.com>
   29476 
   29477         Reviewed by Alexey Proskuryakov.
   29478 
   29479         Bug 24624: Crash in imageLoadEventTimerFired after adoptNode used on <img>,
   29480         seen with inspector, which uses adoptNode
   29481         https://bugs.webkit.org/show_bug.cgi?id=24624
   29482         rdar://problem/6422850
   29483 
   29484         Test: fast/dom/HTMLImageElement/image-load-cross-document.html
   29485 
   29486         * dom/Document.cpp:
   29487         (WebCore::Document::Document): Removed m_imageLoadEventTimer.
   29488         (WebCore::Document::detach): Removed m_imageLoadEventDispatchSoonList and
   29489         m_imageLoadEventDispatchingList.
   29490         (WebCore::Document::implicitClose): Called ImageLoader::dispatchPendingLoadEvents
   29491         instead of dispatchImageLoadEventsNow.
   29492 
   29493         * dom/Document.h: Removed ImageLoader, dispatchImageLoadEventSoon,
   29494         dispatchImageLoadEventsNow, removeImage, m_imageLoadEventDispatchSoonList,
   29495         m_imageLoadEventDispatchingList, m_imageLoadEventTimer, and imageLoadEventTimerFired.
   29496 
   29497         * loader/ImageLoader.cpp:
   29498         (WebCore::loadEventSender): Added. Returns the single global ImageLoadEventSender
   29499         object used privately as the target of the load event timer.
   29500         (WebCore::ImageLoader::~ImageLoader): Call ImageLoadEventSender::cancelLoadEvent
   29501         rather than Document::removeImage.
   29502         (WebCore::ImageLoader::setImage): Use m_element directly, not element().
   29503         (WebCore::ImageLoader::updateFromElement): Ditto. Also name the local variable
   29504         document instead of doc.
   29505         (WebCore::ImageLoader::notifyFinished): Call ImageLoadEventSender::dispatchLoadEventSoon
   29506         rather than Document::dispatchImageLoadEventSoon.
   29507         (WebCore::ImageLoader::dispatchPendingLoadEvent): Added. Handles the common logic
   29508         about when load events can be dispatched so that dispatchLoadEvent only has to
   29509         have the specific part for each derived class. This includes a check that the
   29510         document is attached, which used to be handled by having documents empty out the
   29511         image load event vectors in the detach function.
   29512         (WebCore::ImageLoader::dispatchPendingLoadEvents): Added. Calls the appropriate
   29513         function on the ImageLoadEventSender, which avoids the need to have that class be
   29514         public in the ImageLoader header.
   29515         (WebCore::ImageLoadEventSender::ImageLoadEventSender): Added. Has the code that
   29516         was previously in the Document constructor.
   29517         (WebCore::ImageLoadEventSender::dispatchLoadEventSoon): Added. Has the code that
   29518         was previously in Document::dispatchImageLoadEventSoon.
   29519         (WebCore::ImageLoadEventSender::cancelLoadEvent): Added. Has the code that was
   29520         previously in Document::removeImage.
   29521         (WebCore::ImageLoadEventSender::dispatchPendingLoadEvents): Added. Has the code
   29522         that was previously in Document::dispatchImageLoadEventsNow.
   29523         (WebCore::ImageLoadEventSender::timerFired): Added. Calls dispatchPendingLoadEvents.
   29524 
   29525         * loader/ImageLoader.h: Improved comments. Made the virtual functions private
   29526         or protected rather than public. Added static dispatchPendingLoadEvents function
   29527         for use by Document and private dispatchPendingLoadEvent function for use by
   29528         ImageLoadEventSender. Made setLoadingImage private and eliminated
   29529         setHaveFiredLoadEvent since that can all be done inside the class without any
   29530         member functions.
   29531 
   29532         * html/HTMLImageLoader.cpp:
   29533         (WebCore::HTMLImageLoader::dispatchLoadEvent): Removed logic to check whether a
   29534         load event already fired and whether image() is 0. These are now both base class
   29535         responsibilities.
   29536         * svg/SVGImageLoader.cpp:
   29537         (WebCore::SVGImageLoader::dispatchLoadEvent): Ditto.
   29538         * wml/WMLImageLoader.cpp:
   29539         (WebCore::WMLImageLoader::dispatchLoadEvent): Ditto.
   29540 
   29541 2009-03-17  Dimitri Glazkov  <dglazkov (a] chromium.org>
   29542 
   29543         Reviewed by Timothy Hatcher.
   29544 
   29545         https://bugs.webkit.org/show_bug.cgi?id=24623
   29546         Refactor ConsoleMessage to use ScriptFuncitonCall and eliminate JSC
   29547         dependencies.
   29548 
   29549         * bindings/js/ScriptFunctionCall.cpp:
   29550         (WebCore::ScriptFunctionCall::appendArgument): Added uint and ScriptString-taking methods.
   29551         * bindings/js/ScriptFunctionCall.h:
   29552         * bindings/js/ScriptObjectQuarantine.cpp:
   29553         (WebCore::quarantineValue): Added generic ScriptValue quarantine helper.
   29554         * bindings/js/ScriptObjectQuarantine.h:
   29555         * bindings/js/ScriptValue.cpp:
   29556         (WebCore::ScriptValue::isEqual): Added.
   29557         * bindings/js/ScriptValue.h:
   29558         * inspector/ConsoleMessage.cpp:
   29559         (WebCore::ConsoleMessage::ConsoleMessage):
   29560         (WebCore::ConsoleMessage::addToConsole): Added.
   29561         (WebCore::ConsoleMessage::isEqual): Changed to use ScriptValue::isEqual.
   29562         * inspector/ConsoleMessage.h:
   29563         (WebCore::ConsoleMessage::incrementCount): Added.
   29564         * inspector/InspectorController.cpp:
   29565         (WebCore::InspectorController::addConsoleMessage): Changed to use ConsoleMessage::addToConsole.
   29566         (WebCore::InspectorController::populateScriptObjects): Ditto.
   29567         * inspector/InspectorController.h:
   29568 
   29569 2009-03-17  Kevin Ollivier  <kevino (a] theolliviers.com>
   29570 
   29571         Reviewed by Mark Rowe.
   29572 
   29573         Get BUILDING_ON_* defines from Platform.h.
   29574         
   29575         https://bugs.webkit.org/show_bug.cgi?id=24630
   29576 
   29577         * WebCorePrefix.h:
   29578 
   29579 2009-03-16  Xan Lopez  <xlopez (a] igalia.com>
   29580 
   29581         Reviewed by Holger Freyther.
   29582 
   29583         https://bugs.webkit.org/show_bug.cgi?id=24592
   29584         [GTK] Crash in FcPatternHash
   29585 
   29586         Sanitize memory management in gtk fonts.
   29587 
   29588         Release memory allocated by FontPlatformDataGtk in its own
   29589         destructor instead of doing it from other classes, and add copy
   29590         constructor and '=' operator to be able to track referenced
   29591         objects properly.
   29592 
   29593         * platform/graphics/gtk/FontPlatformData.h:
   29594         * platform/graphics/gtk/FontPlatformDataGtk.cpp:
   29595         (WebCore::FontPlatformData::operator=):
   29596         (WebCore::FontPlatformData::FontPlatformData):
   29597         (WebCore::FontPlatformData::~FontPlatformData):
   29598         * platform/graphics/gtk/SimpleFontDataGtk.cpp:
   29599         (WebCore::SimpleFontData::platformDestroy):
   29600 
   29601 2009-03-17  Ariya Hidayat  <ariya.hidayat (a] nokia.com>
   29602 
   29603         Build fix for Qt < 4.5.
   29604 
   29605         As reported by Yael Aharon  <yael.aharon (a] nokia.com>
   29606 
   29607         * platform/graphics/qt/GraphicsContextQt.cpp:
   29608         (WebCore::GraphicsContext::drawLine):
   29609 
   29610 2009-03-17  Alexey Proskuryakov  <ap (a] webkit.org>
   29611 
   29612         Reviewed by Sam Weinig.
   29613 
   29614         https://bugs.webkit.org/show_bug.cgi?id=24614
   29615         Access control checks are different in cached and uncached cases
   29616 
   29617         Test: http/tests/xmlhttprequest/access-control-basic-non-simple-deny-cached.html
   29618 
   29619         * loader/CrossOriginAccessControl.cpp:
   29620         (WebCore::isOnAccessControlSimpleRequestMethodWhitelist): Factored out simple method
   29621         check for use in both cached and uncached cases. In cached case, an old definition that
   29622         omitted HEAD was still used.
   29623         (WebCore::isOnAccessControlSimpleRequestHeaderWhitelist): Check that content type has an
   29624         allowed value. This is needed in all call sites. Also changed to compare MIME type, not
   29625         content type.
   29626         (WebCore::isSimpleCrossOriginAccessRequest): Use the above methods.
   29627 
   29628         * loader/CrossOriginAccessControl.h: Expose isOnAccessControlSimpleRequestMethodWhitelist.
   29629 
   29630         * loader/CrossOriginPreflightResultCache.cpp:
   29631         (WebCore::CrossOriginPreflightResultCacheItem::allowsCrossOriginMethod):
   29632         (WebCore::CrossOriginPreflightResultCacheItem::allowsCrossOriginHeaders):
   29633         Use the new checks for simple method and header.
   29634 
   29635 2009-03-16  Gustavo Noronha Silva  <gns (a] gnome.org> and Thadeu Lima de Souza Cascardo <cascardo (a] holoscopio.com>
   29636 
   29637         Reviewed by Mark Rowe.
   29638 
   29639         https://bugs.webkit.org/show_bug.cgi?id=24638
   29640         [GTK] HTML5 media tags do not work
   29641 
   29642         Add a repaint-requested signal to the video sink, and use it to
   29643         call MediaPlayerPrivate::repaint, so that the video actually
   29644         plays.
   29645 
   29646         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
   29647         (WebCore::mediaPlayerPrivateRepaintCallback):
   29648         (WebCore::MediaPlayerPrivate::createGSTPlayBin):
   29649         * platform/graphics/gtk/VideoSinkGStreamer.cpp:
   29650         (webkit_video_sink_idle_func):
   29651         (webkit_video_sink_render):
   29652         (webkit_video_sink_class_init):
   29653 
   29654 2009-03-16  Gustavo Noronha Silva  <gns (a] gnome.org> and Thadeu Lima de Souza Cascardo <cascardo (a] holoscopio.com>
   29655 
   29656         Reviewed by Holger Freyther.
   29657 
   29658         https://bugs.webkit.org/show_bug.cgi?id=24638
   29659         [GTK] HTML5 media tags do not work
   29660 
   29661         Work-around the fact that gst_element_query_duration returns true even
   29662         though it is unable to figure out the duration when in stream (push)
   29663         mode.
   29664 
   29665         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
   29666         (WebCore::MediaPlayerPrivate::duration):
   29667 
   29668 2009-03-16  Darin Adler  <darin (a] apple.com>
   29669 
   29670         Reviewed by Kevin Decker.
   29671 
   29672         <rdar://problem/6642742> Top Sites malfunction when switching text zoom mode
   29673 
   29674         * page/Frame.cpp:
   29675         (WebCore::Frame::setNeedsReapplyStyles): Dont do anything if the frame is
   29676         currently showing a non-HTML view.
   29677 
   29678 2009-03-16  Darin Adler  <darin (a] apple.com>
   29679 
   29680         Reviewed by Adele Peterson.
   29681 
   29682         Bug 24629: moving forward or backward a paragraph fails at edge of document
   29683         https://bugs.webkit.org/show_bug.cgi?id=24629
   29684         rdar://problem/6544413
   29685 
   29686         Test: editing/selection/move-paragraph-document-edges.html
   29687 
   29688         * editing/visible_units.cpp:
   29689         (WebCore::previousParagraphPosition): Use the last result from
   29690         previousLinePosition rather than going all the way back to what was originally
   29691         passed in when we hit exception cases like null or not moving. This correctly
   29692         inherits the behavior of previousLinePosition when we are in a paragraph at the
   29693         edge of a document.
   29694         (WebCore::nextParagraphPosition): Ditto.
   29695 
   29696 2009-03-16  Darin Adler  <darin (a] apple.com>
   29697 
   29698         Reviewed by Adele Peterson.
   29699 
   29700         Bug 24619: RenderObject::selectionStartEnd does not need to be a virtual function
   29701         https://bugs.webkit.org/show_bug.cgi?id=24619
   29702 
   29703         * rendering/RenderObject.h: Remove virtual keyword from selectionStartEnd declaration.
   29704         * rendering/RenderView.h: Ditto.
   29705 
   29706 2009-03-16  Peter Kasting  <pkasting (a] google.com>
   29707 
   29708         Reviewed by David Hyatt.
   29709 
   29710         https://bugs.webkit.org/show_bug.cgi?id=24368
   29711         DOM scroll events should be based off the actual number of wheel
   29712         ticks, not off the number of lines scrolled.  This matches IE.
   29713 
   29714         * dom/Node.cpp:
   29715         (WebCore::Node::dispatchWheelEvent):
   29716         * dom/WheelEvent.cpp:
   29717         (WebCore::WheelEvent::WheelEvent):
   29718         * dom/WheelEvent.h:
   29719         (WebCore::WheelEvent::create):
   29720         * platform/PlatformWheelEvent.h:
   29721         (WebCore::PlatformWheelEvent::wheelTicksX):
   29722         (WebCore::PlatformWheelEvent::wheelTicksY):
   29723         * platform/gtk/WheelEventGtk.cpp:
   29724         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   29725         * platform/mac/WheelEventMac.mm:
   29726         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   29727         * platform/qt/WheelEventQt.cpp:
   29728         * platform/win/WheelEventWin.cpp:
   29729         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   29730         * platform/wx/MouseWheelEventWx.cpp:
   29731         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   29732 
   29733 2009-03-16  Simon Fraser  <simon.fraser (a] apple.com>
   29734 
   29735         Reviewed by Eric Seidel
   29736         
   29737         Clean up a few issues in the Animation code:
   29738 
   29739         * page/animation/AnimationBase.cpp:
   29740         (WebCore::AnimationBase::updateStateMachine):
   29741         Whitespace
   29742         
   29743         (WebCore::AnimationBase::willNeedService):
   29744         Don't round to float, use std::max
   29745 
   29746         * page/animation/AnimationController.cpp:
   29747         (WebCore::AnimationControllerPrivate::startTimeResponse):
   29748         Fix erroneously copied line to null out m_lastResponseWaiter.
   29749 
   29750 2009-03-12  David Hyatt  <hyatt (a] apple.com>
   29751 
   29752         Reviewed by Eric Seidel
   29753 
   29754         https://bugs.webkit.org/show_bug.cgi?id=13632
   29755 
   29756         Overflow scrolling needs to account for the bottom/right padding on the object itself as well
   29757         as for bottom/right margins on children.
   29758 
   29759         Existing tests cover this.
   29760 
   29761         * rendering/RenderBlock.cpp:
   29762         (WebCore::RenderBlock::lowestPosition):
   29763         (WebCore::RenderBlock::rightmostPosition):
   29764 
   29765 2009-03-16  Sam Weinig  <sam (a] webkit.org>
   29766 
   29767         Reviewed by Anders Carlsson.
   29768 
   29769         Fix for <rdar://problem/6320555>
   29770         Add an upper limit for setting HTMLSelectElement.length.
   29771 
   29772         Test: fast/forms/select-max-length.html
   29773 
   29774         * html/HTMLSelectElement.cpp:
   29775         (WebCore::HTMLSelectElement::setOption):
   29776         (WebCore::HTMLSelectElement::setLength):
   29777 
   29778 2009-03-16  Eric Carlson  <eric.carlson (a] apple.com>
   29779 
   29780         Reviewed by Simon Fraser.
   29781 
   29782         <rdar://problem/6686721> Media document crash in 64-bit WebKit
   29783 
   29784         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   29785         (WebCore::MediaPlayerPrivate::createQTMovieView): QTMovieContentViewClass is only used when
   29786         rendering inline with old versions of QuickTime, so don't look for it when we are in a 
   29787         media document.
   29788 
   29789 2009-03-16  Dimitri Glazkov  <dglazkov (a] chromium.org>
   29790 
   29791         Reviewed by Timothy Hatcher.
   29792 
   29793         https://bugs.webkit.org/show_bug.cgi?id=24590
   29794         Refactor InspectorDOMStorageResource to use ScriptFunctionCall.
   29795 
   29796         * bindings/js/ScriptFunctionCall.cpp:
   29797         (WebCore::ScriptFunctionCall::appendArgument): Added method for bool argument.
   29798         * bindings/js/ScriptFunctionCall.h: Ditto, also cleaned up.
   29799         * bindings/js/ScriptObjectQuarantine.cpp:
   29800         (WebCore::getQuarantinedScriptObject): Added Storage helper.
   29801         * bindings/js/ScriptObjectQuarantine.h: Ditto.
   29802         * inspector/InspectorController.cpp:
   29803         (WebCore::InspectorController::populateScriptObjects): Changed to use bind method.
   29804         (WebCore::InspectorController::resetScriptObjects): Changed to use unbind method.
   29805         (WebCore::InspectorController::didUseDOMStorage): Changed to use isSameHostAndType and bind methods.
   29806         * inspector/InspectorController.h: Removed add/remove methods for DOM storage.
   29807         * inspector/InspectorDOMStorageResource.cpp:
   29808         (WebCore::InspectorDOMStorageResource::InspectorDOMStorageResource):
   29809         (WebCore::InspectorDOMStorageResource::isSameHostAndType): Added.
   29810         (WebCore::InspectorDOMStorageResource::bind): Added.
   29811         (WebCore::InspectorDOMStorageResource::unbind): Added.
   29812         * inspector/InspectorDOMStorageResource.h:
   29813 
   29814 2009-03-16   Mike Belshe  <mike (a] belse.com>
   29815 
   29816         Reviewed by Dimitri Glazkov.
   29817 
   29818         https://bugs.webkit.org/show_bug.cgi?id=24580
   29819         Fix query() to match KURL behavior, this time with the code that
   29820         compiles.
   29821 
   29822         * platform/KURLGoogle.cpp:
   29823         (WebCore::KURL::query): Fix copy/paste mistake.
   29824 
   29825 2009-03-16  Alexey Proskuryakov  <ap (a] webkit.org>
   29826 
   29827         Reviewed by Darin Adler.
   29828 
   29829         https://bugs.webkit.org/show_bug.cgi?id=21752
   29830         REGRESSION: referencing XHR constructor for a not yet loaded frame permanently breaks it
   29831 
   29832         Test: fast/dom/Window/window-early-properties-xhr.html
   29833 
   29834         For some transitions, the Window object is not replaced, but Document is. When this happened,
   29835         window.document property was updated, but references to Document kept in cached constructors
   29836         were not.
   29837 
   29838         * bindings/js/JSAudioConstructor.cpp:
   29839         (WebCore::JSAudioConstructor::JSAudioConstructor):
   29840         (WebCore::JSAudioConstructor::document):
   29841         (WebCore::JSAudioConstructor::mark):
   29842         * bindings/js/JSAudioConstructor.h:
   29843         * bindings/js/JSImageConstructor.cpp:
   29844         (WebCore::JSImageConstructor::JSImageConstructor):
   29845         (WebCore::JSImageConstructor::document):
   29846         (WebCore::JSImageConstructor::mark):
   29847         * bindings/js/JSImageConstructor.h:
   29848         * bindings/js/JSMessageChannelConstructor.cpp:
   29849         (WebCore::JSMessageChannelConstructor::JSMessageChannelConstructor):
   29850         (WebCore::JSMessageChannelConstructor::scriptExecutionContext):
   29851         (WebCore::JSMessageChannelConstructor::mark):
   29852         * bindings/js/JSMessageChannelConstructor.h:
   29853         * bindings/js/JSOptionConstructor.cpp:
   29854         (WebCore::JSOptionConstructor::JSOptionConstructor):
   29855         (WebCore::JSOptionConstructor::document):
   29856         (WebCore::JSOptionConstructor::mark):
   29857         * bindings/js/JSOptionConstructor.h:
   29858         * bindings/js/JSXMLHttpRequestConstructor.cpp:
   29859         (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
   29860         (WebCore::JSXMLHttpRequestConstructor::scriptExecutionContext):
   29861         (WebCore::JSXMLHttpRequestConstructor::mark):
   29862         * bindings/js/JSXMLHttpRequestConstructor.h:
   29863         Changed cached constructors to keep a reference to Window, not Document.
   29864 
   29865 2009-03-15  Alexey Proskuryakov  <ap (a] webkit.org>
   29866 
   29867         Reviewed by Darin Adler.
   29868 
   29869         https://bugs.webkit.org/show_bug.cgi?id=24549
   29870         Impose a limit on Access-Control-Max-Age value
   29871 
   29872         * loader/CrossOriginPreflightResultCache.cpp:
   29873         (WebCore::CrossOriginPreflightResultCacheItem::parse):
   29874 
   29875 2009-03-15  Greg Bolsinga  <bolsinga (a] apple.com>
   29876 
   29877         Reviewed by David Kilzer.
   29878 
   29879         <rdar://problem/6668875> Normalize Geolocation results
   29880 
   29881         * platform/mac/GeolocationServiceMac.mm:
   29882         (-[WebCoreCoreLocationObserver locationManager:didUpdateToLocation:fromLocation:]):
   29883 
   29884 2009-03-15  Greg Bolsinga  <bolsinga (a] apple.com>
   29885 
   29886         Reviewed by David Kilzer.
   29887 
   29888         Update ::toString format as suggested by Darin Adler.
   29889 
   29890         * page/Geoposition.cpp:
   29891         (WebCore::Geoposition::toString):
   29892 
   29893 2009-03-15  David Kilzer  <ddkilzer (a] apple.com>
   29894 
   29895         <rdar://problem/6668238> WebCore is registering text encodings needlessly from KURL constructor.
   29896 
   29897         Reviewed by Darin Adler.
   29898 
   29899         Yet another case where we would trigger extended encoding loading needlessly.
   29900 
   29901         * platform/text/TextEncoding.cpp:
   29902         (WebCore::TextEncoding::encodingForFormSubmission):
   29903 
   29904 2009-03-15  Simon Fraser  <simon.fraser (a] apple.com>
   29905 
   29906         Build fix: no review.
   29907 
   29908         * rendering/style/ContentData.h:
   29909 
   29910 2009-03-15  David Kilzer  <ddkilzer (a] apple.com>
   29911 
   29912         Bug 24542: Improve ContentData encapsulation
   29913 
   29914         <https://bugs.webkit.org/show_bug.cgi?id=24542>
   29915 
   29916         Reviewed by Simon Fraser.
   29917 
   29918         No tests since there is no change in behavior.
   29919 
   29920         * rendering/RenderObject.cpp:
   29921         (WebCore::RenderObject::createObject): Used getter methods
   29922         instead of data members on ContentData class.  Used isImage()
   29923         convenience method.
   29924         * rendering/RenderObjectChildList.cpp:
   29925         (WebCore::RenderObjectChildList::updateBeforeAfterContent): Ditto.
   29926 
   29927         * rendering/style/ContentData.cpp:
   29928         (WebCore::ContentData::clear): Extracted code into
   29929         deleteContent() method.
   29930         (WebCore::ContentData::dataEquivalent): Added.  Extracted code
   29931         from StyleRareNonInheritedData::contentDataEquivalent().
   29932         (WebCore::ContentData::deleteContent): Added.  Used by setter
   29933         methods.
   29934         * rendering/style/ContentData.h: Made m_type, m_content and
   29935         m_next private.
   29936         (WebCore::ContentData::isCounter): Added.
   29937         (WebCore::ContentData::isImage): Added.
   29938         (WebCore::ContentData::isNone): Added.
   29939         (WebCore::ContentData::isText): Added.
   29940         (WebCore::ContentData::type): Added.
   29941         (WebCore::ContentData::dataEquivalent): Added.
   29942         (WebCore::ContentData::image): Added.
   29943         (WebCore::ContentData::setImage): Added.
   29944         (WebCore::ContentData::text): Added.
   29945         (WebCore::ContentData::setText): Added.
   29946         (WebCore::ContentData::counter): Added.
   29947         (WebCore::ContentData::setCounter): Added.
   29948         (WebCore::ContentData::next): Added.
   29949         (WebCore::ContentData::setNext): Added.
   29950 
   29951         * rendering/style/CounterContent.h:
   29952         (WebCore::operator!=): Removed.
   29953         (WebCore::operator==): Renamed operator!=() and reversed its
   29954         logic after extracting code from
   29955         StyleRareNonInheritedData::contentDataEquivalent() to create
   29956         ContentData::dataEquivalent().
   29957 
   29958         * rendering/style/RenderStyle.cpp:
   29959         (WebCore::RenderStyle::setContent): Used new getters and setters
   29960         on ContentData class.  Changed first argument from a StringImpl*
   29961         to a PassRefPtr<StrimgImpl>.  Used isText() convenience method.
   29962         * rendering/style/RenderStyle.h:
   29963         (WebCore::RenderStyle::setContent): Updated declaration.
   29964         * rendering/style/StyleRareNonInheritedData.cpp:
   29965         (WebCore::StyleRareNonInheritedData::contentDataEquivalent):
   29966         Extracted most logic in while() loop into
   29967         ContentData::dataEquivalent().
   29968 
   29969 2009-03-15  Gustavo Noronha Silva  <gns (a] gnome.org>
   29970 
   29971         Reviewed by Anders Carlsson.
   29972 
   29973         https://bugs.webkit.org/show_bug.cgi?id=24602
   29974         [Gtk] Searching in thepiratebay.org doesn't work with more than 1 word
   29975 
   29976         Reintroduce the URI into the soup message after having set it in
   29977         the KURL, on redirects, to make sure it is properly encoded. This
   29978         fixes bad request problems when servers give bad URIs on their
   29979         response's Location header.
   29980 
   29981         * platform/network/soup/ResourceHandleSoup.cpp:
   29982         (WebCore::restartedCallback):
   29983 
   29984 2009-03-15  Alexey Proskuryakov  <ap (a] webkit.org>
   29985 
   29986         Reviewed by Darin Adler.
   29987 
   29988         https://bugs.webkit.org/show_bug.cgi?id=19737
   29989         No cursor and paste not enabled right clicking text field/area
   29990 
   29991         Test: fast/events/right-click-focus.html
   29992 
   29993         * page/EventHandler.cpp:
   29994         (WebCore::EventHandler::handleMousePressEventSingleClick):
   29995         (WebCore::EventHandler::handleMousePressEvent):
   29996         Take normal code path for right clicks (we were taking it for Ctrl-clicks anyway).
   29997 
   29998 2009-03-15  Alexey Proskuryakov  <ap (a] webkit.org>
   29999 
   30000         Reviewed by Adele Peterson.
   30001 
   30002         https://bugs.webkit.org/show_bug.cgi?id=23949
   30003         HTMLSelectElement is in inconsistent state when handling mutation events
   30004 
   30005         Test: fast/forms/mutation-event-recalc.html
   30006 
   30007         * dom/ContainerNode.cpp:
   30008         (WebCore::ContainerNode::insertBefore):
   30009         (WebCore::ContainerNode::appendChild):
   30010         Call childrenChanged() before dispatching modification events, not after.
   30011 
   30012         * html/HTMLOptGroupElement.cpp:
   30013         (WebCore::HTMLOptGroupElement::insertBefore):
   30014         (WebCore::HTMLOptGroupElement::replaceChild):
   30015         (WebCore::HTMLOptGroupElement::removeChild):
   30016         (WebCore::HTMLOptGroupElement::appendChild):
   30017         (WebCore::HTMLOptGroupElement::removeChildren):
   30018         * html/HTMLSelectElement.cpp:
   30019         (WebCore::HTMLSelectElement::add):
   30020         (WebCore::HTMLSelectElement::remove):
   30021         (WebCore::HTMLSelectElement::insertBefore):
   30022         (WebCore::HTMLSelectElement::replaceChild):
   30023         (WebCore::HTMLSelectElement::removeChild):
   30024         (WebCore::HTMLSelectElement::appendChild):
   30025         (WebCore::HTMLSelectElement::removeChildren):
   30026         Remove calls to recalcSelectOptions(). It is too late to recalc now, after mutation events
   30027         were already dispatched.
   30028 
   30029 2009-03-14  Greg Bolsinga  <bolsinga (a] apple.com>
   30030 
   30031         <rdar://problem/6683465>
   30032 
   30033         Geolocation has to be able to handle NULL Frames.
   30034 
   30035         Reviewed by Mark Rowe
   30036     
   30037 2009-03-14  Greg Bolsinga  <bolsinga (a] apple.com>
   30038 
   30039         Reviewed by David Kilzer.
   30040 
   30041         Geoposition::toString was missing the Coordinates after the update.
   30042 
   30043         * page/Geoposition.cpp:
   30044         (WebCore::Geoposition::toString):
   30045 
   30046 2009-03-14  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   30047 
   30048         Reviewed by Mark Rowe.
   30049 
   30050         [Gtk] Build fix - pass a Coordinate to Geoposition::create
   30051         https://bugs.webkit.org/show_bug.cgi?id=24603
   30052 
   30053         Gtk build fix per r41650
   30054         https://bugs.webkit.org/show_bug.cgi?id=24506
   30055         Geolocation in Safari differs from the spec, no Coordinates attribute on Position
   30056 
   30057         Pass a Coordinate to Geoposition::create.
   30058 
   30059         * platform/gtk/GeolocationServiceGtk.cpp:
   30060         (WebCore::GeolocationServiceGtk::updatePosition):
   30061 
   30062 2009-03-14  Alexey Proskuryakov  <ap (a] webkit.org>
   30063 
   30064         Reviewed by Darin Adler.
   30065 
   30066         https://bugs.webkit.org/show_bug.cgi?id=24545
   30067         Make cross-site XHR simple request definition match current spec draft
   30068 
   30069         Tests: http/tests/xmlhttprequest/access-control-basic-post-fail-non-simple-content-type.html
   30070                http/tests/xmlhttprequest/access-control-basic-whitelist-request-headers.html
   30071 
   30072         * loader/CrossOriginAccessControl.cpp:
   30073         (WebCore::isOnAccessControlSimpleRequestHeaderWhitelist): Added Content-Language.
   30074         (WebCore::isSimpleCrossOriginAccessRequest): Added HEAD. Restricted content types to those
   30075         that could be sent via form submission.
   30076 
   30077 2009-03-14  Alexey Proskuryakov  <ap (a] webkit.org>
   30078 
   30079         Reviewed by Darin Adler.
   30080 
   30081         https://bugs.webkit.org/show_bug.cgi?id=15172
   30082         object fallback - empty string for first argument of setAttributeNS does not work like null
   30083 
   30084         https://bugs.webkit.org/show_bug.cgi?id=24548
   30085         createElementNS("", name) should create an element in null namespace
   30086 
   30087         Tests: fast/dom/createElementNS-empty-namespace.html
   30088                fast/dom/setAttributeNS-empty-namespace.html
   30089 
   30090         * dom/QualifiedName.h: (WebCore::QualifiedName::QualifiedNameImpl::QualifiedNameImpl):
   30091         Convert empty namespaces to null.
   30092 
   30093 2009-03-13  Mark Rowe  <mrowe (a] apple.com>
   30094 
   30095         Rubber-stamped by Dan Bernstein.
   30096 
   30097         Take advantage of the ability of recent versions of Xcode to easily switch the active
   30098         architecture.
   30099 
   30100         * Configurations/DebugRelease.xcconfig:
   30101 
   30102 2009-03-13  John Abd-El-Malek  <jam (a] google.com>
   30103 
   30104         Reviewed by Darin Fisher.
   30105 
   30106         https://bugs.webkit.org/show_bug.cgi?id=24593
   30107         Added requestorID so we can track the request to its WebView without using frame (which was removed).
   30108 
   30109         * platform/network/chromium/ResourceRequest.h:
   30110         (WebCore::ResourceRequest::ResourceRequest):
   30111         (WebCore::ResourceRequest::requestorID):
   30112         (WebCore::ResourceRequest::setRequestorID):
   30113         (WebCore::ResourceRequest::setTargetType):
   30114         (WebCore::ResourceRequest::policyURL):
   30115         (WebCore::ResourceRequest::setPolicyURL):
   30116         (WebCore::ResourceRequest::requestorPid):
   30117         (WebCore::ResourceRequest::setRequestorPid):
   30118 
   30119 2009-03-13  Mike Belshe  <mike (a] belshe.com>
   30120 
   30121         Reviewed by Dimitri Glazkov.
   30122 
   30123         https://bugs.webkit.org/show_bug.cgi?id=24561
   30124         Add custom V8 bindings for HTMLElementCanvas, Location.
   30125 
   30126         * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp: Added.
   30127         * bindings/v8/custom/V8LocationCustom.cpp: Added.
   30128 
   30129 2009-03-13  Stephen White  <senorblanco (a] chromium.org>
   30130 
   30131         Reviewed by Eric Seidel.
   30132 
   30133         https://bugs.webkit.org/show_bug.cgi?id=24584
   30134 
   30135         Fix transparent text rendering on Chromium.  FontChromiumWin
   30136         was calling beginTransparencyLayer()/endTransparencyLayer(), with
   30137         a TransparencyWin inside to do GDI ClearType rendering over an
   30138         opaque background.  TransparencyWin does its special sauce
   30139         in the destructor, but it was being called too late to be used
   30140         correctly in the layer.  Put the special sauce into a new function,
   30141         composite(), and call that explicitly instead.
   30142 
   30143         * platform/graphics/chromium/FontChromiumWin.cpp:
   30144         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::~TransparencyAwareFontPainter):
   30145         * platform/graphics/chromium/TransparencyWin.cpp:
   30146         (WebCore::TransparencyWin::~TransparencyWin):
   30147         (WebCore::TransparencyWin::composite):
   30148         (WebCore::TransparencyWin::init):
   30149         * platform/graphics/chromium/TransparencyWin.h:
   30150         * rendering/RenderThemeChromiumWin.cpp:
   30151         (WebCore::):
   30152 
   30153 2009-03-13  Mike Belshe  <mike (a] belshe.com>
   30154 
   30155         Reviewed by Dimitri Glazkov.
   30156 
   30157         https://bugs.webkit.org/show_bug.cgi?id=24562
   30158         Add custom implementation for getCSSCanvasContext to V8 bindings.
   30159 
   30160         * bindings/v8/custom/V8DocumentCustom.cpp: Added new method.
   30161 
   30162 2009-03-13  Mike Belshe  <mike (a] belse.com>
   30163 
   30164         Reviewed by Dimitri Glazkov.
   30165 
   30166         https://bugs.webkit.org/show_bug.cgi?id=24580
   30167         Fix query() to match KURL behavior.
   30168 
   30169         * platform/KURLGoogle.cpp:
   30170         (WebCore::KURL::query): remove extra logic around question mark.
   30171 
   30172 2009-03-13  Chris Fleizach  <cfleizach (a] apple.com>
   30173 
   30174         Reviewed by Beth Dakin.
   30175 
   30176         Bug 24474: AX: in multi-body tables, asking for a cell at a specific coordinate can return nil
   30177         https://bugs.webkit.org/show_bug.cgi?id=24474
   30178 
   30179         Test: platform/mac-snowleopard/accessibility/table-multi-bodies.html
   30180 
   30181         * page/AccessibilityTable.cpp:
   30182         (WebCore::AccessibilityTable::cellForColumnAndRow):
   30183 
   30184 2009-03-13  Jian Li  <jianli (a] chromium.org>
   30185 
   30186         Reviewed by Dimitri Glazkov.
   30187 
   30188         https://bugs.webkit.org/show_bug.cgi?id=24589
   30189         Upstream changes to V8 event listeners (Chromium r11133) in order to
   30190         fix worker functionality break in Chromium.
   30191 
   30192         * bindings/v8/V8AbstractEventListener.cpp:
   30193         (WebCore::V8AbstractEventListener::invokeEventHandler):
   30194         (WebCore::V8AbstractEventListener::handleEvent):
   30195         * bindings/v8/V8AbstractEventListener.h:
   30196         * bindings/v8/V8WorkerContextEventListener.cpp:
   30197         (WebCore::V8WorkerContextEventListener::handleEvent):
   30198 
   30199 2009-03-13  Dimitri Glazkov  <dglazkov (a] chromium.org>
   30200 
   30201         Reviewed by Timothy Hatcher.
   30202 
   30203         https://bugs.webkit.org/show_bug.cgi?id=24524
   30204         Introduce ScriptObject and ScriptFunctionCall abstractions.
   30205 
   30206         * GNUmakefile.am: Added ScriptObject and ScriptFunctionCall to project.
   30207         * WebCore.pro: Ditto.
   30208         * WebCore.vcproj/WebCore.vcproj: Ditto.
   30209         * WebCore.xcodeproj/project.pbxproj: Ditto.
   30210         * WebCoreSources.bkl: Ditto.
   30211         * bindings/js/ScriptFunctionCall.cpp: Added.
   30212         * bindings/js/ScriptFunctionCall.h: Added.
   30213         * bindings/js/ScriptObject.cpp: Added.
   30214         * bindings/js/ScriptObject.h: Added.
   30215         * bindings/js/ScriptObjectQuarantine.cpp: Added.
   30216         * bindings/js/ScriptObjectQuarantine.h: Added.
   30217         * inspector/InspectorController.cpp:
   30218         (WebCore::InspectorController::populateScriptObjects): Changed to use InspectorDatabaseResource::bind.
   30219         (WebCore::InspectorController::resetScriptObjects): Changed to use InspectorDatabaseResource::unbind.
   30220         (WebCore::InspectorController::didOpenDatabase): Changed to use InspectorDatabaseResource::unbind.
   30221         * inspector/InspectorController.h: Removed addScriptDatabaseResource and
   30222         removeScriptDatabaseResource declarations.
   30223         * inspector/InspectorDatabaseResource.cpp:
   30224         (WebCore::InspectorDatabaseResource::InspectorDatabaseResource):
   30225         (WebCore::InspectorDatabaseResource::bind): Added.
   30226         (WebCore::InspectorDatabaseResource::unbind): Added.
   30227         * inspector/InspectorDatabaseResource.h: Added bind and unbind declarations.
   30228 
   30229 2009-03-13  Peter Kasting  <pkasting (a] google.com>
   30230 
   30231         Reviewed by Eric Seidel.
   30232 
   30233         https://bugs.webkit.org/show_bug.cgi?id=24467
   30234         Make Skia drawRect() and stroke behavior match CG.
   30235 
   30236         This makes drawRect() ignore the stroke width (like CG does), and
   30237         adds a warning comment about that to the appropriate header.
   30238 
   30239         It also eliminates some hacky code in Skia's stroke preparation,
   30240         which tried to adjust odd-width strokes to fall on pixel boundaries.
   30241         Not only did this not match CG, it wouldn't necessarily work right,
   30242         because there could be other transforms (e.g. full-page zoom) that
   30243         would affect the stroke before it reached the device pixel level.
   30244 
   30245         * platform/graphics/GraphicsContext.h:
   30246         * platform/graphics/skia/GraphicsContextSkia.cpp:
   30247         (WebCore::GraphicsContext::drawRect):
   30248         (WebCore::GraphicsContext::fillRect):
   30249         * platform/graphics/skia/PlatformContextSkia.cpp:
   30250         (PlatformContextSkia::drawRect):
   30251         (PlatformContextSkia::setupPaintForStroking):
   30252 
   30253 2009-03-13  Jian Li  <jianli (a] chromium.org>
   30254 
   30255         Reviewed by Dimitri Glazkov.
   30256 
   30257         https://bugs.webkit.org/show_bug.cgi?id=24583
   30258         Need to change scope of constructor and destructor of V8ObjectEventListener from private
   30259         to protected so that they could be used in its derived class V8WorkerContextEventListener.
   30260 
   30261         * bindings/v8/V8ObjectEventListener.h:
   30262 
   30263 2009-03-13  David Levin  <levin (a] chromium.org>
   30264 
   30265         Reviewed by Dimitri Glazkov.
   30266 
   30267         https://bugs.webkit.org/show_bug.cgi?id=24579
   30268         Many V8*Event* files are misplaced.
   30269 
   30270         This code is infrastructure for supporting the bindings and thus should
   30271         be in the bindings/v8 directory.
   30272 
   30273         * bindings/v8/V8AbstractEventListener.cpp: Renamed from WebCore/bindings/v8/custom/V8AbstractEventListener.cpp.
   30274         * bindings/v8/V8AbstractEventListener.h: Renamed from WebCore/bindings/v8/custom/V8AbstractEventListener.h.
   30275         * bindings/v8/V8LazyEventListener.cpp: Renamed from WebCore/bindings/v8/custom/V8LazyEventListener.cpp.
   30276         * bindings/v8/V8LazyEventListener.h: Renamed from WebCore/bindings/v8/custom/V8LazyEventListener.h.
   30277         * bindings/v8/V8ObjectEventListener.cpp: Renamed from WebCore/bindings/v8/custom/V8ObjectEventListener.cpp.
   30278         * bindings/v8/V8ObjectEventListener.h: Renamed from WebCore/bindings/v8/custom/V8ObjectEventListener.h.
   30279         * bindings/v8/V8WorkerContextEventListener.cpp: Renamed from WebCore/bindings/v8/custom/V8WorkerContextEventListener.cpp.
   30280         * bindings/v8/V8WorkerContextEventListener.h: Renamed from WebCore/bindings/v8/custom/V8WorkerContextEventListener.h.
   30281 
   30282 2009-03-13  Adele Peterson  <adele (a] apple.com>
   30283 
   30284         Reviewed by Justin Garcia.
   30285 
   30286         Fix for <rdar://problem/5089327> Color of quoted content is wrong when pasted inside other quoted content
   30287 
   30288         Test: editing/pasteboard/5089327.html
   30289 
   30290         Handle spans being pasted within a quoted region in the same way we handle "paste as quotation" content.
   30291 
   30292         * editing/ReplaceSelectionCommand.cpp:
   30293         (WebCore::handleStyleSpansBeforeInsertion):
   30294         (WebCore::ReplaceSelectionCommand::handleStyleSpans):
   30295 
   30296 2009-03-13  Greg Bolsinga  <bolsinga (a] apple.com>
   30297 
   30298         Reviewed by Simon Fraser.
   30299 
   30300         Update Geolocation perimission dialogs to be asynchronous.
   30301         https://bugs.webkit.org/show_bug.cgi?id=24505
   30302 
   30303         Geolocation now requests permission from the Chrome asynchronously.
   30304         The Chrome is passed the Geolocation object, and the Chrome sets the permission
   30305         on the Geolocation. Geolocation also tracks if the Chrome should clear its cache
   30306         of SecurityOrigins with geolocation permission. This is so that the GeolocationService
   30307         can inform the Chrome of its request, and the Chrome is also free to implement its
   30308         own policy.
   30309         
   30310         * WebCore.base.exp:
   30311         * WebCore.xcodeproj/project.pbxproj:
   30312         * page/Chrome.cpp:
   30313         (WebCore::Chrome::requestGeolocationPermissionForFrame):
   30314         * page/Chrome.h:
   30315         * page/ChromeClient.h:
   30316         (WebCore::ChromeClient::requestGeolocationPermissionForFrame):
   30317         * page/Geolocation.cpp:
   30318         (WebCore::Geolocation::Geolocation):
   30319         (WebCore::Geolocation::getCurrentPosition):
   30320         (WebCore::Geolocation::watchPosition):
   30321         (WebCore::Geolocation::setIsAllowed):
   30322         (WebCore::Geolocation::displayChallengeIfNecessary):
   30323         (WebCore::Geolocation::geolocationServicePositionChanged):
   30324         * page/Geolocation.h:
   30325         (WebCore::Geolocation::isAllowed):
   30326         (WebCore::Geolocation::setShouldClearCache):
   30327         (WebCore::Geolocation::shouldClearCache):
   30328         (WebCore::Geolocation::):
   30329 
   30330 2009-03-13  Anders Carlsson  <andersca (a] apple.com>
   30331 
   30332         Reviewed by Dan Bernstein.
   30333 
   30334         <rdar://problem/6610666> Revise the Cocoa event model text API
   30335         
   30336         Add a NPCocoaEventTextInput event type. Remove the text input variables.
   30337         
   30338         * bridge/npapi.h:
   30339         (_NPCocoaEvent::):
   30340 
   30341 2009-03-13  Kevin Decker  <kdecker (a] apple.com>
   30342 
   30343         Reviewed by Anders.
   30344 
   30345         <rdar://problem/6630340> REGRESSION (39114-39115): Unity Web Player no longer works if Flip4Mac is also installed
   30346         
   30347         The code assumed if we have a plug-in that supports "application/x-oleobject" we should always prefer the object tag
   30348         over of an embed tag. That assumption can cause the Mac platform to load the wrong plug-in, as Flip4Mac claims supports
   30349         for x-oleobject.
   30350         
   30351         * rendering/RenderPartObject.cpp:
   30352         (WebCore::shouldUseEmbedDescendant): Made the Mac platform always return true here. 
   30353 
   30354 2009-03-13  Jian Li  <jianli (a] chromium.org>
   30355 
   30356         Reviewed by Dimitri Glazkov.
   30357 
   30358         https://bugs.webkit.org/show_bug.cgi?id=24559
   30359         Need to port JSC fix (r41565) to V8 in order to fix layout test onload-single-line-comment.html.
   30360 
   30361         * bindings/v8/custom/V8LazyEventListener.cpp:
   30362         (WebCore::V8LazyEventListener::getListenerFunction):
   30363         (WebCore::V8LazyEventListener::getWrappedListenerFunction):
   30364 
   30365 2009-03-13  Jian Li  <jianli (a] chromium.org>
   30366 
   30367         Reviewed by Dimitri Glazkov.
   30368 
   30369         https://bugs.webkit.org/show_bug.cgi?id=24557
   30370         This is to support running multiple workers in a single worker process in chromium.
   30371 
   30372         * bindings/v8/custom/V8WorkerContextEventListener.cpp:
   30373         (WebCore::V8WorkerContextEventListener::handleEvent):
   30374         Add locker to v8 event listener of worker context.
   30375 
   30376 2009-03-13  Alexey Proskuryakov  <ap (a] webkit.org>
   30377 
   30378         Reviewed by Sam Weinig.
   30379 
   30380         https://bugs.webkit.org/show_bug.cgi?id=24575
   30381         XHR response is incorrect after a network error.
   30382 
   30383         Tests: http/tests/xmlhttprequest/cross-site-denied-response-sync-2.html
   30384                http/tests/xmlhttprequest/cross-site-denied-response-sync.html
   30385                http/tests/xmlhttprequest/cross-site-denied-response.html
   30386 
   30387         * xml/XMLHttpRequest.cpp:
   30388         (WebCore::XMLHttpRequest::networkError): Call internalAbort() to fully reset the request.
   30389         (WebCore::XMLHttpRequest::didFailRedirectCheck): No need to call internalAbort() here. Note
   30390         that since internalAbort() can drop GC protection, it is not safe to use the object after
   30391         this call.
   30392         (WebCore::XMLHttpRequest::didReceiveData): Check that the request wasn't aborted, and
   30393         return early if it was. This can happen during sync requests, as the loader does not know
   30394         that it was aborted, and just synthesizes all callbacks.
   30395 
   30396 2009-03-13  Adam Bergkvist <adam.bergkvist (a] ericsson.com>
   30397 
   30398         Reviewed by Alexey Proskuryakov.
   30399 
   30400         https://bugs.webkit.org/show_bug.cgi?id=3547
   30401         XMLHttpRequest.statusText returns always "OK"
   30402 
   30403         Covered by existing tests (which now pass on all platforms but Mac).
   30404 
   30405         * xml/XMLHttpRequest.cpp:
   30406         (WebCore::XMLHttpRequest::statusText): Return ResourceResponse status text. It is now up
   30407         to each platform to correctly set the status text or set it to "OK" to retain current
   30408         behavior.
   30409 
   30410 2009-03-13  Adam Bergkvist <adam.bergkvist (a] ericsson.com>
   30411 
   30412         Reviewed by Alexey Proskuryakov.
   30413 
   30414         https://bugs.webkit.org/show_bug.cgi?id=24349
   30415         [QT] HTTP status text is never set
   30416 
   30417         Set HTTP status text to the reason phrase attribute of QNetworkReply.
   30418 
   30419         * platform/network/qt/QNetworkReplyHandler.cpp:
   30420         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
   30421 
   30422 2009-03-12  Simon Fraser  <simon.fraser (a] apple.com>
   30423 
   30424         Reviewed by Mark Rowe
   30425 
   30426         <rdar://problem/6622300>: Reproducible crash on
   30427         <http://www.editgrid.com/explore/tnc/dave/FusionChart%3A_Candlestick>
   30428         
   30429         Prevent CSSStyleSheet::checkLoaded() writing to freed memory when it gets
   30430         deleted from under itself. The sheetLoaded() notification can allow scripts
   30431         to run via HTMLTokenizer::executeScriptsWaitingForStylesheets(),
   30432         which can cause the last ref to the CSSStyleSheet to be released.
   30433 
   30434         * css/CSSStyleSheet.cpp:
   30435         (WebCore::CSSStyleSheet::checkLoaded):
   30436 
   30437 2009-03-12  Kevin Ollivier  <kevino (a] theolliviers.com>
   30438 
   30439         wx build fix. Allow make-generated-sources.sh to pass args down to DerivedSources.make
   30440 
   30441         * make-generated-sources.sh:
   30442 
   30443 2009-03-12  Adam Treat  <adam.treat (a] torchmobile.com>
   30444 
   30445         Reviewed by Oliver Hunt.
   30446 
   30447         https://bugs.webkit.org/show_bug.cgi?id=24498
   30448         Fix the Qt port to use the same algorithm for drawing dashed and dotted
   30449         borders as the other ports.  This makes the Qt port pixel-for-pixel perfect
   30450         compared to border drawing with Apple's canonical mac port and much closer
   30451         to konqueror and firefox behavior.
   30452 
   30453         * platform/graphics/qt/GraphicsContextQt.cpp:
   30454         (WebCore::GraphicsContext::drawLine):
   30455 
   30456 2009-02-26  Eric Seidel  <eric (a] webkit.org>
   30457 
   30458         Reviewed by Justin Garcia.
   30459 
   30460         Clean up DOMSelection to use some helper functions
   30461         making the code smaller, and less error-prone.
   30462         https://bugs.webkit.org/show_bug.cgi?id=19221
   30463 
   30464         I tried moving DOMSelection off of rangeCompliantEquivalent
   30465         but failed.  VisibleSelection holds positions like (table, 1) to mean
   30466         "after the table".
   30467 
   30468         * page/DOMSelection.cpp:
   30469         (WebCore::DOMSelection::visibleSelection):
   30470         (WebCore::anchorPosition):
   30471         (WebCore::focusPosition):
   30472         (WebCore::basePosition):
   30473         (WebCore::extentPosition):
   30474         (WebCore::DOMSelection::anchorNode):
   30475         (WebCore::DOMSelection::anchorOffset):
   30476         (WebCore::DOMSelection::focusNode):
   30477         (WebCore::DOMSelection::focusOffset):
   30478         (WebCore::DOMSelection::baseNode):
   30479         (WebCore::DOMSelection::baseOffset):
   30480         (WebCore::DOMSelection::extentNode):
   30481         (WebCore::DOMSelection::extentOffset):
   30482         * page/DOMSelection.h:
   30483 
   30484 2009-03-12  Dmitry Titov  <dimich (a] chromium.org>
   30485 
   30486         Reviewed by Dimitri Glazkov.
   30487 
   30488         https://bugs.webkit.org/show_bug.cgi?id=24563
   30489         Change ResourceRequest to be a struct rather then a class to match other declarations.
   30490 
   30491         * platform/network/chromium/ResourceRequest.h:
   30492 
   30493 2009-03-12  David Levin  <levin (a] chromium.org>
   30494 
   30495         Reviewed by Darin Fisher.
   30496 
   30497         Bug 24530: width100percent-searchfield.html should be fixed for chromium.
   30498         <https://bugs.webkit.org/show_bug.cgi?id=24530>
   30499 
   30500         Compensate for r39924 in chromium, which broke LayoutTests/fast/replaced/width100percent-searchfield.html
   30501 
   30502         * css/themeChromiumWin.css: Added.
   30503         Overrides the changes to start supporting input[type="search"] on Windows (since
   30504         Chromium doesn't do anything special for this).
   30505 
   30506         * rendering/RenderThemeChromiumWin.cpp:
   30507         (WebCore::supportsFocus):
   30508         (WebCore::RenderThemeChromiumWin::extraDefaultStyleSheet):
   30509         (WebCore::RenderThemeChromiumWin::determineState):
   30510         (WebCore::RenderThemeChromiumWin::getThemeData):
   30511 
   30512 2009-03-12  Greg Bolsinga  <bolsinga (a] apple.com>
   30513 
   30514         Reviewed by Antti Koivisto.
   30515 
   30516         https://bugs.webkit.org/show_bug.cgi?id=24506
   30517         Geolocation in Safari differs from the spec, no Coordinates attribute on Position
   30518         
   30519         Get up to date.
   30520 
   30521         * DerivedSources.make:
   30522         * GNUmakefile.am:
   30523         * WebCore.pro:
   30524         * WebCore.scons:
   30525         * WebCore.vcproj/WebCore.vcproj:
   30526         * WebCore.xcodeproj/project.pbxproj:
   30527         * WebCoreSources.bkl:
   30528         * bindings/js/JSGeolocationCustom.cpp:
   30529         (WebCore::createPositionOptions):
   30530         * page/Coordinates.cpp: Added.
   30531         (WebCore::Coordinates::toString):
   30532         * page/Coordinates.h: Added.
   30533         (WebCore::Coordinates::create):
   30534         (WebCore::Coordinates::latitude):
   30535         (WebCore::Coordinates::longitude):
   30536         (WebCore::Coordinates::altitude):
   30537         (WebCore::Coordinates::accuracy):
   30538         (WebCore::Coordinates::altitudeAccuracy):
   30539         (WebCore::Coordinates::heading):
   30540         (WebCore::Coordinates::speed):
   30541         (WebCore::Coordinates::Coordinates):
   30542         * page/Coordinates.idl: Added.
   30543         * page/Geoposition.cpp:
   30544         (WebCore::Geoposition::toString):
   30545         * page/Geoposition.h:
   30546         (WebCore::Geoposition::create):
   30547         (WebCore::Geoposition::coords):
   30548         (WebCore::Geoposition::Geoposition):
   30549         * page/Geoposition.idl:
   30550         * page/PositionOptions.h:
   30551         (WebCore::PositionOptions::create):
   30552         (WebCore::PositionOptions::maximumAge):
   30553         (WebCore::PositionOptions::setMaximumAge):
   30554         (WebCore::PositionOptions::PositionOptions):
   30555         * platform/mac/GeolocationServiceMac.mm:
   30556         (-[WebCoreCoreLocationObserver locationManager:didUpdateToLocation:fromLocation:]):
   30557 
   30558 2009-03-12  Dimitri Glazkov  <dglazkov (a] chromium.org>
   30559 
   30560         Reviewed by Darin Fisher.
   30561 
   30562         https://bugs.webkit.org/show_bug.cgi?id=24496
   30563         Fix console logging of non-string values by coercing the argument to
   30564         a string, for V8 bindings.
   30565 
   30566         Test: fast/js/console-non-string-values.html
   30567 
   30568         * bindings/v8/ScriptValue.cpp: Added toString method.
   30569         (WebCore::ScriptValue::toString):
   30570         * bindings/v8/ScriptValue.h: Added PlatformString, ScriptState includes
   30571             and toString declaration.
   30572 
   30573 2009-03-12  Darin Fisher  <darin (a] chromium.org>
   30574 
   30575         Reviewed by Dimitri Glazkov.
   30576 
   30577         Eliminate ChromiumBridge::uiResourceProtocol
   30578         https://bugs.webkit.org/show_bug.cgi?id=24558
   30579 
   30580         * platform/chromium/ChromiumBridge.h:
   30581 
   30582 2009-03-12  Greg Bolsinga  <bolsinga (a] apple.com>
   30583 
   30584         Reviewed by Simon Fraser.
   30585 
   30586         Missing breaks in switch statement
   30587         https://bugs.webkit.org/show_bug.cgi?id=24556
   30588 
   30589         * platform/mac/GeolocationServiceMac.mm:
   30590         (-[WebCoreCoreLocationObserver locationManager:didFailWithError:]):
   30591 
   30592 2009-03-12  Darin Fisher  <darin (a] chromium.org>
   30593 
   30594         Reviewed by Dimitri Glazkov.
   30595 
   30596         https://bugs.webkit.org/show_bug.cgi?id=24554
   30597         Remove some unused functions from ChromiumBridge.
   30598 
   30599         * platform/chromium/ChromiumBridge.h:
   30600 
   30601 2009-03-02  Eric Seidel  <eric (a] webkit.org>
   30602 
   30603         Reviewed by Darin Fisher and Justin Garcia.
   30604 
   30605         Safari crashes during drag and drop in Google presentations
   30606         due to mutation event handlers removing DOM content during insertNode
   30607         https://bugs.webkit.org/show_bug.cgi?id=22634
   30608 
   30609         Added a bunch of "null" checks to make sure nodes are still
   30610         in the document before we operate on them.  This is an
   30611         inelegant solution, but it's the best we have for now.
   30612         
   30613         Test: editing/selection/crash-on-drag-with-mutation-events.html
   30614 
   30615         * editing/CompositeEditCommand.cpp:
   30616         (WebCore::CompositeEditCommand::insertNodeAt):
   30617         * editing/ReplaceSelectionCommand.cpp:
   30618         (WebCore::ReplaceSelectionCommand::doApply):
   30619 
   30620 2009-03-12  Dimitri Glazkov  <dglazkov (a] chromium.org>
   30621 
   30622         Reviewed by Adam Treat.
   30623 
   30624         https://bugs.webkit.org/show_bug.cgi?id=24525
   30625         REGRESSION: Inspector window doesn't close when inspected page is
   30626         destroyed. This is a revert of r41158, which became unnecessary when
   30627         InspectorController became ref-counted in r41462.
   30628 
   30629         * inspector/InspectorController.cpp:
   30630         (WebCore::InspectorController::inspectedPageDestroyed): Reset m_inspectedPage
   30631             after calling close().
   30632         (WebCore::InspectorController::stopUserInitiatedProfiling): Remove
   30633             m_inspectedPage check guard around profile logic.
   30634 
   30635 2009-03-12  Peter Kasting  <pkasting (a] google.com>
   30636 
   30637         Reviewed by Darin Fisher.
   30638 
   30639         https://bugs.webkit.org/show_bug.cgi?id=24502
   30640         Make horizontal scrolling on Windows always go the correct direction.
   30641 
   30642         * platform/PlatformWheelEvent.h:
   30643         * platform/win/WheelEventWin.cpp:
   30644         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   30645 
   30646 2009-03-12  Dimitri Glazkov  <dglazkov (a] chromium.org>
   30647 
   30648         Reviewed by Simon Fraser.
   30649 
   30650         https://bugs.webkit.org/show_bug.cgi?id=24496
   30651         Fix console logging of non-string values by coercing the argument to
   30652         a string.
   30653 
   30654         Test: fast/js/console-non-string-values.html
   30655 
   30656         * bindings/js/ScriptValue.cpp: Removed PlatformString include.
   30657         * bindings/js/ScriptValue.h: Added toString method.
   30658         (WebCore::ScriptValue::toString):
   30659         * page/Console.cpp:
   30660         (WebCore::getFirstArgumentAsString): Changed firstArgumentAsString method to use
   30661             ScriptValue::toString.
   30662         (WebCore::Console::addMessage): added extra ScriptState argument to callsite.
   30663         (WebCore::Console::count): Ditto.
   30664 
   30665 2009-03-12  Simon Fraser  <simon.fraser (a] apple.com>
   30666 
   30667         Reviewed by Adele Peterson.
   30668         
   30669         https://bugs.webkit.org/show_bug.cgi?id=24508
   30670         
   30671         Fix updating of text field with placeholder text when value is set
   30672         by ensuring that updatePlaceholderVisibility() is called after
   30673         the value has been updated, not before.
   30674 
   30675         Test: fast/forms/placeholder-set-value.html
   30676 
   30677         * html/HTMLInputElement.cpp:
   30678         (WebCore::HTMLInputElement::setValue):
   30679 
   30680 2009-03-12  Simon Fraser  <simon.fraser (a] apple.com>
   30681 
   30682         Reviewed by Dave Hyatt
   30683         
   30684         https://bugs.webkit.org/show_bug.cgi?id=24552
   30685         
   30686         Hit testing involving normal flow, self-painting layers (e.g. reflections)
   30687         was broken because it was not null-testing the result of hitTestLayer(),
   30688         so bailing early with a nil hit layer.
   30689 
   30690         Test: fast/layers/normal-flow-hit-test.html
   30691 
   30692         * rendering/RenderLayer.cpp:
   30693         (WebCore::RenderLayer::hitTestLayer):
   30694 
   30695 2009-03-12  Dimitri Glazkov  <dglazkov (a] chromium.org>
   30696 
   30697         Reviewed by Cameron Zwarich.
   30698 
   30699         Removed zero-sized files, left over from improperly applied patch.
   30700 
   30701         * platform/graphics/chromium/ThemeHelperChromiumWin.cpp: Removed.
   30702         * platform/graphics/chromium/ThemeHelperChromiumWin.h: Removed.
   30703 
   30704 2009-03-12  Adam Treat  <adam.treat (a] torchmobile.com>
   30705 
   30706         Reviewed by George Staikos.
   30707 
   30708         Do not ignore alpha color in optimization.  Hard to believe, but there
   30709         are websites that fill the entire page with a tiled image consisting of
   30710         nothing but a 100% transparent 1x1 image. <cough>orbitz.com</cough>
   30711 
   30712         * platform/graphics/qt/ImageQt.cpp:
   30713         (WebCore::BitmapImage::checkForSolidColor):
   30714 
   30715 2009-03-12  Julien Chaffraix  <jchaffraix (a] webkit.org>
   30716 
   30717         Reviewed by Darin Adler.
   30718 
   30719         Bug 24110: cloneNode should call cloneElement and not the reverse
   30720 
   30721         - Splitted the code from cloneNode into cloneElementWithChildren and cloneElementWithChildren.
   30722           Now cloneNode calls one of the 2 previous methods.
   30723 
   30724         - Renamed cloneElement to cloneElementWithoutChildren as it was the previous behaviour.
   30725 
   30726         - Moved cloneNode to the Element private section so that WebCore callers cannot use it.
   30727 
   30728         - Removed Element::cloneNode usage through WebCore.
   30729 
   30730         * dom/Element.cpp:
   30731         (WebCore::Element::cloneNode): Moved to Element's private section and it
   30732         now calls the two next methods.
   30733         (WebCore::Element::cloneElementWithChildren): Added.
   30734         (WebCore::Element::cloneElementWithoutChildren): Renamed from cloneElement
   30735         to avoid ambiguity.
   30736         * dom/Element.h:
   30737 
   30738         * editing/ApplyStyleCommand.cpp:
   30739         (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded): Changed call to cloneElement
   30740         to call to cloneElementWithoutChildren.
   30741         * editing/BreakBlockquoteCommand.cpp:
   30742         (WebCore::BreakBlockquoteCommand::doApply): Ditto.
   30743         * editing/IndentOutdentCommand.cpp:
   30744         (WebCore::IndentOutdentCommand::indentRegion): Ditto.
   30745         * editing/InsertParagraphSeparatorCommand.cpp:
   30746         (WebCore::InsertParagraphSeparatorCommand::doApply): Ditto.
   30747         * editing/ModifySelectionListLevel.cpp:
   30748         (WebCore::IncreaseSelectionListLevelCommand::doApply): Ditto.
   30749         * editing/SplitElementCommand.cpp:
   30750         (WebCore::SplitElementCommand::doApply): Ditto.
   30751         * editing/markup.cpp:
   30752         (WebCore::createFragmentFromText): Ditto.
   30753         * svg/SVGUseElement.cpp:
   30754         (WebCore::SVGUseElement::buildShadowTree): Ditto.
   30755         (WebCore::SVGUseElement::expandUseElementsInShadowTree): Ditto.
   30756 
   30757 2009-03-12  Dirk Schulze  <krit (a] webkit.org>
   30758 
   30759         Reviewed by Oliver Hunt.
   30760 
   30761         Fixed a crash on the 1x1 pixel check for background image in gtk.
   30762         We need to load the image first and need to be sure that the image
   30763         is not null before checking the type. 
   30764 
   30765         * platform/graphics/cairo/ImageCairo.cpp:
   30766         (WebCore::BitmapImage::checkForSolidColor):
   30767 
   30768 2009-03-12  Xan Lopez  <xlopez (a] igalia.com>
   30769 
   30770         Reviewed by Alexey Proskuryakov.
   30771 
   30772         https://bugs.webkit.org/show_bug.cgi?id=24544
   30773         Rename setUrl to setURL
   30774 
   30775         Use proper case for setUrl method, rename it to setURL.
   30776 
   30777         * platform/network/ResourceResponseBase.cpp:
   30778         (WebCore::ResourceResponseBase::adopt):
   30779         * platform/network/ResourceResponseBase.h:
   30780         * platform/network/curl/ResourceHandleManager.cpp:
   30781         (WebCore::writeCallback):
   30782         (WebCore::headerCallback):
   30783         * platform/network/soup/ResourceHandleSoup.cpp:
   30784         (WebCore::fillResponseFromMessage):
   30785         (WebCore::queryInfoCallback):
   30786 
   30787 2009-03-12  Xan Lopez  <xlopez (a] igalia.com>
   30788 
   30789         Reviewed by Alexey Proskuryakov.
   30790 
   30791         https://bugs.webkit.org/show_bug.cgi?id=24519
   30792         [GTK] Use two argument KURL ctor in ResourceHandleSoup
   30793 
   30794         Use two argument KURL ctor, the single argument ctor expects its
   30795         input to be the output of a previous KURL::parse call, which is
   30796         not the case here.
   30797 
   30798         * platform/network/soup/ResourceHandleSoup.cpp:
   30799         (WebCore::fillResponseFromMessage):
   30800         (WebCore::queryInfoCallback):
   30801 
   30802 2009-03-11  Jon Honeycutt  <jhoneycutt (a] apple.com>
   30803 
   30804         Fix for <rdar://6418681>
   30805         https://bugs.webkit.org/show_bug.cgi?id=22644
   30806 
   30807         Reviewed by Steve Falkenburg.
   30808 
   30809         * plugins/win/PluginPackageWin.cpp:
   30810         (WebCore::PluginPackage::isPluginBlacklisted): Add the Citrix ICA
   30811         Client plug-in to the blacklist; it requires a Mozilla-based browser.
   30812 
   30813 2009-03-12  Oliver Hunt  <oliver (a] apple.com>
   30814 
   30815         Reviewed by NOBODY (build fix).
   30816 
   30817         build fix.
   30818 
   30819         * html/CanvasRenderingContext2D.h:
   30820 
   30821 2009-03-11  Oliver Hunt  <oliver (a] apple.com>
   30822 
   30823         Reviewed by Adele Peterson.
   30824 
   30825         <rdar://problem/6673852> Widget "Simple World Clock" does not display with Safari 4
   30826 
   30827         A number of dashboard widgets rely on canvas failing silently when given invalid
   30828         colors for gradient stops, but both the spec and firefox throw exceptions here.
   30829         So we work around this by creating a dashboard quirk that will only suppress the
   30830         exception in dashboard compatibility mode.
   30831 
   30832         Test: fast/canvas/canvas-gradient-addStop-error.html
   30833 
   30834         * html/CanvasGradient.cpp:
   30835         (WebCore::CanvasGradient::CanvasGradient):
   30836         (WebCore::CanvasGradient::addColorStop):
   30837         * html/CanvasGradient.h:
   30838         (WebCore::CanvasGradient::setDashboardCompatibilityMode):
   30839         * html/CanvasRenderingContext2D.cpp:
   30840         (WebCore::CanvasRenderingContext2D::prepareGradientForDashboard):
   30841         (WebCore::CanvasRenderingContext2D::createLinearGradient):
   30842         (WebCore::CanvasRenderingContext2D::createRadialGradient):
   30843         * html/CanvasRenderingContext2D.h:
   30844 
   30845 2009-03-11  David Kilzer  <ddkilzer (a] apple.com>
   30846 
   30847         Clarify comments regarding order of FEATURE_DEFINES
   30848 
   30849         Rubber-stamped by Mark Rowe.
   30850 
   30851         * Configurations/WebCore.xcconfig: Added warning about the
   30852         consequences when FEATURE_DEFINES are not kept in sync.
   30853 
   30854 2009-03-11  Gustavo Noronha Silva  <gns (a] gnome.org>
   30855 
   30856         Reviewed by Holger Freyther.
   30857 
   30858         https://bugs.webkit.org/show_bug.cgi?id=24515
   30859         [GTK] soup backend should use GMappedFile instead of mmap directly
   30860 
   30861         Rewrite mmap code used to upload files to use GMappedFile, so that
   30862         it is platform-independent.
   30863 
   30864         * platform/network/soup/ResourceHandleSoup.cpp:
   30865         (WebCore::ResourceHandle::startHttp):
   30866 
   30867 2009-03-11  Dan Bernstein  <mitz (a] apple.com>
   30868 
   30869         Reviewed by Darin Adler.
   30870 
   30871         - WebCore part of fixing <rdar://problem/3919124> Thai text selection
   30872           in Safari is incorrect
   30873 
   30874         Test: platform/mac/editing/selection/word-thai.html
   30875 
   30876         Tested on Mac, but should work on all ICU platforms (or more precisely
   30877         on all platforms that implement
   30878         WTF::Unicode::hasLineBreakingPropertyComplexContext() correctly).
   30879 
   30880         * editing/TextIterator.cpp:
   30881         (WebCore::BackwardsCharacterIterator::BackwardsCharacterIterator):
   30882         Added.
   30883         (WebCore::BackwardsCharacterIterator::range): Added.
   30884         (WebCore::BackwardsCharacterIterator::advance): Added.
   30885 
   30886         * editing/TextIterator.h: Added BackwardsCharacterIterator with the
   30887         minimal functionality required for this patch.
   30888         (WebCore::BackwardsCharacterIterator::atEnd): Added.
   30889 
   30890         * editing/visible_units.cpp:
   30891         (WebCore::firstNonComplexContextLineBreak): Added this helper function
   30892         that returns the index of the first character in the string whose
   30893         Unicode line breaking property value is not SA ("Complex Context"), or
   30894         the length of the string if there is no such character.
   30895         (WebCore::lastNonComplexContextLineBreak): Added this helper function
   30896         that returns the index of the last character in the string whose
   30897         Unicode line breaking property value is not SA ("Complex Context"), or
   30898         -1 if there is no such character.
   30899         (WebCore::previousBoundary): Changed the signature of the search
   30900         function to include an offset parameter. Renamed the 'exception' local
   30901         variable to 'ec' and changed its type to ExceptionCode. Extend the
   30902         string forwards until the first character with Unicode line breaking
   30903         property value other than SA. This gives the boundary search function
   30904         enough context in the forward direction. Changed to use a
   30905         BackwardsCharacterIterator for translating the backwards offset into
   30906         a position.
   30907         (WebCore::nextBoundary): Changed the signature of the search
   30908         function to include an offset parameter. Extend the string backwards
   30909         until the first character with Unicode line breaking property value
   30910         other than SA. This gives the boundary search function enough context in
   30911         the backwards direction. Restricted the workaround for <rdar://5192593>
   30912         only to the line break case, because it was causing an extra character
   30913         to be selected following a word that ended with a combining mark.
   30914         (WebCore::startWordBoundary): Added an offset parameter. Check that
   30915         going backwards from the given offset, there is a character with Unicode
   30916         line breaking property value other than SA, and otherwise return 0 to
   30917         request more context.
   30918         (WebCore::endWordBoundary): Similar, but in reverse.
   30919         (WebCore::previousWordPositionBoundary): Similar.
   30920         (WebCore::nextWordPositionBoundary): Similar.
   30921         (WebCore::startSentenceBoundary): Updated for the new search function
   30922         signature.
   30923         (WebCore::endSentenceBoundary): Ditto.
   30924         (WebCore::previousSentencePositionBoundary): Ditto.
   30925         (WebCore::nextSentencePositionBoundary): Ditto.
   30926 
   30927 2009-03-11  Darin Adler  <darin (a] apple.com>
   30928 
   30929         Reviewed by Mark Rowe.
   30930 
   30931         Don't use "::" in thread names because it is ugly!
   30932 
   30933         * loader/icon/IconDatabase.cpp:
   30934         (WebCore::IconDatabase::open): Use "WebCore: " instead of "WebCore::".
   30935         * platform/network/cf/ResourceHandleCFNet.cpp:
   30936         (WebCore::ResourceHandle::loaderRunLoop): Call this "WebCore: CFNetwork Loader" to make
   30937         it clear this is a WebCore-created thread.
   30938         * storage/DatabaseThread.cpp:
   30939         (WebCore::DatabaseThread::start): Use "WebCore: " instead of "WebCore::".
   30940         * storage/LocalStorageThread.cpp:
   30941         (WebCore::LocalStorageThread::start): Use "WebCore: " instead of "WebCore::".
   30942         * workers/WorkerThread.cpp:
   30943         (WebCore::WorkerThread::start): Use "WebCore: " instead of "WebCore::".
   30944 
   30945 2009-03-11  Mark Rowe  <mrowe (a] apple.com>
   30946 
   30947         Rubber-stamped by Darin Adler.
   30948 
   30949         <rdar://problem/6653286> WebCore's implementation of screenIsMonochrome is needlessly complex
   30950 
   30951         * platform/mac/PlatformScreenMac.mm:
   30952         (WebCore::screenIsMonochrome): Return false.
   30953 
   30954 2009-03-11  Beth Dakin  <bdakin (a] apple.com>
   30955 
   30956         Reviewed by Dan Bernstein.
   30957 
   30958         Fix for https://bugs.webkit.org/show_bug.cgi?id=14749 percentage 
   30959         top value on position:relative child not calculated correctly if 
   30960         parent has percentage height
   30961         - and corresponding -
   30962         <rdar://problem/6172925>
   30963 
   30964         * rendering/RenderBoxModelObject.cpp:
   30965         (WebCore::RenderBoxModelObject::relativePositionOffsetY):
   30966 
   30967 2009-03-11  Jian Li  <jianli (a] chromium.org>
   30968 
   30969         Reviewed by Dimitri Glazkov.
   30970 
   30971         Implement ScriptValue::hasNoValue for V8.
   30972         https://bugs.webkit.org/show_bug.cgi?id=24507
   30973 
   30974         * bindings/v8/ScriptValue.h:
   30975         (WebCore::ScriptValue::hasNoValue):
   30976 
   30977 2009-03-11  David Levin  <levin (a] chromium.org>
   30978 
   30979         Reviewed by Dimitri Glazkov.
   30980 
   30981         Bug 24459: Add v8 bindings for event.
   30982         <https://bugs.webkit.org/show_bug.cgi?id=24459>
   30983 
   30984         Adding custom event bindings.
   30985 
   30986         * bindings/v8/custom/V8AbstractEventListener.cpp: Added.
   30987         * bindings/v8/custom/V8AbstractEventListener.h: Added.
   30988         * bindings/v8/custom/V8AttrCustom.cpp:
   30989         Fixed messed up copyright header.
   30990         * bindings/v8/custom/V8CustomEventListener.cpp: Added.
   30991         * bindings/v8/custom/V8CustomEventListener.h:
   30992         Replaced forwarding header with the real implementation.
   30993         * bindings/v8/custom/V8ElementCustom.cpp:
   30994         * bindings/v8/custom/V8LazyEventListener.cpp: Added.
   30995         * bindings/v8/custom/V8LazyEventListener.h: Added.
   30996         * bindings/v8/custom/V8ObjectEventListener.cpp: Added.
   30997         * bindings/v8/custom/V8ObjectEventListener.h: Added.
   30998         * bindings/v8/custom/V8WorkerContextEventListener.cpp: Added.
   30999         * bindings/v8/custom/V8WorkerContextEventListener.h: Added.
   31000 
   31001 2009-03-11  Darin Fisher  <darin (a] chromium.org>
   31002 
   31003         Reviewed by Dimitri Glazkov.
   31004 
   31005         https://bugs.webkit.org/show_bug.cgi?id=24521
   31006         Add some missing includes for the non-JSC build.
   31007 
   31008         * platform/text/PlatformString.h: added OwnPtr.h
   31009         * xml/XMLHttpRequest.cpp: added SecurityOrigin.h
   31010 
   31011 2009-03-11  Simon Fraser  <simon.fraser (a] apple.com>
   31012 
   31013         Reviewed by Darin Adler
   31014 
   31015         https://bugs.webkit.org/show_bug.cgi?id=24531
   31016         
   31017         Make sure that AnimationControllerPrivate::getAnimatedStyleForRenderer() never
   31018         returns a null style if it has a valid renderer, which could happen if a
   31019         CompositeAnimation existed, but wasn't running any animations or transitions.
   31020 
   31021         * page/animation/AnimationController.cpp:
   31022         (WebCore::AnimationControllerPrivate::getAnimatedStyleForRenderer):
   31023 
   31024 2009-03-11  Simon Fraser  <simon.fraser (a] apple.com>
   31025 
   31026         Fix Scons build. Patch from Alexander Guy.
   31027 
   31028         * WebCore.scons:
   31029 
   31030 2009-03-11  Simon Fraser  <simon.fraser (a] apple.com>
   31031 
   31032         Reviewed by Dan Bernstein
   31033        
   31034         https://bugs.webkit.org/show_bug.cgi?id=23093
   31035         
   31036         When the cancel button in the search field is shown or hidden,
   31037         we need to explicitly setStyle() on the cancel button's renderer,
   31038         to ensure that repaint happens. Changing the style without telling
   31039         the renderer won't work.
   31040 
   31041         Test: fast/repaint/search-field-cancel.html
   31042 
   31043         * rendering/RenderTextControlSingleLine.cpp:
   31044         (WebCore::RenderTextControlSingleLine::subtreeHasChanged):
   31045         (WebCore::RenderTextControlSingleLine::updateFromElement):
   31046         (WebCore::RenderTextControlSingleLine::createCancelButtonStyle):
   31047         (WebCore::RenderTextControlSingleLine::updateCancelButtonVisibility):
   31048         (WebCore::RenderTextControlSingleLine::visibilityForCancelButton):
   31049         * rendering/RenderTextControlSingleLine.h:
   31050 
   31051 2009-03-11  Hironori Bono  <hbono (a] chromium.org>
   31052 
   31053         Reviewed by Alexey Proskuryakov.
   31054 
   31055         https://bugs.webkit.org/show_bug.cgi?id=15790
   31056         Ligatures aren't accounted for when manipulating VisiblePositions
   31057 
   31058         Changed cursorMovementIterator rules to prevent a cursor from moving in the middle of an
   31059         Indic ligature which uses a virama sign.
   31060         
   31061         Test: editing/deleting/skip-virama-001.html
   31062 
   31063         * platform/text/TextBreakIteratorICU.cpp:
   31064         (WebCore::cursorMovementIterator):
   31065 
   31066 2009-03-11  Alexey Proskuryakov  <ap (a] webkit.org>
   31067 
   31068         Reviewed by George Staikos.
   31069 
   31070         https://bugs.webkit.org/show_bug.cgi?id=24513
   31071         REGRESSION: Cursor movement doesn't work on Tiger (ICU 3.2)
   31072 
   31073         Fixes existing tests on Tiger.
   31074 
   31075         * platform/text/TextBreakIteratorICU.cpp: (WebCore::cursorMovementIterator):
   31076         Use characterBreakIterator on Tiger (like we used to do).
   31077 
   31078 2009-03-11  Alexey Proskuryakov  <ap (a] webkit.org>
   31079 
   31080         Reviewed by Oliver Hunt.
   31081 
   31082         <rdar://problem/4072827> Downloaded non-ASCII file name becomes garbled
   31083 
   31084         * platform/network/mac/ResourceRequestMac.mm:
   31085         (WebCore::ResourceRequest::doUpdatePlatformRequest): Correct selector name
   31086         in instancesRespondToSelector.
   31087 
   31088 2009-03-11  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   31089 
   31090         Reviewed by Holger Freyther.
   31091 
   31092         [GTK]DumpRenderTree doesn't compile for non-X11 GTK ports anymore
   31093         https://bugs.webkit.org/show_bug.cgi?id=2260
   31094 
   31095         Add missing stdio.h include to get the build going
   31096 
   31097         * plugins/gtk/PluginPackageGtk.cpp:
   31098 
   31099 2009-03-10  Justin Garcia  <justin.garcia (a] apple.com>
   31100 
   31101         Reviewed by Ken Kocienda.
   31102 
   31103         * dom/Range.cpp:
   31104         (WebCore::Range::addLineBoxRects): If the range ended at [div, 0], addLineBoxRects
   31105         would include rects for the divs contents.  Set the correct RenderObject to stop at.
   31106 
   31107 2009-03-10  Alexey Proskuryakov  <ap (a] webkit.org>
   31108 
   31109         Reviewed by Sam Weinig.
   31110 
   31111         <rdar://problem/6123770> Restrict access to document.cookie when making a cross-site XHR
   31112 
   31113         * xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::responseXML): Removed an incorrect
   31114         comment about cookie support. Firefox doesn't expose cookies on responseXML at all, and
   31115         there are security concerns with exposing them for cross-origin requests, so it's not clear
   31116         if we want to change anything here.
   31117 
   31118 2009-03-10  Simon Fraser  <simon.fraser (a] apple.com>
   31119 
   31120         Reviewed by Darin Adler
   31121 
   31122         https://bugs.webkit.org/show_bug.cgi?id=24503
   31123         
   31124         Fix hit testing of absolutely positioned single line text controls by
   31125         ensuring that we set result.innerNode() correctly. If the hit node is
   31126         a descendant of the inner text element or if it is the <input> itself,
   31127         then we say we hit the innerTextElement.
   31128         
   31129         Rename hitInnerTextBlock() to hitInnerTextElement() to match the
   31130         'innerTextElement' terminology used elsewhere.
   31131         
   31132         Assert that if renderer()->hitTest() returns false, no-one set
   31133         result.innerNode().
   31134 
   31135         Test: fast/forms/search-abs-pos-cancel-button.html
   31136 
   31137         * rendering/RenderLayer.cpp:
   31138         (WebCore::RenderLayer::hitTestContents):
   31139         * rendering/RenderTextControl.cpp:
   31140         (WebCore::RenderTextControl::hitInnerTextElement):
   31141         * rendering/RenderTextControl.h:
   31142         * rendering/RenderTextControlMultiLine.cpp:
   31143         (WebCore::RenderTextControlMultiLine::nodeAtPoint):
   31144         * rendering/RenderTextControlSingleLine.cpp:
   31145         (WebCore::RenderTextControlSingleLine::nodeAtPoint):
   31146 
   31147 2009-03-10  Antti Koivisto  <antti (a] apple.com>
   31148 
   31149         Reviewed by Mark Rowe.
   31150 
   31151         <rdar://problem/6668238> WebCore is registering text encodings needlessly from KURL constructor.
   31152         
   31153         Another case where we would trigger extended encoding loading needlessly.
   31154 
   31155         * platform/text/TextEncoding.cpp:
   31156         (WebCore::TextEncoding::isNonByteBasedEncoding):
   31157 
   31158 2009-03-10  Beth Dakin  <bdakin (a] apple.com>
   31159 
   31160         Reviewed by Darin Adler.
   31161 
   31162         Fix for <rdar://problem/6624769> REGRESSION (Safari 4 PB): No 
   31163         scroll bar appears for long line of text with NOWRAP set
   31164 
   31165         This is a regression from http://trac.webkit.org/changeset/32226
   31166         I talked with Dan about the original change, and we decided that 
   31167         the best fix was to remove his small potential-optimization that 
   31168         only created a separate line box for whitespace under certain 
   31169         circumstances. This new code will always create a separate line 
   31170         box.
   31171 
   31172         * rendering/bidi.cpp:
   31173         (WebCore::RenderBlock::layoutInlineChildren):
   31174 
   31175 2009-03-10  Sam Weinig  <sam (a] webkit.org>
   31176 
   31177         Reviewed by Geoffrey Garen.
   31178 
   31179         Fix for <rdar://problem/6166844>
   31180         https://bugs.webkit.org/show_bug.cgi?id=24495
   31181 
   31182         Use same rule for loading java applets as we do for images.
   31183 
   31184         * html/HTMLAppletElement.cpp:
   31185         (WebCore::HTMLAppletElement::createRenderer):
   31186         * loader/FrameLoader.cpp:
   31187         (WebCore::FrameLoader::createJavaAppletWidget):
   31188 
   31189 2009-03-10  Justin Garcia  <justin.garcia (a] apple.com>
   31190 
   31191         Reviewed by David Kilzer.
   31192 
   31193         Get rid of revealCaret and use revealSelection instead.
   31194 
   31195         * WebCore.base.exp:
   31196         * editing/SelectionController.cpp:
   31197         (WebCore::SelectionController::setSelection):
   31198         * page/Frame.cpp:
   31199         (WebCore::Frame::revealSelection):
   31200         * page/Frame.h:
   31201 
   31202 2009-03-10  Cameron Zwarich  <cwzwarich (a] uwaterloo.ca>
   31203 
   31204         Reviewed by Geoff Garen.
   31205 
   31206         Bug 23736: WebKit Crashes on http://g-conquest.fr/~server2
   31207         <https://bugs.webkit.org/show_bug.cgi?id=23736>
   31208         <rdar://problem/6560278>
   31209 
   31210         Before replacing the document, FrameLoader::executeIfJavaScriptURL()
   31211         should call stopAllLoaders(), just like continueLoadAfterNavigationPolicy().
   31212 
   31213         * loader/FrameLoader.cpp:
   31214         (WebCore::FrameLoader::executeIfJavaScriptURL):
   31215 
   31216 2009-03-10  Darin Adler  <darin (a] apple.com>
   31217 
   31218         Reviewed by Alexey Proskuryakov.
   31219 
   31220         Bug 24494: crash when deleting at end of document and merging paragraphs
   31221         https://bugs.webkit.org/show_bug.cgi?id=24494
   31222         rdar://problem/6571537
   31223 
   31224         Test: editing/deleting/merge-at-end-of-document.html
   31225 
   31226         * dom/Range.cpp:
   31227         (WebCore::Range::compareBoundaryPoints): Split out assertion. It's better not to
   31228         use && in assertions since we'd like to know which condition is failing.
   31229 
   31230         * editing/ApplyStyleCommand.cpp:
   31231         (WebCore::ApplyStyleCommand::applyInlineStyleToRange): Added a null check before
   31232         calling compareBoundaryPoints, since a 0 for the node is ambiguous and so the
   31233         function doesn't know which value to return.
   31234 
   31235 2009-03-10  Dirk Schulze  <krit (a] webkit.org>
   31236 
   31237         Reviewed by Eric Seidel. Math checked by Oliver Hunt.
   31238 
   31239         Implement the Cairo version of the checkForSolidColor() method. This halfes the
   31240         time to draw on 1x1 px background images.
   31241         I added two new calls to Color for the pixel manipulation on cairo_surface's.
   31242         They are neede to premultiply/unpremultiply the colors of the surface.
   31243 
   31244         [CAIRO] Introduce single-pixel image optimizations
   31245         https://bugs.webkit.org/show_bug.cgi?id=17284
   31246 
   31247         * platform/graphics/Color.cpp:
   31248         (WebCore::colorFromPremultipliedARGB):
   31249         (WebCore::premultipliedARGBFromColor):
   31250         * platform/graphics/Color.h:
   31251         * platform/graphics/cairo/ImageBufferCairo.cpp:
   31252         (WebCore::ImageBuffer::getImageData):
   31253         (WebCore::ImageBuffer::putImageData):
   31254         * platform/graphics/cairo/ImageCairo.cpp:
   31255         (WebCore::BitmapImage::checkForSolidColor):
   31256 
   31257 2009-03-06  Darin Fisher  <darin (a] chromium.org>
   31258 
   31259         Reviewed by Sam Weinig.
   31260 
   31261         https://bugs.webkit.org/show_bug.cgi?id=24437
   31262 
   31263         Add support for registering noAccess URL schemes:
   31264         1-  Add FrameLoader::registerURLSchemeAsNoAccess, and have SecurityOrigin check
   31265         that list upon construction (similar to how isLocal is implemented).
   31266         2-  Make InspectorController call grantUniversalAccess on its Document's
   31267         SecurityOrigin at the time when windowScriptObjectAvailable is called.
   31268 
   31269         This enables content such as the inspector to be loaded from a custom (non-file)
   31270         URL, which is how Chromium loads the inspector.  It also allows other URL schemes
   31271         to be treated like data: URLs, which Chromium utilizes for its various HTML-based
   31272         UI panels.
   31273 
   31274         * inspector/InspectorController.cpp:
   31275         (WebCore::InspectorController::windowScriptObjectAvailable):
   31276         * loader/FrameLoader.cpp:
   31277         (WebCore::localSchemes):
   31278         (WebCore::noAccessSchemes):
   31279         (WebCore::FrameLoader::loadItem):
   31280         * loader/FrameLoader.h:
   31281         * page/SecurityOrigin.cpp:
   31282         (WebCore::SecurityOrigin::SecurityOrigin):
   31283         (WebCore::SecurityOrigin::isLocal):
   31284 
   31285 2009-03-10  Xan Lopez  <xlopez (a] igalia.com>
   31286 
   31287         Build fix, no review
   31288 
   31289         * page/mac/AccessibilityObjectWrapper.mm:
   31290         (textMarkerForVisiblePosition):
   31291         (visiblePositionForTextMarker):
   31292 
   31293 2009-03-10  Xan Lopez  <xlopez (a] igalia.com>
   31294 
   31295         Reviewed by Darin Adler.
   31296 
   31297         https://bugs.webkit.org/show_bug.cgi?id=24491
   31298         Rename posOffset to m_offset, get rid of accessor
   31299 
   31300         As suggested in dom/Position.h, this patch gets rid of the
   31301         'offset()' accessor and renames posOffset to m_offset. I've used
   31302         m_offset instead of offset to follow the style guide lines, since
   31303         Position is still a class and not a structure. If the long term
   31304         plan is still to make it a structure it would be pretty easy to
   31305         just s/m_offset/offset/ globally when that is achieved.
   31306 
   31307         * dom/Position.cpp:
   31308         (WebCore::Position::previous):
   31309         (WebCore::Position::next):
   31310         (WebCore::Position::atStart):
   31311         (WebCore::Position::atEnd):
   31312         (WebCore::Position::renderedOffset):
   31313         (WebCore::Position::isCandidate):
   31314         (WebCore::Position::inRenderedText):
   31315         (WebCore::Position::isRenderedCharacter):
   31316         (WebCore::Position::rendersInDifferentPosition):
   31317         (WebCore::Position::leadingWhitespacePosition):
   31318         (WebCore::Position::debugPosition):
   31319         (WebCore::Position::formatForDebugger):
   31320         * dom/Position.h:
   31321         (WebCore::Position::Position):
   31322         * dom/PositionIterator.h:
   31323         (WebCore::PositionIterator::PositionIterator):
   31324         * dom/Range.cpp:
   31325         * dom/RangeBoundaryPoint.h:
   31326         (WebCore::RangeBoundaryPoint::position):
   31327         (WebCore::RangeBoundaryPoint::set):
   31328         (WebCore::RangeBoundaryPoint::setOffset):
   31329         (WebCore::RangeBoundaryPoint::setToChild):
   31330         (WebCore::RangeBoundaryPoint::setToStart):
   31331         (WebCore::RangeBoundaryPoint::setToEnd):
   31332         (WebCore::RangeBoundaryPoint::childBeforeWillBeRemoved):
   31333         * editing/ApplyStyleCommand.cpp:
   31334         (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
   31335         (WebCore::ApplyStyleCommand::applyInlineStyleToRange):
   31336         (WebCore::ApplyStyleCommand::removeInlineStyle):
   31337         (WebCore::ApplyStyleCommand::nodeFullySelected):
   31338         (WebCore::ApplyStyleCommand::nodeFullyUnselected):
   31339         (WebCore::ApplyStyleCommand::splitTextAtStartIfNeeded):
   31340         (WebCore::ApplyStyleCommand::splitTextAtEndIfNeeded):
   31341         (WebCore::ApplyStyleCommand::splitTextElementAtStartIfNeeded):
   31342         (WebCore::ApplyStyleCommand::splitTextElementAtEndIfNeeded):
   31343         (WebCore::ApplyStyleCommand::mergeStartWithPreviousIfIdentical):
   31344         (WebCore::ApplyStyleCommand::mergeEndWithNextIfIdentical):
   31345         (WebCore::ApplyStyleCommand::joinChildTextNodes):
   31346         * editing/BreakBlockquoteCommand.cpp:
   31347         (WebCore::BreakBlockquoteCommand::doApply):
   31348         * editing/CompositeEditCommand.cpp:
   31349         (WebCore::CompositeEditCommand::insertNodeAt):
   31350         (WebCore::CompositeEditCommand::positionOutsideTabSpan):
   31351         (WebCore::CompositeEditCommand::rebalanceWhitespaceAt):
   31352         (WebCore::CompositeEditCommand::prepareWhitespaceAtPositionForSplit):
   31353         (WebCore::CompositeEditCommand::deleteInsignificantText):
   31354         (WebCore::CompositeEditCommand::removePlaceholderAt):
   31355         (WebCore::CompositeEditCommand::moveParagraphs):
   31356         (WebCore::CompositeEditCommand::breakOutOfEmptyMailBlockquotedParagraph):
   31357         * editing/DeleteSelectionCommand.cpp:
   31358         (WebCore::updatePositionForNodeRemoval):
   31359         (WebCore::updatePositionForTextRemoval):
   31360         (WebCore::DeleteSelectionCommand::handleGeneralDelete):
   31361         (WebCore::DeleteSelectionCommand::fixupWhitespace):
   31362         * editing/Editor.cpp:
   31363         (WebCore::Editor::setComposition):
   31364         (WebCore::Editor::advanceToNextMisspelling):
   31365         (WebCore::Editor::getCompositionSelection):
   31366         * editing/InsertLineBreakCommand.cpp:
   31367         (WebCore::InsertLineBreakCommand::doApply):
   31368         * editing/InsertParagraphSeparatorCommand.cpp:
   31369         (WebCore::InsertParagraphSeparatorCommand::doApply):
   31370         * editing/InsertTextCommand.cpp:
   31371         (WebCore::InsertTextCommand::performTrivialReplace):
   31372         (WebCore::InsertTextCommand::input):
   31373         (WebCore::InsertTextCommand::insertTab):
   31374         * editing/MoveSelectionCommand.cpp:
   31375         (WebCore::MoveSelectionCommand::doApply):
   31376         * editing/ReplaceSelectionCommand.cpp:
   31377         (WebCore::ReplaceSelectionCommand::doApply):
   31378         * editing/SelectionController.cpp:
   31379         (WebCore::SelectionController::debugRenderer):
   31380         * editing/TextIterator.cpp:
   31381         (WebCore::TextIterator::rangeFromLocationAndLength):
   31382         * editing/TypingCommand.cpp:
   31383         (WebCore::TypingCommand::deleteKeyPressed):
   31384         (WebCore::TypingCommand::forwardDeleteKeyPressed):
   31385         * editing/VisiblePosition.cpp:
   31386         (WebCore::VisiblePosition::characterAfter):
   31387         (WebCore::VisiblePosition::debugPosition):
   31388         (WebCore::makeRange):
   31389         (WebCore::setStart):
   31390         (WebCore::setEnd):
   31391         * editing/VisibleSelection.cpp:
   31392         (WebCore::VisibleSelection::toNormalizedRange):
   31393         (WebCore::makeSearchRange):
   31394         (WebCore::VisibleSelection::debugPosition):
   31395         (WebCore::VisibleSelection::showTreeForThis):
   31396         * editing/htmlediting.cpp:
   31397         (WebCore::comparePositions):
   31398         (WebCore::rangeCompliantEquivalent):
   31399         (WebCore::isFirstPositionAfterTable):
   31400         (WebCore::isLastPositionBeforeTable):
   31401         * editing/visible_units.cpp:
   31402         (WebCore::previousBoundary):
   31403         (WebCore::nextBoundary):
   31404         (WebCore::startPositionForLine):
   31405         (WebCore::startOfLine):
   31406         (WebCore::endPositionForLine):
   31407         (WebCore::nextLinePosition):
   31408         (WebCore::startOfParagraph):
   31409         (WebCore::endOfParagraph):
   31410         * page/AccessibilityObject.cpp:
   31411         (WebCore::updateAXLineStartForVisiblePosition):
   31412         * page/AccessibilityRenderObject.cpp:
   31413         (WebCore::AccessibilityRenderObject::indexForVisiblePosition):
   31414         * page/DOMSelection.cpp:
   31415         (WebCore::DOMSelection::anchorOffset):
   31416         (WebCore::DOMSelection::baseOffset):
   31417         (WebCore::DOMSelection::focusOffset):
   31418         (WebCore::DOMSelection::extentOffset):
   31419         * page/EventHandler.cpp:
   31420         (WebCore::EventHandler::handleMousePressEventSingleClick):
   31421         * page/Frame.cpp:
   31422         (WebCore::Frame::selectionLayoutChanged):
   31423         * rendering/RenderTextControl.cpp:
   31424         (WebCore::RenderTextControl::indexForVisiblePosition):
   31425         * rendering/RenderTreeAsText.cpp:
   31426         (WebCore::writeSelection):
   31427 
   31428 2009-03-10  Darin Adler  <darin (a] apple.com>
   31429 
   31430         Reviewed by Dan Bernstein.
   31431 
   31432         Bug 23564: REGRESSION (r39230-39286): crash loading page that changes <input> display type and then calls innerHTML
   31433         https://bugs.webkit.org/show_bug.cgi?id=23564
   31434         rdar://problem/6537238
   31435 
   31436         Test: fast/dom/HTMLElement/innerHTML-selection-crash.html
   31437 
   31438         * editing/markup.cpp: (WebCore::createMarkup): Added updateLayoutIgnorePendingStylesheets
   31439         call to the one of the two overloads of this function that wasn't calling it. This fixes
   31440         this crash and other possible crashes inside innerHTML.
   31441 
   31442 2009-03-10  Alexey Proskuryakov  <ap (a] webkit.org>
   31443 
   31444         Reviewed by Darin Adler.
   31445 
   31446         https://bugs.webkit.org/show_bug.cgi?id=24285
   31447         Text resource loading checks for BOM twice
   31448 
   31449         This removes TextDecoder class, since its only purpose was to check for BOM, which is
   31450         already done in TextResourceDecoder. Callers that use TextEncoding::decode() won't get
   31451         BOM checked, but I didn't find any cases where it would significantly change behavior.
   31452 
   31453         * GNUmakefile.am:
   31454         * WebCore.pro:
   31455         * WebCore.scons:
   31456         * WebCore.vcproj/WebCore.vcproj:
   31457         * WebCore.xcodeproj/project.pbxproj:
   31458         * WebCoreSources.bkl:
   31459         Remove TextDecoder.{h,cpp}.
   31460 
   31461         * platform/text/TextDecoder.cpp: Removed.
   31462         * platform/text/TextDecoder.h: Removed.
   31463 
   31464         * loader/TextResourceDecoder.h: Instead of a TextDecoder object, keep TextEncoding and
   31465         TextCodec separately.
   31466 
   31467         * loader/TextResourceDecoder.cpp:
   31468         (WebCore::TextResourceDecoder::TextResourceDecoder): Updated for m_encoding being a member.
   31469         (WebCore::TextResourceDecoder::setEncoding): Ditto.
   31470         (WebCore::TextResourceDecoder::checkForBOM): Removed a FIXME saying that a BOM could override
   31471         even a user-chosen encoding - this is how it already worked due to TextDecoder checking for
   31472         BOM again. Made this function return the detected BOM length.
   31473         (WebCore::TextResourceDecoder::decode): Skip the BOM if it was found at the beginning of
   31474         a text resource.
   31475         (WebCore::TextResourceDecoder::flush): Reset m_checkedForBOM, so that re-decoding the same
   31476         resource again (as frequently done by CachedResource subclasses) will skip the BOM correctly.
   31477 
   31478         * platform/text/TextEncoding.cpp: (WebCore::TextEncoding::decode):
   31479         Use TextCodec directly without a TextDecoder wrapper. This means that this method no longer
   31480         checks for BOM, which was a counter-intuitive feature.
   31481 
   31482         * loader/CachedScript.cpp:
   31483         (WebCore::CachedScript::CachedScript):
   31484         (WebCore::CachedScript::setEncoding):
   31485         (WebCore::CachedScript::encoding):
   31486         (WebCore::CachedScript::script):
   31487         * loader/CachedScript.h:
   31488         * loader/appcache/ManifestParser.cpp:
   31489         (WebCore::parseManifest):
   31490         Use TextResourceDecoder, as TextEncoding::decode() no longer checks for BOM.
   31491         A side effect of this is that these resources will now be subject to encoding auto-detection.
   31492 
   31493         * loader/CachedFont.cpp: (WebCore::CachedFont::ensureSVGFontData):
   31494         * page/Page.cpp: (WebCore::Page::userStyleSheet):
   31495         Be sure to flush TextResourceDecoder, pushing any remaining bytes out, and making the decoder
   31496         re-usable (for repeated decoding of the same resource).
   31497 
   31498         * platform/text/TextEncodingRegistry.h: Updated comments for newTextCodec().
   31499 
   31500 2009-03-10  Alexey Proskuryakov  <ap (a] webkit.org>
   31501 
   31502         Reviewed by Darin Adler.
   31503 
   31504         https://bugs.webkit.org/show_bug.cgi?id=24488
   31505         An assertion failure when updating an offline application cache after emptying caches
   31506 
   31507         Emptying appcache cannot be performed automatically, so no test.
   31508 
   31509         * loader/appcache/ApplicationCacheGroup.cpp:
   31510         (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete): Ensure that the cache is in disk
   31511         storage, even if the application wasn't updated server side.
   31512 
   31513 2009-03-10  Oliver Hunt  <oliver (a] apple.com>
   31514 
   31515         Reviewed by Alexey Proskuryakov.
   31516 
   31517         <rdar://problem/6425807> Implement WorkerUtils.importScripts()
   31518         <https://bugs.webkit.org/show_bug.cgi?id=22721>
   31519 
   31520         Implement importScripts, currently uses a series of synchronous loads
   31521         to fetch the scripts, but this is simpler than a synchronous load of
   31522         multiple loads in parallel.  In future we'll want to switch to parallel
   31523         loading, but this will do for now.
   31524         
   31525         Test: http/tests/workers/worker-importScripts.html
   31526 
   31527         * GNUmakefile.am:
   31528         * WebCore.vcproj/WebCore.vcproj:
   31529         * WebCore.xcodeproj/project.pbxproj:
   31530         * bindings/js/JSWorkerContextCustom.cpp:
   31531         (WebCore::JSWorkerContext::importScripts):
   31532         * bindings/js/ScriptValue.h:
   31533         (WebCore::ScriptValue::hasNoValue):
   31534         * bindings/js/WorkerScriptController.cpp:
   31535         (WebCore::WorkerScriptController::evaluate):
   31536         (WebCore::WorkerScriptController::setException):
   31537         * bindings/js/WorkerScriptController.h:
   31538         * dom/Document.cpp:
   31539         (WebCore::Document::scriptImported):
   31540         * dom/Document.h:
   31541         * dom/ScriptExecutionContext.h:
   31542         * inspector/InspectorController.cpp:
   31543         (WebCore::InspectorController::scriptImported):
   31544         * inspector/InspectorController.h:
   31545         * inspector/InspectorResource.cpp:
   31546         (WebCore::InspectorResource::setScriptProperties):
   31547         * inspector/InspectorResource.h:
   31548         * workers/WorkerContext.cpp:
   31549         (WebCore::WorkerContext::scriptImported):
   31550         (WebCore::WorkerContext::importScripts):
   31551         * workers/WorkerContext.h:
   31552         * workers/WorkerContext.idl:
   31553         * workers/WorkerImportScriptsClient.cpp: Added.
   31554         (WebCore::WorkerImportScriptsClient::didReceiveResponse):
   31555         (WebCore::WorkerImportScriptsClient::didReceiveData):
   31556         (WebCore::WorkerImportScriptsClient::didFinishLoading):
   31557         (WebCore::WorkerImportScriptsClient::didFail):
   31558         (WebCore::WorkerImportScriptsClient::didFailRedirectCheck):
   31559         (WebCore::WorkerImportScriptsClient::didReceiveAuthenticationCancellation):
   31560         * workers/WorkerImportScriptsClient.h: Added.
   31561         (WebCore::WorkerImportScriptsClient::WorkerImportScriptsClient):
   31562         (WebCore::WorkerImportScriptsClient::script):
   31563         (WebCore::WorkerImportScriptsClient::failed):
   31564 
   31565 2009-03-10  Alexey Proskuryakov  <ap (a] webkit.org>
   31566 
   31567         Reviewed by Darin Adler.
   31568 
   31569         https://bugs.webkit.org/show_bug.cgi?id=24462
   31570         Move cross-origin access control code out of XMLHttpRequest
   31571 
   31572         Step 1: move preflight result cache and access control helper functions.
   31573 
   31574         No change in behavior, so no test.
   31575 
   31576         * GNUmakefile.am:
   31577         * WebCore.pro:
   31578         * WebCore.scons:
   31579         * WebCore.vcproj/WebCore.vcproj:
   31580         * WebCore.xcodeproj/project.pbxproj:
   31581         * WebCoreSources.bkl:
   31582         * loader/CrossOriginAccessControl.cpp: Added.
   31583         (WebCore::isOnAccessControlSimpleRequestHeaderWhitelist):
   31584         (WebCore::isSimpleCrossOriginAccessRequest):
   31585         (WebCore::createAllowedCrossOriginResponseHeadersSet):
   31586         (WebCore::isOnAccessControlResponseHeaderWhitelist):
   31587         (WebCore::passesAccessControlCheck):
   31588         * loader/CrossOriginAccessControl.h: Added.
   31589         * loader/CrossOriginPreflightResultCache.cpp: Added.
   31590         (WebCore::parseAccessControlMaxAge):
   31591         (WebCore::addToAccessControlAllowList):
   31592         (WebCore::parseAccessControlAllowList):
   31593         (WebCore::CrossOriginPreflightResultCacheItem::parse):
   31594         (WebCore::CrossOriginPreflightResultCacheItem::allowsCrossOriginMethod):
   31595         (WebCore::CrossOriginPreflightResultCacheItem::allowsCrossOriginHeaders):
   31596         (WebCore::CrossOriginPreflightResultCacheItem::allowsRequest):
   31597         (WebCore::CrossOriginPreflightResultCache::shared):
   31598         (WebCore::CrossOriginPreflightResultCache::appendEntry):
   31599         (WebCore::CrossOriginPreflightResultCache::canSkipPreflight):
   31600         * loader/CrossOriginPreflightResultCache.h: Added.
   31601         (WebCore::CrossOriginPreflightResultCacheItem::CrossOriginPreflightResultCacheItem):
   31602         (WebCore::CrossOriginPreflightResultCache::CrossOriginPreflightResultCache):
   31603         * xml/XMLHttpRequest.cpp:
   31604         (WebCore::XMLHttpRequestStaticData::XMLHttpRequestStaticData):
   31605         (WebCore::XMLHttpRequest::createRequest):
   31606         (WebCore::XMLHttpRequest::makeCrossOriginAccessRequest):
   31607         (WebCore::XMLHttpRequest::makeSimpleCrossOriginAccessRequest):
   31608         (WebCore::XMLHttpRequest::makeCrossOriginAccessRequestWithPreflight):
   31609         (WebCore::XMLHttpRequest::didReceiveResponse):
   31610         (WebCore::XMLHttpRequest::didReceiveResponsePreflight):
   31611         * xml/XMLHttpRequest.h:
   31612 
   31613 2009-03-10  Alexey Proskuryakov  <ap (a] webkit.org>
   31614 
   31615         Reviewed by Darin Adler.
   31616 
   31617         https://bugs.webkit.org/show_bug.cgi?id=19797
   31618         Bring the list of forbidden headers in sync with XMLHttpRequest spec draft
   31619 
   31620         Added new checks to http/tests/xmlhttprequest/set-dangerous-headers.html.
   31621 
   31622         * xml/XMLHttpRequest.cpp:
   31623         (WebCore::XMLHttpRequestStaticData::XMLHttpRequestStaticData): Added all headers from
   31624         XMLHttpRequest 2 draft.
   31625 
   31626 2009-03-10  Dan Bernstein  <mitz (a] apple.com>
   31627 
   31628         Reviewed by Adele Peterson.
   31629 
   31630         - fix https://bugs.webkit.org/show_bug.cgi?id=23975
   31631           <rdar://problem/6593610> REGRESSION: Scrollbar arrow not repainted
   31632 
   31633         * rendering/RenderLayer.cpp:
   31634         (WebCore::RenderLayer::invalidateScrollbarRect): Corrected the vertical
   31635         scrollbar rect calculation.
   31636 
   31637 2009-03-09  Simon Fraser  <simon.fraser (a] apple.com>
   31638 
   31639         Reviewed by Dan Bernstein, Oliver Hunt
   31640 
   31641         https://bugs.webkit.org/show_bug.cgi?id=24475
   31642         
   31643         When repainting replaced elements, need to union the selection
   31644         and overflow rects because either may extend outside the other.
   31645         
   31646         Test: fast/repaint/transform-replaced-shadows.html
   31647 
   31648         * rendering/RenderReplaced.cpp:
   31649         (WebCore::RenderReplaced::clippedOverflowRectForRepaint):
   31650 
   31651 2009-03-09  Stephanie Lewis  <slewis (a] apple.com>
   31652 
   31653         Fix build.
   31654 
   31655         * editing/Editor.cpp:
   31656         (WebCore::Editor::advanceToNextMisspelling):
   31657         (WebCore::markAllMisspellingsAndBadGrammarInRanges):
   31658 
   31659 2009-03-09  Kim Christensen  <kimworking (a] gmail.com>
   31660 
   31661         Reviewed by Darin Fisher.
   31662 
   31663         https://bugs.webkit.org/show_bug.cgi?id=24276
   31664         Dropdown / select boxes do not consider the windows task bar in Chromium.
   31665 
   31666         * platform/chromium/PopupMenuChromium.cpp:
   31667         (WebCore::PopupContainer::showPopup):
   31668 
   31669 2009-03-09  Dan Bernstein  <mitz (a] apple.com>
   31670 
   31671         Reviewed by Adele Peterson and Dave Hyatt.
   31672 
   31673         - fix <rdar://problem/6654344> REGRESSION (r41041): Zillow.com has
   31674           misaligned edit fields
   31675 
   31676         Test: fast/forms/legend-display-none.html
   31677 
   31678         * css/CSSStyleSelector.cpp:
   31679         (WebCore::CSSStyleSelector::adjustRenderStyle): Change the display
   31680         property of legend elements to 'block' unless it is 'none'.
   31681         * css/html4.css: Do not force the display property of legend elements to
   31682         'block' using CSS, because that prevents style rules from setting it to
   31683         'none'.
   31684 
   31685 2009-03-09  Alpha Lam  <hclam (a] chromium.org>
   31686 
   31687         Reviewed by Dave Hyatt.
   31688 
   31689         https://bugs.webkit.org/show_bug.cgi?id=23024
   31690 
   31691         Fix an incorrect criteria in the if statement that leaves references to
   31692         deleted floating objects in RenderBlock.
   31693 
   31694         Test: fast/block/float/crash-on-absolute-positioning.html
   31695 
   31696         * rendering/RenderBlock.cpp:
   31697         (WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout):
   31698 
   31699 2009-03-09  Mike Belshe  <mike (a] belshe.com>
   31700 
   31701         Reviewed by Eric Seidel.
   31702 
   31703         Unify JSC/V8 idl file.
   31704         https://bugs.webkit.org/show_bug.cgi?id=24424
   31705 
   31706         * page/Location.idl:
   31707 
   31708 2009-03-09  Mike Belshe  <mike (a] belshe.com>
   31709 
   31710         Reviewed by Eric Seidel.
   31711 
   31712         Unify JSC/V8 for History.idl.
   31713 
   31714         * page/History.idl:
   31715 
   31716 2009-03-09  Mike Belshe  <mike (a] belshe.com>
   31717 
   31718         Reviewed by Eric Seidel.
   31719 
   31720         Unify JSC/V8 implementations of DOMWindow.idl.
   31721 
   31722         * page/DOMWindow.idl:
   31723 
   31724 2009-03-09  Simon Fraser  <simon.fraser (a] apple.com>
   31725 
   31726         Reviewed by Dave Hyatt
   31727 
   31728         https://bugs.webkit.org/show_bug.cgi?id=24163
   31729         
   31730         Implement mapping of FloatQuads through 3D transforms.
   31731         
   31732         Removed the redundant localToContainerQuad() methods, which can now 
   31733         shared code with the old mapLocalToAbsolutePoint(), which was
   31734         renamed to mapLocalToContainer(). This can now convert a point,
   31735         and optionally a FloatQuad, which are carried along in the TransformState.
   31736         
   31737         Optimized TransformState to reduce to simple FloatPoint.move()
   31738         if there are no transforms, and to heap-allocate a transform only if
   31739         necessary to accumulate transforms (when using preserve-3d).
   31740         
   31741         Tested by 3d point mapping tests, and the inspector highlight (which now shows
   31742         the correct quads for 3d-transformed elements).
   31743 
   31744         * platform/graphics/transforms/TransformationMatrix.cpp:
   31745         (WebCore::TransformationMatrix::projectQuad):
   31746         (WebCore::TransformationMatrix::translateRight):
   31747         (WebCore::TransformationMatrix::translateRight3d):
   31748         * platform/graphics/transforms/TransformationMatrix.h:
   31749         * rendering/RenderBox.cpp:
   31750         (WebCore::RenderBox::mapLocalToContainer):
   31751         (WebCore::RenderBox::mapAbsoluteToLocalPoint):
   31752         * rendering/RenderBox.h:
   31753         * rendering/RenderObject.cpp:
   31754         (WebCore::RenderObject::localToAbsolute):
   31755         (WebCore::RenderObject::absoluteToLocal):
   31756         (WebCore::RenderObject::mapLocalToContainer):
   31757         (WebCore::RenderObject::localToContainerQuad):
   31758         * rendering/RenderObject.h:
   31759         * rendering/RenderTableCell.cpp:
   31760         (WebCore::RenderTableCell::mapLocalToContainer):
   31761         * rendering/RenderTableCell.h:
   31762         * rendering/RenderView.cpp:
   31763         (WebCore::RenderView::mapLocalToContainer):
   31764         * rendering/RenderView.h:
   31765         * rendering/TransformState.cpp:
   31766         (WebCore::TransformState::move):
   31767         (WebCore::TransformState::applyTransform):
   31768         (WebCore::TransformState::flatten):
   31769         (WebCore::TransformState::mappedPoint):
   31770         (WebCore::TransformState::mappedQuad):
   31771         (WebCore::TransformState::flattenWithTransform):
   31772         (WebCore::HitTestingTransformState::mappedQuad):
   31773         * rendering/TransformState.h:
   31774         (WebCore::TransformState::TransformState):
   31775         (WebCore::TransformState::move):
   31776         (WebCore::TransformState::lastPlanarPoint):
   31777         (WebCore::TransformState::lastPlanarQuad):
   31778         * rendering/style/RenderStyle.h:
   31779         (WebCore::InheritedFlags::preserves3D):
   31780 
   31781 2009-03-09  Simon Fraser  <simon.fraser (a] apple.com>
   31782 
   31783         Reviewed by Dave Hyatt
   31784 
   31785         https://bugs.webkit.org/show_bug.cgi?id=24433
   31786         
   31787         During hit testing with transforms, if a layer has backface-visibility: hidden,
   31788         we need to check for it whether or not the layer has a transform, because it
   31789         might be an ancestor that is transformed.
   31790 
   31791         Test: transforms/3d/hit-testing/backface-no-transform-hit-test.html
   31792 
   31793         * rendering/RenderLayer.cpp:
   31794         (WebCore::RenderLayer::hitTestLayer):
   31795 
   31796 2009-03-09  Laszlo Gombos  <laszlo.1.gombos (a] nokia.com>
   31797 
   31798         Reviewed by George Staikos.
   31799 
   31800         https://bugs.webkit.org/show_bug.cgi?id=24353
   31801         Allow to overrule default build options for Qt build.
   31802 
   31803         * WebCore.pro: Allow to overrule ENABLE_VIDEO and ENABLE_NETSCAPE_PLUGIN_API
   31804 
   31805 2009-03-09  Adam Treat  <adam.treat (a] torchmobile.com>
   31806 
   31807         Reviewed by George Staikos.
   31808 
   31809         https://bugs.webkit.org/show_bug.cgi?id=24463
   31810         WebCore::qstring is detaching and copying twice for every single
   31811         WebCore::TextRun that is processed and drawn.  This elevates this method
   31812         to one of the top-ten most expensive methods in all of QtWebKit according
   31813         to profiling.  This changes the method so that QString only detaches
   31814         when absolutely necessary.
   31815 
   31816         * platform/graphics/qt/FontQt.cpp:
   31817         (WebCore::qstring):
   31818         (WebCore::fixSpacing):
   31819         (WebCore::Font::drawComplexText):
   31820         (WebCore::Font::floatWidthForComplexText):
   31821         (WebCore::Font::offsetForPositionForComplexText):
   31822         (WebCore::Font::selectionRectForComplexText):
   31823 
   31824 2009-03-08  Mark Rowe  <mrowe (a] apple.com>
   31825 
   31826         Reviewed by Oliver Hunt.
   31827 
   31828         Split ScrollAlignment and ScrollBehavior out of RenderLayer.h so that
   31829         Frame.h no longer needs to include it.  This cuts the size of the symbols
   31830         for a debug build by around 3%.
   31831 
   31832         * dom/Element.cpp:
   31833         (WebCore::Element::scrollIntoView):
   31834         (WebCore::Element::scrollIntoViewIfNeeded):
   31835         * editing/Editor.cpp:
   31836         (WebCore::Editor::insertTextWithoutSendingTextEvent):
   31837         (WebCore::Editor::revealSelectionAfterEditingOperation):
   31838         * editing/SelectionController.cpp:
   31839         (WebCore::SelectionController::setSelection):
   31840         * loader/FrameLoader.cpp:
   31841         (WebCore::FrameLoader::gotoAnchor):
   31842         * page/ContextMenuController.cpp:
   31843         (WebCore::ContextMenuController::contextMenuItemSelected):
   31844         * page/Frame.cpp:
   31845         (WebCore::Frame::revealSelection):
   31846         (WebCore::Frame::revealCaret):
   31847         * page/Frame.h:
   31848         * rendering/RenderLayer.cpp:
   31849         (WebCore::RenderLayer::getRectToExpose):
   31850         (WebCore::RenderLayer::autoscroll):
   31851         * rendering/RenderLayer.h:
   31852         * rendering/ScrollBehavior.cpp: Added.
   31853         (WebCore::):
   31854         * rendering/ScrollBehavior.h: Added.
   31855         (WebCore::):
   31856         (WebCore::ScrollAlignment::getVisibleBehavior):
   31857         (WebCore::ScrollAlignment::getPartialBehavior):
   31858         (WebCore::ScrollAlignment::getHiddenBehavior):
   31859 
   31860         Add the new files to the build systems:
   31861         * GNUmakefile.am:
   31862         * WebCore.base.exp:
   31863         * WebCore.pro:
   31864         * WebCore.scons:
   31865         * WebCore.vcproj/WebCore.vcproj:
   31866         * WebCore.xcodeproj/project.pbxproj:
   31867         * WebCoreSources.bkl:
   31868 
   31869         Add includes that were previously pulled in by way of RenderLayer.h from Frame.h:
   31870         * dom/Clipboard.cpp:
   31871         * editing/EditorCommand.cpp:
   31872         * editing/InsertLineBreakCommand.cpp:
   31873         * editing/TypingCommand.cpp:
   31874         * html/HTMLFormControlElement.cpp:
   31875         * loader/archive/cf/LegacyWebArchive.cpp:
   31876         * loader/icon/IconLoader.cpp:
   31877         * page/animation/AnimationController.cpp:
   31878         * rendering/RenderSlider.cpp:
   31879         * rendering/RenderTextControl.cpp:
   31880 
   31881 
   31882 2009-03-08  Mark Rowe  <mrowe (a] apple.com>
   31883 
   31884         Reviewed Dan Bernstein.
   31885 
   31886         Push the include of Frame.h out of RenderView.h and down to those files
   31887         that need it.  This cuts the size of symbols for RenderFoo object files
   31888         by around 15% in a debug build.
   31889 
   31890         * bindings/objc/DOM.mm:
   31891         * rendering/RenderFileUploadControl.cpp:
   31892         * rendering/RenderInline.cpp:
   31893         * rendering/RenderObject.cpp:
   31894         * rendering/RenderReplaced.cpp:
   31895         * rendering/RenderText.cpp:
   31896         * rendering/RenderView.cpp:
   31897         (WebCore::RenderView::zoomFactor):
   31898         * rendering/RenderView.h:
   31899 
   31900 2009-03-08  Mark Rowe  <mrowe (a] apple.com>
   31901 
   31902         Rubber-stamped by Dan Bernstein.
   31903 
   31904         Remove some unnecessary or redundant includes from files related to the JS bindings.
   31905         This cuts the size of the symbols for a debug build by around 3%.
   31906 
   31907         * bindings/js/JSCustomPositionCallback.cpp:
   31908         * bindings/js/JSCustomPositionErrorCallback.cpp:
   31909         * bindings/js/JSCustomSQLStatementCallback.cpp:
   31910         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
   31911         * bindings/js/JSCustomSQLTransactionCallback.cpp:
   31912         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
   31913         * bindings/js/JSCustomVoidCallback.cpp:
   31914         * bindings/js/JSCustomXPathNSResolver.cpp:
   31915         * bindings/js/JSDocumentCustom.cpp:
   31916         * bindings/js/JSPluginElementFunctions.cpp:
   31917         * bindings/js/JSSVGPODTypeWrapper.h:
   31918 
   31919 2009-03-08  Cameron Zwarich  <cwzwarich (a] uwaterloo.ca>
   31920 
   31921         Reviewed by Oliver Hunt.
   31922 
   31923         Remove the unused methods previousHistoryItem(), setPreviousHistoryItem()
   31924         and provisionalHistoryItem() from FrameLoader.
   31925 
   31926         * WebCore.base.exp:
   31927         * WebCore.order:
   31928         * loader/FrameLoader.cpp:
   31929         (WebCore::FrameLoader::frameLoadCompleted):
   31930         (WebCore::FrameLoader::loadItem):
   31931         * loader/FrameLoader.h:
   31932 
   31933 2009-03-08  Gustavo Noronha Silva  <gns (a] gnome.org>
   31934 
   31935         Reviewed by Holger Freyther.
   31936 
   31937         Implement proper logging for the GTK+ port, inspired by the one in
   31938         Qt. We use the WEBKIT_DEBUG environment variable which was already
   31939         being used to decide whether to setup a logger for soup or not.
   31940 
   31941         * platform/gtk/LoggingGtk.cpp:
   31942         (WebCore::getChannelFromName):
   31943         (WebCore::InitializeLoggingChannelsIfNecessary):
   31944         * platform/network/soup/ResourceHandleSoup.cpp:
   31945         (WebCore::ensureSessionIsInitialized):
   31946 
   31947 2009-03-07  Dan Bernstein  <mitz (a] apple.com>
   31948 
   31949         Reviewed by Mark Rowe.
   31950 
   31951         - WebCore part of removing build-time and run-time support for legacy
   31952           versions of CFNetwork and Core Graphics
   31953 
   31954         * platform/graphics/win/FontCGWin.cpp:
   31955         (WebCore::Font::drawGlyphs):
   31956         * platform/graphics/win/FontCustomPlatformData.cpp:
   31957         (WebCore::FontCustomPlatformData::fontPlatformData):
   31958         * platform/graphics/win/FontPlatformDataCGWin.cpp:
   31959         (WebCore::FontPlatformData::platformDataInit):
   31960         * platform/network/cf/FormDataStreamCFNet.cpp:
   31961         (WebCore::setHTTPBody):
   31962         (WebCore::httpBodyFromRequest):
   31963         * platform/network/cf/ResourceHandleCFNet.cpp:
   31964         (WebCore::didSendBodyData):
   31965         (WebCore::shouldUseCredentialStorageCallback):
   31966         (WebCore::ResourceHandle::start):
   31967         * platform/network/win/CookieJarCFNetWin.cpp:
   31968         (WebCore::filterCookies):
   31969 
   31970 2009-03-07  Adele Peterson  <adele (a] apple.com>
   31971 
   31972         Reviewed by Dan Bernstein.
   31973 
   31974         Fix for https://bugs.webkit.org/show_bug.cgi?id=24444
   31975         No multiple JS property for <input type="file" multiple />
   31976 
   31977         * html/HTMLInputElement.cpp:
   31978         (WebCore::HTMLInputElement::multiple):
   31979         (WebCore::HTMLInputElement::setMultiple):
   31980         * html/HTMLInputElement.h:
   31981         * html/HTMLInputElement.idl:
   31982 
   31983 2009-03-07  Xan Lopez  <xan (a] gnome.org>
   31984 
   31985         Reviewed by Holger Freyther.
   31986 
   31987         https://bugs.webkit.org/show_bug.cgi?id=24358
   31988         [GTK] Scrollbars not clipped correctly
   31989 
   31990         ScrollView scrollbars in subframes are *not* native, so take that
   31991         into account again.
   31992 
   31993         * platform/gtk/ScrollbarGtk.cpp:
   31994         (ScrollbarGtk::getLocationInParentWindow):
   31995         (ScrollbarGtk::frameRectsChanged):
   31996         (ScrollbarGtk::paint):
   31997         * platform/gtk/ScrollbarGtk.h:
   31998 
   31999 2009-03-06  Peter Kasting  <pkasting (a] google.com>
   32000 
   32001         Reviewed by Darin Fisher.
   32002 
   32003         https://bugs.webkit.org/show_bug.cgi?id=24405
   32004         Horizontal scrolling on Windows was reversed from Mac (and intuition).
   32005 
   32006         * platform/gtk/WheelEventGtk.cpp:
   32007         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   32008         * platform/win/WheelEventWin.cpp:
   32009         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   32010 
   32011 2009-03-06  Peter Kasting  <pkasting (a] google.com>
   32012 
   32013         Reviewed by Sam Weinig.
   32014 
   32015         Convert some C-style casts to static_cast<>()s.
   32016 
   32017         * platform/gtk/WheelEventGtk.cpp:
   32018         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   32019         * platform/mac/WheelEventMac.mm:
   32020         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   32021         * platform/win/WheelEventWin.cpp:
   32022         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   32023         * platform/wx/MouseWheelEventWx.cpp:
   32024         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   32025 
   32026 2009-03-06  Adele Peterson  <adele (a] apple.com>
   32027 
   32028         Reviewed by Oliver Hunt.
   32029 
   32030         Fix for <rdar://problem/6607524> REGRESSION (Safari 3-4): I can't tab back to the URL field in an empty window (key loop is broken)
   32031 
   32032         I haven't been able to make a test for this since the problem is not reproducible within an empty iframe.
   32033 
   32034         * page/EventHandler.cpp: (WebCore::eventTargetNodeForDocument): We used to ensure that every html document had a body element.
   32035           That is no longer true, so we should return the document element for a truly empty document.
   32036 
   32037 2009-03-06  Jay Campan  <jcampan (a] google.com>
   32038 
   32039         Reviewed by Darin Fisher.
   32040 
   32041         https://bugs.webkit.org/show_bug.cgi?id=24306
   32042 
   32043         Adding a flag to ResourceRequestBase to indicate whether or not upload
   32044         progress notifications are needed for a resource. This is useful to
   32045         avoid sending these notifications when there are no consumers
   32046         (especially in the Chromium case where IPC is involved). 
   32047 
   32048         * platform/network/ResourceRequestBase.h:
   32049         (WebCore::ResourceRequestBase::reportUploadProgress):
   32050         (WebCore::ResourceRequestBase::setReportUploadProgress):
   32051         (WebCore::ResourceRequestBase::ResourceRequestBase):
   32052         * xml/XMLHttpRequest.cpp:
   32053         (WebCore::XMLHttpRequest::loadRequestAsynchronously):
   32054 
   32055 2009-03-06  Dmitry Titov  <dimich (a] chromium.org>
   32056 
   32057         Reviewed by Alexey Proskuryakov.
   32058 
   32059         https://bugs.webkit.org/show_bug.cgi?id=24150
   32060         Add virtual ScriptExecutionContext::encoding()
   32061 
   32062         Test: http/tests/workers/text-encoding.html
   32063 
   32064         * dom/Document.cpp:
   32065         (WebCore::Document::encoding):
   32066         * dom/Document.h:
   32067         (WebCore::Document::inputEncoding):
   32068         (WebCore::Document::charset):
   32069         (WebCore::Document::characterSet):
   32070         Add new virtual method and route DOM synonym functions on Document through it.
   32071 
   32072         * dom/ScriptExecutionContext.h:
   32073         * workers/Worker.cpp:
   32074         (WebCore::Worker::Worker):
   32075         (WebCore::Worker::notifyFinished):
   32076         * workers/WorkerContext.cpp:
   32077         (WebCore::WorkerContext::WorkerContext):
   32078         (WebCore::WorkerContext::encoding):
   32079         (WebCore::WorkerContext::completeURL): Added comment on why this is different from Document::completeURL
   32080         * workers/WorkerContext.h:
   32081         (WebCore::WorkerContext::create):
   32082         * workers/WorkerContextProxy.h:
   32083         * workers/WorkerMessagingProxy.cpp:
   32084         (WebCore::WorkerMessagingProxy::startWorkerContext):
   32085         * workers/WorkerMessagingProxy.h:
   32086         * workers/WorkerThread.cpp:
   32087         (WebCore::WorkerThreadStartupData::create):
   32088         (WebCore::WorkerThreadStartupData::WorkerThreadStartupData):
   32089         (WebCore::WorkerThread::create):
   32090         (WebCore::WorkerThread::WorkerThread):
   32091         (WebCore::WorkerThread::workerThread):
   32092         * workers/WorkerThread.h:
   32093         All of the above route the 'encoding' parameter of parent context to the new
   32094         instance of WorkerContext - from Worker::notifyFinished() via WorkerMessagingProxy
   32095         through WorkerThread through WorkerThreadStartupData and into constructor of WorkerContext.
   32096 
   32097 2009-03-06  Peter Kasting  <pkasting (a] google.com>
   32098 
   32099         Build bustage fix.
   32100 
   32101         * dom/Node.cpp:
   32102         (WebCore::Node::dispatchWheelEvent):
   32103 
   32104 2009-03-06  Eric Carlson  <eric.carlson (a] apple.com>
   32105 
   32106         Reviewed by Antti Koivisto.
   32107 
   32108         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   32109         (WebCore::MediaPlayerPrivate::createQTMovieView):  Delay callback while setting up movieview.
   32110 
   32111 2009-03-06  Douglas R. Davidson  <ddavidso (a] apple.com>
   32112 
   32113         Reviewed by Justin Garcia.
   32114         
   32115         https://bugs.webkit.org/show_bug.cgi?id=24108
   32116 
   32117         Update spelling and grammar checking to use the new combined text 
   32118         checking (with automatic language identification) on Snow Leopard. 
   32119         Tested manually in Mail and Safari; automated tests to come later. 
   32120         
   32121         * editing/Editor.cpp:
   32122         (WebCore::findFirstMisspellingOrBadGrammarInRange):
   32123         (WebCore::Editor::advanceToNextMisspelling):
   32124         (WebCore::guessesForMisspelledOrUngrammaticalRange):
   32125         (WebCore::Editor::guessesForMisspelledOrUngrammaticalSelection):
   32126         (WebCore::Editor::markMisspellingsAfterTypingToPosition):
   32127         (WebCore::markAllMisspellingsAndBadGrammarInRanges):
   32128         (WebCore::Editor::markMisspellingsAndBadGrammar):
   32129         * editing/Editor.h:
   32130         * loader/EmptyClients.h:
   32131         (WebCore::EmptyEditorClient::checkSpellingAndGrammarOfParagraph):
   32132         * page/EditorClient.h:
   32133         * page/Frame.cpp:
   32134         (WebCore::Frame::respondToChangedSelection):
   32135         * platform/ContextMenu.cpp:
   32136         (WebCore::ContextMenu::populate):
   32137 
   32138 2009-03-06  Peter Kasting  <pkasting (a] google.com>
   32139 
   32140         Reviewed by Darin Fisher.
   32141 
   32142         https://bugs.webkit.org/show_bug.cgi?id=24407
   32143         Windows scroll amount was too small, and wheel scroll distance
   32144         conversion code was overly complex.
   32145 
   32146         * page/EventHandler.cpp:
   32147         (WebCore::scrollAndAcceptEvent):
   32148         * platform/PlatformWheelEvent.h:
   32149         (WebCore::):
   32150         * platform/ScrollView.cpp:
   32151         (WebCore::ScrollView::wheelEvent):
   32152         * platform/Scrollbar.h:
   32153         * platform/gtk/WheelEventGtk.cpp:
   32154         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   32155         * platform/mac/WheelEventMac.mm:
   32156         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   32157         * platform/qt/WheelEventQt.cpp:
   32158         * platform/win/WheelEventWin.cpp:
   32159         (WebCore::horizontalScrollChars):
   32160         (WebCore::verticalScrollLines):
   32161         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   32162         * platform/wx/MouseWheelEventWx.cpp:
   32163         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   32164 
   32165 2009-03-06  Dimitri Glazkov  <dglazkov (a] chromium.org>
   32166 
   32167         Reviewed by Adam Roben.
   32168 
   32169         Generate valid bindings with HTML5 database support disabled. 
   32170 
   32171         * inspector/InspectorController.idl: Added feature guard around 
   32172         databaseTableNames definition.
   32173 
   32174 2009-03-04  Xan Lopez  <xan (a] gnome.org>
   32175 
   32176         Reviewed by Holger Freyther.
   32177 
   32178         https://bugs.webkit.org/show_bug.cgi?id=24358
   32179         [GTK] Scrollbars not clipped correctly
   32180 
   32181         Do not take into account the case of being a ScrollView scrollbar,
   32182         since those are native in our case.
   32183 
   32184         * platform/gtk/ScrollbarGtk.cpp:
   32185         (ScrollbarGtk::frameRectsChanged):
   32186 
   32187 2009-03-04  Xan Lopez  <xan (a] gnome.org>
   32188 
   32189         Reviewed by Holger Freyther.
   32190 
   32191         https://bugs.webkit.org/show_bug.cgi?id=24358
   32192         [GTK] Scrollbars not clipped correctly
   32193 
   32194         Move Widget::paint to ScrollbarGtk::paint, since it's scrollbar
   32195         specific and it's our only Widget anyway.
   32196 
   32197         * platform/gtk/ScrollbarGtk.cpp:
   32198         (ScrollbarGtk::paint):
   32199         * platform/gtk/ScrollbarGtk.h:
   32200         * platform/gtk/WidgetGtk.cpp:
   32201 
   32202 2009-03-04  Xan Lopez  <xan (a] gnome.org>
   32203 
   32204         Reviewed by Holger Freyther.
   32205 
   32206         https://bugs.webkit.org/show_bug.cgi?id=24358
   32207         [GTK] Scrollbars not clipped correctly
   32208 
   32209         Use correct clip rectangle and apply coordinate translation needed
   32210         for non-ScrollView scrollbars.
   32211 
   32212         We were ignoring the clip rectangle passed as parameter, which is
   32213         wrong in the case of non coalesced expose events. This, in turn,
   32214         uncovers the fact that we were not applying coordinate translation
   32215         to our position.
   32216 
   32217         * platform/gtk/WidgetGtk.cpp:
   32218         (WebCore::Widget::paint):
   32219 
   32220 2009-03-06  Eric Carlson  <eric.carlson (a] apple.com>
   32221 
   32222         Build fix, no review
   32223 
   32224         * platform/graphics/chromium/MediaPlayerPrivateChromium.h: fix setSize declaration
   32225 
   32226 2009-03-06  Eric Carlson  <eric.carlson (a] apple.com>
   32227 
   32228         Reviewed by Simon Fraser.
   32229 
   32230         https://bugs.webkit.org/show_bug.cgi?id=22790
   32231         Bug 22790: [Transforms] MediaPlayer::setRect() makes no sense with transforms
   32232         Replace media engine setRect with setSize since they don't use about the 
   32233         position anyway.
   32234 
   32235         * platform/graphics/MediaPlayer.cpp:
   32236         (WebCore::NullMediaPlayerPrivate::setSize): Changed from setRect.
   32237         (WebCore::MediaPlayer::setSize): Ditto.
   32238         * platform/graphics/MediaPlayer.h:
   32239         (WebCore::MediaPlayer::size): Changed from rect().
   32240 
   32241         * platform/graphics/MediaPlayerPrivate.h: Changed setRect to setSize.
   32242 
   32243         * platform/graphics/chromium/MediaPlayerPrivateChromium.h: Ditto.
   32244 
   32245         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: 
   32246         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate): Initialize m_size instead of m_rect
   32247         (WebCore::MediaPlayerPrivate::setSize): Changed from setRect
   32248         (WebCore::MediaPlayerPrivate::paint): update comment
   32249         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h: m_rect -> m_size.
   32250 
   32251         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:  m_rect
   32252         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   32253         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate): Initialize m_rect.
   32254         (WebCore::MediaPlayerPrivate::createQTMovieView): setRect-> setSize.
   32255         (WebCore::MediaPlayerPrivate::setSize): Changed from setRect
   32256         (WebCore::MediaPlayerPrivate::paint): Call view:setFrame: when in a media document so 
   32257         the movie is drawn in the correct location.
   32258 
   32259         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
   32260         (WebCore::MediaPlayerPrivate::setSize):  Changed from setRect
   32261         * platform/graphics/qt/MediaPlayerPrivatePhonon.h:
   32262 
   32263         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
   32264         (WebCore::MediaPlayerPrivate::setSize):  Changed from setRect
   32265         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
   32266 
   32267         * rendering/RenderVideo.cpp:
   32268         (WebCore::RenderVideo::updatePlayer): Call setSize instead of setRect.
   32269 
   32270 2009-03-06  Darin Adler  <darin (a] apple.com>
   32271 
   32272         Reviewed by Darin Fisher.
   32273 
   32274         Bug 24422: REGRESSION: null-URL crash in FrameLoader setting location.hash on new window
   32275         https://bugs.webkit.org/show_bug.cgi?id=24422
   32276         rdar://problem/6402208
   32277 
   32278         Test: fast/dom/location-new-window-no-crash.html
   32279 
   32280         The issue here is empty (or null) URLs. I picked the "schedule navigation" bottleneck
   32281         to add some checks for empty URLs. We could also put the empty URL checks at some
   32282         other bottleneck level and add more assertions over time. I tried adding a few more
   32283         assertions to functions like loadURL and hit them while running the regression tests,
   32284         so it's probably going to be a bit tricky to clean this up throughout the loader.
   32285 
   32286         * loader/FrameLoader.cpp:
   32287         (WebCore::ScheduledRedirection::ScheduledRedirection): Explicitly marked this struct
   32288         immutable by making all its members const. Added assertions about the arguments,
   32289         including that the URL is not empty. Initialized one uninitialized member in one of
   32290         the constructors.
   32291         (WebCore::FrameLoader::scheduleHTTPRedirection): Added an early exit to make this
   32292         a no-op if passed an empty URL.
   32293         (WebCore::FrameLoader::scheduleLocationChange): Ditto.
   32294         (WebCore::FrameLoader::scheduleRefresh): Ditto.
   32295 
   32296 2009-03-06  Gustavo Noronha Silva  <gns (a] gnome.org>
   32297 
   32298         Reviewed by Holger Freyther.
   32299 
   32300         https://bugs.webkit.org/show_bug.cgi?id=24423
   32301         Use new soup_message_body_set_accumulate API in soup backend
   32302 
   32303         Disable accumulating chunks for request_body on file uploads,
   32304         using the new soup API.
   32305 
   32306         * platform/network/soup/ResourceHandleSoup.cpp:
   32307         (WebCore::ResourceHandle::startHttp):
   32308 
   32309 2009-03-06  Gustavo Noronha Silva  <gns (a] gnome.org>
   32310 
   32311         Reviewed by Holger Freyther.
   32312 
   32313         Replace use of deprecated SOUP_MESSAGE_OVERWRITE_CHUNKS flag with
   32314         the new soup_message_body_set_accumulate API in soup.
   32315 
   32316         * platform/network/soup/ResourceHandleSoup.cpp:
   32317         (WebCore::gotHeadersCallback):
   32318         (WebCore::ResourceHandle::startHttp):
   32319 
   32320 2009-03-06  Gustavo Noronha Silva  <gns (a] gnome.org>
   32321 
   32322         Reviewed by Holger Freyther.
   32323 
   32324         https://bugs.webkit.org/show_bug.cgi?id=24051
   32325         Soup backend needs content sniffing capabilities
   32326 
   32327         Perform content sniffing when using soup, so that we have a chance
   32328         of figuring out the Content-Type of the file if it's not sent by
   32329         the server.
   32330 
   32331         * platform/network/ResourceHandleInternal.h:
   32332         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
   32333         * platform/network/soup/ResourceHandleSoup.cpp:
   32334         (WebCore::gotHeadersCallback):
   32335         (WebCore::gotChunkCallback):
   32336 
   32337 2009-03-06  Hironori Bono  <hbono (a] chromium.org>
   32338 
   32339         Reviewed by Alexey Proskuryakov.
   32340 
   32341         https://bugs.webkit.org/show_bug.cgi?id=24342
   32342         Cannot insert a Thai character after a Thai prepend character when using ICU 4.0
   32343 
   32344         This change creates a new break iterator "cursorMovementIterator" for
   32345         moving cursors and use it when moving an input cursor.
   32346         In "TextBreakIteratorICU.cpp", this break iterator uses custom ruleset
   32347         based on the one of ICU 3.8.
   32348         On the other hand, in "TextBreakIteratorQt.cpp", this break iterator
   32349         just calls the characterBreakIterator() function.
   32350 
   32351         Test: editing/inserting/insert-thai-characters-001.html
   32352 
   32353         * platform/text/TextBreakIterator.h: Added a new function cursorMovementIterator().
   32354         * platform/text/TextBreakIteratorICU.cpp: Implemented the cursorMovementIterator() function for ICU.
   32355         (WebCore::setUpIteratorWithRules): Ditto.
   32356         (WebCore::cursorMovementIterator): Ditto.
   32357         * platform/text/qt/TextBreakIteratorQt.cpp: Implemented the cursorMovementIterator() function for Qt.
   32358         (WebCore::cursorMovementIterator): Ditto.
   32359         * rendering/RenderText.cpp: Call the cursorMovementIterator() function when moving an input cursor.
   32360         (WebCore::RenderText::previousOffset): Ditto.
   32361         (WebCore::RenderText::nextOffset): Ditto.
   32362 
   32363 2009-03-05  Alexey Proskuryakov  <ap (a] webkit.org>
   32364 
   32365         Reviewed by Oliver Hunt.
   32366 
   32367         <rdar://problem/6621701> Safari 4 Beta Breaks XMLHttpRequest Response Text With Special
   32368         Characters (a compatibility issue with widgets).
   32369 
   32370         Test: http/tests/xmlhttprequest/broken-xml-encoding.html
   32371 
   32372         Revert part of an Acid 3 fix - now we are no longer strict when decoding XMLHttpRequest XML
   32373         responses.
   32374 
   32375         * loader/TextResourceDecoder.cpp:
   32376         (WebCore::TextResourceDecoder::TextResourceDecoder):
   32377         (WebCore::TextResourceDecoder::decode):
   32378         (WebCore::TextResourceDecoder::flush):
   32379         * loader/TextResourceDecoder.h:
   32380         (WebCore::TextResourceDecoder::useLenientXMLDecoding):
   32381         Don't stop on XML decoding errors if useLenientXMLDecoding() was called.
   32382 
   32383         * xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::didReceiveData): Don't stop on XML
   32384         decoding errors. This behavior is now limited to other kinds of XML content.
   32385 
   32386 2009-03-05  Simone Fiorentino  <simone.fiorentino (a] consulenti.fastweb.it>
   32387 
   32388         Bug 24382: request to add SH4 platform
   32389 
   32390         <https://bugs.webkit.org/show_bug.cgi?id=24382>
   32391 
   32392         Reviewed by David Kilzer.
   32393 
   32394         * platform/text/AtomicString.cpp:
   32395         (WebCore::equal): Aligned memory access on SH4 platform.
   32396 
   32397 2009-03-05  Jeremy Moskovich  <jeremy (a] chromium.org>
   32398 
   32399         Reviewed by Simon Fraser.
   32400 
   32401         Fix for https://bugs.webkit.org/show_bug.cgi?id=24215
   32402 
   32403         Gears expects an object tag with display:none to instantiate the plugin,
   32404         so we add a workaround to make this work and fix Gears on WebKit trunk.
   32405 
   32406         * html/HTMLObjectElement.cpp:
   32407         (WebCore::HTMLObjectElement::rendererIsNeeded):
   32408 
   32409 2009-03-05  Avi Drissman  <avi (a] chromium.org>
   32410 
   32411         Reviewed by Darin Fisher.
   32412 
   32413         Need to have Chromium Mac match Safari Mac's accesskey handling
   32414         https://bugs.webkit.org/show_bug.cgi?id=24404
   32415 
   32416         * page/chromium/EventHandlerChromium.cpp:
   32417         (WebCore::EventHandler::accessKeyModifiers): Share access key modifiers with Mac Safari when building for the Mac.
   32418 
   32419 2009-03-05  Simon Fraser  <simon.fraser (a] apple.com>
   32420 
   32421         Reviewed by Dave Hyatt
   32422 
   32423         https://bugs.webkit.org/show_bug.cgi?id=24412
   32424         
   32425         Fix crash when hit-testing elements with -webkit-transform-style: preserve-3d
   32426         but no transform. We need to make localTransformState if we see preserve-3d.
   32427         Also need to call update3DTransformedDescendantStatus() before we test
   32428         m_has3DTransformedDescendant.
   32429 
   32430         Test: transforms/3d/hit-testing/hit-preserves-3d.html
   32431 
   32432         * rendering/RenderLayer.cpp:
   32433         (WebCore::RenderLayer::hitTestLayer):
   32434 
   32435 2009-03-05  Eric Seidel  <eric (a] webkit.org>
   32436 
   32437         Reviewed by David Hyatt.
   32438 
   32439         Changes to RenderLayer destruction to hopefully help catch an elusive crasher
   32440         https://bugs.webkit.org/show_bug.cgi?id=24409
   32441         
   32442         Added a new RenderBoxModelObject::destroyLayer() call which is
   32443         now the only way which RenderLayers should ever be destroyed.
   32444         This ensures that the pointer to the layer is cleared in the
   32445         RenderObject after destruction, allowing us to ASSERT in the
   32446         RenderBoxModelObject destructor.
   32447 
   32448         * rendering/RenderBox.cpp:
   32449         (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
   32450         * rendering/RenderBoxModelObject.cpp:
   32451         (WebCore::RenderBoxModelObject::~RenderBoxModelObject):
   32452         (WebCore::RenderBoxModelObject::destroyLayer):
   32453         (WebCore::RenderBoxModelObject::destroy):
   32454         (WebCore::RenderBoxModelObject::styleDidChange):
   32455         * rendering/RenderBoxModelObject.h:
   32456         * rendering/RenderLayer.cpp:
   32457         (WebCore::RenderLayer::stackingContext):
   32458         (WebCore::RenderLayer::destroy):
   32459         (WebCore::RenderLayer::removeOnlyThisLayer):
   32460         * rendering/RenderLayer.h:
   32461         * rendering/RenderObject.cpp:
   32462         (WebCore::RenderObject::destroy):
   32463         * rendering/RenderWidget.cpp:
   32464         (WebCore::RenderWidget::destroy):
   32465 
   32466 2009-03-05  Eric Seidel  <eric (a] webkit.org>
   32467 
   32468         Reviewed by David Hyatt.
   32469 
   32470         Remove old, unused IE 5.5 scrollbar-* CSS properties.
   32471         Sort the unimplemented getComputedStyle properties so it's
   32472         easier to see which ones actually need implementation.
   32473 
   32474         * css/CSSComputedStyleDeclaration.cpp:
   32475         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   32476         * css/CSSParser.cpp:
   32477         (WebCore::CSSParser::parseValue):
   32478         * css/CSSPropertyNames.in:
   32479         * css/CSSStyleSelector.cpp:
   32480         (WebCore::CSSStyleSelector::applyProperty):
   32481 
   32482 2009-03-05  Justin Garcia  <justin.garcia (a] apple.com>
   32483 
   32484         Reviewed by Darin Adler.
   32485         
   32486         WebViewDidChangeSelectionNotifications weren't being sent for commands that change the selection's position
   32487         within the document without changing its position in the DOM.  For example, pressing return in (caret marked by ^):
   32488         <div contentEditable="true"><div>^Hello</div></div>
   32489         Undo was being enabled, shouldDeleteDOMRange called, etc. when doing no-op deletes (a delete in an empty document 
   32490         for example). 
   32491 
   32492         Changes to layout tests demonstrate fix.
   32493         
   32494         * editing/EditCommand.cpp:
   32495         (WebCore::EditCommand::apply): Don't call applyEditing for a TypingCommand.  The TypingCommand knows whether or
   32496         not it did work that needs to be applied.
   32497         * editing/Editor.cpp:
   32498         (WebCore::Editor::appliedEditing): Moved code (but did not alter) to changeSelectionAfterCommand.
   32499         (WebCore::Editor::unappliedEditing): Ditto.
   32500         (WebCore::Editor::reappliedEditing): Ditto.
   32501         (WebCore::Editor::changeSelectionAfterCommand): Moved code from *appliedEditing into here.  Also call out to
   32502         EditorClient::respondToChangedSelection() for commands that changed the selection's position in the document
   32503         even if they did not change it's position in the DOM.  Any TypingCommand that gets this far changed it's position
   32504         in the document.
   32505         * editing/Editor.h:
   32506         * editing/TypingCommand.cpp:
   32507         (WebCore::TypingCommand::TypingCommand): Removed unused m_appliedEditing.
   32508         (WebCore::TypingCommand::typingAddedToOpenCommand): Always apply editing.  We won't get this far if we don't need to.
   32509         (WebCore::TypingCommand::deleteKeyPressed): Don't do any of the things that only make sense for Range selections, like
   32510         adding to the killring and responding to a change in selections if the delete was a no-op.
   32511         (WebCore::TypingCommand::forwardDeleteKeyPressed): Ditto.
   32512         * editing/TypingCommand.h:
   32513 
   32514 2009-03-05  Dimitri Glazkov  <dglazkov (a] chromium.org>
   32515 
   32516         Reviewed by Adam Roben.
   32517 
   32518         Eliminate a ref-counting leak in InspectorController.
   32519 
   32520         * inspector/InspectorController.h: Made constructor private, added static create method.
   32521         * page/Page.cpp:
   32522         (WebCore::Page::Page): Change initializer to use static create method.
   32523 
   32524 2009-03-05  Dimitri Glazkov  <dglazkov (a] chromium.org>
   32525 
   32526         Reviewed by Timothy Hatcher.
   32527 
   32528         https://bugs.webkit.org/show_bug.cgi?id=24355
   32529         Add InspectorController.idl and convert InspectorController.cpp to use
   32530         JSC bindings.
   32531 
   32532         * DerivedSources.make: Added InspectorController.idl
   32533         * WebCore.xcodeproj/project.pbxproj: Added idl, bindings files.
   32534         * bindings/js/JSInspectorControllerCustom.cpp: Added.
   32535         * bindings/scripts/CodeGeneratorJS.pm: Added Array to no-header types.
   32536         * inspector/InspectorController.cpp: Removed hand-rolled bindings.
   32537         * inspector/InspectorController.h: Added platform and addSourceToFrame methods.
   32538         * inspector/InspectorController.idl: Added.
   32539         * page/Page.h: Changed member to RefPtr since InspectorController is now ref-counted.
   32540 
   32541 2009-03-05  Eric Carlson  <eric.carlson (a] apple.com>
   32542 
   32543         Reviewed by Simon Fraser.
   32544 
   32545         https://bugs.webkit.org/show_bug.cgi?id=24400
   32546         Bug 24400: Remove "start", "end", "loopStart", "loopEnd", "currentLoop", and "playCount" 
   32547         media element attributes
   32548 
   32549         Test: media/video-loop.html
   32550 
   32551         * html/HTMLMediaElement.cpp:
   32552         (WebCore::HTMLMediaElement::HTMLMediaElement):
   32553         (WebCore::HTMLMediaElement::loadInternal):
   32554         (WebCore::HTMLMediaElement::setNetworkState):
   32555         (WebCore::HTMLMediaElement::seek):
   32556         (WebCore::HTMLMediaElement::playInternal):
   32557         (WebCore::HTMLMediaElement::loop):
   32558         (WebCore::HTMLMediaElement::setLoop):
   32559         (WebCore::HTMLMediaElement::mediaPlayerTimeChanged):
   32560         (WebCore::HTMLMediaElement::endedPlayback):
   32561         (WebCore::HTMLMediaElement::updatePlayState):
   32562         * html/HTMLMediaElement.h:
   32563         * html/HTMLMediaElement.idl:
   32564 
   32565 2009-03-05  Steve Falkenburg  <sfalken (a] apple.com>
   32566 
   32567         <rdar://problem/6651112> Safari asks about re-posting a form even when page is cached
   32568         
   32569         Reviewed by Ada Chan.
   32570 
   32571         * platform/network/cf/ResourceHandleCFNet.cpp:
   32572         (WebCore::ResourceHandle::willLoadFromCache): Ported from Mac version.
   32573 
   32574 2009-03-05  David Hyatt  <hyatt (a] apple.com>
   32575 
   32576         Reviewed by Eric Seidel
   32577 
   32578         https://bugs.webkit.org/show_bug.cgi?id=24248
   32579 
   32580         Make sure painting of overflow controls checks that visibility:visible is set on the block before
   32581         painting.  Pixel tests caught this regression.
   32582 
   32583         Make sure resizer painting pushes a clip of the corner rect.  It was relying on the clip layers happened
   32584         to do to their bounds (which had nothing to do with overflow).
   32585 
   32586         * rendering/RenderBlock.cpp:
   32587         (WebCore::RenderBlock::paint):
   32588         * rendering/RenderLayer.cpp:
   32589         (WebCore::RenderLayer::paintResizer):
   32590 
   32591 2009-03-05  Yong Li  <yong.li (a] torchmobile.com>
   32592 
   32593         Reviewed by Simon Fraser.
   32594 
   32595         https://bugs.webkit.org/show_bug.cgi?id=24386
   32596         A faster implementation of extractMIMETypeFromMediaType.
   32597 
   32598         * platform/network/HTTPParsers.cpp:
   32599         (WebCore::extractMIMETypeFromMediaType):
   32600 
   32601 2009-03-05  Yong Li  <yong.li (a] torchmobile.com>
   32602 
   32603         Reviewed by Antti Koivisto.
   32604 
   32605         https://bugs.webkit.org/show_bug.cgi?id=24392
   32606         Do not get the current time for unless we're doing PRELOAD_DEBUG as this
   32607         can be unnecessarily expensive.
   32608 
   32609         * html/PreloadScanner.cpp:
   32610         (WebCore::PreloadScanner::write):
   32611 
   32612 2009-03-04  Simon Fraser  <simon.fraser (a] apple.com>
   32613 
   32614         Reviewed by Dave Hyatt
   32615 
   32616         https://bugs.webkit.org/show_bug.cgi?id=24327
   32617         
   32618         When mapping points and hit testing through transforms, work
   32619         correctly when acclerated animations of transforms are running.
   32620         
   32621         Tested by LayoutTests/animations/animation-hit-test-transform.html,
   32622         which only failed when ACCELERATED_COMPOSITING was turned on.
   32623 
   32624         * rendering/RenderLayer.cpp:
   32625         (WebCore::RenderLayer::currentTransform):
   32626         * rendering/RenderLayer.h:
   32627         * rendering/RenderObject.cpp:
   32628         (WebCore::RenderObject::transformFromContainer):
   32629 
   32630 2009-03-05  Mike Belshe  <mike (a] belshe.com>
   32631 
   32632         Reviewed by Darin Fisher.
   32633 
   32634         https://bugs.webkit.org/show_bug.cgi?id=24391
   32635         Frame.cpp uses JSC specific includes
   32636 
   32637         * page/Frame.cpp:
   32638 
   32639 2009-03-05  Gustavo Noronha Silva  <gns (a] gnome.org>
   32640 
   32641         Reviewed by Alexey Proskuryakov.
   32642 
   32643         https://bugs.webkit.org/show_bug.cgi?id=24389
   32644         WebKitGTK+ crashes when cancelling plugin loads
   32645 
   32646         Remove bogus calls to the client's didFinishLoading method from
   32647         our ResourceHandle::cancel implementation. Calling
   32648         didFinishLoading here is mostly inoffensive for most loads, but
   32649         causes crashes when plugin loads are cancelled.
   32650 
   32651         * platform/network/soup/ResourceHandleSoup.cpp:
   32652         (WebCore::ResourceHandle::cancel):
   32653 
   32654 2009-03-05  Steve Falkenburg  <sfalken (a] apple.com>
   32655 
   32656         Windows build fix.
   32657         
   32658         * WebCore.vcproj/QTMovieWin.vcproj:
   32659 
   32660 2009-03-05  Adam Treat  <adam.treat (a] torchmobile.com>
   32661 
   32662         Build fix for when ENABLE_NETSCAPE_PLUGIN_API = 0.  The method
   32663         ScriptController::jsObjectForPluginElement(HTMLPlugInElement*); is not
   32664         protected by an #if and uses HTMLPlugInElement so it must be included.
   32665 
   32666         * bindings/js/ScriptController.cpp:
   32667 
   32668 2009-03-05  Dimitri Glazkov  <dglazkov (a] chromium.org>
   32669 
   32670         GTK Build fix.
   32671 
   32672         * inspector/ConsoleMessage.h: Use proper header.
   32673 
   32674 2009-03-05  Dimitri Glazkov  <dglazkov (a] chromium.org>
   32675 
   32676         Reviewed by Timothy Hatcher.
   32677 
   32678         https://bugs.webkit.org/show_bug.cgi?id=24376
   32679         Split InspectorController.cpp file into separate classes.
   32680 
   32681         * GNUmakefile.am: Modified to include new files.
   32682         * WebCore.pro: Ditto.
   32683         * WebCore.scons: Ditto.
   32684         * WebCore.vcproj/WebCore.vcproj: Ditto.
   32685         * WebCore.xcodeproj/project.pbxproj: Ditto.
   32686         * WebCoreSources.bkl: Ditto.
   32687         * inspector/ConsoleMessage.cpp: Added.
   32688         * inspector/ConsoleMessage.h: Added.
   32689         * inspector/InspectorController.cpp:
   32690         * inspector/InspectorDOMStorageResource.cpp: Added.
   32691         * inspector/InspectorDOMStorageResource.h: Added.
   32692         * inspector/InspectorDatabaseResource.cpp: Added.
   32693         * inspector/InspectorDatabaseResource.h: Added.
   32694         * inspector/InspectorResource.cpp: Added.
   32695         * inspector/InspectorResource.h: Added.
   32696 
   32697 2009-03-05  Eric Carlson  <eric.carlson (a] apple.com>
   32698 
   32699         Reviewed by Darin Adler
   32700 
   32701         https://bugs.webkit.org/show_bug.cgi?id=24387
   32702         Remove media element bufferingRate attribute. No test necessary as there
   32703         were none for this attribute.
   32704 
   32705         * html/HTMLMediaElement.cpp:
   32706         (WebCore::HTMLMediaElement::HTMLMediaElement): Don't initialize m_bufferingRate.
   32707         (WebCore::HTMLMediaElement::loadInternal): Ditto.
   32708         (WebCore::HTMLMediaElement::setNetworkState): Ditto.
   32709         (WebCore::HTMLMediaElement::progressEventTimerFired): Don't calculate m_bufferingRate.
   32710         * html/HTMLMediaElement.h: Remove m_bufferingRate.
   32711         * html/HTMLMediaElement.idl: Ditto.
   32712 
   32713 2009-03-05  Xan Lopez  <xan (a] gnome.org>
   32714 
   32715         Reviewed by Mark Rowe.
   32716 
   32717         https://bugs.webkit.org/show_bug.cgi?id=24377
   32718         [GTK] Comply better with coding style guidelines in ResourceHandleSoup
   32719 
   32720         Use C++ booleans, 0 instead of NULL, prefix boolean variables with
   32721         'is', do not use 'else if' if the previous if had a return, delete
   32722         trailing whitespace, etc.
   32723 
   32724         * platform/network/ResourceHandleInternal.h:
   32725         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
   32726         * platform/network/soup/ResourceHandleSoup.cpp:
   32727         (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader):
   32728         (WebCore::fillResponseFromMessage):
   32729         (WebCore::restartedCallback):
   32730         (WebCore::finishedCallback):
   32731         (WebCore::parseDataUrl):
   32732         (WebCore::ensureSessionIsInitialized):
   32733         (WebCore::ResourceHandle::startHttp):
   32734         (WebCore::reportUnknownProtocolError):
   32735         (WebCore::ResourceHandle::start):
   32736         (WebCore::cleanupGioOperation):
   32737         (WebCore::closeCallback):
   32738         (WebCore::readCallback):
   32739         (WebCore::openCallback):
   32740         (WebCore::queryInfoCallback):
   32741         (WebCore::ResourceHandle::startGio):
   32742 
   32743 2009-03-04  Simon Fraser  <simon.fraser (a] apple.com>
   32744 
   32745         Reviewed by Eric Seidel
   32746 
   32747         https://bugs.webkit.org/show_bug.cgi?id=24328
   32748         
   32749         If an element has backface-visibility: hidden, hit testing should not
   32750         hit the back sides of elements. Test for that by inverting the accumulated
   32751         transform and looking at the z vector.
   32752 
   32753         Tested by transforms/3d/hit-testing/backface-hit-test.html
   32754         
   32755         * rendering/RenderLayer.cpp:
   32756         (WebCore::RenderLayer::hitTestLayer):
   32757 
   32758 2009-03-04  Adam Langley  <agl (a] google.com>
   32759 
   32760         Reviewed by Darin Fisher.
   32761 
   32762         r41362 mistakenly added functions "RenderThemeWin::" into
   32763         RenderThemeChromiumGtk.cpp. When correcting this, I somehow changed
   32764         them to void return types. This patch switches them back to ints.
   32765 
   32766         https://bugs.webkit.org/show_bug.cgi?id=24360
   32767 
   32768         * rendering/RenderThemeChromiumLinux.cpp:
   32769         (WebCore::RenderThemeChromiumLinux::buttonInternalPaddingLeft):
   32770         (WebCore::RenderThemeChromiumLinux::buttonInternalPaddingRight):
   32771         (WebCore::RenderThemeChromiumLinux::buttonInternalPaddingTop):
   32772         (WebCore::RenderThemeChromiumLinux::buttonInternalPaddingBottom):
   32773 
   32774 2009-03-04  Adam Langley  <agl (a] google.com>
   32775 
   32776         Reviewed by Darin Fisher.
   32777 
   32778         Chromium Linux: change some metrics to better match Windows after
   32779         r41416. Aesthetically this may be worse, but web-compat is king.
   32780 
   32781         Also, the previous code had an off by one error when drawing
   32782         scrollbars which caused the scrollbar to overflow it's bounds by 1px
   32783         at the right and bottom edges.
   32784 
   32785         https://bugs.webkit.org/show_bug.cgi?id=24369
   32786 
   32787         * rendering/RenderThemeChromiumLinux.cpp:
   32788         (WebCore::):
   32789         (WebCore::RenderThemeChromiumLinux::systemFont):
   32790         * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
   32791         (WebCore::ScrollbarThemeChromium::paintTrackPiece):
   32792 
   32793 2009-03-04  Eric Seidel  <eric (a] webkit.org>
   32794 
   32795         Reviewed by Adam Roben.
   32796 
   32797         Add an ASSERT to better demonstrate the cause of the crash in
   32798         https://bugs.webkit.org/show_bug.cgi?id=23736
   32799 
   32800         * loader/DocLoader.cpp:
   32801         (WebCore::DocLoader::~DocLoader):
   32802 
   32803 2009-03-04  David Levin  <levin (a] chromium.org>
   32804 
   32805         Reviewed by Alexey Proskuryakov.
   32806 
   32807         Bug 24337: Assert when doing sync XHR in a worker for a cacheable response.
   32808         <https://bugs.webkit.org/show_bug.cgi?id=24337>
   32809 
   32810         Tests: http/tests/xmlhttprequest/access-control-basic-denied-preflight-cache.html
   32811                http/tests/xmlhttprequest/workers/xmlhttprequest-file-not-found.html
   32812 
   32813         * loader/mac/ResourceLoaderMac.mm:
   32814         (WebCore::ResourceLoader::willCacheResponse):
   32815         An identifier is only asssigned if resource load callbacks are done.  So don't send
   32816         willCacheResponse which uses identifier if resource load callbacks aren't being sent.
   32817 
   32818 2009-03-04  David Levin  <levin (a] chromium.org>
   32819 
   32820         Reviewed by Alexey Proskuryakov.
   32821 
   32822         Bug 24330: Sync xhr in workers should send an abort exception when the worker is terminated.
   32823         <https://bugs.webkit.org/show_bug.cgi?id=24330>
   32824 
   32825         Test: http/tests/xmlhttprequest/workers/abort-exception-assert.html
   32826 
   32827         * dom/ExceptionCode.cpp:
   32828         (WebCore::xmlHttpRequestExceptionNames):
   32829         Added missing ABORT_ERR whose absence caused an assert.
   32830 
   32831         * loader/WorkerThreadableLoader.cpp:
   32832         (WebCore::WorkerThreadableLoader::loadResourceSynchronously):
   32833         (WebCore::WorkerThreadableLoader::MainThreadBridge::cancel):
   32834         Add more logic to handle the termination case for sync xhr.
   32835 
   32836 2009-03-04  Eric Carlson  <eric.carlson (a] apple.com>
   32837 
   32838         Reviewed by Antti Koivisto.
   32839 
   32840         https://bugs.webkit.org/show_bug.cgi?id=24364
   32841         Add support for HTMLMediaElement canPlayType method. Make
   32842         MediaPlayer::supportsType take a ContentType instead of a
   32843         separate mime type and codecs parameter.
   32844 
   32845         Test: media/video-can-play-type.html
   32846 
   32847         * dom/DOMImplementation.cpp:
   32848         (WebCore::DOMImplementation::createDocument):
   32849         * html/HTMLMediaElement.cpp:
   32850         (WebCore::HTMLMediaElement::canPlayType): Add canPlayType method.
   32851         (WebCore::HTMLMediaElement::loadInternal): selectMediaURL returns a ContentType.
   32852         (WebCore::HTMLMediaElement::selectMediaURL): Return a ContentType instead of raw MIME type.
   32853         (WebCore::HTMLMediaElement::initialURL): selectMediaURL returns a ContentType.
   32854         * html/HTMLMediaElement.h: Add prototype.
   32855         * html/HTMLMediaElement.idl: Ditto.
   32856         * platform/graphics/MediaPlayer.cpp:
   32857         (WebCore::MediaPlayer::load): Take a ContentType instead of raw MIME type.
   32858         (WebCore::MediaPlayer::supportsType): Ditto.
   32859         * platform/graphics/MediaPlayer.h:
   32860 
   32861 2009-03-04  Antti Koivisto  <antti (a] apple.com>
   32862 
   32863         Reviewed by Dave Hyatt.
   32864 
   32865         https://bugs.webkit.org/show_bug.cgi?id=24359
   32866         Repaint throttling mechanism
   32867         
   32868         Excessive repainting can slow down page loadind. This implements a timer
   32869         based throttling mechanism. It is behind ENABLE(REPAINT_THROTTLING) and not 
   32870         enabled by default.
   32871 
   32872         * loader/FrameLoader.cpp:
   32873         (WebCore::FrameLoader::checkCompleted):
   32874         * page/EventHandler.cpp:
   32875         (WebCore::EventHandler::dispatchDragEvent):
   32876         (WebCore::EventHandler::dispatchMouseEvent):
   32877         (WebCore::EventHandler::keyEvent):
   32878         (WebCore::EventHandler::handleTextInputEvent):
   32879         * page/FrameView.cpp:
   32880         (WebCore::FrameView::FrameView):
   32881         (WebCore::FrameView::reset):
   32882         (WebCore::FrameView::repaintContentRectangle):
   32883         (WebCore::FrameView::beginDeferredRepaints):
   32884         (WebCore::FrameView::endDeferredRepaints):
   32885         (WebCore::FrameView::checkStopDelayingDeferredRepaints):
   32886         (WebCore::FrameView::doDeferredRepaints):
   32887         (WebCore::FrameView::updateDeferredRepaintDelay):
   32888         (WebCore::FrameView::resetDeferredRepaintDelay):
   32889         (WebCore::FrameView::adjustedDeferredRepaintDelay):
   32890         (WebCore::FrameView::deferredRepaintTimerFired):
   32891         (WebCore::FrameView::paintContents):
   32892         * page/FrameView.h:
   32893 
   32894 2009-03-04  Sam Weinig  <sam (a] webkit.org>
   32895 
   32896         Rubber-stamped by Antti Koivisto.
   32897 
   32898         Remove LOW_BANDWIDTH_DISPLAY as it is not being used by any platforms.
   32899 
   32900         * dom/Document.cpp:
   32901         (WebCore::Document::Document):
   32902         * dom/Document.h:
   32903         (WebCore::Document::haveStylesheetsLoaded):
   32904         * html/HTMLTokenizer.cpp:
   32905         (WebCore::HTMLTokenizer::scriptHandler):
   32906         * loader/Cache.cpp:
   32907         (WebCore::Cache::requestResource):
   32908         * loader/CachedCSSStyleSheet.cpp:
   32909         (WebCore::CachedCSSStyleSheet::checkNotify):
   32910         * loader/DocLoader.h:
   32911         * loader/FrameLoader.cpp:
   32912         (WebCore::FrameLoader::FrameLoader):
   32913         (WebCore::FrameLoader::requestFrame):
   32914         (WebCore::FrameLoader::stopLoading):
   32915         (WebCore::FrameLoader::begin):
   32916         (WebCore::FrameLoader::write):
   32917         (WebCore::FrameLoader::endIfNotLoadingMainResource):
   32918         (WebCore::FrameLoader::checkCompleted):
   32919         (WebCore::FrameLoader::requestObject):
   32920         (WebCore::FrameLoader::loadItem):
   32921         * loader/FrameLoader.h:
   32922 
   32923 2009-03-02  Xan Lopez  <xan (a] gnome.org>
   32924 
   32925         Reviewed by Mark Rowe.
   32926 
   32927         https://bugs.webkit.org/show_bug.cgi?id=24287
   32928         [GTK] Move auth dialog feature to WebKit/
   32929 
   32930         Remove WebKitSoupAuthDialog files from build and stop using it.
   32931 
   32932         * GNUmakefile.am:
   32933         * platform/network/soup/ResourceHandleSoup.cpp:
   32934         (WebCore::ensureSessionIsInitialized):
   32935         * platform/network/soup/webkit-soup-auth-dialog.c: Removed.
   32936         * platform/network/soup/webkit-soup-auth-dialog.h: Removed.
   32937 
   32938 2009-03-04  Simon Fraser  <simon.fraser (a] apple.com>
   32939 
   32940         Reviewed by Dave Hyatt
   32941         
   32942         https://bugs.webkit.org/show_bug.cgi?id=24361
   32943         
   32944         Reinstate code that sets result.innerNode when hitTest() returns true,
   32945         but never filled in the innerNode. Fixes hit testing of generated content.
   32946 
   32947         Test: fast/css-generated-content/hit-test-generated-content.html
   32948 
   32949         * rendering/RenderLayer.cpp:
   32950         (WebCore::RenderLayer::hitTestContents):
   32951 
   32952 2009-03-04  Adam Barth  <abath (a] webkit.org>
   32953 
   32954         Reviewed by Alexey Proskuryakov.
   32955 
   32956         https://bugs.webkit.org/show_bug.cgi?id=24356
   32957 
   32958         Fix WebKit style for allowUniversalAccessFromFileURLs.
   32959 
   32960         * WebCore.base.exp:
   32961         * dom/Document.cpp:
   32962         (WebCore::Document::initSecurityContext):
   32963         * page/Settings.cpp:
   32964         (WebCore::Settings::Settings):
   32965         (WebCore::Settings::setAllowUniversalAccessFromFileURLs):
   32966         * page/Settings.h:
   32967         (WebCore::Settings::allowUniversalAccessFromFileURLs):
   32968 
   32969 2009-03-04  Brady Eidson  <beidson (a] apple.com>
   32970 
   32971         Reviewed by Darin Adler
   32972 
   32973         <rdar://problem/6619630> Quick Look of vCards stuck on image of first card opened.
   32974 
   32975         I narrowed this down to http://trac.webkit.org/changeset/39304 which, among other things,
   32976         consolidated some of the various decision making pieces of the Cache into the new method
   32977         FrameLoader::cachePolicy().
   32978 
   32979         Before 39304, when deciding whether to use an existing CachedResource, we checked if the FrameLoader 
   32980         is reloading.  If it is, we'd evict any existing resource then recreate it.  Quick looks uses the
   32981         same URL for this image every time and expects it to be reloaded with each new card.
   32982 
   32983         The FrameLoader::isReloading() check did one thing - Ask the DocumentLoader if it's cache policy
   32984         is "ReloadIgnoringCacheData".  This check was lost in the consolidation to the new method.  
   32985 
   32986         * loader/FrameLoader.cpp:
   32987         (WebCore::FrameLoader::cachePolicy): Restore the DocumentLoader's cachePolicy check as a possible
   32988           condition for returning CachePolicyReload.
   32989 
   32990 2009-03-04  Timothy Hatcher  <timothy (a] apple.com>
   32991 
   32992         * English.lproj/localizedStrings.js: Update strings to include "DATABASES",
   32993         "LOCAL STORAGE" and "SESSION STORAGE".
   32994 
   32995 2009-03-04  Timothy Hatcher  <timothy (a] apple.com>
   32996 
   32997         Fix a regression where the Web Inspector console would not animate
   32998         in or out correctly.
   32999 
   33000         Reviewed by Anders Carlsson.
   33001 
   33002         * inspector/front-end/inspector.css: Move a z-index to a child element
   33003         to get the correct stacking order during the animation.
   33004 
   33005 2009-03-03  David Hyatt  <hyatt (a] apple.com>
   33006 
   33007         https://bugs.webkit.org/show_bug.cgi?id=24201, pathologically bad block layout.
   33008 
   33009         Make sure to factor clear deltas into y position estimates.  Also avoid doing the comparison of
   33010         the final position against the y position estimate until after the clear has happened.  This gets rid
   33011         of some duplicated cut/pasted code and also ensures a layout delta only has to be put in once.
   33012 
   33013         Reviewed by Dan Bernstein
   33014 
   33015         Added fast/block/float/nested-clearance.html
   33016 
   33017         * rendering/RenderBlock.cpp:
   33018         (WebCore::RenderBlock::collapseMargins):
   33019         (WebCore::RenderBlock::clearFloatsIfNeeded):
   33020         (WebCore::RenderBlock::estimateVerticalPosition):
   33021         (WebCore::RenderBlock::layoutBlockChildren):
   33022         (WebCore::RenderBlock::getClearDelta):
   33023         * rendering/RenderBlock.h:
   33024 
   33025 2009-03-02  Kim Grnholm  <kim.gronholm (a] nomovok.com>
   33026 
   33027         Reviewed by Simon Hausmann.
   33028 
   33029         Improvement to 3d transformations rendering in QtWebKit. QTransform is used
   33030         instead of QMatrix. This allows perspective transformations since QTransform is
   33031         a true 3x3 matrix.
   33032 
   33033         * platform/graphics/qt/GraphicsContextQt.cpp: Use QTransform instead of QMatrix everywhere.
   33034         (WebCore::GraphicsContext::getCTM):
   33035         (WebCore::GraphicsContext::restorePlatformState):
   33036         (WebCore::GraphicsContext::fillPath):
   33037         (WebCore::GraphicsContext::strokePath):
   33038         (WebCore::GraphicsContext::fillRect):
   33039         (WebCore::GraphicsContext::translate):
   33040         (WebCore::GraphicsContext::rotate):
   33041         (WebCore::GraphicsContext::scale):
   33042         (WebCore::GraphicsContext::concatCTM):
   33043         * platform/graphics/qt/ImageQt.cpp:
   33044         (WebCore::Image::drawPattern):
   33045         * platform/graphics/qt/PathQt.cpp:
   33046         (WebCore::Path::translate):
   33047         (WebCore::Path::transform):
   33048         * platform/graphics/qt/PatternQt.cpp:
   33049         (WebCore::Pattern::createPlatformPattern):
   33050         * platform/graphics/qt/TransformationMatrixQt.cpp:
   33051         (WebCore::TransformationMatrix::operator QTransform): Replace the conversion operator
   33052         to QMatrix with one to QTransform.
   33053         * platform/graphics/transforms/TransformationMatrix.h:
   33054         * platform/graphics/qt/FontQt.cpp:
   33055 
   33056 2009-02-24  Laszlo Gombos  <laszlo.1.gombos (a] nokia.com>
   33057 
   33058         Reviewed by Simon Hausmann.
   33059 
   33060         https://bugs.webkit.org/show_bug.cgi?id=24151
   33061         Fix Qt/S60 build break
   33062 
   33063         * platform/FileSystem.h: Create a default case for non-win and non-mac Qt builds
   33064         * platform/qt/FileSystemQt.cpp: Ditto
   33065         (WebCore::unloadModule):
   33066 
   33067 2009-03-03  Mike Belshe  <mike (a] belshe.com>
   33068 
   33069         Reviewed by Alexey Proskuryakov.
   33070 
   33071         https://bugs.webkit.org/show_bug.cgi?id=21939
   33072         Uninitialized ExceptionCode in DOMWindow::postMessage
   33073 
   33074         * dom/MessagePort.cpp:
   33075         (WebCore::MessagePort::postMessage):
   33076 
   33077 2009-03-03  David Kilzer  <ddkilzer (a] apple.com>
   33078 
   33079         <rdar://problem/6581203> WebCore and WebKit should install the same set of headers during installhdrs phase as build phase
   33080 
   33081         Reviewed by Mark Rowe.
   33082 
   33083         The fix is to add INSTALLHDRS_COPY_PHASE = YES and
   33084         INSTALLHDRS_SCRIPT_PHASE = YES to WebCore.xcconfig, then to make
   33085         sure various build phase scripts work with the installhdrs build
   33086         phase.
   33087 
   33088         * Configurations/Base.xcconfig: Defined REAL_PLATFORM_NAME
   33089         based on PLATFORM_NAME to work around the missing definition on
   33090         Tiger.
   33091         * Configurations/WebCore.xcconfig: Added
   33092         JAVASCRIPTCORE_PRIVATE_HEADERS_DIR variable to simplify logic in
   33093         the "Generate Derived Sources" script.  Added
   33094         INSTALLHDRS_COPY_PHASE = YES and INSTALLHDRS_SCRIPT_PHASE = YES.
   33095 
   33096         * WebCore.xcodeproj/project.pbxproj:
   33097         - Added shell code to prevent running "Check For Global
   33098           Initializers", "Check For Exit Time Destructors" and "Check
   33099           For Weak VTables" scripts during the installhdrs build phase.
   33100         - Made "Generate Derived Sources" work for the installhdrs build
   33101           phase.  Also simplified setting of CREATE_HASH_TABLE by using
   33102           JAVASCRIPTCORE_PRIVATE_HEADERS_DIR.
   33103 
   33104 2009-03-02  Adam Langley  <agl (a] google.com>
   33105 
   33106         Reviewed by Darin Fisher.
   33107 
   33108         Chromium Linux: Switch to using Skia to render widgets.
   33109 
   33110         In order to sandbox the Chromium renderer on Linux we need to remove
   33111         the X connection. GTK cannot render without an X connection so, for
   33112         now, we render widgets ourselves.
   33113 
   33114         Previously didn't use anti-alias fonts in order to match Windows font
   33115         rendering exactly. This was helpful when bootstrapping our layout
   33116         tests. Now, however, we are ready to enable it.
   33117 
   33118         https://bugs.webkit.org/show_bug.cgi?id=24244
   33119 
   33120         * platform/chromium/ScrollbarThemeChromium.cpp:
   33121         (WebCore::ScrollbarThemeChromium::buttonSize):
   33122         * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
   33123         (WebCore::ScrollbarThemeChromium::scrollbarThickness):
   33124         (WebCore::ScrollbarThemeChromium::paintTrackPiece):
   33125         (WebCore::ScrollbarThemeChromium::paintButton):
   33126         (WebCore::ScrollbarThemeChromium::paintThumb):
   33127         * platform/graphics/chromium/FontPlatformDataLinux.cpp:
   33128         (WebCore::FontPlatformData::setupPaint):
   33129         * platform/graphics/skia/PlatformContextSkia.cpp:
   33130         (PlatformContextSkia::PlatformContextSkia):
   33131         (PlatformContextSkia::~PlatformContextSkia):
   33132         * platform/graphics/skia/PlatformContextSkia.h:
   33133         * rendering/RenderThemeChromiumGtk.cpp: Removed.
   33134         * rendering/RenderThemeChromiumGtk.h: Removed.
   33135         * rendering/RenderThemeChromiumLinux.cpp: Added.
   33136         * rendering/RenderThemeChromiumLinux.h: Added.
   33137 
   33138 2009-03-03  Dimitri Glazkov  <dglazkov (a] chromium.org>
   33139 
   33140         Reviewed by Darin Fisher.
   33141 
   33142         https://bugs.webkit.org/show_bug.cgi?id=24261
   33143         Fix return types.
   33144 
   33145         Test: LayoutTests/dom/svg/level3/xpath/XPathEvaluator_evaluate_TYPE_ERR.svg
   33146 
   33147         * bindings/v8/V8Binding.h:
   33148         (WebCore::toInt32): change return type to int
   33149         (WebCore::toFloat): change return type to float.
   33150 
   33151 2009-03-03  Anders Carlsson  <andersca (a] apple.com>
   33152 
   33153         Reviewed by John Sullivan.
   33154 
   33155         https://bugs.webkit.org/show_bug.cgi?id=22884
   33156         <rdar://problem/6449783>
   33157         modified layout test crashes Safari
   33158 
   33159         Null check NPStream before dereferencing it.
   33160         
   33161         * plugins/PluginView.cpp:
   33162         (WebCore::PluginView::destroyStream):
   33163 
   33164 2009-03-03  Eric Carlson  <eric.carlson (a] apple.com>
   33165 
   33166         Reviewed by Simon Fraser.
   33167 
   33168         Fix for <rdar://problem/6641045>
   33169         Don't call QTKit to get movie properties until movie metadata has been loaded.
   33170 
   33171         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
   33172         (WebCore::MediaPlayerPrivate::metaDataAvailable): defined
   33173         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   33174         (WebCore::MediaPlayerPrivate::createQTTime): return default if !metaDataAvailable.
   33175         (WebCore::MediaPlayerPrivate::play): Ditto.
   33176         (WebCore::MediaPlayerPrivate::pause): Ditto.
   33177         (WebCore::MediaPlayerPrivate::duration): Ditto.
   33178         (WebCore::MediaPlayerPrivate::currentTime): Ditto.
   33179         (WebCore::MediaPlayerPrivate::seek): Ditto.
   33180         (WebCore::MediaPlayerPrivate::seekTimerFired): Ditto.
   33181         (WebCore::MediaPlayerPrivate::paused): Ditto.
   33182         (WebCore::MediaPlayerPrivate::seeking): Ditto.
   33183         (WebCore::MediaPlayerPrivate::naturalSize): Ditto.
   33184         (WebCore::MediaPlayerPrivate::hasVideo): Ditto.
   33185         (WebCore::MediaPlayerPrivate::setVolume): Ditto.
   33186         (WebCore::MediaPlayerPrivate::setRate): Ditto.
   33187         (WebCore::MediaPlayerPrivate::dataRate): Ditto.
   33188         (WebCore::MediaPlayerPrivate::maxTimeLoaded): Ditto.
   33189         (WebCore::MediaPlayerPrivate::totalBytes): Ditto.
   33190 
   33191 2009-03-03  Kevin McCullough  <kmccullough (a] apple.com>
   33192 
   33193         - Spelling fix.
   33194 
   33195         * page/Console.cpp:
   33196         (WebCore::Console::profile):
   33197 
   33198 2009-03-03  Dimitri Glazkov  <dglazkov (a] chromium.org>
   33199 
   33200         Reviewed by Darin Fisher.
   33201 
   33202         https://bugs.webkit.org/show_bug.cgi?id=23657
   33203         Remove Database API callback IDLs from the project. 
   33204         They were removed in r40633.
   33205 
   33206         * WebCore.xcodeproj/project.pbxproj: Removed IDL files from the project.
   33207 
   33208 2009-03-03  Kevin McCullough  <kmccullough (a] apple.com>
   33209 
   33210         Reviewed by Oliver Hunt.
   33211 
   33212         <rdar://problem/6639110> console.profile() doesn't work without a title
   33213 
   33214         * page/Console.cpp:
   33215         (WebCore::Console::profile): If there is no title assume this is a user
   33216         initiated profile and give it the next incremented title name.
   33217 
   33218 2009-03-03  Timothy Hatcher  <timothy (a] apple.com>
   33219 
   33220         Fix a regression that broke dirxml and caused an ASSERT in debug builds. Also simplified
   33221         the console code and refactored things to have fewer code paths and duplication.
   33222 
   33223         rdar://problem/6367127
   33224         https://bugs.webkit.org/show_bug.cgi?id=24329
   33225 
   33226         Reviewed by Kevin McCullough.
   33227 
   33228         Test: manual-tests/inspector/console-dir.html
   33229 
   33230         * bindings/js/JSInspectedObjectWrapper.cpp:
   33231         (WebCore::JSInspectedObjectWrapper::wrap): Use the lexicalGlobalObject instead of dynamicGlobalObject
   33232         to fix an ASSERT about using a wrapper from the wrong ExecState.
   33233         * bindings/js/JSQuarantinedObjectWrapper.cpp:
   33234         (WebCore::JSQuarantinedObjectWrapper::JSQuarantinedObjectWrapper): Ditto.
   33235         (WebCore::JSQuarantinedObjectWrapper::allowsUnwrappedAccessFrom): Ditto.
   33236         * inspector/front-end/Console.js:
   33237         (WebInspector.Console.prototype._format): Remove the inline argument and add forceObjectFormat.
   33238         When forceObjectFormat is true, the only formatter used is _formatobject.
   33239         (WebInspector.Console.prototype._formatvalue): Remove the inline argument.
   33240         (WebInspector.Console.prototype._formatstring): Ditto.
   33241         (WebInspector.Console.prototype._formatregexp): Ditto.
   33242         (WebInspector.Console.prototype._formatarray): Ditto.
   33243         (WebInspector.Console.prototype._formatnode): Remove the inline argument and make a DOM tree instead of an anchor.
   33244         (WebInspector.Console.prototype._formatobject): Remove the inline argument and always make a property graph.
   33245         (WebInspector.Console.prototype._formaterror): Remove the inline argument.
   33246         (WebInspector.ConsoleMessage): Remove the case for MessageLevel.Node and
   33247         simplify the case for MessageLevel.Object to use the normal _format code path with the %O formatter.
   33248         (WebInspector.ConsoleMessage.prototype._format.formatForConsole): Don't pass an additional true argument for inline.
   33249         (WebInspector.ConsoleMessage.prototype._format.formatAsObjectForConsole): Added. Pass a true argument for forceObjectFormat.
   33250         (WebInspector.ConsoleMessage.prototype._format): Added support for the %O formatter. Use formatForConsole for all arguments.
   33251         (WebInspector.ConsoleMessage.prototype.toString): Add the other message levels.
   33252         * inspector/front-end/inspector.css: Tweak styles to look and work correctly.
   33253         * inspector/front-end/utilities.js:
   33254         (Object.type): Return "node" for Node objects.
   33255         (Object.describe): Handle the "node" type.
   33256         * page/Console.cpp:
   33257         (WebCore::printMessageSourceAndLevelPrefix): Fix an assert by adding the other message level types.
   33258         (WebCore::Console::dirxml): Use the standard log fuction since it prints a DOM tree for nodes by default.
   33259         * page/Console.h:
   33260         (WebCore::enum MessageLevel): Removed NodeMessageLevel. Added a FIXME.
   33261 
   33262 2009-03-03  Scott Violet  <sky (a] google.com>
   33263 
   33264         Reviewed by Eric Seidel.
   33265 
   33266         https://bugs.webkit.org/show_bug.cgi?id=24325
   33267         Crash on replacing document contents during drop.
   33268 
   33269         Makes sure a node is in the document during a move before using it.
   33270 
   33271         Test: fast/events/crash-on-mutate-during-drop.html
   33272 
   33273         * editing/MoveSelectionCommand.cpp:
   33274         (WebCore::MoveSelectionCommand::doApply):
   33275 
   33276 2009-03-03  Jungshik Shin <jshin (a] chromium.org>
   33277 
   33278         Reviewed by Eric Seidel.
   33279 
   33280         https://bugs.webkit.org/show_bug.cgi?id=23028
   33281         Enable dynamic web font support to Chromium on Windows.
   33282         Files that were omitted by mistake in the latest patch
   33283         that was landed.
   33284 
   33285         * loader/CachedFont.cpp:
   33286         (WebCore::CachedFont::~CachedFont):
   33287         (WebCore::CachedFont::ensureCustomFontData):
   33288         (WebCore::CachedFont::platformDataFromCustomData):
   33289         (WebCore::CachedFont::allClientsRemoved):
   33290         * platform/graphics/chromium/FontCustomPlatformData.cpp:
   33291         (WebCore::EOTStream::EOTStream):
   33292         (WebCore::createFontCustomPlatformData):
   33293         * platform/graphics/win/FontCustomPlatformData.cpp:
   33294         (WebCore::EOTStream::EOTStream):
   33295         (WebCore::createFontCustomPlatformData):
   33296 
   33297 2009-03-03  Gustavo Noronha Silva  <gns (a] gnome.org>
   33298 
   33299         Reviewed by Alexey Proskuryakov.
   33300 
   33301         https://bugs.webkit.org/show_bug.cgi?id=16826
   33302         [Gtk] Implement WebKitDownload
   33303 
   33304         Make the Soup backend able to handle requests without a frame,
   33305         since we may have such things now that we support downloads.
   33306 
   33307         * platform/network/ResourceHandleInternal.h:
   33308         * platform/network/soup/ResourceHandleSoup.cpp:
   33309         (WebCore::ResourceHandle::start):
   33310 
   33311 2009-03-03  Dimitri Glazkov  <dglazkov (a] chromium.org>
   33312 
   33313         Reviewed by Eric Seidel.
   33314 
   33315         https://bugs.webkit.org/show_bug.cgi?id=24331
   33316         Add custom V8 bindings for Element, Attr, HTMLFrame, and HTMLIFrame.
   33317 
   33318         * bindings/v8/custom/V8AttrCustom.cpp: Added.
   33319         * bindings/v8/custom/V8CustomBinding.cpp: Added.
   33320         * bindings/v8/custom/V8CustomBinding.h: Added attribute-checking helpers.
   33321         * bindings/v8/custom/V8ElementCustom.cpp: Added.
   33322         * bindings/v8/custom/V8HTMLFrameElementCustom.cpp: Added.
   33323         * bindings/v8/custom/V8HTMLIFrameElementCustom.cpp: Added.
   33324 
   33325 2009-03-03  Brady Eidson  <beidson (a] apple.com>
   33326 
   33327         Reviewed by Darin Adler
   33328 
   33329         <rdar://problem/6616664> - Quick looks of various file types is broken
   33330 
   33331         In http://trac.webkit.org/changeset/40553 there was an attempt to prevent NSURLRequest churn
   33332         for non-HTTP loads when the underlying ResourceRequest changed.  Unfortunately it was a little
   33333         overzealous as the mainDocumentURL is relevant for all loads, not only HTTP/HTTPS loads.
   33334 
   33335         Partially reverted behavior to always set the mainDocumentURL in situations when we would've
   33336         before that patch.
   33337 
   33338         * loader/FrameLoader.cpp:
   33339         (WebCore::FrameLoader::addExtraFieldsToRequest):
   33340 
   33341         * platform/network/ResourceRequestBase.cpp:
   33342         (WebCore::ResourceRequestBase::setMainDocumentURL):
   33343 
   33344 2009-03-03  Chris Marrin  <cmarrin (a] apple.com>
   33345 
   33346         Reviewed by Simon Fraser.
   33347 
   33348         https://bugs.webkit.org/show_bug.cgi?id=24256
   33349 
   33350         Added a WebCoreForceSoftwareAnimation flag.
   33351 
   33352         * platform/graphics/mac/GraphicsLayerCA.mm:
   33353         (WebCore::forceSoftwareAnimation):
   33354         (WebCore::GraphicsLayerCA::setOpacity):
   33355         (WebCore::GraphicsLayerCA::animateTransform):
   33356         (WebCore::GraphicsLayerCA::animateFloat):
   33357 
   33358 2009-03-02  Chris Marrin  <cmarrin (a] apple.com>
   33359 
   33360         Reviewed by Sam Weinig.
   33361 
   33362         https://bugs.webkit.org/show_bug.cgi?id=24257
   33363 
   33364         Added prototype properties for several classes with constructors that
   33365         were missing them, including the one mentioned in the bug.
   33366 
   33367         Test: fast/dom/Window/custom-constructors.html
   33368 
   33369         * bindings/js/JSAudioConstructor.cpp:
   33370         (WebCore::JSAudioConstructor::JSAudioConstructor):
   33371         * bindings/js/JSDOMWindowBase.cpp:
   33372         (jsDOMWindowBaseWebKitCSSMatrix):
   33373         * bindings/js/JSImageConstructor.cpp:
   33374         (WebCore::JSImageConstructor::JSImageConstructor):
   33375         * bindings/js/JSOptionConstructor.cpp:
   33376         (WebCore::JSOptionConstructor::JSOptionConstructor):
   33377         * bindings/js/JSWebKitCSSMatrixConstructor.cpp:
   33378         (WebCore::JSWebKitCSSMatrixConstructor::JSWebKitCSSMatrixConstructor):
   33379         * bindings/js/JSWebKitCSSMatrixConstructor.h:
   33380         * bindings/js/JSWebKitPointConstructor.cpp:
   33381         (WebCore::JSWebKitPointConstructor::JSWebKitPointConstructor):
   33382         * bindings/js/JSWorkerConstructor.cpp:
   33383         (WebCore::JSWorkerConstructor::JSWorkerConstructor):
   33384 
   33385 2009-03-03  Dimitri Glazkov  <dglazkov (a] chromium.org>
   33386 
   33387         Reviewed by Darin Fisher.
   33388 
   33389         https://bugs.webkit.org/show_bug.cgi?id=24321
   33390         Add V8 bindings headers.
   33391 
   33392         * bindings/v8/V8Binding.h: Added.
   33393         * bindings/v8/V8Proxy.h: Added.
   33394         * bindings/v8/custom/V8CustomBinding.h: Added.
   33395         * bindings/v8/custom/V8CustomEventListener.h: Added.
   33396 
   33397 2009-03-03  Jungshik Shin <jshin (a] chromium.org>
   33398 
   33399         Reviewed by Eric Seidel.
   33400 
   33401         https://bugs.webkit.org/show_bug.cgi?id=23803
   33402         Fix an 'off-by-1' error in ChromiumWin's font fallback.
   33403 
   33404         * platform/graphics/chromium/FontCacheChromiumWin.cpp:
   33405         (WebCore::FontCache::getFontDataForCharacters):
   33406 
   33407 2009-03-03  Jungshik Shin  <jshin (a] chromium.org>
   33408 
   33409         Reviewed by Eric Seidel.
   33410 
   33411         http://bugs.webkit.org/show_bug.cgi?id=23028
   33412         Enable dynamic web font support to Chromium on Windows: Part 1
   33413         - Move OpenTypeUtilities.{cpp,h} to platform/graphics/opentype
   33414           from platform/graphics/win because both Windows port and Chromium Windows
   33415           port will use them.
   33416         - Adjust WebCore.vcproj accordingly.
   33417 
   33418         * WebCore.vcproj/WebCore.vcproj:
   33419         * platform/graphics/opentype: Added.
   33420         * platform/graphics/opentype/OpenTypeUtilities.cpp: Copied from WebCore/platform/graphics/win/OpenTypeUtilities.cpp.
   33421         * platform/graphics/opentype/OpenTypeUtilities.h: Copied from WebCore/platform/graphics/win/OpenTypeUtilities.h.
   33422         * platform/graphics/win/OpenTypeUtilities.cpp: Removed.
   33423         * platform/graphics/win/OpenTypeUtilities.h: Removed.
   33424 
   33425 2009-03-03  Simon Fraser  <simon.fraser (a] apple.com>
   33426 
   33427         Reviewed by Dave Hyatt
   33428 
   33429         https://bugs.webkit.org/show_bug.cgi?id=24312
   33430         
   33431         Take 3D transforms into account when hit testing:
   33432         
   33433         1. Maintain a bit on each RenderLayer that is set when the layer
   33434            has 3d descendants, so that we know when to fall into the slow
   33435            hit testing path.
   33436            
   33437         2. Make a ref-counted HitTestingTransformState, which is used to store
   33438            an accumulated transform, and the hit test point, and hitTestRect
   33439            in the plane of the ancestor non-3d ('flattening') layer.
   33440            
   33441            It's ref-counted so we can heap allocate it (to avoid stack bloat),
   33442            and avoid copying when hitTestLayer calls itself after applying the transform.
   33443            
   33444         3. Add logic to hitTestLayer to depth-test just direct descendants, if any have
   33445            3D transforms, or to do deep depth-testing when traversing a preserves-3d
   33446            hierarchy. When hit, layers compute a z-offset from the ancestor flattening
   33447            layer, which allows for correct depth testing.
   33448            
   33449            The existing early-return codepath is unaffected when there are no 3d transforms
   33450            and no preserve-3d.
   33451 
   33452         * rendering/RenderLayer.cpp:
   33453         (WebCore::RenderLayer::RenderLayer):
   33454         (WebCore::RenderLayer::updateTransform):
   33455         (WebCore::RenderLayer::dirty3DTransformedDescendantStatus):
   33456         (WebCore::RenderLayer::update3DTransformedDescendantStatus):
   33457         (WebCore::RenderLayer::hitTest):
   33458         (WebCore::computeZOffset):
   33459         (WebCore::RenderLayer::createLocalTransformState):
   33460         (WebCore::RenderLayer::hitTestLayer):
   33461         (WebCore::RenderLayer::hitTestContents):
   33462         * rendering/RenderLayer.h:
   33463         (WebCore::RenderLayer::preserves3D):
   33464         (WebCore::RenderLayer::has3DTransform):
   33465         (WebCore::RenderLayer::setHas3DTransformedDescendant):
   33466         (WebCore::RenderLayer::has3DTransformedDescendant):
   33467         * rendering/RenderLayerBacking.cpp:
   33468         * rendering/TransformState.cpp:
   33469         (WebCore::TransformState::flatten):
   33470         (WebCore::TransformState::mappedPoint):
   33471         (WebCore::HitTestingTransformState::move):
   33472         (WebCore::HitTestingTransformState::applyTransform):
   33473         (WebCore::HitTestingTransformState::flatten):
   33474         (WebCore::HitTestingTransformState::mappedPoint):
   33475         (WebCore::HitTestingTransformState::mappedQuad):
   33476         * rendering/TransformState.h:
   33477         (WebCore::TransformState::TransformState):
   33478         (WebCore::HitTestingTransformState::create):
   33479         (WebCore::HitTestingTransformState::move):
   33480         (WebCore::HitTestingTransformState::HitTestingTransformState):
   33481 
   33482 2009-03-03  Brett Wilson  <brettw (a] chromium.org>
   33483 
   33484         Fix uninitialized memory reads in the Chromium Windows transparency
   33485         code that were identified by Purify,
   33486 
   33487         Reviewed by Darin Fisher.
   33488 
   33489         * platform/graphics/chromium/TransparencyWin.cpp:
   33490         (WebCore::TransparencyWin::OwnedBuffers::OwnedBuffers):
   33491         (WebCore::TransparencyWin::initializeNewContext):
   33492 
   33493 2009-03-03  Simon Fraser  <simon.fraser (a] apple.com>
   33494 
   33495         Reviewed by Dave Hyatt
   33496 
   33497         https://bugs.webkit.org/show_bug.cgi?id=24312
   33498         
   33499         Factor the code that compute a transform relative to the container
   33500         into RenderObject::transformFromContainer().
   33501         
   33502         * rendering/RenderBox.cpp:
   33503         (WebCore::RenderBox::mapLocalToAbsolutePoint):
   33504         (WebCore::RenderBox::mapAbsoluteToLocalPoint):
   33505         * rendering/RenderObject.cpp:
   33506         (WebCore::RenderObject::transformFromContainer):
   33507         * rendering/RenderObject.h:
   33508 
   33509 2009-03-03  Simon Fraser  <simon.fraser (a] apple.com>
   33510 
   33511         Reviewed by Dave Hyatt
   33512 
   33513         https://bugs.webkit.org/show_bug.cgi?id=24317
   33514         
   33515         Always return |true| from RenderTextControlMultiLine::nodeAtPoint() if
   33516         the superclass found a node, otherwise we set the innerNode of the
   33517         HitTestResult, but don't actually report that we found a hit.
   33518 
   33519         * rendering/RenderTextControlMultiLine.cpp:
   33520         (WebCore::RenderTextControlMultiLine::nodeAtPoint):
   33521 
   33522 2009-03-03  Onne Gorter  <onne.gorter (a] avinity.net>
   33523 
   33524         Reviewed by Anders Carlsson.
   33525 
   33526         https://bugs.webkit.org/show_bug.cgi?id=23707
   33527         resizing plugins does not work, because the plugin never gets informed
   33528 
   33529         Make gtk plugins resize correctly, by sending them the setwindow event
   33530         correctly. Also ensure that all plugin eventing is done with correct
   33531         locking/calling. Mostly copied from mac implementation.
   33532 
   33533         manual test: manual-tests/gtk/plugin-resize-scroll.html
   33534 
   33535         * plugins/PluginView.h:
   33536         * plugins/gtk/PluginViewGtk.cpp:
   33537         (WebCore::PluginView::dispatchNPEvent):
   33538         ensure locking/calling for NPEvents
   33539         (WebCore::PluginView::updatePluginWidget):
   33540         if something changed, let setNPWindowIfNeeded handle it
   33541         (WebCore::PluginView::paint):
   33542         (WebCore::PluginView::handleKeyboardEvent):
   33543         (WebCore::PluginView::handleMouseEvent):
   33544         ensure calling conventions
   33545         (WebCore::PluginView::setNPWindowRect):
   33546         just pass control to setNPWindowIfNeeded
   33547         (WebCore::PluginView::setNPWindowIfNeeded):
   33548         event the plugin correctly of new window
   33549         (WebCore::PluginView::init):
   33550         init through the new setup
   33551 
   33552 2009-03-03  Mike Belshe  <mike (a] belshe.com>
   33553 
   33554         Reviewed by Darin Fisher.
   33555 
   33556         https://bugs.webkit.org/show_bug.cgi?id=24311
   33557         Make IDL returning DOMObject use [V8Custom]
   33558 
   33559         * dom/Document.idl:
   33560         * html/HTMLCanvasElement.idl:
   33561 
   33562 2009-03-02  Simon Fraser  <simon.fraser (a] apple.com>
   33563 
   33564         Reviewed by Adele Peterson
   33565 
   33566         https://bugs.webkit.org/show_bug.cgi?id=24313
   33567         
   33568         If RenderTextControlSingleLine::nodeAtPoint() pokes a node into the
   33569         HitTestResult, then it had better well return |true|. And m_innerBlock
   33570         could never have been set as the hit node by the superclass, because
   33571         the superclass knows nothing about m_innerBlock.
   33572         
   33573         Test: fast/forms/input-hit-test-border.html
   33574 
   33575         * rendering/RenderTextControlSingleLine.cpp:
   33576         (WebCore::RenderTextControlSingleLine::nodeAtPoint):
   33577 
   33578 2009-03-02  Sam Weinig  <sam (a] webkit.org>
   33579 
   33580         Reviewed by Mark Rowe.
   33581 
   33582         Enable Geolocation (except on Tiger and Leopard).
   33583 
   33584         * Configurations/WebCore.xcconfig:
   33585 
   33586 2009-03-02  Ojan Vafai  <ojan (a] chromium.org>
   33587 
   33588         Reviewed by Adele Peterson.
   33589 
   33590         Fix https://bugs.webkit.org/show_bug.cgi?id=24307
   33591         Null out m_highlightedNode on hideHighlight().
   33592         Ran WebCore/manual-tests/inspector/highlight-nodes.html.
   33593 
   33594         * inspector/InspectorController.cpp:
   33595         (WebCore::InspectorController::hideHighlight):
   33596 
   33597 2009-03-02  Sam Weinig  <sam (a] webkit.org>
   33598 
   33599         Reviewed by Geoffrey Garen.
   33600 
   33601         Fix for <rdar://problem/6507404> Add Geolocation support.
   33602 
   33603         This is not yet turned on for any Mac platform.
   33604 
   33605         * WebCore.xcodeproj/project.pbxproj:
   33606         * page/Chrome.cpp:
   33607         (WebCore::Chrome::shouldAllowGeolocationForFrame):
   33608         * page/Chrome.h:
   33609         * page/ChromeClient.h:
   33610         (WebCore::ChromeClient::shouldAllowGeolocationForFrame):
   33611         * page/Geolocation.cpp:
   33612         (WebCore::Geolocation::Geolocation):
   33613         (WebCore::Geolocation::disconnectFrame): Remove call to setUsingGeolocation as the document
   33614         will not be alive at this point.
   33615         (WebCore::Geolocation::getCurrentPosition): Check if the embedding app allows geolocation and
   33616         return a PERMISSION_DENIED if not.
   33617         (WebCore::Geolocation::watchPosition): Ditto.
   33618         (WebCore::Geolocation::shouldAllowGeolocation): Perform request to embedding layer of whether
   33619         to allow geolocation and cache the result. 
   33620         * page/Geolocation.h:
   33621         (WebCore::Geolocation::):
   33622         * platform/GeolocationService.cpp:
   33623         * platform/GeolocationService.h:
   33624         (WebCore::GeolocationService::~GeolocationService):
   33625         (WebCore::GeolocationService::stopUpdating):
   33626         * platform/mac/GeolocationServiceMac.h: Added.
   33627         (WebCore::GeolocationServiceMac::lastPosition):
   33628         (WebCore::GeolocationServiceMac::lastError):
   33629         * platform/mac/GeolocationServiceMac.mm: Added.
   33630         (WebCore::GeolocationService::create):
   33631         (WebCore::GeolocationServiceMac::GeolocationServiceMac):
   33632         (WebCore::GeolocationServiceMac::~GeolocationServiceMac):
   33633         (WebCore::GeolocationServiceMac::startUpdating):
   33634         (WebCore::GeolocationServiceMac::stopUpdating):
   33635         (WebCore::GeolocationServiceMac::suspend):
   33636         (WebCore::GeolocationServiceMac::resume):
   33637         (WebCore::GeolocationServiceMac::positionChanged):
   33638         (WebCore::GeolocationServiceMac::errorOccurred):
   33639         (-[WebCoreCoreLocationObserver initWithCallback:]):
   33640         (-[WebCoreCoreLocationObserver locationManager:didUpdateToLocation:fromLocation:]):
   33641         (-[WebCoreCoreLocationObserver locationManager:didFailWithError:]):
   33642 
   33643 2009-03-02  Kevin Ollivier  <kevino (a] theolliviers.com>
   33644 
   33645         Build fixes for wxWidgets Mac trunk build.
   33646 
   33647         * platform/wx/wxcode/mac/carbon/fontprops.cpp:
   33648         (wxFontProperties::wxFontProperties):
   33649         (GetTextExtent):
   33650         * webcore-wx.bkl:
   33651 
   33652 2009-03-02  Kevin Ollivier  <kevino (a] theolliviers.com>
   33653 
   33654         wxGTK missing header build fix.
   33655 
   33656         * platform/wx/wxcode/gtk/fontprops.cpp:
   33657 
   33658 2009-03-02  Dan Bernstein  <mitz (a] apple.com>
   33659 
   33660         Reviewed by Adam Roben.
   33661 
   33662         - fix https://bugs.webkit.org/show_bug.cgi?id=21811
   33663           REGRESSION: Windows Build Not Selecting Proper Font
   33664 
   33665         * platform/graphics/win/FontCacheWin.cpp:
   33666         (WebCore::createGDIFont): Added back code to verify that the created
   33667         HFONT has the requested face name.
   33668 
   33669 2009-03-02  Timothy Hatcher  <timothy (a] apple.com>
   33670 
   33671         Fixes a regression caused by splitting the input and output of console commands.
   33672 
   33673         https://bugs.webkit.org/show_bug.cgi?id=24293
   33674 
   33675         Reviewed by Kevin McCullough.
   33676 
   33677         * inspector/front-end/Console.js:
   33678         (WebInspector.Console.prototype.addMessage): Don't treat ConsoleCommandResult as a
   33679         normal ConsoleMessage when appending. This prevents resetting repeatCounts incorrectly.
   33680 
   33681 2009-03-02  Timothy Hatcher  <timothy (a] apple.com>
   33682 
   33683         Make exception messages and logged Error objects display consistently.
   33684 
   33685         https://bugs.webkit.org/show_bug.cgi?id=18983
   33686 
   33687         Reviewed by Adam Roben.
   33688 
   33689         * English.lproj/localizedStrings.js: Remove a string for line numbers.
   33690         * inspector/front-end/Console.js:
   33691         (WebInspector.Console.prototype._enterKeyPressed): Pass the exception
   33692         boolean to the ConsoleCommandResult constructor and don't pass level.
   33693         (WebInspector.Console.prototype._formatnode): Fix a className typo.
   33694         (WebInspector.Console.prototype._formaterror): Add an error-message
   33695         classed span around the message to show in red and remove the
   33696         console-message-url class from the link so it doesn't float right.
   33697         Instead enclose the link in parentheses and use displayNameForURL
   33698         to shorten the URL in the link.
   33699         (WebInspector.ConsoleMessage.prototype.toMessageElement): Simplify
   33700         how line numbers are shown since link underlining a string with
   33701         parentheses looks bad.
   33702         (WebInspector.ConsoleCommandResult): Take an exception boolean flag
   33703         instead of a level and get line and URL based on that flag.
   33704         * inspector/front-end/inspector.css: Tweaks to the styles.
   33705 
   33706 2009-03-02  Ojan Vafai  <ojan (a] chromium.org>
   33707 
   33708         Reviewed by Adele Peterson.
   33709 
   33710         Bug 24048: extra windows button padding doesn't apply when there's no appearance
   33711         <https://bugs.webkit.org/show_bug.cgi?id=24048>
   33712 
   33713         Replace adjustButtonInnerStyle with buttonInternalPaddingLeft/Right/Top/Bottom.
   33714 
   33715         No tests added as existing tests already cover this behavior.
   33716 
   33717         * rendering/RenderButton.cpp:
   33718         (WebCore::RenderButton::setupInnerStyle):
   33719         * rendering/RenderTheme.cpp:
   33720         * rendering/RenderTheme.h:
   33721         (WebCore::RenderTheme::buttonInternalPaddingLeft):
   33722         (WebCore::RenderTheme::buttonInternalPaddingRight):
   33723         (WebCore::RenderTheme::buttonInternalPaddingTop):
   33724         * rendering/RenderThemeChromiumGtk.cpp:
   33725         (WebCore::RenderThemeWin::buttonInternalPaddingLeft):
   33726         (WebCore::RenderThemeWin::buttonInternalPaddingRight):
   33727         (WebCore::RenderThemeWin::buttonInternalPaddingTop):
   33728         (WebCore::RenderThemeWin::buttonInternalPaddingBottom):
   33729         * rendering/RenderThemeChromiumGtk.h:
   33730         * rendering/RenderThemeChromiumWin.cpp:
   33731         (WebCore::RenderThemeChromiumWin::buttonInternalPaddingLeft):
   33732         (WebCore::RenderThemeChromiumWin::buttonInternalPaddingRight):
   33733         (WebCore::RenderThemeChromiumWin::buttonInternalPaddingTop):
   33734         (WebCore::RenderThemeChromiumWin::buttonInternalPaddingBottom):
   33735         * rendering/RenderThemeChromiumWin.h:
   33736         * rendering/RenderThemeWin.cpp:
   33737         (WebCore::RenderThemeWin::buttonInternalPaddingLeft):
   33738         (WebCore::RenderThemeWin::buttonInternalPaddingRight):
   33739         (WebCore::RenderThemeWin::buttonInternalPaddingTop):
   33740         (WebCore::RenderThemeWin::buttonInternalPaddingBottom):
   33741         * rendering/RenderThemeWin.h:
   33742 
   33743 2009-03-02  Adam Treat  <adam.treat (a] torchmobile.com>
   33744 
   33745         Build fix for Qt port.  Remove unnecessary assert.
   33746 
   33747         * platform/graphics/qt/ImageBufferQt.cpp:
   33748         (WebCore::ImageBuffer::putImageData):
   33749 
   33750 2009-03-02  Adam Treat  <adam.treat (a] torchmobile.com>
   33751 
   33752         Reviewed by Adam Roben and previously by Eric Seidel and Simon Fraser.
   33753 
   33754         https://bugs.webkit.org/show_bug.cgi?id=24227
   33755         Ensure that the checkForSolidColor() optimization is correctly triggered
   33756         for all cases of drawPattern.  Currently, the optimization was not triggered
   33757         when the check had not been previously performed via a request for the
   33758         image's NativeImagePtr.
   33759 
   33760         Implement the Qt version of the checkForSolidColor() method.  Combined with
   33761         the bug fix this reduces the time it takes to draw a repeating background
   33762         of a 1x1 image from ~50msecs to ~0msecs on my machine.
   33763 
   33764         * platform/graphics/BitmapImage.cpp:
   33765         (WebCore::BitmapImage::BitmapImage):
   33766         * platform/graphics/BitmapImage.h:
   33767         (WebCore::BitmapImage::mayFillWithSolidColor):
   33768         * platform/graphics/Image.h:
   33769         (WebCore::Image::mayFillWithSolidColor):
   33770         * platform/graphics/cairo/ImageCairo.cpp:
   33771         (WebCore::BitmapImage::BitmapImage):
   33772         (WebCore::BitmapImage::checkForSolidColor):
   33773         * platform/graphics/cg/ImageCG.cpp:
   33774         (WebCore::BitmapImage::BitmapImage):
   33775         (WebCore::BitmapImage::checkForSolidColor):
   33776         * platform/graphics/qt/ImageQt.cpp:
   33777         (WebCore::BitmapImage::checkForSolidColor):
   33778         * platform/graphics/skia/ImageSkia.cpp:
   33779         (WebCore::BitmapImage::checkForSolidColor):
   33780         * platform/graphics/wx/ImageWx.cpp:
   33781         (WebCore::BitmapImage::checkForSolidColor):
   33782 
   33783 2009-03-02  Gustavo Noronha Silva  <gns (a] gnome.org>
   33784 
   33785         Unreviewed build fix; adding missing files to EXTRA_DIST, so that
   33786         they show up in the tarball.
   33787 
   33788         * GNUmakefile.am:
   33789 
   33790 2009-03-02  Dirk Schulze  <krit (a] webkit.org>
   33791 
   33792         Reviewed by Holger Freyther.
   33793 
   33794         Added putImageData to Qt. Discussed with Ariya Hidayat.
   33795 
   33796         [Qt] lacks putImageData support in Canvas
   33797         https://bugs.webkit.org/show_bug.cgi?id=22186
   33798 
   33799         * platform/graphics/qt/ImageBufferQt.cpp:
   33800         (WebCore::ImageBuffer::putImageData):
   33801 
   33802 2009-03-02  Timothy Hatcher  <timothy (a] apple.com>
   33803 
   33804         Show exception messages again when evaluating bad expressions in the
   33805         Web Inspector's console.
   33806 
   33807         https://bugs.webkit.org/show_bug.cgi?id=19890
   33808 
   33809         Reviewed by Oliver Hunt.
   33810 
   33811         * bindings/js/JSQuarantinedObjectWrapper.cpp:
   33812         (WebCore::JSQuarantinedObjectWrapper::transferExceptionToExecState):
   33813         Fix the order in which the exception is set and cleared now that the
   33814         exception is stored in the shared GlobalData, not per ExecState.
   33815 
   33816 2009-02-28  Timothy Hatcher  <timothy (a] apple.com>
   33817 
   33818         Make input in the Web Inspector console print before any output
   33819         that might be added by the called function.
   33820 
   33821         https://bugs.webkit.org/show_bug.cgi?id=19931
   33822 
   33823         Reviewed by Oliver Hunt.
   33824 
   33825         * inspector/front-end/Console.js:
   33826         (WebInspector.Console.prototype._enterKeyPressed): Add the command
   33827         message before evaluating the result. Associate the originating
   33828         command to the result, so if they are adjacent there is no divider.
   33829         (WebInspector.ConsoleCommand): No longer take a result.
   33830         (WebInspector.ConsoleCommand.prototype.toMessageElement): Result
   33831         code removed since it isn't used now.
   33832         (WebInspector.ConsoleCommandResult): Subclass ConsoleMessage.
   33833         (WebInspector.ConsoleCommandResult.prototype.toMessageElement):
   33834         Call the ConsoleMessage toMessageElement and add a style class.
   33835         * inspector/front-end/inspector.css: Add a new style class for
   33836         adjacent results to hide the divider. Also tweak the position of
   33837         the disclosure triangle for objects to not use the left margin.
   33838 
   33839 2009-03-01  Chris Fleizach  <cfleizach (a] apple.com>
   33840 
   33841         Reviewed by Oliver Hunt.
   33842 
   33843         Bug 24282: AX Palindrome error when asking for a specific index of the AXChildren array
   33844         <https://bugs.webkit.org/show_bug.cgi?id=24282>
   33845 
   33846         When fetching an array of elements with a range, attachment views need to be returned
   33847         instead of the actual attachment.
   33848 
   33849         * page/mac/AccessibilityObjectWrapper.mm:
   33850         (-[AccessibilityObjectWrapper accessibilityIndexOfChild:]):
   33851         (-[AccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]):
   33852 
   33853 2009-03-01  Ojan Vafai  <ojan (a] chromium.org>
   33854 
   33855         Reviewed by Eric Seidel.
   33856 
   33857         Bug 24251: Cleanup: replace positionForCoordinates with positionForPoint
   33858         <https://bugs.webkit.org/show_bug.cgi?id=24251>
   33859         
   33860         Make RenderObject::positionForCoordinate non-virtual and
   33861         RenderObject::positionForPoint virtual in preparation for
   33862         removing positionFor* from RenderObject/RenderText.
   33863 
   33864         * page/Frame.cpp:
   33865         (WebCore::Frame::visiblePositionForPoint):
   33866         * rendering/RenderBR.cpp:
   33867         (WebCore::RenderBR::positionForPoint):
   33868         * rendering/RenderBR.h:
   33869         * rendering/RenderBlock.cpp:
   33870         (WebCore::RenderBlock::positionForPoint):
   33871         * rendering/RenderBlock.h:
   33872         * rendering/RenderBox.cpp:
   33873         (WebCore::RenderBox::positionForPoint):
   33874         * rendering/RenderBox.h:
   33875         * rendering/RenderInline.cpp:
   33876         (WebCore::RenderInline::positionForPoint):
   33877         * rendering/RenderInline.h:
   33878         * rendering/RenderObject.cpp:
   33879         (WebCore::RenderObject::positionForCoordinates):
   33880         (WebCore::RenderObject::positionForPoint):
   33881         * rendering/RenderObject.h:
   33882         * rendering/RenderReplaced.cpp:
   33883         (WebCore::RenderReplaced::positionForPoint):
   33884         * rendering/RenderReplaced.h:
   33885         * rendering/RenderSVGInlineText.cpp:
   33886         (WebCore::RenderSVGInlineText::positionForPoint):
   33887         * rendering/RenderSVGInlineText.h:
   33888         * rendering/RenderText.cpp:
   33889         (WebCore::RenderText::positionForPoint):
   33890         * rendering/RenderText.h:
   33891 
   33892 2009-03-01  Larry Ewing  <lewing (a] novell.com>
   33893 
   33894         Reviewed by Alexey Proskuryakov.
   33895 
   33896         https://bugs.webkit.org/show_bug.cgi?id=24080
   33897         NPN_GetValue casting to the wrong type and writing outside bounds
   33898 
   33899         Make sure to cast the value to the correct type so that only
   33900         memory owned by the value is written to.
   33901 
   33902         * plugins/gtk/PluginViewGtk.cpp (PluginView::getValueStatic): 
   33903         * plugins/qt/PluginViewQt.cpp (PluginView::getValueStatic):
   33904         * plugins/mac/PluginViewMac.cpp (PluginView::getValueStatic): 
   33905         (PluginView::getValue):
   33906 
   33907 2009-03-01  Jeremy Moskovich  <jeremy (a] chromium.org>
   33908 
   33909         Reviewed by Simon Fraser.
   33910 
   33911         https://bugs.webkit.org/show_bug.cgi?id=24197 and
   33912         https://bugs.webkit.org/show_bug.cgi?id=23512
   33913 
   33914         The Windows version of cgColor() is conditionally compiled using
   33915         !PLATFORM(MAC) change this to PLATFORM(WIN_OS) so that Chrome
   33916         can use the OS X version instead of the Windows version.
   33917 
   33918         Also rename cgColor() -> createCGColor()
   33919 
   33920         No observable change in behavior, so no test.
   33921 
   33922         * platform/graphics/Color.h:
   33923         * platform/graphics/cg/ColorCG.cpp:
   33924         (WebCore::createCGColor):
   33925         * platform/graphics/cg/GraphicsContextCG.cpp:
   33926         (WebCore::GraphicsContext::setPlatformShadow):
   33927         * platform/graphics/mac/ColorMac.mm:
   33928         (WebCore::createCGColor):
   33929         * platform/graphics/mac/GraphicsContextMac.mm:
   33930         (WebCore::GraphicsContext::drawFocusRing):
   33931         * platform/graphics/mac/GraphicsLayerCA.mm:
   33932         (WebCore::setLayerBorderColor):
   33933         (WebCore::setLayerBackgroundColor):
   33934         (WebCore::GraphicsLayerCA::setBackgroundColor):
   33935         * platform/graphics/win/GraphicsContextCGWin.cpp:
   33936         (WebCore::GraphicsContext::drawFocusRing):
   33937         * svg/graphics/filters/cg/SVGFEHelpersCg.mm:
   33938         (WebCore::ciColor):
   33939 
   33940 2009-03-01  David Levin  <levin (a] chromium.org>
   33941 
   33942         Reviewed by Alexey Proskuryakov.
   33943 
   33944         Bug 24271: XMLHttpRequest needs js bindings for Workers.
   33945         <https://bugs.webkit.org/show_bug.cgi?id=24271>
   33946 
   33947         Tests: http/tests/xmlhttprequest/workers/methods-async.html
   33948                http/tests/xmlhttprequest/workers/methods.html
   33949 
   33950         * bindings/js/JSWorkerContextBase.cpp:
   33951         (WebCore::JSWorkerContextBase::getOwnPropertySlot):
   33952         (jsWorkerContextBaseXMLHttpRequest):
   33953         (setJSWorkerContextBaseXMLHttpRequest):
   33954         Expose XMLHttpRequest to Workers.
   33955 
   33956         * bindings/js/JSWorkerContextBase.h:
   33957 
   33958         * bindings/js/JSXMLHttpRequestConstructor.cpp:
   33959         (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
   33960         (WebCore::constructXMLHttpRequest):
   33961         (WebCore::JSXMLHttpRequestConstructor::mark):
   33962         Removed the dependencies on Document.
   33963 
   33964         * bindings/js/JSXMLHttpRequestConstructor.h:
   33965         (WebCore::JSXMLHttpRequestConstructor::scriptExecutionContext):
   33966         * dom/EventException.idl:
   33967         * dom/EventListener.idl:
   33968         Change to have the NoStaticTables attribute since they are used from XHR.
   33969 
   33970         * loader/WorkerThreadableLoader.cpp:
   33971         (WebCore::workerContextDidFinishLoading):
   33972         (WebCore::WorkerThreadableLoader::MainThreadBridge::didFinishLoading):
   33973         Fixed identifier to be unsigned long.
   33974 
   33975         * loader/WorkerThreadableLoader.h:
   33976         * workers/WorkerThread.cpp:
   33977         (WebCore::WorkerThread::workerThread):
   33978         Stop active objects when the thread is getting shutdown so that xhr gets properly shutdown.
   33979 
   33980         * xml/XMLHttpRequestUpload.cpp:
   33981 
   33982         * xml/XMLHttpRequest.idl:
   33983         * xml/XMLHttpRequestException.idl:
   33984         * xml/XMLHttpRequestProgressEvent.idl:
   33985         * xml/XMLHttpRequestUpload.idl:
   33986         Change to have the NoStaticTables attribute since they are used from XHR.
   33987 
   33988 2009-03-01  Horia Olaru  <olaru (a] adobe.com>
   33989 
   33990         Adding manual debugger test cases for bug.
   33991 
   33992         https://bugs.webkit.org/show_bug.cgi?id=21073
   33993 
   33994         Reviewed by Kevin McCullough.
   33995 
   33996         * manual-tests/inspector/debugger-step-on-do-while-statements.html: Added.
   33997         * manual-tests/inspector/debugger-step-on-for-in-statements.html: Added.
   33998         * manual-tests/inspector/debugger-step-on-for-statements.html: Added.
   33999         * manual-tests/inspector/debugger-step-on-while-statements.html: Added.
   34000         * manual-tests/inspector/resources/loop-statements.js: Added.
   34001 
   34002 2009-03-01  Dan Bernstein  <mitz (a] apple.com>
   34003 
   34004         Reviewed by Darin Adler.
   34005 
   34006         - fix <rdar://problem/6634768> Reproducible crash in RenderLayer::updateScrollCornerStyle() using full-page zoom at MobileMe Contacts
   34007 
   34008         Test: fast/events/scroll-during-zoom-change.html
   34009 
   34010         * dom/Document.cpp:
   34011         (WebCore::Document::recalcStyle): Pause scheduled events during style
   34012         reclaculation. Changes to the zoom property result in scroll events
   34013         being generated during style recalc, and those events need to be
   34014         deferred until the render tree is consistent.
   34015         * page/FrameView.cpp:
   34016         (WebCore::FrameView::layout): Changed to account for a case in which the
   34017         post-layout tasks trigger a nested layout, which reactivates the
   34018         post-layout task timer.
   34019 
   34020 2009-03-01  Ross Boucher  <rboucher (a] gmail.com>
   34021 
   34022         Alphabetically sort scripts in the Script's panel file popup menu.
   34023 
   34024         https://bugs.webkit.org/show_bug.cgi?id=23395
   34025 
   34026         Reviewed by Timothy Hatcher.
   34027 
   34028         * inspector/front-end/ScriptsPanel.js:
   34029         (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu):
   34030         * inspector/front-end/utilities.js:
   34031         (insertionIndexForObjectInListSortedByFunction):
   34032         (indexOfObjectInListSortedByFunction):
   34033 
   34034 2009-03-01  Yael Aharon  <yael.aharon (a] nokia.com>
   34035 
   34036         Pass securityOrigin->host() instead of securityOrigin->domain() to WebInspector
   34037         when creating databases, localStorage or sessionStorage. Changing document.domain
   34038         should have no affect on databases, localStorage and sessionStorage in Web Inspector.
   34039 
   34040         https://bugs.webkit.org/show_bug.cgi?id=23844
   34041 
   34042         Reviewed by Timothy Hatcher.
   34043 
   34044         * inspector/InspectorController.cpp:
   34045         (WebCore::InspectorController::addDOMStorageScriptResource):
   34046         (WebCore::InspectorController::didUseDOMStorage):
   34047         * storage/Database.cpp:
   34048         (WebCore::Database::openDatabase):
   34049 
   34050 2009-03-01  Gustavo Noronha Silva  <gns (a] gnome.org>
   34051 
   34052         Reviewed by Holger Freyther.
   34053 
   34054         Avoid leaking errors when reporting GIO errors.
   34055 
   34056         * platform/network/soup/ResourceHandleSoup.cpp:
   34057         (WebCore::readCallback):
   34058         (WebCore::openCallback):
   34059         (WebCore::queryInfoCallback):
   34060 
   34061 2009-03-01  Gustavo Noronha Silva  <gns (a] gnome.org>
   34062 
   34063         Reviewed by Holger Freyther.
   34064 
   34065         Fixes crash when the GIO backend is given the URI for a directory.
   34066 
   34067         * platform/network/soup/ResourceHandleSoup.cpp:
   34068         (WebCore::networkErrorForFile):
   34069 
   34070 2009-02-28  Dimitri Glazkov  <dglazkov (a] chromium.org>
   34071 
   34072         Reviewed by Darin Fisher.
   34073 
   34074         https://bugs.webkit.org/show_bug.cgi?id=24261
   34075         Fix V8 custom binding scrubbing error.
   34076 
   34077         Test: fast/dom/TreeWalker/TreeWalker-currentNode.html
   34078         Test: traversal/exception-forwarding.html
   34079         TesT: traversal/stay-within-root.html
   34080 
   34081         * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:
   34082         * bindings/v8/custom/V8NodeIteratorCustom.cpp:
   34083         (WebCore::toV8): Replace v8::Undefined() return value with v8::Null().
   34084         * bindings/v8/custom/V8TreeWalkerCustom.cpp:
   34085         (WebCore::toV8): Ditto.
   34086 
   34087 2009-02-28  Dimitri Glazkov  <dglazkov (a] chromium.org>
   34088 
   34089         Reviewed by Darin Fisher.
   34090 
   34091         https://bugs.webkit.org/show_bug.cgi?id=24261
   34092         Fix V8 custom binding scrubbing error.
   34093 
   34094         Test: fast/dom/CSSStyleDeclaration/css-properties-case-sensitive.html
   34095 
   34096         * WebCore.xcodeproj/project.pbxproj:
   34097         * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:
   34098         (WebCore::cssPropertyName):  Remove dubious checks, left over from
   34099             incomplete conversion of parameter from pointer to pass-by-ref.
   34100         (WebCore::NAMED_PROPERTY_GETTER): Initialize parameter.
   34101         (WebCore::NAMED_PROPERTY_SETTER): Ditto.
   34102 
   34103 2009-02-28  Xan Lopez  <xan (a] gnome.org>
   34104 
   34105         Reviewed by Holger Freyther.
   34106 
   34107         https://bugs.webkit.org/show_bug.cgi?id=24263
   34108         [GTK] ref ResourceHandle until we are finished with it
   34109 
   34110         Add a ref to the ResourceHandle in startHttp so we can keep it
   34111         alive untill all callbacks have been executed, and unref it when
   34112         soup tells us it's done with the SoupMessage (in
   34113         finishedCallback). Fixes a number of crashes when calling
   34114         didReceiveData whould crash because of the handle dying.
   34115 
   34116         * platform/network/soup/ResourceHandleSoup.cpp:
   34117         (WebCore::finishedCallback):
   34118         (WebCore::ResourceHandle::startHttp):
   34119 
   34120 2009-02-28  Adam Bergkvist <adam.bergkvist (a] ericsson.com>
   34121 
   34122         Reviewed by Alexey Proskuryakov.
   34123 
   34124         https://bugs.webkit.org/show_bug.cgi?id=24226
   34125         [SOUP] HTTP status text is never set
   34126 
   34127         Set HTTP status text to SoupMessage reason_phrase.
   34128 
   34129         * platform/network/soup/ResourceHandleSoup.cpp:
   34130         (WebCore::fillResponseFromMessage):
   34131 
   34132 2009-02-28  Dan Bernstein  <mitz (a] apple.com>
   34133 
   34134         - fix malformed project file
   34135 
   34136         * WebCore.xcodeproj/project.pbxproj:
   34137 
   34138 2009-02-28  Dan Bernstein  <mitz (a] apple.com>
   34139 
   34140         Reviewed by Oliver Hunt.
   34141 
   34142         - fix https://bugs.webkit.org/show_bug.cgi?id=23848
   34143           <rdar://problem/6573250> REGRESSION: Crash when mouse cursor moves over a link on www.opportuno.de
   34144 
   34145         Test: fast/layers/inline-dirty-z-order-lists.html
   34146 
   34147         * rendering/RenderBox.cpp:
   34148         (WebCore::RenderBox::styleWillChange): Moved the code that dirties a
   34149         layer's and its stacking context's z-order lists when the layer's
   34150         z-index or visibility change from here...
   34151         * rendering/RenderBoxModelObject.cpp:
   34152         (WebCore::RenderBoxModelObject::styleWillChange): ...to here, so that
   34153         it will apply to RenderInline too.
   34154 
   34155 2009-02-27  Alexey Proskuryakov  <ap (a] webkit.org>
   34156 
   34157         Reviewed by David Hyatt.
   34158 
   34159         Don't include TextResourceDecoder.h in Document.h
   34160 
   34161         This undoes inlining of Document::displayStringModifiedByEncoding() to avoid world rebuilds
   34162         when TextResourceDecoder.h is modified. Performance impact is expected to be negligible.
   34163 
   34164         * dom/Document.cpp:
   34165         (WebCore::Document::displayStringModifiedByEncoding):
   34166         (WebCore::Document::displayBufferModifiedByEncoding):
   34167         * dom/Document.h:
   34168         * WebCore.base.exp:
   34169 
   34170 2009-02-27  Matt Pennig  <pennig (a] apple.com>
   34171 
   34172         Reviewed by David Hyatt.
   34173 
   34174         Resolves: https://bugs.webkit.org/show_bug.cgi?id=24107
   34175         "Fixed elements have 0 as an offsetLeft property"
   34176         
   34177         Code also brings offsetLeft/Top in full conformance with the spec.
   34178         Added two tests, one for fixed-position elements, and one for <html>.
   34179         
   34180         Tests: fast/dom/Element/fixed-position-offset-parent.html
   34181                fast/dom/Element/offsetLeft-offsetTop-html.html
   34182 
   34183         * rendering/RenderBoxModelObject.cpp:
   34184         (WebCore::RenderBoxModelObject::offsetLeft):
   34185         (WebCore::RenderBoxModelObject::offsetTop):
   34186 
   34187 2009-02-27  Dean Jackson  <dino (a] apple.com>
   34188 
   34189         Reviewed by Simon Fraser.
   34190 
   34191         renderer()->hasTransform() returns true for elements
   34192         with perspective, but no transform, so test for transform
   34193         when hit testing. This fixes ASSERT from
   34194         https://bugs.webkit.org/show_bug.cgi?id=24252
   34195 
   34196         Test: transforms/no_transform_hit_testing.html
   34197 
   34198         * rendering/RenderLayer.cpp:
   34199         (WebCore::RenderLayer::hitTestLayer):
   34200 
   34201 2009-02-27  Dimitri Glazkov  <dglazkov (a] chromium.org>
   34202 
   34203         Reviewed by Darin Fisher.
   34204 
   34205         Fix scrubbing error -- a reversed condition.
   34206 
   34207         * bindings/v8/ScriptValue.h:
   34208         (WebCore::ScriptValue::clear): Change early exit for empty value, not the opposite.
   34209 
   34210 2009-02-27  Jian Li  <jianli (a] chromium.org>
   34211 
   34212         Reviewed by Alexey Proskuryakov.
   34213 
   34214         Add confirmMessageFromWorkerObject to WorkerObjectProxy.
   34215         https://bugs.webkit.org/show_bug.cgi?id=24152
   34216 
   34217         * workers/WorkerMessagingProxy.cpp:
   34218         (WebCore::MessageWorkerContextTask::performTask):
   34219         (WebCore::WorkerMessagingProxy::confirmMessageFromWorkerObject):
   34220         * workers/WorkerMessagingProxy.h:
   34221         * workers/WorkerObjectProxy.h:
   34222 
   34223 2009-02-27  Anders Carlsson  <andersca (a] apple.com>
   34224 
   34225         Reviewed by David Hyatt.
   34226 
   34227         Revert r41295, the fix for https://bugs.webkit.org/show_bug.cgi?id=24227 
   34228         because it leads to assertion failures in the Mac port.
   34229         
   34230         * platform/graphics/BitmapImage.cpp:
   34231         (WebCore::BitmapImage::BitmapImage):
   34232         * platform/graphics/BitmapImage.h:
   34233         (WebCore::BitmapImage::mayFillWithSolidColor):
   34234         * platform/graphics/Image.h:
   34235         (WebCore::Image::mayFillWithSolidColor):
   34236         * platform/graphics/cairo/ImageCairo.cpp:
   34237         (WebCore::BitmapImage::BitmapImage):
   34238         * platform/graphics/cg/ImageCG.cpp:
   34239         (WebCore::BitmapImage::BitmapImage):
   34240         (WebCore::BitmapImage::checkForSolidColor):
   34241         * platform/graphics/qt/ImageQt.cpp:
   34242         (WebCore::BitmapImage::checkForSolidColor):
   34243         * platform/graphics/skia/ImageSkia.cpp:
   34244         (WebCore::BitmapImage::checkForSolidColor):
   34245         * platform/graphics/wx/ImageWx.cpp:
   34246         (WebCore::BitmapImage::checkForSolidColor):
   34247 
   34248 2009-02-27  Adam Barth  <abarth (a] webkit.org>
   34249 
   34250         Reviewed by Eric Seidel.
   34251 
   34252         https://bugs.webkit.org/show_bug.cgi?id=20249
   34253 
   34254         Add a preference to allow universal access from local URLs to mitigate
   34255         some attacks.  Some clients still want to allow this access, so we
   34256         expose this as a preference.
   34257 
   34258         * WebCore.base.exp:
   34259         * dom/Document.cpp:
   34260         (WebCore::Document::initSecurityContext):
   34261         * page/SecurityOrigin.cpp:
   34262         (WebCore::SecurityOrigin::SecurityOrigin):
   34263         * page/Settings.cpp:
   34264         (WebCore::Settings::Settings):
   34265         (WebCore::Settings::setAllowUniversalAccessFromFileUrls):
   34266         * page/Settings.h:
   34267         (WebCore::Settings::allowUniversalAccessFromFileUrls):
   34268 
   34269 2009-02-27  Adam Treat  <adam.treat (a] torchmobile.com>
   34270 
   34271         Reviewed by Eric Seidel.
   34272 
   34273         https://bugs.webkit.org/show_bug.cgi?id=24229
   34274         If an image has no alpha channel there is no reason to use SourceOver.
   34275 
   34276         * platform/graphics/qt/ImageQt.cpp:
   34277         (WebCore::Image::drawPattern):
   34278         (WebCore::BitmapImage::draw):
   34279 
   34280 2009-02-27  Adam Treat  <adam.treat (a] torchmobile.com>
   34281 
   34282         Reviewed by Eric Seidel and Simon Fraser.
   34283 
   34284         https://bugs.webkit.org/show_bug.cgi?id=24227
   34285         Ensure that the checkForSolidColor() optimization is correctly triggered
   34286         for all cases of drawPattern.  Currently, the optimization was not triggered
   34287         when the check had not been previously performed via a request for the
   34288         image's NativeImagePtr.
   34289 
   34290         Implement the Qt version of the checkForSolidColor() method.  Combined with
   34291         the bug fix this reduces the time it takes to draw a repeating background
   34292         of a 1x1 image from ~50msecs to ~0msecs on my machine.
   34293 
   34294         * platform/graphics/BitmapImage.cpp:
   34295         (WebCore::BitmapImage::BitmapImage):
   34296         * platform/graphics/BitmapImage.h:
   34297         (WebCore::BitmapImage::mayFillWithSolidColor):
   34298         * platform/graphics/Image.h:
   34299         (WebCore::Image::mayFillWithSolidColor):
   34300         * platform/graphics/cairo/ImageCairo.cpp:
   34301         (WebCore::BitmapImage::BitmapImage):
   34302         * platform/graphics/cg/ImageCG.cpp:
   34303         (WebCore::BitmapImage::BitmapImage):
   34304         (WebCore::BitmapImage::checkForSolidColor):
   34305         * platform/graphics/qt/ImageQt.cpp:
   34306         (WebCore::BitmapImage::checkForSolidColor):
   34307         * platform/graphics/skia/ImageSkia.cpp:
   34308         (WebCore::BitmapImage::checkForSolidColor):
   34309         * platform/graphics/wx/ImageWx.cpp:
   34310         (WebCore::BitmapImage::checkForSolidColor):
   34311 
   34312 2009-02-27  Dirk Schulze  <krit (a] webkit.org>
   34313 
   34314         Reviewed by Zack Rusin.
   34315 
   34316         Added support for gradients and pattern on Fonts for Qt.
   34317 
   34318         [Qt] gradients and patterns for FontQt
   34319         https://bugs.webkit.org/show_bug.cgi?id=24243
   34320 
   34321         * platform/graphics/qt/FontQt.cpp:
   34322         (WebCore::Font::drawComplexText):
   34323 
   34324 2009-02-27  Jian Li  <jianli (a] chromium.org>
   34325 
   34326         Reviewed by Alexey Proskuryakov.
   34327 
   34328         WorkerContextProxy::create in WorkerMessagingProxy.cpp should only be provided for non-Chromium platform.
   34329         https://bugs.webkit.org/show_bug.cgi?id=24113
   34330 
   34331         * workers/WorkerMessagingProxy.cpp:
   34332 
   34333 2009-02-27  Yael Aharon  <yael.aharon (a] nokia.com>
   34334 
   34335         Added a refresh button to storage views.
   34336 
   34337         https://bugs.webkit.org/show_bug.cgi?id=24040
   34338 
   34339         Reviewed by Timothy Hatcher.
   34340 
   34341         * inspector/front-end/DOMStorageItemsView.js:
   34342         (WebInspector.DOMStorageItemsView):
   34343         (WebInspector.DOMStorageItemsView.prototype.get statusBarItems):
   34344         (WebInspector.DOMStorageItemsView.prototype.update):
   34345         (WebInspector.DOMStorageItemsView.prototype._refreshButtonClicked):
   34346         * inspector/front-end/DatabaseTableView.js:
   34347         (WebInspector.DatabaseTableView):
   34348         (WebInspector.DatabaseTableView.prototype.get statusBarItems):
   34349         (WebInspector.DatabaseTableView.prototype._refreshButtonClicked):
   34350         * inspector/front-end/DatabasesPanel.js:
   34351         (WebInspector.DatabasesPanel):
   34352         (WebInspector.DatabasesPanel.prototype.get statusBarItems):
   34353         (WebInspector.DatabasesPanel.prototype.reset):
   34354         (WebInspector.DatabasesPanel.prototype.showDatabase):
   34355         (WebInspector.DatabasesPanel.prototype.showDOMStorage):
   34356         (WebInspector.DatabasesPanel.prototype._updateSidebarWidth):
   34357         * inspector/front-end/inspector.css:
   34358 
   34359 2009-02-27  Yael Aharon  <yael.aharon (a] nokia.com>
   34360 
   34361         Added support for editing/deleting localStorage and sessionStorage items
   34362         directly from Web Inspector.
   34363 
   34364         https://bugs.webkit.org/show_bug.cgi?id=23866.
   34365 
   34366         Reviewed by Timothy Hatcher.
   34367 
   34368         * WebCore.vcproj/WebCore.vcproj:
   34369         * inspector/front-end/DOMStorageDataGrid.js: Added.
   34370         (WebInspector.DOMStorageDataGrid):
   34371         (WebInspector.DOMStorageDataGrid.prototype._ondblclick):
   34372         (WebInspector.DOMStorageDataGrid.prototype._startEditing):
   34373         (WebInspector.DOMStorageDataGrid.prototype._editingCommitted):
   34374         (WebInspector.DOMStorageDataGrid.prototype._editingCancelled):
   34375         (WebInspector.DOMStorageDataGrid.prototype.deleteSelectedRow):
   34376         * inspector/front-end/DOMStorageItemsView.js:
   34377         (WebInspector.DOMStorageItemsView):
   34378         (WebInspector.DOMStorageItemsView.prototype.get statusBarItems):
   34379         (WebInspector.DOMStorageItemsView.prototype.hide):
   34380         (WebInspector.DOMStorageItemsView.prototype.update):
   34381         (WebInspector.DOMStorageItemsView.prototype._deleteButtonClicked):
   34382         * inspector/front-end/DatabasesPanel.js:
   34383         (WebInspector.DatabasesPanel):
   34384         (WebInspector.DatabasesPanel.prototype.get statusBarItems):
   34385         (WebInspector.DatabasesPanel.prototype.reset):
   34386         (WebInspector.DatabasesPanel.prototype.showDOMStorage):
   34387         (WebInspector.DatabasesPanel.prototype.dataGridForDOMStorage):
   34388         (WebInspector.DatabasesPanel.prototype._updateSidebarWidth):
   34389         * inspector/front-end/WebKit.qrc:
   34390         * inspector/front-end/inspector.css:
   34391         * inspector/front-end/inspector.html:
   34392 
   34393 2009-02-26  Brett Wilson  <brettw (a] chromium.org>
   34394 
   34395         Fix Windows transparency for the Chromium port. Implement a helper
   34396         class for handling transparency on Windows. It allows semitransparent
   34397         ClearType and semitransparent form controls by making new layers in the
   34398         background.
   34399 
   34400         It also replaces the "ThemeHelper" which allows better
   34401         scaling and transforms on Windows form controls. In addition to the
   34402         functionality that the ThemeHelper did, but additionally handles the
   34403         antialiasing properly so that the form controls aren't composited on a
   34404         white square.
   34405 
   34406         https://bugs.webkit.org/show_bug.cgi?id=24101
   34407 
   34408         Reviewed by Eric Seidel.
   34409 
   34410         * platform/graphics/chromium/FontChromiumWin.cpp:
   34411         (WebCore::):
   34412         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::TransparencyAwareFontPainter):
   34413         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::initializeForGDI):
   34414         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::~TransparencyAwareFontPainter):
   34415         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::drawGlyphs):
   34416         (WebCore::Font::drawGlyphs):
   34417         * platform/graphics/chromium/ThemeHelperChromiumWin.cpp:
   34418         * platform/graphics/chromium/ThemeHelperChromiumWin.h:
   34419         * platform/graphics/chromium/TransparencyWin.cpp: Added.
   34420         (WebCore::):
   34421         (WebCore::TransparencyWin::OwnedBuffers::OwnedBuffers):
   34422         (WebCore::TransparencyWin::OwnedBuffers::destBitmap):
   34423         (WebCore::TransparencyWin::OwnedBuffers::referenceBitmap):
   34424         (WebCore::TransparencyWin::OwnedBuffers::canHandleSize):
   34425         (WebCore::TransparencyWin::TransparencyWin):
   34426         (WebCore::TransparencyWin::~TransparencyWin):
   34427         (WebCore::TransparencyWin::init):
   34428         (WebCore::TransparencyWin::computeLayerSize):
   34429         (WebCore::TransparencyWin::setupLayer):
   34430         (WebCore::TransparencyWin::setupLayerForNoLayer):
   34431         (WebCore::TransparencyWin::setupLayerForOpaqueCompositeLayer):
   34432         (WebCore::TransparencyWin::setupLayerForTextComposite):
   34433         (WebCore::TransparencyWin::setupLayerForWhiteLayer):
   34434         (WebCore::TransparencyWin::setupTransform):
   34435         (WebCore::TransparencyWin::setupTransformForKeepTransform):
   34436         (WebCore::TransparencyWin::setupTransformForUntransform):
   34437         (WebCore::TransparencyWin::setupTransformForScaleTransform):
   34438         (WebCore::TransparencyWin::setTextCompositeColor):
   34439         (WebCore::TransparencyWin::initializeNewContext):
   34440         (WebCore::TransparencyWin::compositeOpaqueComposite):
   34441         (WebCore::TransparencyWin::compositeTextComposite):
   34442         (WebCore::TransparencyWin::makeLayerOpaque):
   34443         * platform/graphics/chromium/TransparencyWin.h: Added.
   34444         (WebCore::TransparencyWin::):
   34445         (WebCore::TransparencyWin::context):
   34446         (WebCore::TransparencyWin::platformContext):
   34447         (WebCore::TransparencyWin::drawRect):
   34448         * platform/graphics/skia/GraphicsContextSkia.cpp:
   34449         (WebCore::GraphicsContext::endTransparencyLayer):
   34450         * platform/graphics/skia/ImageSkia.cpp:
   34451         (WebCore::paintSkBitmap):
   34452         * rendering/RenderThemeChromiumWin.cpp:
   34453         (WebCore::):
   34454         (WebCore::RenderThemeChromiumWin::paintButton):
   34455         (WebCore::RenderThemeChromiumWin::paintMenuList):
   34456         (WebCore::RenderThemeChromiumWin::paintTextFieldInternal):
   34457 
   34458 2009-02-27  Dimitri Glazkov  <dglazkov (a] chromium.org>
   34459 
   34460         Reviewed by Eric Seidel.
   34461 
   34462         https://bugs.webkit.org/show_bug.cgi?id=24211
   34463         Add ScheduledAction for V8.
   34464 
   34465         * bindings/v8/ScheduledAction.cpp: Added.
   34466         (WebCore::ScheduledAction::ScheduledAction):
   34467         (WebCore::ScheduledAction::~ScheduledAction):
   34468         (WebCore::ScheduledAction::execute):
   34469         * bindings/v8/ScheduledAction.h: Added.
   34470         (WebCore::ScheduledAction::ScheduledAction):
   34471 
   34472 2009-02-27  Zack Rusin  <zack (a] kde.org>
   34473 
   34474         Reviewed by Nikolas Zimmermann.
   34475 
   34476         Qt: be more reasonable about scrolled lines
   34477 
   34478         cMouseWheelPixelsPerLineStep is currently a constant set to 13.3. it doesn't
   34479         match our metrics meaning that Qt scrolls by ~2 lines by default which is quite
   34480         irritating. so lets scroll vertically by the Qt set number of lines * Qt default
   34481         single step scroll
   34482 
   34483         * platform/qt/WheelEventQt.cpp:
   34484 
   34485 2009-02-27  Xan Lopez  <xan (a] gnome.org>
   34486 
   34487         Rubber-stamped by Alexey Proskuryakov.
   34488 
   34489         https://bugs.webkit.org/show_bug.cgi?id=24222
   34490         [GTK] Remove checks for old glib versions
   34491 
   34492         libsoup, which is a hard dependency, needs at least glib 2.15.3,
   34493         so remove all glib checks for versions older than that.
   34494 
   34495         * platform/gtk/ContextMenuGtk.cpp:
   34496         (WebCore::ContextMenu::ContextMenu):
   34497         * platform/gtk/ContextMenuItemGtk.cpp:
   34498         (WebCore::ContextMenuItem::setSubMenu):
   34499         * platform/gtk/PopupMenuGtk.cpp:
   34500         (WebCore::PopupMenu::show):
   34501         * platform/gtk/WidgetGtk.cpp:
   34502         (WebCore::Widget::retainPlatformWidget):
   34503         * platform/network/soup/ResourceHandleSoup.cpp:
   34504 
   34505 2009-02-26  Dirk Schulze  <krit (a] webkit.org>
   34506 
   34507         Reviewed by Oliver Hunt.
   34508 
   34509         Added support for Gradients and Patterns on filled or stroked Fonts
   34510         in Cairo. I also added support for globalAlpha on FontCairo.
   34511 
   34512         [CAIRO] SVG/Canvas fonts miss gradients/pattern support
   34513         https://bugs.webkit.org/show_bug.cgi?id=18617
   34514 
   34515         * html/CanvasRenderingContext2D.cpp:
   34516         (WebCore::CanvasRenderingContext2D::drawTextInternal):
   34517         * platform/graphics/cairo/FontCairo.cpp:
   34518         (WebCore::Font::drawGlyphs):
   34519 
   34520 2009-02-26  Stephen White  <senorblanco (a] chromium.org>
   34521 
   34522         Reviewed by Eric Seidel.
   34523 
   34524         https://bugs.webkit.org/show_bug.cgi?id=23957
   34525 
   34526         Fix for SVG gradient and pattern text for Chromium/skia. 
   34527         Added accessors for the fill and stroke gradients to
   34528         GraphicsContext.  Changed the paintSkiaText function to take a
   34529         GraphicsContext, so we can check for gradients/patterns. 
   34530         Changed the skiaDrawText function to set the SkPaint shader
   34531         correctly, and to scale up the gradient shader matrix to
   34532         encompass the entire text string.  Also offset each glyph
   34533         separately, rather than transforming the canvas, so that the
   34534         gradient/pattern stays fixed relative to the text origin.
   34535 
   34536         * platform/graphics/GraphicsContext.cpp:
   34537         (WebCore::GraphicsContext::getFillGradient):
   34538         (WebCore::GraphicsContext::getStrokeGradient):
   34539         (WebCore::GraphicsContext::getFillPattern):
   34540         (WebCore::GraphicsContext::getStrokePattern):
   34541         * platform/graphics/GraphicsContext.h:
   34542         * platform/graphics/chromium/FontChromiumWin.cpp:
   34543         (WebCore::Font::drawGlyphs):
   34544         * platform/graphics/chromium/UniscribeHelper.cpp:
   34545         (WebCore::UniscribeHelper::draw):
   34546         * platform/graphics/skia/SkiaFontWin.cpp:
   34547         (WebCore::windowsCanHandleTextDrawing):
   34548         (WebCore::skiaDrawText):
   34549         (WebCore::paintSkiaText):
   34550         * platform/graphics/skia/SkiaFontWin.h:
   34551 
   34552 2009-02-26  Dimitri Glazkov  <dglazkov (a] chromium.org>
   34553 
   34554         Reviewed by Eric Seidel.
   34555 
   34556         https://bugs.webkit.org/show_bug.cgi?id=24208
   34557         Add custom V8 bindings for Navigator, Clipboard, Document, and Node.
   34558 
   34559         * bindings/v8/custom/V8ClipboardCustom.cpp: Added.
   34560         (WebCore::ACCESSOR_GETTER):
   34561         (WebCore::CALLBACK_FUNC_DECL):
   34562         * bindings/v8/custom/V8DocumentCustom.cpp: Added.
   34563         (WebCore::CALLBACK_FUNC_DECL):
   34564         * bindings/v8/custom/V8NavigatorCustom.cpp: Added.
   34565         (WebCore::ACCESSOR_GETTER):
   34566         * bindings/v8/custom/V8NodeCustom.cpp: Added.
   34567         (WebCore::CALLBACK_FUNC_DECL):
   34568 
   34569 2009-02-26  Gustavo Noronha Silva  <gns (a] gnome.org>
   34570 
   34571         Unreviewed build fix for building with GNOME Keyring enabled.
   34572 
   34573         * platform/network/soup/webkit-soup-auth-dialog.c:
   34574         (show_auth_dialog):
   34575 
   34576 2009-02-26  Xan Lopez  <xan (a] gnome.org>
   34577 
   34578         Reviewed by Holger Freyther.
   34579 
   34580         https://bugs.webkit.org/show_bug.cgi?id=16947
   34581         [GTK] Missing HTTP Auth challenge
   34582 
   34583         Add HTTP authentication dialog with optional GNOME Keyring
   34584         storage.
   34585 
   34586         * GNUmakefile.am:
   34587         * platform/network/ResourceHandleInternal.h:
   34588         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
   34589         * platform/network/soup/ResourceHandleSoup.cpp:
   34590         (WebCore::currentToplevelCallback):
   34591         (WebCore::ResourceHandle::startHttp):
   34592         (WebCore::ResourceHandle::start):
   34593         * platform/network/soup/webkit-soup-auth-dialog.c: Added.
   34594         (webkit_soup_auth_dialog_class_init):
   34595         (webkit_soup_auth_dialog_init):
   34596         (webkit_soup_auth_dialog_session_feature_init):
   34597         (free_authData):
   34598         (set_password_callback):
   34599         (response_callback):
   34600         (show_auth_dialog):
   34601         (find_password_callback):
   34602         (session_authenticate):
   34603         (attach):
   34604         * platform/network/soup/webkit-soup-auth-dialog.h: Added.
   34605 
   34606 2009-02-25  Ojan Vafai  <ojan (a] chromium.org> and Eric Seidel <eric (a] webkit.org>
   34607 
   34608         Reviewed by Dave Hyatt.
   34609 
   34610         After Ojan's positionForCoordinates fix http://trac.webkit.org/changeset/41191
   34611         svg/custom/pointer-events-image.svg and svg/custom/pointer-events-text.svg
   34612         started failing because Ojan's new code was now *correctly* calling through to
   34613         SVG asking for the closest text offset in the last line box, instead of
   34614         just returning the offset at the end of the last line box when clicking below a box.
   34615 
   34616         But!  The SVG code was wrong, in that it returned the character offset of the last
   34617         character when you asked for a character offset after the end of the box, instead
   34618         it should return the offset *after* the last character.  This patch fixes
   34619         that behavior by reordering the last two clauses in svgCharacterHitsPosition.
   34620 
   34621         The SVG positionForCoordinates function is still wrong, and I've added some FIXMEs
   34622         to document what's wrong.  I've also cleaned up the code a bit so it's clearer
   34623         what it is doing (which also makes more obvious what's wrong with it).
   34624 
   34625         * rendering/RenderSVGInlineText.cpp:
   34626         (WebCore::RenderSVGInlineText::positionForCoordinates):
   34627         * rendering/SVGInlineTextBox.cpp:
   34628         (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::SVGInlineTextBoxClosestCharacterToPositionWalker):
   34629         (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::chunkPortionCallback):
   34630         (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::offsetOfHitCharacter):
   34631         (WebCore::SVGInlineTextBox::closestCharacterToPosition):
   34632         (WebCore::SVGInlineTextBox::svgCharacterHitsPosition):
   34633 
   34634 2009-02-26  Darin Fisher  <darin (a] chromium.org>
   34635 
   34636         Reviewed by Eric Seidel.
   34637 
   34638         Minor cleanup of ChromiumBridge:
   34639         Removing unused matchesMIMEType method and s/Javascript/JavaScript/
   34640 
   34641         * platform/chromium/ChromiumBridge.h:
   34642         * platform/chromium/MimeTypeRegistryChromium.cpp:
   34643         (WebCore::MIMETypeRegistry::isSupportedImageMIMEType):
   34644         (WebCore::MIMETypeRegistry::isSupportedJavaScriptMIMEType):
   34645         (WebCore::MIMETypeRegistry::isSupportedNonImageMIMEType):
   34646 
   34647 2009-02-26  David Hyatt  <hyatt (a] apple.com>
   34648 
   34649         Reviewed by Sam Weinig
   34650 
   34651         Fix text-bottom vertical alignment.  It was incorrectly aligning the bottom of the descent instead of including
   34652         the line-height below the descent.
   34653 
   34654         Added fast/inline/vertical-align-text-bottom.html
   34655 
   34656         * rendering/RenderBoxModelObject.cpp:
   34657         (WebCore::RenderBoxModelObject::verticalPosition):
   34658 
   34659 2009-02-26  Dirk Schulze  <krit (a] webkit.org>
   34660 
   34661         Reviewed by Eric Seidel.
   34662 
   34663         Make SVG Masking platform independet with the use of ImageBuffer::getImageData(),
   34664         ImageBuffer::putImageData() and GraphicsContext::clipToImageBuffer(). Every platform has
   34665         just to implement this three methods to support SVG Masking now.
   34666  
   34667         Make SVG Masking platform aware
   34668         https://bugs.webkit.org/show_bug.cgi?id=19243
   34669 
   34670         * GNUmakefile.am:
   34671         * WebCore.pro:
   34672         * WebCore.vcproj/WebCore.vcproj:
   34673         * WebCore.xcodeproj/project.pbxproj:
   34674         * svg/graphics/SVGResourceMasker.cpp:
   34675         (WebCore::SVGResourceMasker::applyMask):
   34676         * svg/graphics/cairo/SVGResourceMaskerCairo.cpp: Removed.
   34677         * svg/graphics/cg/SVGResourceMaskerCg.cpp: Removed.
   34678         * svg/graphics/cg/SVGResourceMaskerCg.mm: Removed.
   34679         * svg/graphics/qt/SVGResourceMaskerQt.cpp: Removed.
   34680         * svg/graphics/skia/SVGResourceMaskerSkia.cpp: Removed.
   34681 
   34682 2009-02-26  Yong Li  <yong.li (a] torchmobile.com>
   34683 
   34684         Reviewed by Darin Adler, Antti Koivisto and Alexey Proskuryakov.
   34685 
   34686         Test: http/tests/misc/slow-preload-cancel.html
   34687 
   34688         https://bugs.webkit.org/show_bug.cgi?id=24133
   34689         Clear all pending preloads in the DocLoader object when we decide to
   34690         cancel its all requests.
   34691 
   34692         * loader/DocLoader.cpp:
   34693         (WebCore::DocLoader::clearPendingPreloads):
   34694         * loader/DocLoader.h:
   34695         * loader/loader.cpp:
   34696         (WebCore::Loader::cancelRequests):
   34697 
   34698 2009-02-26  Dimitri Glazkov  <dglazkov (a] chromium.org>
   34699 
   34700         Reviewed by Eric Seidel.
   34701 
   34702         https://bugs.webkit.org/show_bug.cgi?id=24182
   34703         Add NodeFilter, NodeIterator, and TreeWalker custom V8 bindings.
   34704 
   34705         * bindings/v8/custom/V8NodeFilterCustom.cpp: Added.
   34706         (WebCore::CALLBACK_FUNC_DECL):
   34707         * bindings/v8/custom/V8NodeIteratorCustom.cpp: Added.
   34708         (WebCore::toV8):
   34709         (WebCore::CALLBACK_FUNC_DECL):
   34710         * bindings/v8/custom/V8TreeWalkerCustom.cpp: Added.
   34711         (WebCore::toV8):
   34712         (WebCore::CALLBACK_FUNC_DECL):
   34713 
   34714 2009-02-26  Alexey Proskuryakov  <ap (a] webkit.org>
   34715 
   34716         Reviewed by Darin Adler.
   34717 
   34718         https://bugs.webkit.org/show_bug.cgi?id=23500
   34719         KURL::parse() incorrectly compares its result to original string
   34720 
   34721         * platform/KURL.cpp: (WebCore::KURL::parse): Take string length into account.
   34722 
   34723 2009-02-26  Ojan Vafai  <ojan (a] chromium.org>
   34724 
   34725         Reviewed by Kevin McCullough.
   34726 
   34727         Manual test for inspector node highlighting.
   34728 
   34729         * manual-tests/inspector/highlight-nodes.html: Added.
   34730 
   34731 2009-02-16  Anantanarayanan Iyengar  <ananta (a] chromium.org>
   34732 
   34733         Reviewed by Darin Fisher.
   34734 
   34735         https://bugs.webkit.org/show_bug.cgi?id=23973
   34736         ScrollView::scrollContents can be invoked during view shutdown.  In
   34737         this scenario the FrameView::hostWindow method can return NULL, which
   34738         indicates that the frame/page is being destroyed. This causes a crash
   34739         when we try to dereference a NULL hostWindow pointer.  Fix is to add a
   34740         NULL check for this.  
   34741 
   34742         * platform/ScrollView.cpp:
   34743         (WebCore::ScrollView::scrollContents):
   34744 
   34745 2009-02-26  Rahul Kuchhal  <kuchhal (a] chromium.org>
   34746 
   34747         Reviewed by Dave Hyatt.
   34748 
   34749         https://bugs.webkit.org/show_bug.cgi?id=24003
   34750         Fix a crash caused by unsafe type conversion.
   34751 
   34752         Test: fast/block/positioning/absolute-in-inline-rtl-4.html
   34753 
   34754         * rendering/RenderBox.cpp:
   34755         (WebCore::RenderBox::calcAbsoluteHorizontalValues):
   34756 
   34757 2009-02-26  Ojan Vafai  <ojan (a] chromium.org>
   34758 
   34759         Reviewed by Adam Roben.
   34760 
   34761         https://bugs.webkit.org/show_bug.cgi?id=24202
   34762         Have drawNodeHighlight clip instead of clearing. This makes it work for
   34763         both Safari and Chromium since Chromium draws the inspector highlighting
   34764         in the same buffer as the page.
   34765 
   34766         * inspector/InspectorController.cpp:
   34767         (WebCore::quadToPath):
   34768         (WebCore::drawOutlinedQuad):
   34769         (WebCore::drawOutlinedQuadWithClip):
   34770         (WebCore::drawHighlightForBox):
   34771 
   34772 2009-02-26  David Hyatt  <hyatt (a] apple.com>
   34773 
   34774         Reviewed by Dan Bernstein & Darin Adler
   34775 
   34776         Make sure the border/padding are properly omitted at the start of an inline that is a continuation.
   34777         
   34778         Added fast/inline/inline-continuation-borders.html
   34779 
   34780         * rendering/InlineFlowBox.cpp:
   34781         (WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
   34782 
   34783 2009-02-26  Simon Fraser  <simon.fraser (a] apple.com>
   34784 
   34785         Build fix, no review.
   34786         
   34787         Try to fix the wx build after r41218.
   34788 
   34789         * WebCoreSources.bkl:
   34790 
   34791 2009-02-26  Alexey Proskuryakov  <ap (a] webkit.org>
   34792 
   34793         Reviewed by Darin Adler.
   34794 
   34795         https://bugs.webkit.org/show_bug.cgi?id=19527
   34796         ASSERTION FAILED: containerA && containerB
   34797 
   34798         Test: fast/dom/Range/bug-19527.html
   34799 
   34800         * dom/Range.cpp:
   34801         (WebCore::Range::isPointInRange):
   34802         (WebCore::Range::comparePoint):
   34803         Bring the behavior in line with current Firefox, making it impossible for these methods
   34804         to pass a null container to compareBoundaryPoints().
   34805 
   34806 2009-02-26  Jonathon Jongsma  <jonathon (a] quotidian.org>
   34807 
   34808         Reviewed by Holger Freyther.
   34809 
   34810         https://bugs.webkit.org/show_bug.cgi?id=20358
   34811 
   34812         * platform/graphics/gtk/SimpleFontDataGtk.cpp:
   34813         (WebCore::SimpleFontData::smallCapsFontData): the small-caps font data
   34814         should set the computed size rather than the specified size, otherwise
   34815         the caps just get rendered normal size.
   34816 
   34817 2009-02-26  Benjamin Meyer  <benjamin.meyer (a] torchmobile.com>
   34818 
   34819         Reviewed by George Staikos.
   34820 
   34821         https://bugs.webkit.org/show_bug.cgi?id=24062
   34822         QNetworkCookieJar expects the url and not the policy url.  Sending the
   34823         policy url will cause QNetworkCookieJar to behave incorrectly.  One
   34824         example would be a cookie that does not have a path or domain.
   34825         QNetworkCookieJar will use the url it is given to fill in default values.
   34826         This allows setting cookies on the url of the main frame from an iFrame
   34827         when the cookie should be set on the url of the iFrame.
   34828 
   34829         Originally noticed on http://writer.zoho.com/jsp/home.jsp?serviceurl=/index.do
   34830 
   34831         * platform/qt/CookieJarQt.cpp:
   34832         (WebCore::setCookies):
   34833 
   34834 2009-02-26  Charles Wei  <charles.wei (a] torchmobile.com.cn>
   34835 
   34836         Reviewed by George Staikos.
   34837 
   34838         make WebKit/Qt compile with SVG disabled
   34839 
   34840         * WebCore.pro:
   34841         * platform/graphics/qt/FontPlatformDataQt.cpp:
   34842 
   34843 2009-02-25  Gustavo Noronha Silva  <gns (a] gnome.org>
   34844 
   34845         Unreviewed build fix. Add WebCore/workers to the list of paths
   34846         searched by the bindings generator perl script.
   34847 
   34848         * GNUmakefile.am:
   34849 
   34850 2009-02-25  Sam Weinig  <sam (a] webkit.org>
   34851 
   34852         Reviewed by Geoffrey Garen.
   34853 
   34854         Add canvas to the list of RenderObjects that can mark a page as
   34855         visually not empty.
   34856 
   34857         * rendering/RenderHTMLCanvas.cpp:
   34858         (WebCore::RenderHTMLCanvas::RenderHTMLCanvas):
   34859 
   34860 2009-02-25  Eric Carlson  <eric.carlson (a] apple.com>
   34861 
   34862         Reviewed by Dave Hyatt.
   34863 
   34864         * rendering/RenderBox.cpp:
   34865         (WebCore::RenderBox::nodeAtPoint): Remove assertion fired when child has layer
   34866         as RenderMedia with controls always has a layer.
   34867 
   34868 2009-02-25  Dan Bernstein  <mitz (a] apple.com>
   34869 
   34870         Reviewed by Simon Fraser.
   34871 
   34872         - fix https://bugs.webkit.org/show_bug.cgi?id=24130
   34873           <rdar://problem/6618196> Paint very slow when horizontally resizing
   34874 
   34875         Test: fast/gradients/background-clipped.html
   34876 
   34877         * rendering/RenderBoxModelObject.cpp:
   34878         (WebCore::RenderBoxModelObject::paintFillLayerExtended): Intersect the
   34879         destination rectangle passed to drawTiledImage() with the dirty
   34880         rectangle. This makes it more likely for the destination rect to be
   34881         contained in a single tile rect, which results in a faster code path
   34882         being taken down the road (just drawing a single tile instead of
   34883         tiling).
   34884 
   34885 2009-02-25  Ojan Vafai  <ojan (a] chromium.org>
   34886 
   34887         Reviewed by Eric Seidel.
   34888 
   34889         Fix test regressions from positionForCoordinates patch.
   34890         https://bugs.webkit.org/show_bug.cgi?id=24148
   34891 
   34892         * rendering/RenderBlock.cpp:
   34893         (WebCore::positionForPointWithInlineChildren):
   34894         Remove ASSERT that placeholder text codepath is hitting.
   34895 
   34896 2009-02-25  Chris Fleizach  <cfleizach (a] apple.com>
   34897 
   34898         Reviewed by Beth Dakin.
   34899 
   34900         Bug 24143: Crash occurs at WebCore::AccessibilityTable::isTableExposableThroughAccessibility() when applying a link in GMail
   34901         https://bugs.webkit.org/show_bug.cgi?id=24143
   34902 
   34903         When an AX object is marked dirty, do not create AX elements while going up the parent chain.
   34904         Do not allow AXRenderObjects to remove their own IDs from the cache, all the cache to do that work
   34905         Make sure the AXObjectWrapper's have an object before calling them
   34906         In AXObjectCache, change get -> getOrCreate. Use get() to only retrieve an element if it exists
   34907 
   34908         Test: platform/mac-snowleopard/accessibility/table-updating.html
   34909 
   34910         * WebCore.base.exp:
   34911         * page/AXObjectCache.cpp:
   34912         (WebCore::AXObjectCache::~AXObjectCache):
   34913         (WebCore::AXObjectCache::get):
   34914         (WebCore::AXObjectCache::getOrCreate):
   34915         (WebCore::AXObjectCache::removeAXID):
   34916         (WebCore::AXObjectCache::handleActiveDescendantChanged):
   34917         (WebCore::AXObjectCache::handleAriaRoleChanged):
   34918         * page/AXObjectCache.h:
   34919         * page/AccessibilityImageMapLink.cpp:
   34920         (WebCore::AccessibilityImageMapLink::parentObject):
   34921         * page/AccessibilityListBox.cpp:
   34922         (WebCore::AccessibilityListBox::listBoxOptionAccessibilityObject):
   34923         (WebCore::AccessibilityListBox::doAccessibilityHitTest):
   34924         * page/AccessibilityListBoxOption.cpp:
   34925         (WebCore::AccessibilityListBoxOption::elementRect):
   34926         (WebCore::AccessibilityListBoxOption::parentObject):
   34927         * page/AccessibilityObject.cpp:
   34928         (WebCore::AccessibilityObject::detach):
   34929         (WebCore::AccessibilityObject::parentObjectIfExists):
   34930         (WebCore::replacedNodeNeedsCharacter):
   34931         (WebCore::AccessibilityObject::accessibilityObjectForPosition):
   34932         * page/AccessibilityObject.h:
   34933         * page/AccessibilityRenderObject.cpp:
   34934         (WebCore::AccessibilityRenderObject::firstChild):
   34935         (WebCore::AccessibilityRenderObject::lastChild):
   34936         (WebCore::AccessibilityRenderObject::previousSibling):
   34937         (WebCore::AccessibilityRenderObject::nextSibling):
   34938         (WebCore::AccessibilityRenderObject::parentObjectIfExists):
   34939         (WebCore::AccessibilityRenderObject::parentObject):
   34940         (WebCore::AccessibilityRenderObject::isAttachment):
   34941         (WebCore::AccessibilityRenderObject::headingLevel):
   34942         (WebCore::AccessibilityRenderObject::anchorElement):
   34943         (WebCore::AccessibilityRenderObject::menuForMenuButton):
   34944         (WebCore::AccessibilityRenderObject::menuButtonForMenu):
   34945         (WebCore::AccessibilityRenderObject::checkboxOrRadioRect):
   34946         (WebCore::AccessibilityRenderObject::internalLinkElement):
   34947         (WebCore::AccessibilityRenderObject::addRadioButtonGroupMembers):
   34948         (WebCore::AccessibilityRenderObject::titleUIElement):
   34949         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
   34950         (WebCore::AccessibilityRenderObject::accessibilityParentForImageMap):
   34951         (WebCore::AccessibilityRenderObject::getDocumentLinks):
   34952         (WebCore::AccessibilityRenderObject::doAccessibilityHitTest):
   34953         (WebCore::AccessibilityRenderObject::focusedUIElement):
   34954         (WebCore::AccessibilityRenderObject::activeDescendant):
   34955         (WebCore::AccessibilityRenderObject::observableObject):
   34956         (WebCore::AccessibilityRenderObject::childrenChanged):
   34957         (WebCore::AccessibilityRenderObject::addChildren):
   34958         * page/AccessibilityRenderObject.h:
   34959         (WebCore::AccessibilityRenderObject::setRenderObject):
   34960         * page/AccessibilityTable.cpp:
   34961         (WebCore::AccessibilityTable::addChildren):
   34962         (WebCore::AccessibilityTable::headerContainer):
   34963         (WebCore::AccessibilityTable::cellForColumnAndRow):
   34964         * page/AccessibilityTableCell.cpp:
   34965         (WebCore::AccessibilityTableCell::isTableCell):
   34966         (WebCore::AccessibilityTableCell::titleUIElement):
   34967         * page/AccessibilityTableColumn.cpp:
   34968         (WebCore::AccessibilityTableColumn::headerObjectForSection):
   34969         * page/AccessibilityTableRow.cpp:
   34970         (WebCore::AccessibilityTableRow::isTableRow):
   34971         * page/gtk/AccessibilityObjectWrapperAtk.cpp:
   34972         * page/mac/AXObjectCacheMac.mm:
   34973         (WebCore::AXObjectCache::postNotification):
   34974         (WebCore::AXObjectCache::postNotificationToElement):
   34975         * page/mac/AccessibilityObjectWrapper.mm:
   34976         (textMarkerForVisiblePosition):
   34977         (AXLinkElementForNode):
   34978         (nsStringForReplacedNode):
   34979         (-[AccessibilityObjectWrapper doAXAttributedStringForTextMarkerRange:]):
   34980         (-[AccessibilityObjectWrapper accessibilityActionNames]):
   34981         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
   34982         (-[AccessibilityObjectWrapper accessibilityFocusedUIElement]):
   34983         (-[AccessibilityObjectWrapper accessibilityHitTest:]):
   34984         (-[AccessibilityObjectWrapper accessibilityIsAttributeSettable:]):
   34985         (-[AccessibilityObjectWrapper accessibilityIsIgnored]):
   34986         (-[AccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
   34987         (-[AccessibilityObjectWrapper accessibilityPerformPressAction]):
   34988         (-[AccessibilityObjectWrapper accessibilityPerformAction:]):
   34989         (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]):
   34990         (-[AccessibilityObjectWrapper _accessibilityParentForSubview:]):
   34991         (-[AccessibilityObjectWrapper accessibilityIndexOfChild:]):
   34992         (-[AccessibilityObjectWrapper accessibilityArrayAttributeCount:]):
   34993         (-[AccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]):
   34994 
   34995 2009-02-25  Beth Dakin  <bdakin (a] apple.com>
   34996 
   34997         Reviewed by Geoff Garen.
   34998 
   34999         Re-working of <rdar://problem/6487249> repro crash in 
   35000         WebCore::CSSParser::parseFillImage copying entire contents of this 
   35001         page
   35002         -and corresponding: https://bugs.webkit.org/show_bug.cgi?id=24172
   35003 
   35004         Fixes a bunch of layout test failures I caused!
   35005 
   35006         * css/CSSParser.cpp:
   35007         (WebCore::CSSParser::parseValue):
   35008         (WebCore::CSSParser::parseContent):
   35009         (WebCore::CSSParser::parseFillImage):
   35010         (WebCore::CSSParser::parseFontFaceSrc):
   35011         (WebCore::CSSParser::parseBorderImage):
   35012 
   35013 2009-02-25  Dimitri Glazkov  <dglazkov (a] chromium.org>
   35014 
   35015         Reviewed by Eric Seidel.
   35016 
   35017         https://bugs.webkit.org/show_bug.cgi?id=24174
   35018         Add more V8 custom bindings.
   35019 
   35020         * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp: Added.
   35021         (WebCore::hasCSSPropertyNamePrefix):
   35022         (WebCore::cssPropertyName):
   35023         (WebCore::NAMED_PROPERTY_GETTER):
   35024         (WebCore::NAMED_PROPERTY_SETTER):
   35025         * bindings/v8/custom/V8DOMStringListCustom.cpp: Added.
   35026         (WebCore::INDEXED_PROPERTY_GETTER):
   35027         (WebCore::CALLBACK_FUNC_DECL):
   35028         * bindings/v8/custom/V8EventCustom.cpp: Added.
   35029         (WebCore::ACCESSOR_SETTER):
   35030         (WebCore::ACCESSOR_GETTER):
   35031         * bindings/v8/custom/V8HTMLDocumentCustom.cpp: Added.
   35032         (WebCore::NAMED_PROPERTY_DELETER):
   35033         (WebCore::NAMED_PROPERTY_SETTER):
   35034         (WebCore::NAMED_PROPERTY_GETTER):
   35035         * bindings/v8/custom/V8HTMLFrameSetElementCustom.cpp: Added.
   35036         (WebCore::NAMED_PROPERTY_GETTER):
   35037         * bindings/v8/custom/V8NamedNodeMapCustom.cpp: Added.
   35038         (WebCore::INDEXED_PROPERTY_GETTER):
   35039         (WebCore::NAMED_PROPERTY_GETTER):
   35040         * bindings/v8/custom/V8NodeListCustom.cpp: Added.
   35041         (WebCore::NAMED_PROPERTY_GETTER):
   35042         * bindings/v8/custom/V8StyleSheetListCustom.cpp: Added.
   35043         (WebCore::NAMED_PROPERTY_GETTER):
   35044 
   35045 2009-02-25  Scott Violet  <sky (a] google.com>
   35046 
   35047         Reviewed by Dave Hyatt.
   35048 
   35049         https://bugs.webkit.org/show_bug.cgi?id=24171
   35050         Provides a RenderTheme method for getting the scroll bar size and
   35051         changes RenderListBox to use it. RenderTheme returns a size of regular,
   35052         and Mac's override to return small. Changes ScrollbarThemeChromium to
   35053         use the scrollbarsize of the scrollbar when getting the size
   35054         instead of passing in no-args.
   35055 
   35056         * platform/chromium/ScrollbarThemeChromium.cpp:
   35057         (WebCore::ScrollbarThemeChromium::trackRect):
   35058         (WebCore::ScrollbarThemeChromium::buttonSize):
   35059         * rendering/RenderListBox.cpp:
   35060         (WebCore::RenderListBox::createScrollbar):
   35061         * rendering/RenderTheme.h:
   35062         (WebCore::RenderTheme::scrollbarControlSizeForPart):
   35063         * rendering/RenderThemeChromiumMac.h:
   35064         (WebCore::RenderThemeChromiumMac::scrollbarControlSizeForPart):
   35065         * rendering/RenderThemeMac.h:
   35066         (WebCore::RenderThemeMac::scrollbarControlSizeForPart):
   35067 
   35068 2009-02-25  Beth Dakin  <bdakin (a] apple.com>
   35069 
   35070         Reviewed by Darin Adler.
   35071 
   35072         Fix for <rdar://problem/6487249> repro crash in 
   35073         WebCore::CSSParser::parseFillImage copying entire contents of this 
   35074         page
   35075         -and corresponding: https://bugs.webkit.org/show_bug.cgi?id=24172
   35076 
   35077         * css/CSSParser.cpp:
   35078         (WebCore::CSSParser::parseValue): Null-check m_styleSheet
   35079 
   35080 2009-02-25  Adam Treat  <adam.treat (a] torchmobile.com>
   35081 
   35082         Fix the Qt build.
   35083 
   35084         * WebCore.pro:
   35085 
   35086 2009-02-25  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   35087 
   35088         Gtk build fix. Not reviewed.
   35089 
   35090         Add files to the build per r41218.
   35091         Rename WebkitPoint.h to WebKitPoint.h in DOMWindow.cpp
   35092 
   35093         * GNUmakefile.am:
   35094         * page/DOMWindow.cpp:
   35095 
   35096 2009-02-25  Zan Dobersek  <zandobersek (a] gmail.com>
   35097 
   35098         Reviewed by Alexey Proskuryakov.
   35099 
   35100         https://bugs.webkit.org/show_bug.cgi?id=24043
   35101         When faced with URLs with unsupported protocol on Gtk port,
   35102         report the error through an idle function and return true, so
   35103         a proper resource handle is created.
   35104 
   35105         * platform/network/soup/ResourceHandleSoup.cpp:
   35106         (WebCore::reportUnknownProtocolError):
   35107         (WebCore::ResourceHandle::start):
   35108 
   35109 2009-02-25  Steve Falkenburg  <sfalken (a] apple.com>
   35110 
   35111         Windows build fix.
   35112         Use struct to forward declare ResourceRequest.
   35113 
   35114         * history/HistoryItem.h:
   35115         * inspector/InspectorController.h:
   35116         * loader/DocumentThreadableLoader.h:
   35117         * loader/FrameLoaderClient.h:
   35118         * loader/MainResourceLoader.h:
   35119         * loader/SubresourceLoader.h:
   35120         * loader/SubresourceLoaderClient.h:
   35121         * loader/ThreadableLoader.h:
   35122         * loader/WorkerThreadableLoader.h:
   35123         * platform/CrossThreadCopier.h:
   35124         * platform/network/ResourceHandle.h:
   35125         * platform/network/ResourceHandleClient.h:
   35126         * platform/network/ResourceRequestBase.h:
   35127         * platform/network/cf/ResourceRequestCFNet.h:
   35128         * xml/XMLHttpRequest.h:
   35129 
   35130 2009-02-25  Steve Falkenburg  <sfalken (a] apple.com>
   35131 
   35132         Partial Windows build fix.
   35133         
   35134         * DerivedSources.cpp:
   35135         * WebCore.vcproj/WebCore.vcproj:
   35136 
   35137 2009-02-25  Dirk Schulze  <krit (a] webkit.org>
   35138 
   35139         Reviewed by Oliver Hunt.
   35140 
   35141         Ported arcTo to Qt. Qt has no native support for arcTo. This changes
   35142         calculate the behavior of arcTo and draws it with lineTo and arc.
   35143 
   35144         [QT] implement Canvas arcTo
   35145         https://bugs.webkit.org/show_bug.cgi?id=23873
   35146 
   35147         * platform/graphics/qt/PathQt.cpp:
   35148         (WebCore::Path::addArcTo):
   35149 
   35150 2009-02-25  Simon Fraser  <simon.fraser (a] apple.com>
   35151 
   35152         Reviewed by Dan Bernstein
   35153 
   35154         Remove idl files from Resources, and sort.
   35155         
   35156         * WebCore.xcodeproj/project.pbxproj:
   35157 
   35158 2009-02-25  Chris Marrin  <cmarrin (a] apple.com>
   35159 
   35160         Reviewed by Simon Fraser.
   35161 
   35162         https://bugs.webkit.org/show_bug.cgi?id=23943
   35163 
   35164         Added webkitConvertPointFromNodeToPage and webkitConvertPointFromPageToNode on
   35165         the window object. Also added WebKitPoint object, which is passed in and out
   35166         of these functions.
   35167 
   35168         Test: fast/dom/Window/webkitConvertPoint.html
   35169 
   35170         * DerivedSources.make:
   35171         * WebCore.pro:
   35172         * WebCore.vcproj/WebCore.vcproj:
   35173         * WebCore.xcodeproj/project.pbxproj:
   35174         * WebCoreSources.bkl:
   35175         * bindings/js/JSDOMWindowBase.cpp:
   35176         (jsDOMWindowBaseWebKitPoint):
   35177         (setJSDOMWindowBaseWebKitPoint):
   35178         * bindings/js/JSWebKitPointConstructor.cpp: Added.
   35179         (WebCore::):
   35180         (WebCore::JSWebKitPointConstructor::JSWebKitPointConstructor):
   35181         (WebCore::constructWebKitPoint):
   35182         (WebCore::JSWebKitPointConstructor::getConstructData):
   35183         * bindings/js/JSWebKitPointConstructor.h: Added.
   35184         (WebCore::JSWebKitPointConstructor::classInfo):
   35185         * dom/Node.cpp:
   35186         (WebCore::Node::convertToPage):
   35187         (WebCore::Node::convertFromPage):
   35188         * dom/Node.h:
   35189         * page/DOMWindow.cpp:
   35190         (WebCore::DOMWindow::webkitConvertPointFromNodeToPage):
   35191         (WebCore::DOMWindow::webkitConvertPointFromPageToNode):
   35192         * page/DOMWindow.h:
   35193         * page/DOMWindow.idl:
   35194         * page/WebKitPoint.h: Added.
   35195         (WebCore::WebKitPoint::create):
   35196         (WebCore::WebKitPoint::x):
   35197         (WebCore::WebKitPoint::y):
   35198         (WebCore::WebKitPoint::setX):
   35199         (WebCore::WebKitPoint::setY):
   35200         (WebCore::WebKitPoint::WebKitPoint):
   35201         * page/WebKitPoint.idl: Added.
   35202 
   35203 2009-02-25  Jian Li  <jianli (a] chromium.org>
   35204 
   35205         Reviewed by Alexey Proskuryakov.
   35206 
   35207         Remove "#if ENABLE(WORKERS)" wrap from CrossThreadCopier files.
   35208         https://bugs.webkit.org/show_bug.cgi?id=24145
   35209 
   35210         * platform/CrossThreadCopier.cpp:
   35211         * platform/CrossThreadCopier.h:
   35212 
   35213 2009-02-25  David Levin  <levin (a] chromium.org>
   35214 
   35215         Reviewed by Alexey Proskuryakov.
   35216 
   35217         Bug 23688: ThreadableLoader needs a sync implementation for Workers.
   35218         <https://bugs.webkit.org/show_bug.cgi?id=23688>
   35219 
   35220         No observable change in behavior, so no test.
   35221 
   35222         * loader/ThreadableLoader.cpp:
   35223         (WebCore::ThreadableLoader::loadResourceSynchronously):
   35224         * loader/ThreadableLoaderClientWrapper.h:
   35225         (WebCore::ThreadableLoaderClientWrapper::clearClient):
   35226         (WebCore::ThreadableLoaderClientWrapper::done):
   35227         (WebCore::ThreadableLoaderClientWrapper::didFinishLoading):
   35228         (WebCore::ThreadableLoaderClientWrapper::didFail):
   35229         (WebCore::ThreadableLoaderClientWrapper::didFailRedirectCheck):
   35230         (WebCore::ThreadableLoaderClientWrapper::ThreadableLoaderClientWrapper):
   35231         Expose whether the loader is done (based on what callbacks were done).
   35232 
   35233         * loader/WorkerThreadableLoader.cpp:
   35234         (WebCore::WorkerThreadableLoader::WorkerThreadableLoader):
   35235         (WebCore::WorkerThreadableLoader::loadResourceSynchronously):
   35236         Each loader is given its own mode so that only its callbacks get through the run loop.
   35237 
   35238         The xhr spec says that the readystatechange events are synchronous, so in the case of a
   35239         nested sync xhr no readystatechange events should be fired for the outer xhr.
   35240 
   35241         (WebCore::WorkerThreadableLoader::MainThreadBridge::MainThreadBridge):
   35242 
   35243         * loader/WorkerThreadableLoader.h:
   35244         (WebCore::WorkerThreadableLoader::create):
   35245         (WebCore::WorkerThreadableLoader::done):
   35246 
   35247         * workers/WorkerRunLoop.cpp:
   35248         (WebCore::WorkerRunLoop::WorkerRunLoop):
   35249         * workers/WorkerRunLoop.h:
   35250         (WebCore::WorkerRunLoop::createUniqueId):
   35251         Simple method to create a uniqueId on demand with respect to the run loop.
   35252 
   35253         * workers/WorkerThread.h:
   35254 
   35255 2009-02-25  David Levin  <levin (a] chromium.org>
   35256 
   35257         Reviewed by Alexey Proskuryakov.
   35258 
   35259         Bug 24089: ThreadableLoader::loadResourceSynchronously should do callbacks like the async code.
   35260         <https://bugs.webkit.org/show_bug.cgi?id=24089>
   35261 
   35262         Make threadable loader callbacks to happen during the sync load call.
   35263 
   35264         Changes the behavior of sync xhr for insecure redirects in two ways:
   35265         + Sends an error event instead of an abort event (which is the same as async xhr's behavior).
   35266         + Throws a network exception which is what other browsers do and what the spec
   35267         says to do (http://www.w3.org/TR/XMLHttpRequest/).
   35268 
   35269         * loader/DocumentThreadableLoader.cpp:
   35270         (WebCore::DocumentThreadableLoader::loadResourceSynchronously):
   35271         * loader/DocumentThreadableLoader.h:
   35272         * loader/ThreadableLoader.cpp:
   35273         (WebCore::ThreadableLoader::loadResourceSynchronously):
   35274         * loader/ThreadableLoader.h:
   35275         * xml/XMLHttpRequest.cpp:
   35276         (WebCore::XMLHttpRequest::XMLHttpRequest):
   35277         (WebCore::XMLHttpRequest::loadRequestSynchronously):
   35278         (WebCore::XMLHttpRequest::loadRequestAsynchronously):
   35279         (WebCore::XMLHttpRequest::didFail):
   35280         (WebCore::XMLHttpRequest::didFailRedirectCheck):
   35281         * xml/XMLHttpRequest.h:
   35282 
   35283 2009-02-24  Chris Marrin  <cmarrin (a] apple.com>
   35284 
   35285         Reviewed by David Hyatt.
   35286 
   35287         https://bugs.webkit.org/show_bug.cgi?id=23368
   35288 
   35289         Added logic to correctly hit test accelerated layers.
   35290 
   35291         Tests: animations/animation-hit-test-transform.html
   35292                animations/animation-hit-test.html
   35293                transitions/transition-hit-test-transform.html
   35294                transitions/transition-hit-test.html
   35295 
   35296         * page/animation/KeyframeAnimation.cpp:
   35297         (WebCore::KeyframeAnimation::animate):
   35298         * rendering/RenderLayer.cpp:
   35299         (WebCore::RenderLayer::hitTestLayer):
   35300         (WebCore::RenderLayer::updateClipRects):
   35301         * rendering/RenderLayerBacking.cpp:
   35302         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
   35303 
   35304 2009-02-25  Alexey Proskuryakov  <ap (a] webkit.org>
   35305 
   35306         Reviewed by Darin Adler.
   35307 
   35308         https://bugs.webkit.org/show_bug.cgi?id=24067
   35309         REGRESSION: Crash in WebCore::Document::initSecurityContext
   35310 
   35311         The crash started to happen when we removed a check for frame->document() being null.
   35312         However, the original document shouldn't be null here, because it is needed to alias
   35313         security origins. So, this patch fixes the crash by correcting security origin behavior.
   35314 
   35315         Test: http/tests/security/aboutBlank/window-open-self-about-blank.html
   35316         This tests for not crashing, and for inheriting the domain from the document being replaced.
   35317         Preserving the aliasing cannot be tested for automatically, because we'd need a non-trivial
   35318         domain to remove a prefix from.
   35319 
   35320         * loader/FrameLoader.cpp: (WebCore::FrameLoader::begin): Create a new document before
   35321         clearing the frame, so that Document::initSecurityContext() could access the old one.
   35322 
   35323 2009-02-25  Jay Campan  <jcampan (a] google.com>
   35324 
   35325         Reviewed by Darin Fisher.
   35326 
   35327         https://bugs.webkit.org/show_bug.cgi?id=24066
   35328 
   35329         Items in drop-downs were not painted correctly.  Makes sure the
   35330         PopupListBox invalidates in the coordinates of the window as this is
   35331         FramelessScrollView::invalidateRect paints to.
   35332 
   35333         * platform/chromium/PopupMenuChromium.cpp:
   35334         (WebCore::PopupListBox::invalidateRow):
   35335 
   35336 2009-02-24  Simon Fraser  <simon.fraser (a] apple.com>
   35337 
   35338         Reviewed by Anders Carlsson
   35339 
   35340         https://bugs.webkit.org/show_bug.cgi?id=15081
   35341         
   35342         Make display:none work for applet, emebed and object elements
   35343         by calling rendererIsNeeded() on superclasses.
   35344 
   35345         Tests: fast/replaced/applet-display-none.html
   35346                fast/replaced/embed-display-none.html
   35347                fast/replaced/object-display-none.html
   35348 
   35349         * html/HTMLAppletElement.cpp:
   35350         (WebCore::HTMLAppletElement::rendererIsNeeded):
   35351         * html/HTMLElement.cpp:
   35352         (WebCore::HTMLElement::rendererIsNeeded):
   35353         * html/HTMLEmbedElement.cpp:
   35354         (WebCore::HTMLEmbedElement::rendererIsNeeded):
   35355         * html/HTMLObjectElement.cpp:
   35356         (WebCore::HTMLObjectElement::rendererIsNeeded):
   35357 
   35358 2009-02-24  Simon Fraser  <simon.fraser (a] apple.com>
   35359 
   35360         Reviewed by Dave Hyatt
   35361 
   35362         https://bugs.webkit.org/show_bug.cgi?id=24137
   35363         
   35364         Fix localToAbsolute() and absoluteToLocal() to map points through 3d transforms,
   35365         taking perspective and transform-style: preserve-3d into account.
   35366         
   35367         In order to support transform-style: preserve-3d, which keeps elements in a
   35368         3d space, we have to carry along an accumulated matrix in TransformState.
   35369         We also need to apply the perspective from the parent, if any, with the
   35370         appropriate origin.
   35371 
   35372         * GNUmakefile.am:
   35373         * WebCore.base.exp:
   35374         * WebCore.pro:
   35375         * WebCore.scons:
   35376         * WebCore.vcproj/WebCore.vcproj:
   35377         * WebCore.xcodeproj/project.pbxproj:
   35378         * WebCoreSources.bkl:
   35379         * css/CSSComputedStyleDeclaration.cpp:
   35380         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   35381         * platform/graphics/transforms/TransformationMatrix.cpp:
   35382         (WebCore::TransformationMatrix::translate):
   35383         (WebCore::TransformationMatrix::translate3d):
   35384         (WebCore::TransformationMatrix::translateRight3d):
   35385         * platform/graphics/transforms/TransformationMatrix.h:
   35386         * rendering/RenderBox.cpp:
   35387         (WebCore::RenderBox::mapLocalToAbsolutePoint):
   35388         (WebCore::RenderBox::mapAbsoluteToLocalPoint):
   35389         * rendering/RenderBox.h:
   35390         * rendering/RenderLayer.cpp:
   35391         (WebCore::RenderLayer::updateTransform):
   35392         (WebCore::RenderLayer::perspectiveTransform):
   35393         (WebCore::RenderLayer::perspectiveOrigin):
   35394         * rendering/RenderLayer.h:
   35395         * rendering/RenderLayerBacking.cpp:
   35396         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
   35397         * rendering/RenderLayerCompositor.cpp:
   35398         (WebCore::requiresCompositingLayerForTransform):
   35399         (WebCore::RenderLayerCompositor::layerHas3DContent):
   35400         * rendering/RenderObject.cpp:
   35401         (WebCore::RenderObject::localToAbsolute):
   35402         (WebCore::RenderObject::absoluteToLocal):
   35403         (WebCore::RenderObject::mapLocalToAbsolutePoint):
   35404         (WebCore::RenderObject::mapAbsoluteToLocalPoint):
   35405         * rendering/RenderObject.h:
   35406         * rendering/RenderTableCell.cpp:
   35407         (WebCore::RenderTableCell::mapLocalToAbsolutePoint):
   35408         (WebCore::RenderTableCell::mapAbsoluteToLocalPoint):
   35409         * rendering/RenderTableCell.h:
   35410         * rendering/RenderView.cpp:
   35411         (WebCore::RenderView::mapLocalToAbsolutePoint):
   35412         (WebCore::RenderView::mapAbsoluteToLocalPoint):
   35413         * rendering/RenderView.h:
   35414         * rendering/TransformState.cpp: Added.
   35415         (WebCore::TransformState::move):
   35416         (WebCore::TransformState::applyTransform):
   35417         (WebCore::TransformState::flatten):
   35418         * rendering/TransformState.h: Added.
   35419         (WebCore::TransformState::):
   35420         (WebCore::TransformState::TransformState):
   35421         (WebCore::TransformState::move):
   35422         * rendering/style/RenderStyle.h:
   35423         (WebCore::InheritedFlags::hasPerspective):
   35424 
   35425 2009-02-24  Sam Weinig  <sam (a] webkit.org>
   35426 
   35427         Reviewed by David Hyatt.
   35428 
   35429         Fix for https://bugs.webkit.org/show_bug.cgi?id=23990
   35430         Regression (r40837): JavaScript image popup doesn't work
   35431 
   35432         Make the getClientRects and getBoundingClientRect methods return rects
   35433         relative to the viewport.
   35434 
   35435         Test: fast/dom/getBoundingClientRect-getClientRects-relative-to-viewport.html
   35436 
   35437         * dom/Element.cpp:
   35438         (WebCore::Element::getClientRects):
   35439         (WebCore::Element::getBoundingClientRect):
   35440 
   35441 2009-02-24  Ojan Vafai  <ojan (a] chromium.org>
   35442 
   35443         Reviewed by Eric Seidel.
   35444 
   35445         SVG pages don't have a body or an html element! 
   35446         Don't return early if there is no body.
   35447 
   35448         * editing/VisiblePosition.cpp:
   35449         (WebCore::VisiblePosition::canonicalPosition):
   35450 
   35451 2009-02-23  David Hyatt  <hyatt (a] apple.com>
   35452 
   35453         Reviewed by Eric Seidel
   35454 
   35455         https://bugs.webkit.org/show_bug.cgi?id=23740, painting order wrong for normal flow elements with overflow: hidden
   35456         
   35457         This patch reworks the painting of overflow.  There is now the concept of a "self-painting layer."  All
   35458         layers are considered to be self-painting except for overflow layers that are normal flow (and that don't have
   35459         reflections or masks).
   35460         
   35461         If an overflow layer is not self-painting, then it ends up painted by its parent just like any other normal flow object.
   35462         The only difference is that the clip has to be pushed and popped when painting the object's children.
   35463         
   35464         The lightweight clipping scheme used for controls has been extended to cover overflow now in this simplified case.  With
   35465         the code consolidated into reusable push/pop functions, all of the renderers that use overflow have been patched to
   35466         use the new functions.
   35467         
   35468         Hit testing has also been patched to check the overflow clip rect first before recurring into children.
   35469         
   35470         Scrollbar paint has been moved into RenderBlock for now, since none of the table objects support scrollbars
   35471         yet, and scrollbar hit testing was already there anyway.  Now the two code paths are more symmetrical.
   35472         
   35473         Masks are now treated like normal flow layers (just like reflections).
   35474 
   35475         A couple of test cases have been added to fast/overflow to test the stacking order. 
   35476 
   35477         * rendering/InlineFlowBox.cpp:
   35478         (WebCore::InlineFlowBox::nodeAtPoint):
   35479         (WebCore::InlineFlowBox::paint):
   35480         * rendering/RenderBlock.cpp:
   35481         (WebCore::RenderBlock::repaintOverhangingFloats):
   35482         (WebCore::RenderBlock::paint):
   35483         (WebCore::RenderBlock::paintChildren):
   35484         (WebCore::RenderBlock::paintObject):
   35485         (WebCore::RenderBlock::paintFloats):
   35486         (WebCore::RenderBlock::insertFloatingObject):
   35487         (WebCore::RenderBlock::floatRect):
   35488         (WebCore::RenderBlock::lowestPosition):
   35489         (WebCore::RenderBlock::rightmostPosition):
   35490         (WebCore::RenderBlock::leftmostPosition):
   35491         (WebCore::RenderBlock::addOverhangingFloats):
   35492         (WebCore::RenderBlock::nodeAtPoint):
   35493         (WebCore::RenderBlock::hitTestContents):
   35494         * rendering/RenderBox.cpp:
   35495         (WebCore::RenderBox::nodeAtPoint):
   35496         (WebCore::RenderBox::pushContentsClip):
   35497         (WebCore::RenderBox::popContentsClip):
   35498         * rendering/RenderBox.h:
   35499         (WebCore::RenderBox::paintObject):
   35500         * rendering/RenderBoxModelObject.cpp:
   35501         (WebCore::RenderBoxModelObject::hasSelfPaintingLayer):
   35502         * rendering/RenderBoxModelObject.h:
   35503         * rendering/RenderLayer.cpp:
   35504         (WebCore::RenderLayer::paintLayer):
   35505         (WebCore::RenderLayer::hitTestLayer):
   35506         (WebCore::RenderLayer::shouldBeNormalFlowOnly):
   35507         (WebCore::RenderLayer::isSelfPaintingLayer):
   35508         * rendering/RenderLayer.h:
   35509         * rendering/RenderTable.cpp:
   35510         (WebCore::RenderTable::paint):
   35511         (WebCore::RenderTable::paintObject):
   35512         (WebCore::RenderTable::nodeAtPoint):
   35513         * rendering/RenderTable.h:
   35514         * rendering/RenderTableCell.cpp:
   35515         (WebCore::RenderTableCell::paint):
   35516         * rendering/RenderTableRow.cpp:
   35517         (WebCore::RenderTableRow::nodeAtPoint):
   35518         (WebCore::RenderTableRow::paint):
   35519         * rendering/RenderTableRow.h:
   35520         * rendering/RenderTableSection.cpp:
   35521         (WebCore::RenderTableSection::paint):
   35522         (WebCore::RenderTableSection::paintObject):
   35523         (WebCore::RenderTableSection::nodeAtPoint):
   35524         * rendering/RenderTableSection.h:
   35525         * rendering/RenderTreeAsText.cpp:
   35526         (WebCore::write):
   35527         (WebCore::writeLayers):
   35528 
   35529 2009-02-24  David Levin  <levin (a] chromium.org>
   35530 
   35531         Reviewed by NOBODY (build fix).
   35532 
   35533         Attempted build fix for wx-mac.
   35534 
   35535         * WebCoreSources.bkl:
   35536 
   35537 2009-02-24  David Levin  <levin (a] chromium.org>
   35538 
   35539         Reviewed by NOBODY (build fix).
   35540 
   35541         Attempted build fixes for qt-linux and wx-mac.
   35542 
   35543         * WebCore.pro:
   35544         * webcore-base.bkl:
   35545 
   35546 2009-02-24  Ojan Vafai  <ojan (a] dhcp-172-31-134-214.sfo.corp.google.com>
   35547 
   35548         Reviewed by Sam Weinig.
   35549 
   35550         Fix null pointer error. If the node is the Document, then ownerDocument() 
   35551         returns null, document() does not.
   35552 
   35553         * editing/VisiblePosition.cpp:
   35554         (WebCore::VisiblePosition::canonicalPosition):
   35555 
   35556 2009-02-24  Jian Li  <jianli (a] chromium.org>
   35557 
   35558         Reviewed by NOBODY (attempted build fixes).
   35559 
   35560         Fix build break for Windows and Linux.
   35561 
   35562         * GNUmakefile.am:
   35563         * WebCore.vcproj/WebCore.vcproj:
   35564 
   35565 2009-02-24  Dimitri Glazkov  <dglazkov (a] chromium.org>
   35566 
   35567         Reviewed by Eric Seidel.
   35568 
   35569         https://bugs.webkit.org/show_bug.cgi?id=24131
   35570         Fix-up COM/RefCounted dichotomy in Chromium port.
   35571 
   35572         * page/chromium/AccessibilityObjectWrapper.h:
   35573         (WebCore::AccessibilityObjectWrapper::AccessibilityObjectWrapper): Added
   35574         explicit setting of recount.
   35575 
   35576 2009-02-24  Dimitri Glazkov  <dglazkov (a] chromium.org>
   35577 
   35578         Reviewed by Eric Seidel.
   35579 
   35580         https://bugs.webkit.org/show_bug.cgi?id=24141
   35581         Add clarity to V8 interceptor helper function.
   35582 
   35583         * bindings/v8/custom/V8HTMLPlugInElementCustom.cpp:
   35584         (WebCore::NAMED_PROPERTY_GETTER): Renamed to notHandledByInterceptor.
   35585         (WebCore::NAMED_PROPERTY_SETTER): Ditto.
   35586         (WebCore::INDEXED_PROPERTY_GETTER): Ditto.
   35587         (WebCore::INDEXED_PROPERTY_SETTER): Ditto.
   35588 
   35589 2009-02-24  Simon Fraser  <simon.fraser (a] apple.com>
   35590 
   35591         Reviewed by Eric Seidel
   35592 
   35593         Minor numeric cleanup: convert float literals to doubles.
   35594         
   35595         * platform/graphics/transforms/RotateTransformOperation.cpp:
   35596         (WebCore::RotateTransformOperation::blend):
   35597 
   35598 2009-02-24  Mark Mentovai  <mark (a] chromium.org>
   35599 
   35600         Reviewed by Eric Seidel.
   35601 
   35602         https://bugs.webkit.org/show_bug.cgi?id=24139
   35603         Add missing include.
   35604 
   35605         * bindings/v8/ScriptInstance.h:
   35606 
   35607 2009-02-24  Jian Li  <jianli (a] chromium.org>
   35608 
   35609         Reviewed by Alexey Proskuryakov.
   35610 
   35611         Move worker related files from dom directory to worker directory under WebCore.
   35612         https://bugs.webkit.org/show_bug.cgi?id=24123
   35613 
   35614         * DerivedSources.make:
   35615         * GNUmakefile.am:
   35616         * WebCore.pro:
   35617         * WebCore.scons:
   35618         * WebCore.vcproj/MigrateIDLAndScripts:
   35619         * WebCore.vcproj/WebCore.vcproj:
   35620         * WebCore.xcodeproj/project.pbxproj:
   35621         * platform/CrossThreadCopier.cpp: Renamed from WebCore/dom/CrossThreadCopier.cpp.
   35622         * platform/CrossThreadCopier.h: Renamed from WebCore/dom/CrossThreadCopier.h.
   35623         * workers/GenericWorkerTask.h: Renamed from WebCore/dom/GenericWorkerTask.h.
   35624         * workers/Worker.cpp: Renamed from WebCore/dom/Worker.cpp.
   35625         * workers/Worker.h: Renamed from WebCore/dom/Worker.h.
   35626         * workers/Worker.idl: Renamed from WebCore/dom/Worker.idl.
   35627         * workers/WorkerContext.cpp: Renamed from WebCore/dom/WorkerContext.cpp.
   35628         * workers/WorkerContext.h: Renamed from WebCore/dom/WorkerContext.h.
   35629         * workers/WorkerContext.idl: Renamed from WebCore/dom/WorkerContext.idl.
   35630         * workers/WorkerContextProxy.h: Renamed from WebCore/dom/WorkerContextProxy.h.
   35631         * workers/WorkerLocation.cpp: Renamed from WebCore/dom/WorkerLocation.cpp.
   35632         * workers/WorkerLocation.h: Renamed from WebCore/dom/WorkerLocation.h.
   35633         * workers/WorkerLocation.idl: Renamed from WebCore/dom/WorkerLocation.idl.
   35634         * workers/WorkerMessagingProxy.cpp: Renamed from WebCore/dom/WorkerMessagingProxy.cpp.
   35635         * workers/WorkerMessagingProxy.h: Renamed from WebCore/dom/WorkerMessagingProxy.h.
   35636         * workers/WorkerObjectProxy.h: Renamed from WebCore/dom/WorkerObjectProxy.h.
   35637         * workers/WorkerRunLoop.cpp: Renamed from WebCore/dom/WorkerRunLoop.cpp.
   35638         * workers/WorkerRunLoop.h: Renamed from WebCore/dom/WorkerRunLoop.h.
   35639         * workers/WorkerThread.cpp: Renamed from WebCore/dom/WorkerThread.cpp.
   35640         * workers/WorkerThread.h: Renamed from WebCore/dom/WorkerThread.h.
   35641 
   35642 2009-02-05  Ojan Vafai  <ojan (a] chromium.org> and Eric Seidel <eric (a] webkit.org>
   35643 
   35644         Reviewed by Dave Hyatt.
   35645 
   35646         Make cursor positions match IE6/IE7/FF3 when clicking in margins/padding
   35647         around divs inside editable regions.
   35648         https://bugs.webkit.org/show_bug.cgi?id=23605
   35649 
   35650         Fix clicks outside editable regions from focusing the editable region.
   35651         https://bugs.webkit.org/show_bug.cgi?id=23607
   35652 
   35653         Removed editing/selection/contenteditable-click-outside.html as it's
   35654         not as useful as our new tests.
   35655 
   35656         Clean up RenderBlock::positionForCoordinates to remove dead code,
   35657         duplicate code, and generally make it more readable.
   35658 
   35659         Tests: editing/selection/click-in-margins-inside-editable-div.html
   35660                editing/selection/click-in-padding-with-multiple-line-boxes.html
   35661                editing/selection/click-outside-editable-div.html
   35662 
   35663         * editing/VisiblePosition.cpp:
   35664         (WebCore::VisiblePosition::canonicalPosition):
   35665         * rendering/RenderBlock.cpp:
   35666         (WebCore::positionForPointRespectingEditingBoundaries):
   35667         (WebCore::positionForPointWithInlineChildren):
   35668         (WebCore::RenderBlock::positionForCoordinates):
   35669         (WebCore::RenderBlock::updateFirstLetter):
   35670 
   35671 2009-02-24  Sam Weinig  <sam (a] webkit.org>
   35672 
   35673         Reviewed by Geoffrey Garen.
   35674 
   35675         Related to <rdar://problem/6590295>
   35676         Allow disabling javascript: urls.
   35677 
   35678         * WebCore.base.exp:
   35679         * html/HTMLAnchorElement.cpp:
   35680         (WebCore::HTMLAnchorElement::parseMappedAttribute):
   35681         * loader/FrameLoader.cpp:
   35682         (WebCore::FrameLoader::executeIfJavaScriptURL):
   35683         * page/Page.cpp:
   35684         (WebCore::Page::Page):
   35685         (WebCore::Page::setJavaScriptURLsAreAllowed):
   35686         (WebCore::Page::javaScriptURLsAreAllowed):
   35687         * page/Page.h:
   35688 
   35689 2009-02-24  Simon Fraser  <simon.fraser (a] apple.com>
   35690 
   35691         Fix build when ACCELERATED_COMPOSITING is turned on
   35692         (overflowList() -> normalFlowList()).
   35693     
   35694         * rendering/RenderLayerBacking.cpp:
   35695         (WebCore::RenderLayerBacking::hasNonCompositingContent):
   35696         (WebCore::RenderLayerBacking::paintIntoLayer):
   35697         * rendering/RenderLayerCompositor.cpp:
   35698         (WebCore::RenderLayerCompositor::calculateCompositedBounds):
   35699         (WebCore::RenderLayerCompositor::computeCompositingRequirements):
   35700         (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
   35701         (WebCore::RenderLayerCompositor::recursiveRepaintLayerRect):
   35702         (WebCore::RenderLayerCompositor::layerHas3DContent):
   35703 
   35704 2009-02-24  Simon Fraser  <simon.fraser (a] apple.com>
   35705 
   35706         Reviewed by Darin Adler
   35707         
   35708         https://bugs.webkit.org/show_bug.cgi?id=24135
   35709         
   35710         Round the FloatPoint returned by absoluteToLocal(), rather than
   35711         truncating it.
   35712 
   35713         * dom/MouseRelatedEvent.cpp:
   35714         (WebCore::MouseRelatedEvent::receivedTarget):
   35715 
   35716 2009-02-24  Beth Dakin  <bdakin (a] apple.com>
   35717 
   35718         Reviewed by Sam Weinig.
   35719 
   35720         Fix for https://bugs.webkit.org/show_bug.cgi?id=24004 REGRESSION: 
   35721         Ordered list item marker misaligned when line height is not 1.2 
   35722         -and corresponding <rdar://problem/6602506>
   35723 
   35724         This is a regression from http://trac.webkit.org/changeset/40880 
   35725         where createInlineBox was taken off of RenderObject and moved to 
   35726         RenderBox. The problem was that the RenderBox version still needs 
   35727         to be virtual because there is still an existing implementation in 
   35728         RenderListMarker. 
   35729 
   35730         * rendering/RenderBox.h:
   35731         * rendering/RenderListMarker.cpp:
   35732         (WebCore::RenderListMarker::createInlineBox):
   35733         * rendering/RenderListMarker.h:
   35734 
   35735 2009-02-24  Dimitri Glazkov  <dglazkov (a] chromium.org>
   35736 
   35737         Reviewed by Eric Seidel.
   35738 
   35739         https://bugs.webkit.org/show_bug.cgi?id=24128
   35740         Upstream more V8 custom bindings: constructors, XSLTProcessor.
   35741 
   35742         * bindings/v8/custom/V8DOMParserConstructor.cpp: Added.
   35743         (WebCore::CALLBACK_FUNC_DECL):
   35744         * bindings/v8/custom/V8MessageChannelConstructor.cpp: Added.
   35745         (WebCore::CALLBACK_FUNC_DECL):
   35746         * bindings/v8/custom/V8WebKitCSSMatrixConstructor.cpp: Added.
   35747         (WebCore::CALLBACK_FUNC_DECL):
   35748         * bindings/v8/custom/V8XMLSerializerConstructor.cpp: Added.
   35749         (WebCore::CALLBACK_FUNC_DECL):
   35750         * bindings/v8/custom/V8XPathEvaluatorConstructor.cpp: Added.
   35751         (WebCore::CALLBACK_FUNC_DECL):
   35752         * bindings/v8/custom/V8XSLTProcessorCustom.cpp: Added.
   35753         (WebCore::CALLBACK_FUNC_DECL):
   35754 
   35755 2009-02-24  David Levin  <levin (a] chromium.org>
   35756 
   35757         Reviewed by Alexey Proskuryakov.
   35758 
   35759         Bug 24090: WorkerThreadableLoader needs to be able to post tasks for a mode.
   35760         <https://bugs.webkit.org/show_bug.cgi?id=24090>
   35761 
   35762         No observable change in behavior, so no test.
   35763 
   35764         * dom/WorkerMessagingProxy.cpp:
   35765         (WebCore::WorkerMessagingProxy::postMessageToWorkerContext):
   35766         (WebCore::WorkerMessagingProxy::postTaskToWorkerContext):
   35767         Fixed the bug that m_unconfirmedMessageCount was getting incremented for non-message tasks.
   35768 
   35769         (WebCore::WorkerMessagingProxy::postTaskForModeToWorkerContext):
   35770 
   35771         * dom/WorkerMessagingProxy.h:
   35772         * loader/ThreadableLoader.cpp:
   35773         (WebCore::ThreadableLoader::create):
   35774         * loader/WorkerThreadableLoader.cpp:
   35775         (WebCore::WorkerThreadableLoader::WorkerThreadableLoader):
   35776         (WebCore::WorkerThreadableLoader::MainThreadBridge::MainThreadBridge):
   35777         (WebCore::WorkerThreadableLoader::MainThreadBridge::didSendData):
   35778         (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveResponse):
   35779         (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveData):
   35780         (WebCore::WorkerThreadableLoader::MainThreadBridge::didFinishLoading):
   35781         (WebCore::WorkerThreadableLoader::MainThreadBridge::didFail):
   35782         (WebCore::WorkerThreadableLoader::MainThreadBridge::didFailRedirectCheck):
   35783         (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveAuthenticationCancellation):
   35784         Changed these methods to post task using a mode.
   35785 
   35786         * loader/WorkerThreadableLoader.h:
   35787         (WebCore::WorkerThreadableLoader::create):
   35788 
   35789 2009-02-24  Alexey Proskuryakov  <ap (a] webkit.org>
   35790 
   35791         Reviewed by Darin Adler.
   35792 
   35793         https://bugs.webkit.org/show_bug.cgi?id=24091
   35794         <rdar://problem/6468660> Start of redirect chain ends up as master entry in Application Cache
   35795 
   35796         Test: http/tests/appcache/access-via-redirect.php
   35797 
   35798         * loader/appcache/ApplicationCacheGroup.cpp:
   35799         (WebCore::ApplicationCacheGroup::finishedLoadingMainResource): Use the URL we ended up with,
   35800         not the original one.
   35801 
   35802 2009-02-24  Jian Li  <jianli (a] chromium.org>
   35803 
   35804         Reviewed by Alexey Proskuryakov.
   35805 
   35806         Change to include WorkerObjectProxy.h instead of WorkerMessagingProxy.h in WorkerContext.cpp and WorkerScriptController.cpp.
   35807         https://bugs.webkit.org/show_bug.cgi?id=24112
   35808 
   35809         * bindings/js/WorkerScriptController.cpp:
   35810         * dom/WorkerContext.cpp:
   35811 
   35812 2009-02-23  Antti Koivisto  <antti (a] apple.com>
   35813 
   35814         Reviewed by Oliver Hunt.
   35815 
   35816         <rdar://problem/6613796> Extended text codecs registered on webview creation
   35817 
   35818         Comparing a text encoding with string "GBK" ended up constructing
   35819         TextEncoding("GBK") which in turn initialized all extended
   35820         text codecs.
   35821 
   35822         * platform/text/TextCodecICU.cpp:
   35823         (WebCore::TextCodecICU::decode):
   35824 
   35825 2009-02-23  Sam Weinig  <sam (a] webkit.org>
   35826 
   35827         Fix Qt build.
   35828 
   35829         * bridge/qt/qt_runtime.cpp:
   35830         (JSC::Bindings::valueRealType):
   35831 
   35832 2009-02-23  Julien Chaffraix  <jchaffraix (a] webkit.org>
   35833 
   35834         Reviewed by Darin Adler.
   35835 
   35836         Bug 23956: Safari crashes when cloneNode fails (cloning a XML element with an invalid nodeName)
   35837 
   35838         The crash occurred because Document::cloneNode would call Document::createElementNS. Unfortunately
   35839         element created with createElement could have a wrong nodeName (createElement sets the string as the
   35840         localName without checking for a prefix).
   35841 
   35842         The fix is to call Document::createElement(const QualifiedName&, bool) that will not do any checks on the QualifiedName
   35843         and will always succeed.
   35844         Also rolled-out the HTMLElement specialisation of clonedNode as it was equivalent to what is done now (added an ASSERT
   35845         to ensure that).
   35846 
   35847         Test: fast/dom/cloneNode.html
   35848 
   35849         * dom/Element.cpp:
   35850         (WebCore::Element::cloneNode): Call createElement(const QualifiedName&, bool) instead of createElementNS as it will
   35851         always return an element.
   35852 
   35853         * html/HTMLElement.cpp:
   35854         * html/HTMLElement.h: Removed HTMLElement::clonedNode as it is equivalent to what is now done.
   35855 
   35856 2009-02-23  Dimitri Glazkov  <dglazkov (a] chromium.org>
   35857 
   35858         Reviewed by Eric Seidel.
   35859 
   35860         https://bugs.webkit.org/show_bug.cgi?id=24109
   35861         Upstream V8 Script abstractions, all except ScriptController.
   35862 
   35863         * bindings/v8/ScriptCachedFrameData.h: Added.
   35864         (WebCore::ScriptCachedFrameData::ScriptCachedFrameData):
   35865         (WebCore::ScriptCachedFrameData::~ScriptCachedFrameData):
   35866         (WebCore::ScriptCachedFrameData::restore):
   35867         (WebCore::ScriptCachedFrameData::clear):
   35868         (WebCore::ScriptCachedFrameData::domWindow):
   35869         * bindings/v8/ScriptCallFrame.cpp: Added.
   35870         (WebCore::ScriptCallFrame::ScriptCallFrame):
   35871         (WebCore::ScriptCallFrame::~ScriptCallFrame):
   35872         (WebCore::ScriptCallFrame::argumentAt):
   35873         * bindings/v8/ScriptCallFrame.h: Added.
   35874         (WebCore::ScriptCallFrame::functionName):
   35875         (WebCore::ScriptCallFrame::sourceURL):
   35876         (WebCore::ScriptCallFrame::lineNumber):
   35877         (WebCore::ScriptCallFrame::argumentCount):
   35878         * bindings/v8/ScriptCallStack.cpp: Added.
   35879         (WebCore::ScriptCallStack::ScriptCallStack):
   35880         (WebCore::ScriptCallStack::~ScriptCallStack):
   35881         (WebCore::ScriptCallStack::at):
   35882         * bindings/v8/ScriptCallStack.h: Added.
   35883         (WebCore::ScriptCallStack::size):
   35884         * bindings/v8/ScriptInstance.cpp: Added.
   35885         (WebCore::V8ScriptInstance::V8ScriptInstance):
   35886         (WebCore::V8ScriptInstance::~V8ScriptInstance):
   35887         (WebCore::V8ScriptInstance::instance):
   35888         (WebCore::V8ScriptInstance::clear):
   35889         (WebCore::V8ScriptInstance::set):
   35890         * bindings/v8/ScriptInstance.h: Added.
   35891         (WebCore::V8ScriptInstance::create):
   35892         * bindings/v8/ScriptSourceCode.h: Added.
   35893         (WebCore::ScriptSourceCode::ScriptSourceCode):
   35894         (WebCore::ScriptSourceCode::isEmpty):
   35895         (WebCore::ScriptSourceCode::source):
   35896         (WebCore::ScriptSourceCode::url):
   35897         (WebCore::ScriptSourceCode::startLine):
   35898         * bindings/v8/ScriptState.h: Added.
   35899         (WebCore::ScriptState::hadException):
   35900         (WebCore::ScriptState::setException):
   35901         (WebCore::ScriptState::exception):
   35902         * bindings/v8/ScriptString.h: Added.
   35903         (WebCore::ScriptString::ScriptString):
   35904         (WebCore::ScriptString::operator String):
   35905         (WebCore::ScriptString::isNull):
   35906         (WebCore::ScriptString::size):
   35907         (WebCore::ScriptString::operator=):
   35908         (WebCore::ScriptString::operator+=):
   35909         * bindings/v8/ScriptValue.cpp: Added.
   35910         (WebCore::ScriptValue::getString):
   35911         * bindings/v8/ScriptValue.h: Added.
   35912         (WebCore::ScriptValue::ScriptValue):
   35913         (WebCore::ScriptValue::operator=):
   35914         (WebCore::ScriptValue::operator==):
   35915         (WebCore::ScriptValue::operator!=):
   35916         (WebCore::ScriptValue::isNull):
   35917         (WebCore::ScriptValue::isUndefined):
   35918         (WebCore::ScriptValue::clear):
   35919         (WebCore::ScriptValue::~ScriptValue):
   35920         (WebCore::ScriptValue::v8Value):
   35921 
   35922 2009-02-23  Adam Treat  <adam.treat (a] torchmobile.com>
   35923 
   35924         Reviewed by Timothy Hatcher.
   35925 
   35926         https://bugs.webkit.org/show_bug.cgi?id=24106
   35927         The Qt port is crashing on exit because the tear down procedure involves
   35928         the WebCore::InspectorController trying to access the JS execution context
   35929         for a page that is being deleted.  This patch amends the inspector so
   35930         that it does not try and access the execution context of the WebCore::Page
   35931         in the midst of deletion.
   35932 
   35933         * inspector/InspectorController.cpp:
   35934         (WebCore::InspectorController::inspectedPageDestroyed):
   35935         (WebCore::InspectorController::stopUserInitiatedProfiling):
   35936 
   35937 2009-02-23  David Levin  <levin (a] chromium.org>
   35938 
   35939         Reviewed by Alexey Proskuryakov.
   35940 
   35941         Bug 24088: ThreadableLoaderClient::didFailWillSendRequestCheck isn't wired up completely for workers and could use a better name.
   35942         <https://bugs.webkit.org/show_bug.cgi?id=24088>
   35943 
   35944         No observable change in behavior, so no test.
   35945 
   35946         * loader/DocumentThreadableLoader.cpp:
   35947         (WebCore::DocumentThreadableLoader::create):
   35948         * loader/ThreadableLoaderClient.h:
   35949         (WebCore::ThreadableLoaderClient::didFailRedirectCheck):
   35950         * loader/ThreadableLoaderClientWrapper.h:
   35951         (WebCore::ThreadableLoaderClientWrapper::didFailRedirectCheck):
   35952         * loader/WorkerThreadableLoader.cpp:
   35953         (WebCore::workerContextDidFailRedirectCheck):
   35954         (WebCore::WorkerThreadableLoader::MainThreadBridge::didFailRedirectCheck):
   35955         * loader/WorkerThreadableLoader.h:
   35956         * xml/XMLHttpRequest.cpp:
   35957         (WebCore::XMLHttpRequest::didFinishLoading):
   35958         * xml/XMLHttpRequest.h:
   35959 
   35960 2009-02-23  David Levin  <levin (a] chromium.org>
   35961 
   35962         Reviewed by Alexey Proskuryakov.
   35963 
   35964         Bug 24047: Need to simplify nested if's in WorkerRunLoop::runInMode
   35965         <https://bugs.webkit.org/show_bug.cgi?id=24047>
   35966 
   35967         Made a nested if inside of WorkerRunLoop::runInMode a lot simpler by
   35968         using only MessageQueue::waitForMessageFilteredWithTimeout instead
   35969         of three different MessageQueue methods.
   35970 
   35971         No observable change in behavior, so no test.
   35972 
   35973         * dom/WorkerRunLoop.cpp:
   35974         (WebCore::ModePredicate::operator()):
   35975         Minor clean-up to able to pass a const ref point for ModePredicate into runInMode.
   35976         (WebCore::WorkerRunLoop::runInMode):
   35977         * dom/WorkerRunLoop.h:
   35978 
   35979 2009-02-23  David Hyatt  <hyatt (a] apple.com>
   35980 
   35981         In preparation for making layers for multicol objects (so that they can properly split child layers
   35982         into multiple columns), rename all of the "overflowOnly" and "overflowList" members and functions
   35983         of RenderLayer to use the term "normal flow" instead.
   35984 
   35985         Reviewed by Cameron Zwarich
   35986 
   35987         * rendering/RenderLayer.cpp:
   35988         (WebCore::RenderLayer::RenderLayer):
   35989         (WebCore::RenderLayer::~RenderLayer):
   35990         (WebCore::RenderLayer::setHasVisibleContent):
   35991         (WebCore::RenderLayer::enclosingCompositingLayer):
   35992         (WebCore::RenderLayer::addChild):
   35993         (WebCore::RenderLayer::removeChild):
   35994         (WebCore::RenderLayer::paintLayer):
   35995         (WebCore::RenderLayer::hitTestLayer):
   35996         (WebCore::RenderLayer::dirtyNormalFlowList):
   35997         (WebCore::RenderLayer::updateNormalFlowList):
   35998         (WebCore::RenderLayer::collectLayers):
   35999         (WebCore::RenderLayer::updateLayerListsIfNeeded):
   36000         (WebCore::RenderLayer::shouldBeNormalFlowOnly):
   36001         (WebCore::RenderLayer::styleChanged):
   36002         * rendering/RenderLayer.h:
   36003         (WebCore::RenderLayer::isNormalFlowOnly):
   36004         (WebCore::RenderLayer::normalFlowList):
   36005         * rendering/RenderTreeAsText.cpp:
   36006         (WebCore::writeLayers):
   36007 
   36008 2009-02-23  David Hyatt  <hyatt (a] apple.com>
   36009 
   36010         Fix the stacking order for column rules in multi-column layout.  Column rules should paint as part of the background of an element, just
   36011         after all other components of the background have been painted.  This allows negative z-index children to still paint on top of the
   36012         column rules (rather than ending up above the background of the box but behind the column rules).
   36013 
   36014         Reviewed by Eric Seidel
   36015 
   36016         Added fast/multicol/column-rules-stacking.html
   36017 
   36018         * rendering/RenderBlock.cpp:
   36019         (WebCore::RenderBlock::paintColumnRules):
   36020         (WebCore::RenderBlock::paintColumnContents):
   36021         (WebCore::RenderBlock::paintObject):
   36022         * rendering/RenderBlock.h:
   36023 
   36024 2009-02-23  Adam Treat  <adam.treat (a] torchmobile.com>
   36025 
   36026         Reviewed by David Hyatt.
   36027 
   36028         No testcases have been added or modified since this patch should not result in
   36029         a behavior change for ports that have layout tests enabled.
   36030 
   36031         Currently, the implementation of GraphicsContext::drawLineForText amongst
   36032         the various ports differ in that some of them are honoring the context's
   36033         strokeStyle when drawing a text-decoration and some of them are not.
   36034         For instance, Apple's Mac port *does not* honor the context's strokeStyle(),
   36035         but the Cairo implementation does and has an explicit workaround that
   36036         sets the strokeStyle() temporarily.
   36037 
   36038         This patch fixes so that all ports are consistent by explicitly making sure
   36039         to set the GraphicsContext strokeStyle to SolidStroke whenever
   36040         painting the text-decoration of an InlineFlowBox or InlineTextBox as these
   36041         should always use a solid stroke.
   36042 
   36043         This patch addresses these bugs:
   36044         https://bugs.webkit.org/show_bug.cgi?id=19364
   36045         https://bugs.webkit.org/show_bug.cgi?id=15659
   36046 
   36047         * rendering/InlineFlowBox.cpp:
   36048         (WebCore::InlineFlowBox::paintTextDecorations):
   36049         * rendering/InlineTextBox.cpp:
   36050         (WebCore::InlineTextBox::paintDecoration):
   36051 
   36052 2009-02-23  Scott Violet  <sky (a] google.com>
   36053 
   36054         Reviewed by Eric Seidel.
   36055 
   36056         https://bugs.webkit.org/show_bug.cgi?id=24098
   36057         Bugs in ClipboardChromium
   36058 
   36059         Fixes the following bugs in ClipboardChromium:
   36060         * It's possible for the extension to be empty, resulting in a bad file
   36061           name, for example, 'foo.' or just '.'.
   36062         * We weren't restricting the size of the file to MAX_PATH.
   36063         * We weren't removing characters that are invalid for file system names.
   36064 
   36065         * platform/chromium/ClipboardChromium.cpp:
   36066         (WebCore::writeImageToDataObject):
   36067         * platform/chromium/ClipboardChromium.h:
   36068         * platform/chromium/ClipboardChromiumLinux.cpp: Added.
   36069         (WebCore::ClipboardChromium::validateFileName):
   36070         * platform/chromium/ClipboardChromiumMac.cpp: Added.
   36071         (WebCore::ClipboardChromium::validateFileName):
   36072         * platform/chromium/ClipboardChromiumWin.cpp: Added.
   36073         (WebCore::isInvalidFileCharacter):
   36074         (WebCore::ClipboardChromium::validateFileName):
   36075 
   36076 2009-02-23  Thiago Macieira  <thiago.macieira (a] nokia.com>
   36077 
   36078         Reviewed by Simon Hausmann.
   36079 
   36080         Fix the Copyright notices in a few files
   36081 
   36082         * platform/qt/RenderThemeQt.h:
   36083 
   36084 2009-02-23  Xan Lopez  <xan (a] gnome.org>
   36085 
   36086         Reviewed by Alexey Proskuryakov.
   36087 
   36088         https://bugs.webkit.org/show_bug.cgi?id=22624
   36089         [SOUP][GTK] Need API to get SoupSession from WebKit.
   36090 
   36091         Allow to retrieve the Soup session and modify the code to take
   36092         into account users changing features on it.
   36093 
   36094         * platform/network/ResourceHandle.h:
   36095         * platform/network/soup/CookieJarSoup.cpp:
   36096         (WebCore::defaultCookieJar):
   36097         (WebCore::setDefaultCookieJar):
   36098         * platform/network/soup/CookieJarSoup.h:
   36099         * platform/network/soup/ResourceHandleSoup.cpp:
   36100         (WebCore::createSoupSession):
   36101         (WebCore::ensureSessionIsInitialized):
   36102         (WebCore::ResourceHandle::startHttp):
   36103         (WebCore::ResourceHandle::cancel):
   36104         (WebCore::ResourceHandle::defaultSession):
   36105 
   36106 2009-02-23  Xan Lopez  <xan (a] gnome.org>
   36107 
   36108         Reviewed by Alexey Proskuryakov.
   36109 
   36110         https://bugs.webkit.org/show_bug.cgi?id=22624
   36111         [SOUP][GTK] Need API to get SoupSession from WebKit.
   36112 
   36113         Remove CURL support.
   36114 
   36115         * GNUmakefile.am:
   36116 
   36117 2009-02-23  Alexey Proskuryakov  <ap (a] webkit.org>
   36118 
   36119         Reviewed by Mark Rowe.
   36120 
   36121         Test: fast/dom/empty-hash-and-search.html
   36122 
   36123         https://bugs.webkit.org/show_bug.cgi?id=21147
   36124         hash property returns incorrect value for links w/o hash
   36125 
   36126         Make hash() and search() behavior for empty and missing parts match IE and Firefox.
   36127 
   36128         * platform/KURL.cpp:
   36129         (WebCore::KURL::query): Changed to return query without '?', as it is already done for ref().
   36130         (WebCore::KURL::prettyURL): Append the query with the question mark.
   36131 
   36132         * page/Location.cpp:
   36133         (WebCore::Location::search): Return an empty string if query is empty or missing.
   36134         (WebCore::Location::hash): Return an empty string for empty hashes, not only missing ones.
   36135 
   36136         * dom/WorkerLocation.cpp:
   36137         (WebCore::WorkerLocation::search):
   36138         (WebCore::WorkerLocation::hash):
   36139         Match document.location fixes above.
   36140 
   36141         * html/HTMLAnchorElement.cpp:
   36142         (WebCore::HTMLAnchorElement::hash):
   36143         (WebCore::HTMLAnchorElement::search):
   36144         Return an empty string for empty and missing parts.
   36145 
   36146 2009-02-23  Alexey Proskuryakov  <ap (a] webkit.org>
   36147 
   36148         Reviewed by Darin Adler.
   36149 
   36150         https://bugs.webkit.org/show_bug.cgi?id=20184
   36151         SELECT with no name generates invalid query string
   36152 
   36153         Test: fast/forms/select-no-name.html
   36154 
   36155         * html/HTMLSelectElement.cpp:
   36156         (WebCore::HTMLSelectElement::appendFormData): Added a check for empty name.
   36157 
   36158 2009-02-23  Alexey Proskuryakov  <ap (a] webkit.org>
   36159 
   36160         Apply review comments for the previous check-in (forgot to save the file, oops).
   36161 
   36162         * dom/ContainerNode.cpp: (WebCore::ContainerNode::removeChildren):
   36163 
   36164 2009-02-23  Alexey Proskuryakov  <ap (a] webkit.org>
   36165 
   36166         Reviewed by Darin Adler.
   36167 
   36168         https://bugs.webkit.org/show_bug.cgi?id=15707
   36169         Crash when manipulating document from within an iframe onload function
   36170 
   36171         Test: fast/dom/onload-open.html
   36172 
   36173         * dom/ContainerNode.cpp: (WebCore::ContainerNode::removeChildren): Protect the container and
   36174         the current node, because anything can happen when dispatching events.
   36175 
   36176 2009-02-23  Alexey Proskuryakov  <ap (a] webkit.org>
   36177 
   36178         Reviewed by Darin Adler.
   36179 
   36180         https://bugs.webkit.org/show_bug.cgi?id=18970
   36181         Numerically named input fields cause document.forms loop problems
   36182 
   36183         Test: fast/forms/numeric-input-name.html
   36184 
   36185         * bindings/scripts/CodeGeneratorJS.pm: Try index getter before name getter, even if the
   36186         latter overrides properties.
   36187 
   36188 2009-02-23  Alexey Proskuryakov  <ap (a] webkit.org>
   36189 
   36190         Reviewed by Sam Weinig.
   36191 
   36192         https://bugs.webkit.org/show_bug.cgi?id=24059
   36193         Tokenizer::write() return value is never used
   36194 
   36195         * dom/Tokenizer.h:
   36196         * dom/XMLTokenizer.cpp:
   36197         (WebCore::XMLTokenizer::write):
   36198         * dom/XMLTokenizer.h:
   36199         * html/HTMLTokenizer.cpp:
   36200         (WebCore::HTMLTokenizer::write):
   36201         * html/HTMLTokenizer.h:
   36202         * loader/FTPDirectoryDocument.cpp:
   36203         (WebCore::FTPDirectoryTokenizer::write):
   36204         * loader/ImageDocument.cpp:
   36205         (WebCore::ImageTokenizer::write):
   36206         * loader/MediaDocument.cpp:
   36207         (WebCore::MediaTokenizer::write):
   36208         * loader/PluginDocument.cpp:
   36209         (WebCore::PluginTokenizer::write):
   36210         * loader/TextDocument.cpp:
   36211         (WebCore::TextTokenizer::write):
   36212         Made write() return void, not bool.
   36213 
   36214 2009-02-20  Geoffrey Garen  <ggaren (a] apple.com>
   36215 
   36216         Reviewed by Sam Weinig.
   36217 
   36218         Updated for JavaScriptCore changes to timeout checking.
   36219 
   36220         * bindings/js/JSCustomPositionCallback.cpp:
   36221         (WebCore::JSCustomPositionCallback::handleEvent):
   36222         * bindings/js/JSCustomPositionErrorCallback.cpp:
   36223         (WebCore::JSCustomPositionErrorCallback::handleEvent):
   36224         * bindings/js/JSCustomSQLStatementCallback.cpp:
   36225         (WebCore::JSCustomSQLStatementCallback::handleEvent):
   36226         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
   36227         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
   36228         * bindings/js/JSCustomSQLTransactionCallback.cpp:
   36229         (WebCore::JSCustomSQLTransactionCallback::handleEvent):
   36230         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
   36231         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
   36232         * bindings/js/JSCustomVoidCallback.cpp:
   36233         (WebCore::JSCustomVoidCallback::handleEvent):
   36234         * bindings/js/JSCustomXPathNSResolver.cpp:
   36235         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
   36236         * bindings/js/JSDOMWindowBase.cpp:
   36237         (WebCore::JSDOMWindowBase::JSDOMWindowBase):
   36238         (WebCore::JSDOMWindowBase::commonJSGlobalData):
   36239         * bindings/js/JSEventListener.cpp:
   36240         (WebCore::JSAbstractEventListener::handleEvent):
   36241         * bindings/js/ScheduledAction.cpp:
   36242         (WebCore::ScheduledAction::executeFunctionInContext):
   36243         * bindings/js/ScriptController.cpp:
   36244         (WebCore::ScriptController::evaluate):
   36245         * bindings/js/WorkerScriptController.cpp:
   36246         (WebCore::WorkerScriptController::evaluate):
   36247         (WebCore::WorkerScriptController::forbidExecution):
   36248         * bindings/objc/WebScriptObject.mm:
   36249         (-[WebScriptObject callWebScriptMethod:withArguments:]):
   36250         (-[WebScriptObject evaluateWebScript:]):
   36251         * bridge/NP_jsobject.cpp:
   36252         (_NPN_InvokeDefault):
   36253         (_NPN_Invoke):
   36254         (_NPN_Evaluate):
   36255         (_NPN_Construct):
   36256         * bridge/jni/jni_jsobject.mm:
   36257         (JavaJSObject::call):
   36258         (JavaJSObject::eval):
   36259 
   36260 2009-02-21  Hironori Bono  <hbono (a] chromium.org>
   36261 
   36262         Reviewed by Alexey Proskuryakov.
   36263 
   36264         https://bugs.webkit.org/show_bug.cgi?id=23786
   36265         [Chromium] line-break characters in a complex text are treated as zero-width spaces
   36266 
   36267         This change prevents the UniscribeHelper class from treating the line-break characters
   36268         as whitespaces.
   36269 
   36270         Tests: fast/text/international/bidi-linebreak-001.html
   36271                fast/text/international/bidi-linebreak-002.html
   36272                fast/text/international/bidi-linebreak-003.html
   36273 
   36274         * platform/graphics/chromium/UniscribeHelper.cpp:
   36275         (WebCore::UniscribeHelper::adjustSpaceAdvances):
   36276         Make the UniscribeHelper::adjustSpaceAdvances() function treat all characters in
   36277         the treatAsSpace() function (e.g. U+0020, U+000A, U+000D, U+00A0) as whitespaces,
   36278         so does when Chromium renders a simple text.
   36279 
   36280 2009-02-20  Julien Chaffraix  <jchaffraix (a] webkit.org>
   36281 
   36282         Reviewed by Alexey Proskuryakov.
   36283 
   36284         Bug 23940: Use Document::createElement(const QualifiedName&, bool) when creating a known element inside WebCore
   36285 
   36286         Document::createElement(const QualifiedName&, bool) does not check for the prefix as opposed the the one taking an AtomicString
   36287         or Document::createElementNS. This is perfectly fine internally because we know the type of element created and the check is
   36288         unneeded.
   36289 
   36290         It also removes the use of an ExceptionCode argument which was here only to check that the prefix check was fine. Finally it
   36291         enables us to use some generated QualifiedName.
   36292 
   36293         * bindings/js/JSOptionConstructor.cpp:
   36294         (WebCore::constructHTMLOptionElement):
   36295         * dom/Document.cpp:
   36296         (WebCore::Document::setTitle):
   36297         * dom/XMLTokenizer.cpp:
   36298         (WebCore::createXHTMLParserErrorHeader):
   36299         (WebCore::XMLTokenizer::insertErrorMessageBlock):
   36300         * editing/CompositeEditCommand.cpp:
   36301         (WebCore::createBlockPlaceholderElement):
   36302         * editing/htmlediting.cpp:
   36303         (WebCore::createTabSpanElement):
   36304         * html/HTMLSelectElement.cpp:
   36305         (WebCore::HTMLSelectElement::setLength):
   36306         * loader/FTPDirectoryDocument.cpp:
   36307         (WebCore::FTPDirectoryTokenizer::appendEntry):
   36308         (WebCore::FTPDirectoryTokenizer::createTDForFilename):
   36309         (WebCore::FTPDirectoryTokenizer::loadDocumentTemplate):
   36310         (WebCore::FTPDirectoryTokenizer::createBasicDocument):
   36311         * loader/ImageDocument.cpp:
   36312         (WebCore::ImageDocument::createDocumentStructure):
   36313         * loader/MediaDocument.cpp:
   36314         (WebCore::MediaTokenizer::createDocumentStructure):
   36315         * loader/PluginDocument.cpp:
   36316         (WebCore::PluginTokenizer::createDocumentStructure):
   36317         * loader/TextDocument.cpp:
   36318         (WebCore::TextTokenizer::write):
   36319         * page/Frame.cpp:
   36320         (WebCore::Frame::selectionComputedStyle):
   36321         (WebCore::Frame::styleForSelectionStart):
   36322         Document::createElement(const AtomicString&, ...) to Document::createElement(const QualifiedName&, ...) switch.
   36323 
   36324         * xml/XPathFunctions.cpp:
   36325         (WebCore::XPath::FunLang::evaluate): Re-use langAttr instead of creating a new attribute.
   36326         * page/DragController.cpp:
   36327         (WebCore::documentFragmentFromDragData): Use the HTMLAnchorElement directly to get rid of the static cast.
   36328 
   36329 2009-02-19  Dimitri Glazkov  <dglazkov (a] chromium.org>
   36330 
   36331         Reviewed by Eric Seidel.
   36332 
   36333         https://bugs.webkit.org/show_bug.cgi?id=24060
   36334         Fix up to accommodate for CanvasPixelArray return.
   36335 
   36336         * platform/graphics/skia/ImageBufferSkia.cpp:
   36337         (WebCore::ImageBuffer::getImageData): Added an extra data() to call.
   36338         (WebCore::ImageBuffer::putImageData): Ditto.
   36339 
   36340 2009-02-20  Eric Carlson  <eric.carlson (a] apple.com>
   36341 
   36342         Simon Fraser
   36343 
   36344         https://bugs.webkit.org/show_bug.cgi?id=24042
   36345         Bug 24042: MediaPlayer should cache plug-in proxy
   36346 
   36347         The changes in https://bugs.webkit.org/show_bug.cgi?id=23917 assume that
   36348         MediaPlayer will always have created the private media player object before
   36349         the plug-in is instantiated and calls back with the proxy object. This is not
   36350         true on all platforms because of threading latency, so MediaPlayer should
   36351         cache the plug-in proxy so it can pass it to the media engine at a later time.
   36352 
   36353         * platform/graphics/MediaPlayer.cpp:
   36354         (WebCore::NullMediaPlayerPrivate::setPoster): Null media engine implementation of proxy methods.
   36355         (WebCore::NullMediaPlayerPrivate::deliverNotification): Ditto.
   36356         (WebCore::NullMediaPlayerPrivate::setMediaPlayerProxy): Ditto.
   36357         (WebCore::MediaPlayer::MediaPlayer): Initialize m_playerProxy.
   36358         (WebCore::MediaPlayer::load): Pass m_playerProxy to newly created engine.
   36359         (WebCore::MediaPlayer::setMediaPlayerProxy): Cache m_playerProxy.
   36360         * platform/graphics/MediaPlayer.h: Declare m_playerProxy.
   36361 
   36362 2009-02-20  Eric Carlson  <eric.carlson (a] apple.com>
   36363 
   36364         Simon Fraser.
   36365 
   36366         https://bugs.webkit.org/show_bug.cgi?id=24063
   36367         Make it possible for a port to require a user gesture to play/pause an <audio> or <video> element
   36368 
   36369         * html/HTMLMediaElement.cpp:
   36370         (WebCore::HTMLMediaElement::HTMLMediaElement):  Rename m_loadRestrictions to m_Restrictions.
   36371         Initialize m_internalCall.
   36372         (WebCore::HTMLMediaElement::loadTimerFired): Increment m_internalCall around call to load().
   36373         (WebCore::HTMLMediaElement::load): Call loadInternal if restrictions check out.
   36374         (WebCore::HTMLMediaElement::loadInternal): New, guts of old load()
   36375         (WebCore::HTMLMediaElement::setNetworkState): Fix bug introduced in r40943
   36376         (WebCore::HTMLMediaElement::play): Call playInternal if restrictions check out.
   36377         (WebCore::HTMLMediaElement::playInternal): New, guts of old play()
   36378         (WebCore::HTMLMediaElement::pause): Call pauseInternal if restrictions check out.
   36379         (WebCore::HTMLMediaElement::pauseInternal): New, guts of old pause()
   36380         (WebCore::HTMLMediaElement::togglePlayState): Call playInternal/pauseInternal
   36381         (WebCore::HTMLMediaElement::deliverNotification): Remove unnecessary white space.
   36382         * html/HTMLMediaElement.h: Rename m_loadRestrictions to m_Restrictions, add m_internalCall,
   36383         add RequireUserGestureRateChangeRestriction.
   36384 
   36385 2009-02-20  Darin Fisher  <darin (a] chromium.org>
   36386 
   36387         Fix build bustage in FileSystemWin.cpp.
   36388 
   36389         Need to return CString() instead of 0 since there are now two CString
   36390         constructors that take a pointer type.
   36391 
   36392         * platform/win/FileSystemWin.cpp:
   36393         (WebCore::openTemporaryFile):
   36394 
   36395 2009-02-20  Dimitri Glazkov  <dglazkov (a] chromium.org>
   36396 
   36397         Reviewed by Sam Weinig.
   36398 
   36399         https://bugs.webkit.org/show_bug.cgi?id=23999
   36400         Change license headers to accurately reflect code history.
   36401 
   36402         * platform/ContentType.cpp:
   36403         * platform/ContentType.h:
   36404 
   36405 2009-02-18  Dimitri Glazkov  <dglazkov (a] chromium.org>
   36406 
   36407         Reviewed by Antti Koivisto.
   36408 
   36409         https://bugs.webkit.org/show_bug.cgi?id=23999
   36410         Split off MIME type parsing into its own class.
   36411 
   36412         * GNUmakefile.am: Added ContentType sources.
   36413         * WebCore.pro: Ditto.
   36414         * WebCore.scons: Ditto.
   36415         * WebCore.vcproj/WebCore.vcproj: Ditto.
   36416         * WebCore.xcodeproj/project.pbxproj: Ditto.
   36417         * WebCoreSources.bkl: Ditto.
   36418         * html/HTMLMediaElement.cpp: Changed to use ContentType.
   36419         (WebCore::HTMLMediaElement::selectMediaURL):
   36420         * platform/ContentType.cpp: Added.
   36421         (WebCore::ContentType::ContentType):
   36422         (WebCore::ContentType::parameter):
   36423         (WebCore::ContentType::type):
   36424         * platform/ContentType.h: Added.
   36425         (WebCore::ContentType::raw):
   36426         * platform/MIMETypeRegistry.cpp:
   36427         * platform/MIMETypeRegistry.h:
   36428         * platform/graphics/MediaPlayer.cpp:
   36429         (WebCore::MediaPlayer::load):
   36430         * rendering/style/ContentData.h: Renamed ContentType to StyleContentType.
   36431         * rendering/style/RenderStyleConstants.h: Ditto.
   36432         (WebCore::):
   36433 
   36434 2009-02-20  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   36435 
   36436         Unreviewed build fix.
   36437 
   36438         Use CString() instead of 0.
   36439 
   36440         * platform/gtk/FileSystemGtk.cpp:
   36441         (WebCore::openTemporaryFile):
   36442         * platform/qt/FileSystemQt.cpp:
   36443         (WebCore::openTemporaryFile):
   36444 
   36445 2009-02-20  Gustavo Noronha Silva  <gns (a] gnome.org>
   36446 
   36447         Reviewed by Holger Freyther.
   36448 
   36449         When dealing with local files, use a path instead of an URI. GFile
   36450         has problems decoding URIs with percent signs on them.
   36451 
   36452         * platform/network/soup/ResourceHandleSoup.cpp:
   36453         (WebCore::ResourceHandle::startGio):
   36454 
   36455 2009-02-20  Gustavo Noronha Silva  <gns (a] gnome.org>
   36456 
   36457         Reviewed by Holger Freyther.
   36458 
   36459         Protect the ResourceHandle instance from being destroyed by
   36460         didReceiveData inside the GIO readCallback call, so that
   36461         cancelling caused by scripts is handled correctly.
   36462 
   36463         * platform/network/soup/ResourceHandleSoup.cpp:
   36464         (WebCore::readCallback):
   36465 
   36466 2009-02-20  David Kilzer  <ddkilzer (a] apple.com>
   36467 
   36468         Make IconDatabaseNone.cpp compile with -Wunused and pass check-for-exit-time-destructors
   36469 
   36470         Reviewed by Sam Weinig.
   36471 
   36472         * loader/icon/IconDatabaseNone.cpp:
   36473         (WebCore::IconDatabase::defaultDatabaseFilename): Use DEFINE_STATIC_LOCAL().
   36474         (WebCore::IconDatabase::open): Commented out unused parameter.
   36475         (WebCore::IconDatabase::setPrivateBrowsingEnabled): Ditto.
   36476         (WebCore::IconDatabase::iconForPageURL): Ditto.
   36477         (WebCore::IconDatabase::iconURLForPageURL): Ditto.
   36478         (WebCore::IconDatabase::defaultIcon): Ditto.
   36479         (WebCore::IconDatabase::retainIconForPageURL): Ditto.
   36480         (WebCore::IconDatabase::releaseIconForPageURL): Ditto.
   36481         (WebCore::IconDatabase::setIconDataForIconURL): Ditto.
   36482         (WebCore::IconDatabase::setIconURLForPageURL): Ditto.
   36483         (WebCore::IconDatabase::setEnabled): Ditto.
   36484         (WebCore::IconDatabase::pageURLMappingCount): Added stub.
   36485         (WebCore::IconDatabase::retainedPageURLCount): Ditto.
   36486         (WebCore::IconDatabase::iconRecordCount): Ditto.
   36487         (WebCore::IconDatabase::iconRecordCountWithData): Ditto.
   36488 
   36489 2009-02-20  David Kilzer  <ddkilzer (a] apple.com>
   36490 
   36491         Add comment to generated code when shadowing a built-in object
   36492 
   36493         Reviewed by Sam Weinig.
   36494 
   36495         * bindings/scripts/CodeGeneratorJS.pm: Added comment to
   36496         generated code output.
   36497 
   36498 2009-02-20  Avi Drissman  <avi (a] chromium.org>
   36499 
   36500         Reviewed by Eric Seidel.
   36501 
   36502         https://bugs.webkit.org/show_bug.cgi?id=24036
   36503         Keyboard events need disambiguation on the Linux platform too.
   36504 
   36505         * platform/chromium/PlatformKeyboardEventChromium.cpp:
   36506         (WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent):
   36507 
   36508 2009-02-19  Darin Fisher  <darin (a] chromium.org>
   36509 
   36510         Reviewed by Eric Seidel.
   36511 
   36512         https://bugs.webkit.org/show_bug.cgi?id=24046
   36513 
   36514         Several improvements to CString:
   36515         1- Make it possible to initialize a CString from a CStringBuffer
   36516         2- Make it possible to get a CStringBuffer from a CString
   36517         3- Change CStringBuffer::data() to return a const pointer to ward off mutation
   36518         4- Remove unused releaseBuffer() methods.
   36519         5- Make CStringBuffer::create() private to force consumers to get a CStringBuffer from a CString.
   36520 
   36521         * platform/text/CString.cpp:
   36522         (WebCore::CString::init):
   36523         (WebCore::CString::mutableData):
   36524         (WebCore::CString::newUninitialized):
   36525         (WebCore::CString::copyBufferIfNeeded):
   36526         * platform/text/CString.h:
   36527         (WebCore::CStringBuffer::data):
   36528         (WebCore::CStringBuffer::length):
   36529         (WebCore::CStringBuffer::create):
   36530         (WebCore::CStringBuffer::mutableData):
   36531         (WebCore::CString::CString):
   36532         (WebCore::CString::buffer):
   36533 
   36534 2009-02-19  Dmitry Titov  <dimich (a] chromium.org>
   36535 
   36536         Reviewed by Alexey Proskuryakov.
   36537 
   36538         https://bugs.webkit.org/show_bug.cgi?id=24017
   36539         Remove some usage of Document in Worker.
   36540 
   36541         * dom/WorkerContext.h:
   36542         (WebCore::WorkerContext::userAgent):
   36543         * dom/Document.cpp:
   36544         (WebCore::Document::userAgent):
   36545         * dom/Document.h:
   36546         * dom/ScriptExecutionContext.h:
   36547         Added virtual ScriptExecutionContext::userAgent(const KURL&).
   36548         Document implementation uses FrameLoader::userAgent and
   36549         WorkerContext receives the string on creation and stores it in a member.
   36550 
   36551         * dom/Worker.cpp:
   36552         (WebCore::Worker::Worker):
   36553         (WebCore::Worker::notifyFinished):
   36554         * dom/Worker.h:
   36555         (WebCore::Worker::create):
   36556         Instead of Document the Worker constructor now gets a ScriptExecutionContext.
   36557         Start using some methods on SEC (like completeURL() and userAgent()).
   36558         For others, explicitly case to Document and add a FIXME.
   36559         Remove Worker::document() too.
   36560 
   36561 2009-02-20  Gustavo Noronha Silva  <gns (a] gnome.org>
   36562 
   36563         Rubber-stamped by Holger Freyther.
   36564 
   36565         Do not set httpStatus to SOUP_STATUS_OK when serving local files
   36566         to match other ports' behavior, fixing xmlhttprequest test
   36567         regressions.
   36568 
   36569         * platform/network/soup/ResourceHandleSoup.cpp:
   36570         (WebCore::queryInfoCallback):
   36571 
   36572 2009-02-19  Dan Bernstein  <mitz (a] apple.com>
   36573 
   36574         Reviewed by Sam Weinig.
   36575 
   36576         - WebCore part of fixing https://bugs.webkit.org/show_bug.cgi?id=24027
   36577           Do not send loader callbacks during CSS styling
   36578 
   36579         Undo the iChat-specific quirk added in
   36580         <http://trac.webkit.org/changeset/41071>. Instead, always suspend memory
   36581         cache client callbacks during attach() and recalcStyle().
   36582 
   36583         * WebCore.base.exp: Removed
   36584         Settings::setNeedsIChatMemoryCacheCallsQuirk().
   36585         * dom/ContainerNode.cpp:
   36586         (WebCore::ContainerNode::suspendPostAttachCallbacks): Disable memory
   36587         cache client callbacks and remember to enable them afterwards if needed.
   36588         (WebCore::ContainerNode::resumePostAttachCallbacks): Re-enable memory
   36589         cache client callbacks if they were disabled in
   36590         suspendPostAttachCallbacks().
   36591         (WebCore::ContainerNode::attach): Use suspendPostAttachCallbacks() and
   36592         resumePostAttachCallbacks().
   36593         * dom/ContainerNode.h: Made suspendPostAttachCallbacks()
   36594         and resumePostAttachCallbacks() non-static.
   36595         * dom/Document.cpp:
   36596         (WebCore::Document::dispatchImageLoadEventsNow): Reverted iChat-specific
   36597         workaround.
   36598         * page/Settings.cpp: Removed m_needsIChatMemoryCacheCallsQuirk and
   36599         related code.
   36600         (WebCore::Settings::Settings):
   36601         * page/Settings.h:
   36602 
   36603 2009-02-19  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   36604 
   36605         Unreviewed build fix.
   36606 
   36607         Build fix after r41092. Make the memoryUsage method
   36608         public. It will be shadowed by cf/mac and for curl/soup/qt
   36609         the implementation from ResourceResponseBase will be used.
   36610 
   36611         * platform/network/ResourceResponseBase.h:
   36612         (WebCore::ResourceResponseBase::memoryUsage):
   36613 
   36614 2009-02-19  Beth Dakin  <bdakin (a] apple.com>
   36615 
   36616         Reviewed by Dave Hyatt.
   36617 
   36618         Fix for <rdar://problem/6077775> Should be able to specify
   36619         inactive ::selection color
   36620 
   36621         This patch makes the ::selction pseudo-element work with
   36622         the :window-inactive pseudo type. This was, a user can specify a
   36623         different ::selection style when a window is inactive.
   36624 
   36625         * css/CSSStyleSelector.cpp:
   36626         (WebCore::CSSStyleSelector::SelectorChecker::checkSelector):
   36627         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
   36628         * rendering/RenderObject.cpp:
   36629         (WebCore::RenderObject::selectionBackgroundColor):
   36630         (WebCore::RenderObject::selectionForegroundColor):
   36631 
   36632 2009-02-19  Sam Weinig  <sam (a] webkit.org>
   36633 
   36634         Reviewed by Beth Dakin.
   36635 
   36636         Patch for https://bugs.webkit.org/show_bug.cgi?id=24044
   36637         Update querySelector/querySelectorAll to match the latest spec
   36638 
   36639         Update querySelector and querySelectorAll to match the latest version
   36640         of the Selectors API spec.  We now stringify null and undefined to "null"
   36641         and "undefined" respectively instead of to "".
   36642 
   36643         Test: fast/dom/SelectorAPI/undefined-null-stringify.html
   36644 
   36645         * dom/Document.idl:
   36646         * dom/DocumentFragment.idl:
   36647         * dom/Element.idl:
   36648 
   36649 2009-02-19  Dimitri Glazkov  <dglazkov (a] chromium.org>
   36650 
   36651         Reviewed by Geoffrey Garen.
   36652 
   36653         https://bugs.webkit.org/show_bug.cgi?id=23732
   36654         Rework CachedResource overhead accounting to allow platforms to diverge
   36655         in numbers.
   36656 
   36657         * loader/CachedResource.cpp:
   36658         (WebCore::CachedResource::overheadSize): Changed to ask ResourceResponse
   36659         for its size and to use actual URL size.
   36660         * platform/network/ResourceResponseBase.h:
   36661         (WebCore::ResourceResponseBase::size): Added default size method.
   36662         * platform/network/cf/ResourceResponse.h:
   36663         (WebCore::ResourceResponse::size): Added Win/CF size method
   36664         * platform/network/mac/ResourceResponse.h:
   36665         (WebCore::ResourceResponse::size): Added Mac size method.
   36666 
   36667 2009-02-19  Anders Carlsson  <andersca (a] apple.com>
   36668 
   36669         Reviewed by Kevin Decker.
   36670 
   36671         - Fix for <rdar://problem/6604968>
   36672 
   36673         On Tiger, create an autorelease pool before creating the NSGraphicsContext and drain it immediately
   36674         after the call to -[NSView displayRectIgnoringOpacity:inContext:].
   36675 
   36676         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   36677         (WebCore::MediaPlayerPrivate::paint):
   36678 
   36679 2009-02-19  David Hyatt  <hyatt (a] apple.com>
   36680 
   36681         Fix a bug where reflections didn't work properly if opacity was < 1.  Make sure that replaced elements
   36682         also consider reflections to be part of their visual overflow.  This had already been done for blocks
   36683         and lines, but it wasn't being done yet for replaced elements.
   36684 
   36685         Also make sure that when the object being reflected has opacity < 1 that we don't end up popping the outer
   36686         transparency layer early.  Since the reflected object paints twice, we don't want to end the transparency
   36687         layer it pushed until we're done painting the real object (rather than the reflection).
   36688 
   36689         Reviewed by Dan Bernstein
   36690 
   36691         Added fast/reflections/reflection-masks-opacity.html
   36692 
   36693         * rendering/RenderLayer.cpp:
   36694         (WebCore::RenderLayer::paintLayer):
   36695         * rendering/RenderPartObject.cpp:
   36696         (WebCore::RenderPartObject::layout):
   36697         * rendering/RenderReplaced.cpp:
   36698         (WebCore::RenderReplaced::layout):
   36699         (WebCore::RenderReplaced::adjustOverflowForBoxShadowAndReflect):
   36700         * rendering/RenderReplaced.h:
   36701 
   36702 2009-02-19  David Levin  <levin (a] chromium.org>
   36703 
   36704         Reviewed by Alexey Proskuryakov.
   36705 
   36706         Bug 23980: WorkerRunLoop needs a way to run in a given mode similar to CFRunLoopInMode.
   36707         <https://bugs.webkit.org/show_bug.cgi?id=23980>
   36708 
   36709         WorkerRunLoop has the ability to run in a mode which filters the tasks to be run.
   36710         * When WorkerRunLoop::runInMode is called, only task for that mode will run.
   36711         * When WorkerRunLoop::run is called (or the default mode is used), then all tasks
   36712           will run regardless of their posted mode.
   36713 
   36714         Here's a demonstration of the api:
   36715 
   36716             RefPtr<NameResolution> nameResolution = NameResolution::create(workerRunLoop);
   36717 
   36718             //  Internally nameResolution will do workerRunLoop.postTaskForMode(task, "MyCoolMode")
   36719             //  for any tasks that need to be run during this loop.
   36720             nameResolution->setTaskMode("MyCoolMode");
   36721 
   36722             nameResolution->start();
   36723             while (!nameResolution->done()) {
   36724                 // Only tasks which are posted for "MyCoolMode" will run.
   36725                 workerRunLoop.runInMode(context, "MyCoolMode");
   36726             }
   36727 
   36728         No observable change in behavior, so no test.
   36729 
   36730         * dom/WorkerRunLoop.cpp:
   36731         (WebCore::ModePredicate::ModePredicate):
   36732         (WebCore::ModePredicate::operator()):
   36733         (WebCore::WorkerRunLoop::WorkerRunLoop):
   36734         (WebCore::WorkerRunLoop::~WorkerRunLoop):
   36735         (WebCore::WorkerRunLoop::setSharedTimer):
   36736         (WebCore::WorkerRunLoop::resetSharedTimer):
   36737         (WebCore::WorkerRunLoop::run):
   36738         (WebCore::WorkerRunLoop::runInMode):
   36739         (WebCore::WorkerRunLoop::postTask):
   36740         (WebCore::WorkerRunLoop::postTaskForMode):
   36741         * dom/WorkerRunLoop.h:
   36742         (WebCore::WorkerRunLoop::Task::create):
   36743         (WebCore::WorkerRunLoop::Task::mode):
   36744         (WebCore::WorkerRunLoop::Task::performTask):
   36745         (WebCore::WorkerRunLoop::Task::Task):
   36746 
   36747 2009-02-19  Dimitri Glazkov  <dglazkov (a] chromium.org>
   36748 
   36749         Reviewed by Eric Seidel.
   36750 
   36751         https://bugs.webkit.org/show_bug.cgi?id=24034
   36752         Fix up Selection->VisibleSelection change.
   36753 
   36754         * page/chromium/EventHandlerChromium.cpp:
   36755         (WebCore::EventHandler::passMousePressEventToSubframe): Renamed Selection
   36756         to VisibleSelection.
   36757 
   36758 2009-02-19  Dimitri Glazkov  <dglazkov (a] chromium.org>
   36759 
   36760         Reviewed by Eric Seidel.
   36761 
   36762         https://bugs.webkit.org/show_bug.cgi?id=24041
   36763         Correct Skia type conversion issues, fix Chromium Linux build.
   36764 
   36765         * platform/graphics/chromium/FontLinux.cpp:
   36766         (WebCore::Font::drawGlyphs): changed parameters to RGBA32, not WebCore::Color.
   36767 
   36768 2009-02-19  Jungshik Shin <jshin (a] chromium.org>
   36769 
   36770         Reviewed by Eric Seidel.
   36771 
   36772         https://bugs.webkit.org/show_bug.cgi?id=20531
   36773         Chromium-part follow-up to the patch landed in r40636
   36774         for bug 20531.
   36775         Remove a static member function alternateFamilyName
   36776         from Chromium's Win/Linux ports of FontCache. In r40636,
   36777         alternateFamilyName was customized using #ifdef PLATFORM(WIN_OS).
   36778         So, there's no more need for the static member function per
   36779         platform.
   36780 
   36781         * platform/graphics/chromium/FontCacheChromiumWin.cpp:
   36782         * platform/graphics/chromium/FontCacheLinux.cpp:
   36783 
   36784 2009-02-19  Simon Fraser  <simon.fraser (a] apple.com>
   36785 
   36786         Reviewed by Adele Peterson.
   36787 
   36788         Call documentWillBecomeInactive() from Document::detach to ensure that
   36789         media elements are shut down, because they may be kept alive by references
   36790         from JS past document teardown.
   36791 
   36792         documentWillBecomeInactive() calls  renderView()->willMoveOffscreen(), so no
   36793         need to do that in detach() as well.
   36794 
   36795         We no longer need to call documentWillBecomeInactive() from ~Page() (which
   36796         was added for <https://bugs.webkit.org/show_bug.cgi?id=21116>), since this
   36797         supersedes that change.
   36798 
   36799         * dom/Document.cpp:
   36800         (WebCore::Document::detach):
   36801         * page/Page.cpp:
   36802         (WebCore::Page::~Page):
   36803 
   36804 2009-02-19  Dimitri Glazkov  <dglazkov (a] chromium.org>
   36805 
   36806         Reviewed by Eric Seidel.
   36807 
   36808         https://bugs.webkit.org/show_bug.cgi?id=24028
   36809         Fix up Skia path changes.
   36810 
   36811         * platform/graphics/skia/GraphicsContextSkia.cpp:
   36812         (WebCore::GraphicsContext::strokePath): Removed illegal indirection.
   36813         * platform/graphics/skia/PathSkia.cpp:
   36814         (WebCore::boundingBoxForCurrentStroke): Changed call name.
   36815 
   36816 2009-02-19  Gustavo Noronha Silva  <gns (a] gnome.org>
   36817 
   36818         Reviewed by Alexey Proskuryakov.
   36819 
   36820         Ignore ports on local URLs. This fixes a regression in
   36821         fast/loader/file-URL-with-port-number.html
   36822 
   36823         * platform/network/soup/ResourceHandleSoup.cpp:
   36824         (WebCore::ResourceHandle::startGio):
   36825 
   36826 2009-02-19  Gustavo Noronha Silva  <gns (a] gnome.org>
   36827 
   36828         Reviewed by Alexey Proskuryakov.
   36829 
   36830         https://bugs.webkit.org/show_bug.cgi?id=24011
   36831         KURL's setPort doesn't unset port if 0 is given
   36832 
   36833         Make setPort remove port if 0 is given to it, as promised by the
   36834         comment in KURL's header.
   36835 
   36836         * platform/KURL.cpp:
   36837         (WebCore::KURL::setPort):
   36838 
   36839 2009-02-18  Dan Bernstein  <mitz (a] apple.com>
   36840 
   36841         Reviewed by Brady Eidson.
   36842 
   36843         - WebCore part of fixing <rdar://problem/6507512> Crash in iChat at CSSStyleSelector::adjustRenderStyle
   36844 
   36845         The crash results from re-entry into
   36846         CSSMutableStyleDeclaration::setCssText, which in turn is caused by
   36847         the first style change causing a cached image to load from the memory
   36848         cache, causing load delegate dispatch, and iChat's delegate method
   36849         calling back into WebKit.
   36850 
   36851         The workaround is to use defer delegate callbacks for memory cache. In
   36852         this case, deferring callbacks during image load event dispatch was
   36853         found to be sufficient.
   36854 
   36855         The crash is a regression. See also the discussion in
   36856         <https://bugs.webkit.org/show_bug.cgi?id=22521>.
   36857 
   36858         * WebCore.base.exp: Added
   36859         Settings::setNeedsIChatMemoryCacheCallsQuirk().
   36860         * dom/Document.cpp:
   36861         (WebCore::Document::dispatchImageLoadEventsNow): If the quirk is
   36862         enabled, defer memory cache callbacks during image load event dispatch.
   36863         * page/Settings.cpp:
   36864         (WebCore::Settings::Settings): Initialize
   36865         m_needsIChatMemoryCacheCallsQuirk.
   36866         (WebCore::Settings::setNeedsIChatMemoryCacheCallsQuirk): Added this
   36867         setter.
   36868         * page/Settings.h:
   36869         (WebCore::Settings::needsIChatMemoryCacheCallsQuirk): Added this getter.
   36870 
   36871 2009-02-18  Adam Roben  <aroben (a] apple.com>
   36872 
   36873         Export WebCore::handCursor and Cursor.h
   36874 
   36875         Reviewed by John Sullivan.
   36876 
   36877         * WebCore.base.exp: Added WebCore::handCursor.
   36878         * WebCore.xcodeproj/project.pbxproj: Made Cursor.h private.
   36879 
   36880 2009-02-18  Ojan Vafai  <ojan (a] chromium.org>
   36881 
   36882         Reviewed by Alexey Proskuryakov.
   36883 
   36884         https://bugs.webkit.org/show_bug.cgi?id=23992
   36885         REGRESSION: crash on windows loading http://www.stickam.com/liveStreams.do
   36886 
   36887         Unable to reduce to a layout test.
   36888 
   36889         * page/Frame.cpp:
   36890         (WebCore::Frame::contentRenderer):
   36891 
   36892 2009-02-18  Evan Stade  <estade (a] chromium.org>
   36893 
   36894         Reviewed by Eric Seidel.
   36895 
   36896         https://bugs.webkit.org/show_bug.cgi?id=23861
   36897         Stroke font outlines on chromium linux
   36898 
   36899         TEST=LayoutTests/svg/custom/pointer-events-text.svg
   36900 
   36901         * platform/graphics/chromium/FontLinux.cpp:
   36902         (WebCore::Font::drawGlyphs):
   36903 
   36904 2009-02-18  Evan Stade  <estade (a] chromium.org>
   36905 
   36906         Reviewed by Eric Seidel.
   36907 
   36908         https://bugs.webkit.org/show_bug.cgi?id=23860
   36909         Resync some graphics/skia files with their chromium counterparts
   36910 
   36911         This comes from chromium patches <http://codereview.chromium.org/17633>
   36912         and <http://codereview.chromium.org/17454>
   36913 
   36914         * platform/graphics/skia/GraphicsContextSkia.cpp:
   36915         (WebCore::GraphicsContext::clipPath):
   36916         (WebCore::GraphicsContext::fillPath):
   36917         * platform/graphics/skia/PlatformContextSkia.cpp:
   36918         (PlatformContextSkia::addPath):
   36919         (PlatformContextSkia::currentPath):
   36920         * platform/graphics/skia/PlatformContextSkia.h:
   36921 
   36922 2009-02-18  Gustavo Noronha Silva  <gns (a] gnome.org>
   36923 
   36924         Unreviewed.
   36925 
   36926         Build fix after r41060.
   36927 
   36928         * GNUmakefile.am:
   36929 
   36930 2009-02-18  Dimitri Glazkov  <dglazkov (a] chromium.org>
   36931 
   36932         Reviewed by Eric Seidel.
   36933 
   36934         https://bugs.webkit.org/show_bug.cgi?id=24005
   36935         Add an include to fix Chromium build.
   36936 
   36937         * page/animation/AnimationController.cpp: Add UnusedParam.h include.
   36938 
   36939 2009-02-18  Gustavo Noronha Silva  <gns (a] gnome.org>
   36940 
   36941         Reviewed by Holger Freyther.
   36942 
   36943         Fix symbols.filter location, and add other missing files to the
   36944         autotools build, so that make dist works.
   36945 
   36946         * GNUmakefile.am:
   36947 
   36948 2009-02-18  Zan Dobersek  <zandobersek (a] gmail.com>
   36949 
   36950         Rubber-stamped by Holger Hans Peter Freyther.
   36951 
   36952         Allow POST method for local requests.
   36953 
   36954         * platform/network/soup/ResourceHandleSoup.cpp:
   36955         (WebCore::ResourceHandle::startGio):
   36956 
   36957 2009-02-18  Gustavo Noronha Silva  <gns (a] gnome.org>
   36958 
   36959         Reviewed by Holger Hans Peter Freyther.
   36960 
   36961         Use KURL in startGio instead of passing a string with the URL, so
   36962         that we can handle removing refs and queries more elegantly. This
   36963         is fixing more regressions that came from the curl->soup switch.
   36964 
   36965         Original work by Zan Dobersek.
   36966 
   36967         * platform/network/ResourceHandle.h:
   36968         * platform/network/soup/ResourceHandleSoup.cpp:
   36969         (WebCore::ResourceHandle::start):
   36970         (WebCore::ResourceHandle::startGio):
   36971 
   36972 2009-02-18  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   36973 
   36974         Reviewed by Alexey Proskuryakov.
   36975 
   36976         Implement ResourceHandle::loadResourceSynchronously in ResourceHandleSoup.cpp
   36977 
   36978         The implementation is needed to have synchronous loading, e.g. for
   36979         JavaScript interaction. This is fixing various regressions that
   36980         came from the curl->soup switch.
   36981 
   36982         * platform/network/soup/ResourceHandleSoup.cpp:
   36983         (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader):
   36984         (WebCore::WebCoreSynchronousLoader::~WebCoreSynchronousLoader):
   36985         (WebCore::WebCoreSynchronousLoader::didReceiveResponse):
   36986         (WebCore::WebCoreSynchronousLoader::didReceiveData):
   36987         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
   36988         (WebCore::WebCoreSynchronousLoader::didFail):
   36989         (WebCore::WebCoreSynchronousLoader::run):
   36990         (WebCore::ResourceHandle::loadResourceSynchronously):
   36991 
   36992 2009-02-18  Xan Lopez  <xan (a] gnome.org>
   36993 
   36994         Reviewed by Mark Rowe.
   36995 
   36996         https://bugs.webkit.org/show_bug.cgi?id=23989
   36997 
   36998         Based on a patch by Bo Yang  <techrazy.yang (a] gmail.com>
   36999 
   37000         Make the cursor cache global, that's all we really need and
   37001         otherwise we can miss cursor transitions in some situations (see
   37002         the bug for one testcase). Also remove some now useless code.
   37003 
   37004         * platform/Widget.h:
   37005         * platform/gtk/WidgetGtk.cpp:
   37006         (WebCore::Widget::Widget):
   37007         (WebCore::Widget::~Widget):
   37008         (WebCore::Widget::setCursor):
   37009 
   37010 2009-02-17  Adam Roben  <aroben (a] apple.com>
   37011 
   37012         Windows build fix
   37013 
   37014         * loader/FrameLoader.cpp:
   37015         (WebCore::toPlugInElement): Don't rely on #if being processed before
   37016         ASSERT.
   37017 
   37018 2009-02-17  David Levin  <levin (a] chromium.org>
   37019 
   37020         Reviewed by Alexey Proskuryakov.
   37021 
   37022         Bug 23977: Unnecessary timer related headers in files.
   37023         <https://bugs.webkit.org/show_bug.cgi?id=23977>
   37024 
   37025         No observable change in behavior, so no test.
   37026 
   37027         * dom/Document.cpp:
   37028         * dom/WorkerRunLoop.cpp:
   37029         * dom/WorkerRunLoop.h:
   37030 
   37031 2009-02-17  Peter Abrahamsen  <rainhead (a] gmail.com>
   37032 
   37033         Reviewed by Sam Weinig.
   37034 
   37035         https://bugs.webkit.org/show_bug.cgi?id=23958
   37036         <rdar://problem/6587815>
   37037 
   37038         Updated XMLHttpRequest with new header names from the latest Access
   37039         Control draft: http://www.w3.org/TR/access-control/
   37040         - Access-Control-Origin becomes Access-Control-Allow-Origin
   37041         - Access-Control-Credentials becomes Access-Control-Allow-Credentials
   37042 
   37043         * xml/XMLHttpRequest.cpp:
   37044         (WebCore::XMLHttpRequest::accessControlCheck):
   37045 
   37046 2009-02-17  Kevin Ollivier  <kevino (a] theolliviers.com>
   37047 
   37048         wx build fix. Add missing constructor used for empty values.
   37049 
   37050         * platform/graphics/wx/FontPlatformData.h:
   37051         (WebCore::FontPlatformData::FontPlatformData):
   37052 
   37053 2009-02-17  Antti Koivisto  <antti (a] apple.com>
   37054 
   37055         Reviewed by Dave Kilzer.
   37056 
   37057         <rdar://problem/6592446> dynamically updating page doesn't seem to draw when updated
   37058 
   37059         Need update after callback.
   37060 
   37061         * bindings/js/JSCustomPositionCallback.cpp:
   37062         (WebCore::JSCustomPositionCallback::handleEvent):
   37063         * bindings/js/JSCustomPositionErrorCallback.cpp:
   37064         (WebCore::JSCustomPositionErrorCallback::handleEvent):
   37065 
   37066 2009-02-17  Eric Carlson  <eric.carlson (a] apple.com>
   37067 
   37068         Reviewed by Antti Koivisto.
   37069 
   37070         https://bugs.webkit.org/show_bug.cgi?id=23917
   37071         Allow a WebKit plug-in to act as a proxy for the <audio> and <video>
   37072         element.
   37073 
   37074         * DerivedSources.make: add media element proxy exports to .exp file when feature is defined.
   37075 
   37076         * WebCore.VideoProxy.exp: New, define the informal protocol exported by a media element proxy.
   37077 
   37078         * WebCore.xcodeproj/project.pbxproj: Add MediaPlayerProxy.h.
   37079 
   37080         * html/HTMLMediaElement.cpp:
   37081         (WebCore::HTMLMediaElement::HTMLMediaElement): Initialize m_needWidgetUpdate.
   37082         (WebCore::HTMLMediaElement::attributeChanged): Don't detach+attach when PLUGIN_PROXY_FOR_VIDEO, the
   37083         proxy plug-in handles the poster frame.
   37084         (WebCore::HTMLMediaElement::rendererIsNeeded): New logic for PLUGIN_PROXY_FOR_VIDEO.
   37085         (WebCore::HTMLMediaElement::createRenderer): Create RenderPartObject when PLUGIN_PROXY_FOR_VIDEO.
   37086         (WebCore::HTMLMediaElement::attach): Set m_needWidgetUpdate when PLUGIN_PROXY_FOR_VIDEO
   37087         (WebCore::HTMLMediaElement::load): Don't reallocate MediaPlayer when PLUGIN_PROXY_FOR_VIDEO, we keep the
   37088         same plug-in for the life of the element.
   37089         (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged): update m_networkState when media player
   37090         network state changes to EMPTY, otherwise we can get out of sync with engine.
   37091         (WebCore::HTMLMediaElement::defaultEventHandler): pass event to widget when PLUGIN_PROXY_FOR_VIDEO
   37092         (WebCore::HTMLMediaElement::deliverNotification): New, deliver notification from proxy plug-in to
   37093         media player.
   37094         (WebCore::HTMLMediaElement::setMediaPlayerProxy): New, pass proxy object to media player.
   37095         (WebCore::HTMLMediaElement::initialURL): New, return the url from the "src" attr or the appropriate
   37096         <source> element to be used as the initial url for the proxy.
   37097         (WebCore::HTMLMediaElement::finishParsingChildren): New, allocate MediaPlayer and update widget.
   37098         * html/HTMLMediaElement.h: Declare new methods for proxy, add m_needWidgetUpdate.
   37099         (WebCore::HTMLMediaElement::setNeedWidgetUpdate):
   37100 
   37101         * html/HTMLVideoElement.cpp:
   37102         (WebCore::HTMLVideoElement::attach): Poster image is handled by proxy when PLUGIN_PROXY_FOR_VIDEO.
   37103         (WebCore::HTMLVideoElement::parseMappedAttribute): Ditto.
   37104         * html/HTMLVideoElement.h:
   37105 
   37106         * loader/FrameLoader.cpp:
   37107         (WebCore::toPlugInElement): Allow cast if element is <video> or <audio>
   37108 
   37109         * platform/graphics/MediaPlayer.cpp:
   37110         (WebCore::MediaPlayer::MediaPlayer): Remove white space.
   37111         (WebCore::MediaPlayer::setPoster): New, forward call to private player.
   37112         (WebCore::MediaPlayer::deliverNotification): Ditto.
   37113         (WebCore::MediaPlayer::setMediaPlayerProxy): Ditto.
   37114         * platform/graphics/MediaPlayer.h:
   37115         (WebCore::MediaPlayer::mediaPlayerClient):
   37116 
   37117         * platform/graphics/mac/MediaPlayerProxy.h: New, defines media player proxy interface.
   37118 
   37119         * rendering/RenderPart.cpp:
   37120         (WebCore::RenderPart::RenderPart): Change constructor to take Element* instead of Node* as a
   37121         non-element node doesn't need a renderer
   37122         * rendering/RenderPart.h: Ditto.
   37123 
   37124         * rendering/RenderPartObject.cpp:
   37125         (WebCore::RenderPartObject::RenderPartObject): Ditto.
   37126         (WebCore::RenderPartObject::updateWidget): Package params for proxy plug-in when element is
   37127         <video> or <audio>.
   37128         * rendering/RenderPartObject.h:
   37129 
   37130 2009-02-17  David Hyatt  <hyatt (a] apple.com>
   37131 
   37132         Reviewed by Eric Seidel
   37133 
   37134         Fix for https://bugs.webkit.org/show_bug.cgi?id=23985
   37135 
   37136         Don't allow legends to be anything but display:block.
   37137 
   37138         Added fast/forms/inline-ignored-on-legend.html
   37139 
   37140         * GNUmakefile.am:
   37141         * WebCore.pro:
   37142         * WebCore.vcproj/WebCore.vcproj:
   37143         * WebCore.xcodeproj/project.pbxproj:
   37144         * WebCoreSources.bkl:
   37145         * css/html4.css:
   37146         * html/HTMLLegendElement.cpp:
   37147         * html/HTMLLegendElement.h:
   37148         * rendering/RenderLegend.cpp: Removed.
   37149         * rendering/RenderLegend.h: Removed.
   37150         * wml/WMLInsertedLegendElement.cpp:
   37151         * wml/WMLInsertedLegendElement.h:
   37152 
   37153 2009-02-13  Brett Wilson  <brettw (a] dhcp-172-22-71-167.mtv.corp.google.com>
   37154 
   37155         Reviewed by Simon Fraser.
   37156 
   37157         https://bugs.webkit.org/attachment.cgi?id=27666
   37158         Fix Chromium build build: forgotten include in RenderObject, sync
   37159         RenderTheme to the recent changes in RenderObject.
   37160 
   37161         * rendering/RenderObject.cpp:
   37162         * rendering/RenderThemeChromiumMac.mm:
   37163         (WebCore::RenderThemeChromiumMac::updatePressedState):
   37164 
   37165 2009-02-17  Gustavo Noronha Silva  <gns (a] gnome.org>
   37166 
   37167         Reviewed by Darin Adler.
   37168 
   37169         https://bugs.webkit.org/show_bug.cgi?id=22966
   37170         crash when destroying a webview that opened a page containing <script>
   37171         tags
   37172 
   37173         Fix m_group being set to 0 instead of to m_singlePageGroup when
   37174         GroupName is set to empty
   37175 
   37176         * page/Page.cpp:
   37177         (WebCore::Page::setGroupName):
   37178 
   37179 2009-02-16  Beth Dakin  <bdakin (a] apple.com>
   37180 
   37181         Reviewed by Sam Weinig.
   37182 
   37183         Fix for <rdar://problem/6386623>
   37184 
   37185         I made m_numParsedProperties and m_maxParsedProperties unsigned
   37186         instead of int, and then added an early return from addPropery() if
   37187         m_maxParsedProperties exceeds the max value.
   37188 
   37189         * css/CSSParser.cpp:
   37190         (WebCore::CSSParser::addProperty):
   37191         (WebCore::CSSParser::rollbackLastProperties):
   37192         (WebCore::CSSParser::clearProperties):
   37193         (WebCore::CSSParser::createFontFaceRule):
   37194         (WebCore::CSSParser::deleteFontFaceOnlyValues):
   37195         * css/CSSParser.h:
   37196 
   37197 2009-02-16  Justin Garcia  <justin.garcia (a] apple.com>
   37198 
   37199         Reviewed by Mark Rowe.
   37200 
   37201         https://bugs.webkit.org/show_bug.cgi?id=16309
   37202         HTML5: The third execCommand argument for insert{un}orderedlist should be ignored
   37203 
   37204         When we originally implemented this command, MSDN documentation said that IE set the
   37205         id attribute of inserted lists to the third argument to execCommand, but IE doesn't
   37206         do this nor do any other browsers.
   37207 
   37208         * editing/EditorCommand.cpp:
   37209         (WebCore::executeInsertOrderedList):
   37210         (WebCore::executeInsertUnorderedList):
   37211         * editing/IndentOutdentCommand.cpp:
   37212         (WebCore::IndentOutdentCommand::outdentParagraph):
   37213         * editing/InsertListCommand.cpp:
   37214         (WebCore::InsertListCommand::insertList):
   37215         (WebCore::InsertListCommand::InsertListCommand):
   37216         (WebCore::InsertListCommand::doApply):
   37217         * editing/InsertListCommand.h:
   37218         (WebCore::InsertListCommand::create):
   37219 
   37220 2009-02-16  Dan Bernstein  <mitz (a] apple.com>
   37221 
   37222         Reviewed by Geoffrey Garen.
   37223 
   37224         - fix <rdar://problem/6561077> REGRESSION (r39634): Unable to select an item in stocks widget with the mouse
   37225 
   37226         Test: platform/mac/fast/events/pointer-events-dashboard.html
   37227 
   37228         * css/CSSStyleSelector.cpp:
   37229         (WebCore::CSSStyleSelector::applyProperty): Do not apply the
   37230         pointer-events property in Dashboard backwards compatibility mode,
   37231         in order to work around misuse of that property by the Stocks widget.
   37232 
   37233 2009-02-16  Justin Garcia  <justin.garcia (a] apple.com>
   37234 
   37235         Reviewed by Eric Seidel.
   37236 
   37237         https://bugs.webkit.org/show_bug.cgi?id=15381
   37238         execCommand justify modifies the contentEditable node
   37239 
   37240         * editing/CompositeEditCommand.cpp:
   37241         (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary): Avoid modifying not just
   37242         the body element, but any root editable element.
   37243 
   37244 2009-02-16  Chris Fleizach  <cfleizach (a] apple.com>
   37245 
   37246         Reviewed by Adele Peterson.
   37247 
   37248         Bug 23979: AX: alt tag not returned for <input type="image">
   37249         https://bugs.webkit.org/show_bug.cgi?id=23979
   37250 
   37251         Test: accessibility/input-image-alt.html
   37252 
   37253         * page/AccessibilityRenderObject.cpp:
   37254         (WebCore::AccessibilityRenderObject::accessibilityDescription):
   37255 
   37256 2009-02-16  Kevin Watters  <kevinwatters (a] gmail.com>
   37257 
   37258         Reviewed by Kevin Ollivier.
   37259 
   37260         The ref data is not properly set unless we use the CreateMatrix function.
   37261 
   37262         https://bugs.webkit.org/show_bug.cgi?id=23978
   37263 
   37264         * platform/graphics/wx/TransformationMatrixWx.cpp:
   37265         (WebCore::TransformationMatrix::operator wxGraphicsMatrix):
   37266 
   37267 2009-02-16  Dan Bernstein  <mitz (a] apple.com>
   37268 
   37269         Reviewed by John Sullivan.
   37270 
   37271         - fix <rdar://problem/6516829> FontPlatformData constructor passes NULL to CTFontCopyGraphicsFont and CTFontGetPlatformFont
   37272 
   37273         * platform/graphics/FontCache.cpp:
   37274         (WebCore::FontDataCacheKeyTraits::emptyValue): Changed to use the
   37275         FontPlatformData(float, bool, bool) constructor.
   37276         * platform/graphics/mac/FontCacheMac.mm:
   37277         (WebCore::FontCache::createFontPlatformData): Changed to pass a valid
   37278         NSFont to the FontPlatformData constructor, instead of implicitly
   37279         passing 0 and then calling setFont().
   37280         * platform/graphics/mac/FontPlatformData.h: Made the NSFont parameter
   37281         of the constructor mandatory.
   37282 
   37283 2009-02-15  David Kilzer  <ddkilzer (a] apple.com>
   37284 
   37285         Move duplicate caretWidth constants to RenderObject.h
   37286 
   37287         Reviewed by Dan Bernstein.
   37288 
   37289         No test since no change in behavior.
   37290 
   37291         * rendering/RenderBlock.cpp:
   37292         (WebCore::RenderBlock::localCaretRect): Removed caretWidth.
   37293         * rendering/RenderBox.cpp:
   37294         (WebCore::RenderBox::localCaretRect): Ditto.
   37295         * rendering/RenderObject.h: Added caretWidth definition.
   37296         * rendering/RenderText.cpp:
   37297         (WebCore::RenderText::localCaretRect): Removed caretWidth.
   37298 
   37299 2009-02-13  Dimitri Glazkov  <dglazkov (a] chromium.org>
   37300 
   37301         Reviewed by Eric Seidel.
   37302 
   37303         https://bugs.webkit.org/show_bug.cgi?id=23955
   37304         V8HTMLPlugInCustom returns undefined, which fools interceptors.
   37305 
   37306         * bindings/v8/custom/V8HTMLPlugInElementCustom.cpp:
   37307         (WebCore::NAMED_PROPERTY_GETTER): Use deferToInterceptor() return value.
   37308         (WebCore::NAMED_PROPERTY_SETTER): Ditto.
   37309         (WebCore::INDEXED_PROPERTY_GETTER): Ditto.
   37310         (WebCore::INDEXED_PROPERTY_SETTER): Ditto.
   37311 
   37312 2009-02-13  Dimitri Glazkov  <dglazkov (a] chromium.org>
   37313 
   37314         Reviewed by Eric Seidel.
   37315 
   37316         https://bugs.webkit.org/show_bug.cgi?id=23954
   37317         Add V8 custom bindings for CanvasRenderingContext2D.
   37318 
   37319         * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp: Added.
   37320         (WebCore::toV8):
   37321         (WebCore::toCanvasStyle):
   37322         (WebCore::ACCESSOR_GETTER):
   37323         (WebCore::ACCESSOR_SETTER):
   37324 
   37325 2009-02-13  Anders Carlsson  <andersca (a] apple.com>
   37326 
   37327         Reviewed by Darin Adler and Dan Bernstein.
   37328 
   37329         <rdar://problem/6583187>
   37330 
   37331         * page/NavigatorBase.cpp:
   37332         Handle PPC64 and X86_64 as well.
   37333 
   37334 2009-02-13  Darin Adler  <darin (a] apple.com>
   37335 
   37336         Reviewed by Mark Rowe.
   37337 
   37338         Fix broken tokenizer regression test that reflected a lifetime bug
   37339         in the document.write optimization. The test failure was trivial to
   37340         reproduce in COLLECT_ON_EVERY_ALLOCATION mode.
   37341 
   37342         * bindings/js/JSHTMLDocumentCustom.cpp:
   37343         (WebCore::documentWrite): Convert strings to String rather than passing
   37344         the pointer and length to SegmentedString. The optimization is thus
   37345         mostly gone. However, there are two ways to bring it back: 1) Apply
   37346         the patch that makes UString and String share the same buffers.
   37347         2) Add a UString feature to SegmentedString; simple to do but might
   37348         risk slowing down normal document parsing.
   37349 
   37350 2009-02-13  Adam Treat  <adam.treat (a] torchmobile.com>
   37351 
   37352         Caught by Darin Adler.
   37353 
   37354         No reason to check m_tokenizer twice for 0 in a row.
   37355 
   37356         * dom/Document.cpp:
   37357         (WebCore::Document::write):
   37358 
   37359 2009-02-13  Lyon Chen  <lyon.chen (a] torchmobile.com>
   37360 
   37361         Reviewed by Dave Hyatt.
   37362 
   37363         Take into account y() + height() when calculating getLowerRightCorner.
   37364 
   37365         * dom/ContainerNode.cpp:
   37366         (WebCore::ContainerNode::getLowerRightCorner):
   37367 
   37368 2009-02-13  Antti Koivisto  <antti (a] apple.com>
   37369 
   37370         Reviewed by Dave Hyatt.
   37371 
   37372         Most of this code was in RenderBox, restore the copyright lines.
   37373 
   37374         * rendering/RenderBoxModelObject.cpp:
   37375         * rendering/RenderBoxModelObject.h:
   37376 
   37377 2009-02-13  David Hyatt  <hyatt (a] apple.com>
   37378 
   37379         Get rid of printBoxDecorations, since it is dead code.
   37380 
   37381         Reviewed by Dan Bernstein
   37382 
   37383         * rendering/RenderObject.h:
   37384 
   37385 2009-02-13  Adam Treat  <adam.treat (a] torchmobile.com>
   37386 
   37387         Reviewed by Darin Adler.
   37388 
   37389         https://bugs.webkit.org/show_bug.cgi?id=23952
   37390         Add Document::write overload which takes a SegmentedString since this
   37391         is what the tokenizer expects anyway.  Modified JSHTMLDocument so it once
   37392         again calls Document::write instead of injecting the string directly into
   37393         the tokenizer.  This ensures that all document.write's are funneled through
   37394         one method again, but should still be just as fast for JSHTMLDocumentCustom.
   37395 
   37396         * bindings/js/JSHTMLDocumentCustom.cpp:
   37397         (WebCore::documentWrite):
   37398         * dom/Document.cpp:
   37399         (WebCore::Document::write):
   37400         * dom/Document.h:
   37401 
   37402 2009-02-13  David Hyatt  <hyatt (a] apple.com>
   37403 
   37404         Reviewed by Simon Fraser
   37405 
   37406         Remove updateWidgetPosition on RenderObject.  Change RenderView's set of widgets
   37407         to have a tighter type: RenderWidget instead of RenderObject.  Devirtualize
   37408         updateWidgetPosition, since all RenderWidgets (except for applets) are now
   37409         RenderParts also.
   37410 
   37411         * rendering/RenderObject.cpp:
   37412         * rendering/RenderObject.h:
   37413         * rendering/RenderPart.cpp:
   37414         * rendering/RenderPart.h:
   37415         * rendering/RenderView.cpp:
   37416         (WebCore::RenderView::updateWidgetPositions):
   37417         (WebCore::RenderView::addWidget):
   37418         (WebCore::RenderView::removeWidget):
   37419         * rendering/RenderView.h:
   37420         * rendering/RenderWidget.cpp:
   37421         (WebCore::RenderWidget::updateWidgetPosition):
   37422         * rendering/RenderWidget.h:
   37423 
   37424 2009-02-13  David Hyatt  <hyatt (a] apple.com>
   37425 
   37426         Reviewed by Eric Seidel
   37427 
   37428         Remove isEditable() on RenderObject.  It is dead code.
   37429 
   37430         * rendering/RenderObject.cpp:
   37431         * rendering/RenderObject.h:
   37432 
   37433 2009-02-13  David Hyatt  <hyatt (a] apple.com>
   37434 
   37435         Reviewed by Eric Seidel
   37436 
   37437         Add isTextControl() to RenderObject.  Patch call sites thats asked isTextField() || isTextArea() to just use
   37438         isTextControl() instead.
   37439 
   37440         Add a toRenderTextControl converter for doing checked casting to RenderTextControls.
   37441 
   37442         * dom/Document.cpp:
   37443         (WebCore::Document::setFocusedNode):
   37444         * dom/InputElement.cpp:
   37445         (WebCore::InputElement::updateSelectionRange):
   37446         * editing/ReplaceSelectionCommand.cpp:
   37447         (WebCore::ReplacementFragment::ReplacementFragment):
   37448         * editing/TextIterator.cpp:
   37449         (WebCore::TextIterator::handleReplacedElement):
   37450         * html/HTMLInputElement.cpp:
   37451         (WebCore::HTMLInputElement::selectionStart):
   37452         (WebCore::HTMLInputElement::selectionEnd):
   37453         (WebCore::HTMLInputElement::setSelectionStart):
   37454         (WebCore::HTMLInputElement::setSelectionEnd):
   37455         (WebCore::HTMLInputElement::select):
   37456         (WebCore::HTMLInputElement::defaultEventHandler):
   37457         (WebCore::HTMLInputElement::selection):
   37458         * html/HTMLTextAreaElement.cpp:
   37459         (WebCore::HTMLTextAreaElement::selectionStart):
   37460         (WebCore::HTMLTextAreaElement::selectionEnd):
   37461         (WebCore::HTMLTextAreaElement::setSelectionStart):
   37462         (WebCore::HTMLTextAreaElement::setSelectionEnd):
   37463         (WebCore::HTMLTextAreaElement::select):
   37464         (WebCore::HTMLTextAreaElement::setSelectionRange):
   37465         (WebCore::HTMLTextAreaElement::appendFormData):
   37466         (WebCore::HTMLTextAreaElement::updateValue):
   37467         (WebCore::HTMLTextAreaElement::selection):
   37468         * page/AccessibilityRenderObject.cpp:
   37469         (WebCore::AccessibilityRenderObject::isNativeTextControl):
   37470         (WebCore::AccessibilityRenderObject::text):
   37471         (WebCore::AccessibilityRenderObject::selectedText):
   37472         (WebCore::AccessibilityRenderObject::selectedTextRange):
   37473         (WebCore::AccessibilityRenderObject::setSelectedTextRange):
   37474         (WebCore::AccessibilityRenderObject::visiblePositionForIndex):
   37475         (WebCore::AccessibilityRenderObject::indexForVisiblePosition):
   37476         (WebCore::AccessibilityRenderObject::observableObject):
   37477         * page/Frame.cpp:
   37478         (WebCore::Frame::notifyRendererOfSelectionChange):
   37479         * rendering/RenderObject.h:
   37480         (WebCore::RenderObject::isTextControl):
   37481         (WebCore::objectIsRelayoutBoundary):
   37482         * rendering/RenderTextControl.h:
   37483         (WebCore::RenderTextControl::isTextControl):
   37484         (WebCore::toRenderTextControl):
   37485         * rendering/TextControlInnerElements.cpp:
   37486         (WebCore::TextControlInnerTextElement::defaultEventHandler):
   37487         * wml/WMLInputElement.cpp:
   37488         (WebCore::WMLInputElement::select):
   37489         (WebCore::WMLInputElement::defaultEventHandler):
   37490         (WebCore::WMLInputElement::isConformedToInputMask):
   37491 
   37492 2009-02-13  David Hyatt  <hyatt (a] apple.com>
   37493 
   37494         Get rid of isEdited/setEdited on RenderObject.  Devirtualize isEdited/setEdited on RenderTextControl.
   37495         Callers were already asking if the renderer was a text field (or a text area), so it was especially
   37496         pointless to waste a second virtual function call after making one just to determine the object type.
   37497 
   37498         Reviewed by Simon Fraser
   37499 
   37500         * dom/Document.cpp:
   37501         (WebCore::Document::setFocusedNode):
   37502         * html/HTMLInputElement.cpp:
   37503         (WebCore::HTMLInputElement::defaultEventHandler):
   37504         * rendering/RenderObject.h:
   37505         * rendering/RenderTextControl.h:
   37506         (WebCore::RenderTextControl::isEdited):
   37507         (WebCore::RenderTextControl::setEdited):
   37508 
   37509 2009-02-13  Scott Violet  <sky (a] google.com>
   37510 
   37511         Reviewed by Eric Seidel.
   37512 
   37513         https://bugs.webkit.org/show_bug.cgi?id=23934
   37514         Skia platform doesn't render text decoration shadows.
   37515 
   37516         Makes Skia render text decoration shadows correctly. We weren't
   37517         preparing the SkPaint correctly and didn't have a couple of checks
   37518         CG has. Additionally makes the fillColor/strokeColor methods
   37519         consistent.
   37520 
   37521         This behavior is covered by existing layout tests (see bug for list).
   37522 
   37523         * platform/graphics/chromium/FontChromiumWin.cpp:
   37524         (WebCore::Font::drawGlyphs):
   37525         (WebCore::Font::drawComplexText):
   37526         * platform/graphics/skia/GraphicsContextSkia.cpp:
   37527         (WebCore::GraphicsContext::drawLineForText):
   37528         * platform/graphics/skia/PlatformContextSkia.cpp:
   37529         (PlatformContextSkia::effectiveFillColor):
   37530         (PlatformContextSkia::effectiveStrokeColor):
   37531         * platform/graphics/skia/PlatformContextSkia.h:
   37532 
   37533 2009-02-12  Darin Fisher  <darin (a] chromium.org>
   37534 
   37535         Reviewed by Eric Seidel.
   37536 
   37537         https://bugs.webkit.org/show_bug.cgi?id=23944
   37538         KURLGoogle's pre-parsed canonicalSpec constructor should take a CString
   37539 
   37540         * platform/KURL.h:
   37541         * platform/KURLGoogle.cpp:
   37542         (WebCore::KURLGooglePrivate::setUtf8):
   37543         (WebCore::KURLGooglePrivate::setAscii):
   37544         (WebCore::KURLGooglePrivate::init):
   37545         (WebCore::KURLGooglePrivate::replaceComponents):
   37546         (WebCore::KURL::KURL):
   37547         * platform/KURLGooglePrivate.h:
   37548 
   37549 2009-02-13  David Hyatt  <hyatt (a] apple.com>
   37550 
   37551         Remove leftmost/rightmost/lowestPosition from RenderObject.  They only need to be called on boxes.
   37552 
   37553         Reviewed by Dan Bernstein
   37554 
   37555         * rendering/RenderBlock.cpp:
   37556         (WebCore::RenderBlock::lowestPosition):
   37557         (WebCore::RenderBlock::rightmostPosition):
   37558         (WebCore::RenderBlock::leftmostPosition):
   37559         * rendering/RenderLayer.cpp:
   37560         (WebCore::RenderLayer::computeScrollDimensions):
   37561         * rendering/RenderMedia.cpp:
   37562         (WebCore::RenderMedia::lowestPosition):
   37563         (WebCore::RenderMedia::rightmostPosition):
   37564         (WebCore::RenderMedia::leftmostPosition):
   37565         * rendering/RenderObject.h:
   37566         * rendering/RenderTableSection.cpp:
   37567         (WebCore::RenderTableSection::lowestPosition):
   37568         (WebCore::RenderTableSection::rightmostPosition):
   37569         (WebCore::RenderTableSection::leftmostPosition):
   37570 
   37571 2009-02-12  Simon Fraser  <simon.fraser (a] apple.com>
   37572 
   37573         Fix build with ACCELERATED_COMPOSITING turned on.
   37574 
   37575         toRenderBox()->x() asserts for a layer on an inline; use
   37576         m_owningLayer->renderBoxX() instead.
   37577 
   37578         * rendering/RenderLayerBacking.cpp:
   37579         (WebCore::RenderLayerBacking::paintIntoLayer):
   37580 
   37581 2009-02-12  Darin Adler  <darin (a] apple.com>
   37582 
   37583         Reviewed by Oliver Hunt.
   37584 
   37585         Speed up document.write a bit.
   37586 
   37587         * bindings/js/JSHTMLDocumentCustom.cpp:
   37588         (WebCore::documentWrite): Added. Uses SegmentedString to avoid conversion from
   37589         UString to String and to avoid appending strings. Also added code to handle
   37590         newlines efficiently.
   37591         (WebCore::JSHTMLDocument::write): Changed to use documentWrite.
   37592         (WebCore::JSHTMLDocument::writeln): Ditto.
   37593 
   37594         * dom/Document.cpp:
   37595         (WebCore::Document::prepareToWrite): Added. Refactored the initialization part
   37596         of write into a separate function for use in the JavaScript binding.
   37597         (WebCore::Document::write): Changed to call prepareToWrite.
   37598 
   37599         * dom/Document.h: Added declaration for prepareToWrite.
   37600 
   37601 2009-02-13  Prasanth Ullattil  <pullatti (a] trolltech.com>
   37602 
   37603         Reviewed by Simon Hausmann.
   37604 
   37605         Fixes crash in the Qt port on Windows with comboboxes
   37606 
   37607         The focusWidget in the input context is not reset properly.
   37608         The QApplication::setFocusWidget() wont reset the IC if the reason is
   37609         PopupFocusReason, this is not ideal. For the time being we are going
   37610         to do this from webkit itself.
   37611 
   37612         * platform/qt/QWebPopup.cpp:
   37613         (WebCore::QWebPopup::hidePopup):
   37614 
   37615 2009-02-12  Kevin Ollivier  <kevino (a] theolliviers.com>
   37616 
   37617         wx build fix, typo while tweaking last patch for commit.
   37618 
   37619         * platform/wx/wxcode/gtk/fontprops.cpp:
   37620         (GetTextExtent):
   37621 
   37622 2009-02-12  miggilin  <mr.diggilin (a] gmail.com>
   37623 
   37624         Reviewed by Kevin Ollivier.
   37625 
   37626         Use Cairo/PANGO to fix text measurements and implement proper
   37627         non-kerned text drawing on wxGTK.
   37628 
   37629         https://bugs.webkit.org/show_bug.cgi?id=17727
   37630 
   37631         * platform/graphics/GlyphBuffer.h:
   37632         * platform/graphics/wx/FontPlatformDataWx.cpp:
   37633         (WebCore::fontWeightToWxFontWeight):
   37634         * platform/graphics/wx/SimpleFontDataWx.cpp:
   37635         (WebCore::SimpleFontData::platformWidthForGlyph):
   37636         * platform/wx/wxcode/fontprops.h:
   37637         * platform/wx/wxcode/gtk/fontprops.cpp:
   37638         (wxFontProperties::wxFontProperties):
   37639         (GetTextExtent):
   37640         * platform/wx/wxcode/gtk/non-kerned-drawing.cpp:
   37641         (WebCore::pangoFontMap):
   37642         (WebCore::createPangoFontForFont):
   37643         (WebCore::createScaledFontForFont):
   37644         (WebCore::pango_font_get_glyph):
   37645         (WebCore::drawTextWithSpacing):
   37646         * platform/wx/wxcode/non-kerned-drawing.h:
   37647 
   37648 2009-02-12  Chris Marrin  <cmarrin (a] apple.com>
   37649 
   37650         Reviewed by Simon Fraser
   37651 
   37652         https://bugs.webkit.org/show_bug.cgi?id=23942
   37653 
   37654         Hook up 3D CSS transforms to the accelerated compositor backend.
   37655         Not enabled by default.
   37656 
   37657         * page/animation/AnimationBase.cpp:
   37658         (WebCore::blendFunc):
   37659         (WebCore::ensurePropertyMap):
   37660         * page/animation/CompositeAnimation.cpp:
   37661         (WebCore::CompositeAnimationPrivate::updateTransitions):
   37662         * page/animation/ImplicitAnimation.cpp:
   37663         (WebCore::ImplicitAnimation::willNeedService):
   37664         * page/animation/KeyframeAnimation.cpp:
   37665         (WebCore::KeyframeAnimation::willNeedService):
   37666         * platform/graphics/GraphicsLayer.cpp:
   37667         (WebCore::GraphicsLayer::TransformValueList::makeFunctionList):
   37668         (WebCore::GraphicsLayer::dumpProperties):
   37669         * platform/graphics/mac/GraphicsLayerCA.mm:
   37670         (WebCore::copyTransform):
   37671         (WebCore::getValueFunctionNameForTransformOperation):
   37672         (WebCore::GraphicsLayerCA::animateTransform):
   37673         * rendering/RenderBox.cpp:
   37674         (WebCore::RenderBox::updateBoxModelInfoFromStyle):
   37675         * rendering/RenderLayer.cpp:
   37676         (WebCore::RenderLayer::updateTransform):
   37677         (WebCore::RenderLayer::hasTransformStyle3D):
   37678         (WebCore::RenderLayer::hasPerspective):
   37679         (WebCore::RenderLayer::perspectiveTransform):
   37680         * rendering/RenderLayer.h:
   37681         * rendering/RenderLayerBacking.cpp:
   37682         (WebCore::RenderLayerBacking::updateGraphicsLayers):
   37683         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
   37684         (WebCore::RenderLayerBacking::computeTransformOrigin):
   37685         (WebCore::RenderLayerBacking::computePerspectiveOrigin):
   37686         * rendering/RenderLayerBacking.h:
   37687         * rendering/RenderLayerCompositor.cpp:
   37688         (WebCore::RenderLayerCompositor::has3DContent):
   37689         (WebCore::requiresCompositingLayerForTransform):
   37690         (WebCore::RenderLayerCompositor::requiresCompositingLayer):
   37691         (WebCore::RenderLayerCompositor::layerHas3DContent):
   37692         * rendering/RenderLayerCompositor.h:
   37693 
   37694 2009-02-12  David Hyatt  <hyatt (a] apple.com>
   37695 
   37696         Reviewed by Eric Seidel
   37697 
   37698         Get rid of containingBlockHeight(), since it had only one implementation (despite being virtual) and just returned
   37699         containingBlock()->availableHeight().  The latter reads better anyway.  Rename containingBlockWidth() to
   37700         containingBlockWidthForContent() and move it to RenderBoxModelObject.
   37701 
   37702         * rendering/RenderBlock.cpp:
   37703         (WebCore::RenderBlock::localCaretRect):
   37704         * rendering/RenderBox.cpp:
   37705         (WebCore::RenderBox::containingBlockWidthForContent):
   37706         (WebCore::RenderBox::calcWidth):
   37707         (WebCore::RenderBox::calcReplacedWidthUsing):
   37708         * rendering/RenderBox.h:
   37709         * rendering/RenderBoxModelObject.cpp:
   37710         (WebCore::RenderBoxModelObject::relativePositionOffsetX):
   37711         (WebCore::RenderBoxModelObject::relativePositionOffsetY):
   37712         (WebCore::RenderBoxModelObject::containingBlockWidthForContent):
   37713         * rendering/RenderBoxModelObject.h:
   37714         * rendering/RenderInline.cpp:
   37715         (WebCore::RenderInline::marginLeft):
   37716         (WebCore::RenderInline::marginRight):
   37717         * rendering/RenderObject.cpp:
   37718         * rendering/RenderObject.h:
   37719         * rendering/RenderSVGContainer.cpp:
   37720         (WebCore::RenderSVGContainer::calcReplacedWidth):
   37721 
   37722 2009-02-12  Simon Fraser  <simon.fraser (a] apple.com>
   37723 
   37724         Fix non-Mac builds by adding Matrix3DTransformOperation.* and
   37725         PerspectiveTransformOperation.*. Cleaned out some cruft in
   37726         the WebCore.vcproj fle.
   37727 
   37728         * GNUmakefile.am:
   37729         * WebCore.pro:
   37730         * WebCore.scons:
   37731         * WebCore.vcproj/WebCore.vcproj:
   37732 
   37733 2009-02-12  David Smith  <catfish.man (a] gmail.com>
   37734 
   37735         Reviewed by Dave Hyatt.
   37736 
   37737         Fix https://bugs.webkit.org/show_bug.cgi?id=23935
   37738         Nested :not() and non-simple selectors in :not() should be invalid
   37739 
   37740         * css/CSSGrammar.y: Reject nested :not()
   37741         * css/CSSStyleSelector.cpp:
   37742         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): ASSERT() rather than checking, since the parser enforces it now
   37743 
   37744 2009-02-12  Kevin Ollivier  <kevino (a] theolliviers.com>
   37745 
   37746         wx build fixes.
   37747 
   37748         * WebCoreSources.bkl:
   37749 
   37750 2009-02-12  Simon Fraser  <simon.fraser (a] apple.com>
   37751 
   37752         Fix build with ACCELERATED_COMPOSITING turned on.
   37753 
   37754         Need to cast toRenderBox() in order to call overflowClipRect().
   37755 
   37756         * rendering/RenderLayerBacking.cpp:
   37757         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
   37758 
   37759 2009-02-12  Oliver Hunt  <oliver (a] apple.com>
   37760 
   37761         Reviewed by NOBODY (Build fix).
   37762 
   37763         Fix windows build.
   37764 
   37765         * css/CSSParser.h:
   37766 
   37767 2009-02-12  David Hyatt  <hyatt (a] apple.com>
   37768 
   37769         Rename getOverflowClipRect and getClipRect to overflowClipRect and clipRect.  Move them to RenderBox, since these methods
   37770         only apply to boxes.  Devirtualize clipRect, since it was not subclassed.  Move controlClip stuff to RenderBox also.
   37771 
   37772         Reviewed by Simon Fraser
   37773 
   37774         * editing/Editor.cpp:
   37775         (WebCore::Editor::insideVisibleArea):
   37776         * rendering/RenderBox.cpp:
   37777         (WebCore::RenderBox::overflowClipRect):
   37778         (WebCore::RenderBox::clipRect):
   37779         * rendering/RenderBox.h:
   37780         (WebCore::RenderBox::hasControlClip):
   37781         (WebCore::RenderBox::controlClipRect):
   37782         * rendering/RenderForeignObject.cpp:
   37783         (WebCore::RenderForeignObject::paint):
   37784         * rendering/RenderLayer.cpp:
   37785         (WebCore::RenderLayer::calculateClipRects):
   37786         (WebCore::RenderLayer::calculateRects):
   37787         * rendering/RenderLayerBacking.cpp:
   37788         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
   37789         * rendering/RenderObject.h:
   37790         (WebCore::RenderObject::hasClip):
   37791         (WebCore::RenderObject::hasOverflowClip):
   37792         * rendering/RenderTable.cpp:
   37793         (WebCore::RenderTable::overflowClipRect):
   37794         * rendering/RenderTable.h:
   37795 
   37796 2009-02-12  Simon Fraser  <simon.fraser (a] apple.com>
   37797 
   37798         Fix build with ACCELERATED_COMPOSITING turned on (simple copy/paste error)
   37799 
   37800         * platform/graphics/mac/GraphicsLayerCA.mm:
   37801         (WebCore::GraphicsLayerCA::setBasicAnimation):
   37802 
   37803 2009-02-12  Julien Chaffraix  <jchaffraix (a] webkit.org>
   37804 
   37805         Not reviewed.
   37806 
   37807         Release build fix when VIDEO is disabled (it should also
   37808         help the builds with WORKERS or XSLT disabled).
   37809 
   37810         * bindings/js/JSDOMWindowBase.cpp:
   37811         (jsDOMWindowBaseAudio): Added an UNUSED_PARAM for exec and slot when
   37812         VIDEO is disabled.
   37813         (jsDOMWindowBaseWorker): Ditto for WORKERS.
   37814         (jsDOMWindowBaseXSLTProcessor): Ditto for XSLT.
   37815 
   37816 2009-02-12  Eric Carlson  <eric.carlson (a] apple.com>
   37817 
   37818         Reviewed by Simon Fraser.
   37819 
   37820         https://bugs.webkit.org/show_bug.cgi?id=23923
   37821         Implement mediaPlayerVolumeChanged so a media engine can report autonomous volume changes.
   37822         Supporting this requires that we know when we are processing a media engine callback so
   37823         we don't turn around and tell the media player to change the volume when it is reporting
   37824         a volume change.
   37825 
   37826         * html/HTMLMediaElement.cpp:
   37827         (WebCore::HTMLMediaElement::HTMLMediaElement): initialize m_processingMediaPlayerCallback
   37828         (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged): call begin/endProcessingMediaPlayerCallback
   37829         (WebCore::HTMLMediaElement::setNetworkState): logic split out of mediaPlayerNetworkStateChanged
   37830         to make it easier to maintain m_processingMediaPlayerCallback.
   37831         (WebCore::HTMLMediaElement::mediaPlayerReadyStateChanged): call begin/endProcessingMediaPlayerCallback
   37832         (WebCore::HTMLMediaElement::mediaPlayerTimeChanged): Ditto.
   37833         (WebCore::HTMLMediaElement::mediaPlayerRepaint): Ditto.
   37834         (WebCore::HTMLMediaElement::mediaPlayerVolumeChanged): New
   37835         (WebCore::HTMLMediaElement::updateVolume): Don't change media engine volume if we are processing
   37836         a callback from the engine.
   37837         * html/HTMLMediaElement.h:
   37838         (WebCore::HTMLMediaElement::processingMediaPlayerCallback): New, return true if (m_processingMediaPlayerCallback>0)
   37839         (WebCore::HTMLMediaElement::beginProcessingMediaPlayerCallback): New, increment m_processingMediaPlayerCallback
   37840         (WebCore::HTMLMediaElement::endProcessingMediaPlayerCallback): New, decrement m_processingMediaPlayerCallback
   37841 
   37842 2009-02-12  Eric Carlson  <eric.carlson (a] apple.com>
   37843 
   37844         Reviewed by Simon Fraser.
   37845 
   37846         Support MPEG content on Mac and Windows.
   37847         <rdar://problem/5917509>
   37848         https://bugs.webkit.org/show_bug.cgi?id=23495
   37849 
   37850         Test: media/audio-mpeg-supported.html
   37851 
   37852         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   37853         (WebCore::MediaPlayerPrivate::disableUnsupportedTracks):
   37854 
   37855         * platform/graphics/win/QTMovieWin.cpp:
   37856         (QTMovieWin::disableUnsupportedTracks):
   37857 
   37858         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h: fix typo added in r40925
   37859 
   37860 2009-02-12  David Hyatt  <hyatt (a] apple.com>
   37861 
   37862         Reviewed by Sam Weinig
   37863 
   37864         Move containsFloats, hasOverhangingFloats, shrinkToAvoidFloats and avoidsFloats down to
   37865         RenderBox, since these methods only apply to boxes.
   37866 
   37867         * rendering/RenderBlock.cpp:
   37868         (WebCore::RenderBlock::collapseMargins):
   37869         (WebCore::RenderBlock::clearFloatsIfNeeded):
   37870         (WebCore::RenderBlock::layoutBlockChildren):
   37871         (WebCore::RenderBlock::clearFloats):
   37872         (WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout):
   37873         (WebCore::RenderBlock::calcBlockPrefWidths):
   37874         * rendering/RenderBlock.h:
   37875         (WebCore::RenderBlock::containsFloats):
   37876         (WebCore::RenderBlock::hasOverhangingFloats):
   37877         * rendering/RenderBox.cpp:
   37878         (WebCore::RenderBox::shrinkToAvoidFloats):
   37879         (WebCore::RenderBox::avoidsFloats):
   37880         * rendering/RenderBox.h:
   37881         * rendering/RenderObject.cpp:
   37882         * rendering/RenderObject.h:
   37883         (WebCore::RenderObject::isFloatingOrPositioned):
   37884         * rendering/RenderView.h:
   37885 
   37886 2009-02-12  Chris Marrin  <cmarrin (a] apple.com>
   37887 
   37888         Reviewed by Dave Hyatt
   37889 
   37890         https://bugs.webkit.org/show_bug.cgi?id=23908
   37891 
   37892         Added parsing of 3d transform functions and properties
   37893         (perspective, perspective-origin, transform-style-3d,
   37894         and backface-visibility).
   37895 
   37896         Test: transforms/3d/cssmatrix-3d-interface.xhtml
   37897 
   37898         * css/CSSComputedStyleDeclaration.cpp:
   37899         (WebCore::):
   37900         (WebCore::computedTransform):
   37901         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   37902         * css/CSSMutableStyleDeclaration.cpp:
   37903         (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
   37904         * css/CSSParser.cpp:
   37905         (WebCore::CSSParser::parseValue):
   37906         (WebCore::CSSParser::parseFillProperty):
   37907         (WebCore::CSSParser::parseTransformOriginShorthand):
   37908         (WebCore::TransformOperationInfo::TransformOperationInfo):
   37909         (WebCore::CSSParser::parseTransform):
   37910         (WebCore::CSSParser::parseTransformOrigin):
   37911         (WebCore::CSSParser::parsePerspectiveOrigin):
   37912         * css/CSSParser.h:
   37913         * css/CSSPrimitiveValue.h:
   37914         (WebCore::CSSPrimitiveValue::isUnitTypeLength):
   37915         * css/CSSPropertyNames.in:
   37916         * css/CSSStyleSelector.cpp:
   37917         (WebCore::CSSStyleSelector::adjustRenderStyle):
   37918         (WebCore::convertToLength):
   37919         (WebCore::CSSStyleSelector::applyProperty):
   37920         (WebCore::CSSStyleSelector::mapFillSize):
   37921         (WebCore::CSSStyleSelector::mapFillXPosition):
   37922         (WebCore::CSSStyleSelector::mapFillYPosition):
   37923         (WebCore::getTransformOperationType):
   37924         (WebCore::CSSStyleSelector::createTransformOperations):
   37925         * css/CSSValueKeywords.in:
   37926         * css/WebKitCSSTransformValue.cpp:
   37927         (WebCore::WebKitCSSTransformValue::cssText):
   37928         * css/WebKitCSSTransformValue.h:
   37929         (WebCore::WebKitCSSTransformValue::):
   37930         * css/WebKitCSSTransformValue.idl:
   37931         * platform/graphics/transforms/Matrix3DTransformOperation.cpp:
   37932         * platform/graphics/transforms/Matrix3DTransformOperation.h:
   37933         * platform/graphics/transforms/PerspectiveTransformOperation.cpp:
   37934         * platform/graphics/transforms/PerspectiveTransformOperation.h:
   37935         * platform/graphics/transforms/RotateTransformOperation.cpp:
   37936         (WebCore::RotateTransformOperation::blend):
   37937         * platform/graphics/transforms/RotateTransformOperation.h:
   37938         (WebCore::RotateTransformOperation::RotateTransformOperation):
   37939         * platform/graphics/transforms/ScaleTransformOperation.h:
   37940         (WebCore::ScaleTransformOperation::ScaleTransformOperation):
   37941         * platform/graphics/transforms/TransformOperation.h:
   37942         (WebCore::TransformOperation::is3DOperation):
   37943         * platform/graphics/transforms/TransformOperations.h:
   37944         (WebCore::TransformOperations::has3DOperation):
   37945         * platform/graphics/transforms/TranslateTransformOperation.h:
   37946         (WebCore::TranslateTransformOperation::TranslateTransformOperation):
   37947 
   37948 2009-02-12  Kevin Ollivier  <kevino (a] theolliviers.com>
   37949 
   37950         wx build fix.
   37951 
   37952         * webcore-base.bkl:
   37953 
   37954 2009-02-12  Brady Eidson  <beidson (a] apple.com>
   37955 
   37956         Reviewed by Darin Adler
   37957 
   37958         Fix potential ref-count or null-deref problems with C++ objects as Obj-C members.
   37959 
   37960         * platform/mac/SharedBufferMac.mm: Change to use RefPtr<> instead of ref()/deref().
   37961         (-[WebCoreSharedBufferData dealloc]):
   37962         (-[WebCoreSharedBufferData finalize]):
   37963         (-[WebCoreSharedBufferData initWithSharedBuffer:]):
   37964 
   37965 2009-02-12  David Hyatt  <hyatt (a] apple.com>
   37966 
   37967         Remove calcWidth from RenderObject.  Nobody ever called it on RenderObjects.
   37968 
   37969         Reviewed by Sam Weinig
   37970 
   37971         * rendering/RenderObject.h:
   37972 
   37973 2009-02-12  David Hyatt  <hyatt (a] apple.com>
   37974 
   37975         Reviewed by Mark Rowe
   37976 
   37977         Fix for regression where form controls would paint yellow highlights.  The containsComposition check needs to
   37978         null check node() now.
   37979 
   37980         * rendering/InlineTextBox.cpp:
   37981         (WebCore::InlineTextBox::paint):
   37982 
   37983 2009-02-12  Simon Fraser  <simon.fraser (a] apple.com>
   37984 
   37985         Build fix
   37986 
   37987         Change Animation::setDirection() to take the new enum value, and fix
   37988         the single caller.
   37989 
   37990         Fix build error in MediaPlayerPrivateQTKit.h.
   37991 
   37992         * css/CSSStyleSelector.cpp:
   37993         (WebCore::CSSStyleSelector::mapAnimationDirection):
   37994         * platform/animation/Animation.h:
   37995         (WebCore::Animation::setDirection):
   37996         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
   37997 
   37998 2009-02-12  David Hyatt  <hyatt (a] apple.com>
   37999 
   38000         Reviewed by Simon Fraser
   38001 
   38002         Remove the overrideSize methods from RenderObject.  Devirtualize all of the accessors on RenderBox.
   38003 
   38004         * rendering/RenderBox.h:
   38005         * rendering/RenderObject.h:
   38006 
   38007 2009-02-12  Eric Carlson  <eric.carlson (a] apple.com>
   38008 
   38009         Darin Adler, Antti Koivisto, Holger Hans Peter Freyther
   38010 
   38011         Bug 23797: A platform should be able to use more than one media engine for <video> and <audio>
   38012         https://bugs.webkit.org/show_bug.cgi?id=23797
   38013 
   38014         * WebCore.xcodeproj/project.pbxproj: add MediaPlayerPrivate.h
   38015 
   38016         * html/HTMLMediaElement.cpp:
   38017         (WebCore::HTMLMediaElement::load): selectMediaURL now also returns a MIME type, pass it to
   38018         MediaPlayer::load so it can choose the right media engine
   38019         (WebCore::HTMLMediaElement::selectMediaURL): renamed from pickMedia. use MIMETypeRegistry
   38020         functions to strip params from the url and extract the codecs parameter. call
   38021         MediaPlayer::supportsType to see if we can open the file since only a media engine can
   38022         answer questions about supported type+codecs.
   38023         * html/HTMLMediaElement.h:
   38024 
   38025         * platform/MIMETypeRegistry.cpp:
   38026         (WebCore::MIMETypeRegistry::getParameterFromMIMEType): New, find and return a MIME type parameter
   38027         (WebCore::MIMETypeRegistry::stripParametersFromMIMEType): New, strip all parameters from a MIME type
   38028         * platform/MIMETypeRegistry.h:
   38029 
   38030         * platform/graphics/MediaPlayer.cpp:
   38031         (WebCore::NullMediaPlayerPrivate::NullMediaPlayerPrivate):
   38032         (WebCore::NullMediaPlayerPrivate::load):
   38033         (WebCore::NullMediaPlayerPrivate::cancelLoad):
   38034         (WebCore::NullMediaPlayerPrivate::play):
   38035         (WebCore::NullMediaPlayerPrivate::pause):
   38036         (WebCore::NullMediaPlayerPrivate::naturalSize):
   38037         (WebCore::NullMediaPlayerPrivate::hasVideo):
   38038         (WebCore::NullMediaPlayerPrivate::setVisible):
   38039         (WebCore::NullMediaPlayerPrivate::duration):
   38040         (WebCore::NullMediaPlayerPrivate::currentTime):
   38041         (WebCore::NullMediaPlayerPrivate::seek):
   38042         (WebCore::NullMediaPlayerPrivate::seeking):
   38043         (WebCore::NullMediaPlayerPrivate::setEndTime):
   38044         (WebCore::NullMediaPlayerPrivate::setRate):
   38045         (WebCore::NullMediaPlayerPrivate::paused):
   38046         (WebCore::NullMediaPlayerPrivate::setVolume):
   38047         (WebCore::NullMediaPlayerPrivate::networkState):
   38048         (WebCore::NullMediaPlayerPrivate::readyState):
   38049         (WebCore::NullMediaPlayerPrivate::maxTimeSeekable):
   38050         (WebCore::NullMediaPlayerPrivate::maxTimeBuffered):
   38051         (WebCore::NullMediaPlayerPrivate::dataRate):
   38052         (WebCore::NullMediaPlayerPrivate::totalBytesKnown):
   38053         (WebCore::NullMediaPlayerPrivate::totalBytes):
   38054         (WebCore::NullMediaPlayerPrivate::bytesLoaded):
   38055         (WebCore::NullMediaPlayerPrivate::setRect):
   38056         (WebCore::NullMediaPlayerPrivate::paint):
   38057         (WebCore::createNullMediaPlayer):
   38058         Do nothing media player so MediaPlayer doesn't have to NULL check before calling current engine.
   38059 
   38060         (WebCore::MediaPlayerFactory::MediaPlayerFactory): New, factory constructor.
   38061         (WebCore::installedMediaEngines): New, returns vector of all installed engines.
   38062         (WebCore::addMediaEngine): New, add a media engine to the cache.
   38063         (WebCore::chooseBestEngineForTypeAndCodecs): New, return an engine that might support a MIME type.
   38064         (WebCore::MediaPlayer::MediaPlayer): create NULL media player so we have a default. Initialize m_currentMediaEngine.
   38065         (WebCore::MediaPlayer::~MediaPlayer): don't need to delete m_private, it is now an OwnPtr.
   38066         (WebCore::MediaPlayer::load): Take MIME type as well as url, since we need it to find the right
   38067           media engine. If no MIME type is provided, try to devine one from the url. Choose a media engine
   38068           based on the MIME type and codecs parameter.
   38069         (WebCore::MediaPlayer::currentTime): Remove excess white space.
   38070         (WebCore::MediaPlayer::supportsType): Take codecs param as well as MIME type. Return enum so we can
   38071         indicate "maybe" condition.
   38072         (WebCore::MediaPlayer::getSupportedTypes): Build up list of MIME types by consulting all engines.
   38073         (WebCore::MediaPlayer::isAvailable): return true if any media engine is installed.
   38074 
   38075         * platform/graphics/MediaPlayer.h:
   38076         (WebCore::MediaPlayer::):
   38077         (WebCore::MediaPlayer::frameView): accessor function.
   38078 
   38079         * platform/graphics/MediaPlayerPrivate.h: New, declares abstract interface for media engines.
   38080         (WebCore::MediaPlayerPrivateInterface::~MediaPlayerPrivateInterface):
   38081         (WebCore::MediaPlayerPrivateInterface::totalBytesKnown):
   38082 
   38083         * platform/graphics/chromium/MediaPlayerPrivateChromium.h: Add support for engine factory
   38084 
   38085         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
   38086         (WebCore::MediaPlayerPrivate::create): New, media engine factory function
   38087         (WebCore::MediaPlayerPrivate::registerMediaEngine): Register engine with MediaPlayer factory
   38088         (WebCore::MediaPlayerPrivate::load): URL is a const String.
   38089         (WebCore::MediaPlayerPrivate::duration): Declare const.
   38090         (WebCore::MediaPlayerPrivate::naturalSize): Ditto.
   38091         (WebCore::MediaPlayerPrivate::hasVideo): Ditto.
   38092         (WebCore::MediaPlayerPrivate::networkState): Ditto.
   38093         (WebCore::MediaPlayerPrivate::readyState): Ditto.
   38094         (WebCore::MediaPlayerPrivate::maxTimeBuffered): Ditto.
   38095         (WebCore::MediaPlayerPrivate::maxTimeSeekable): Ditto.
   38096         (WebCore::MediaPlayerPrivate::maxTimeLoaded): Ditto.
   38097         (WebCore::MediaPlayerPrivate::bytesLoaded): Ditto.
   38098         (WebCore::MediaPlayerPrivate::totalBytesKnown): Ditto.
   38099         (WebCore::MediaPlayerPrivate::totalBytes): Ditto.
   38100         (WebCore::MediaPlayerPrivate::supportsType): Return MediaPlayer::SupportsType enum instead of bool.
   38101         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h:
   38102         (WebCore::MediaPlayerPrivate::isAvailable):
   38103 
   38104         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
   38105         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   38106         (WebCore::MediaPlayerPrivateQTKit::create): New, media engine factory function
   38107         (WebCore::MediaPlayerPrivateQTKit::registerMediaEngine): Register engine with MediaPlayer factory
   38108         (WebCore::MediaPlayerPrivate::createQTMovieView): don't access MediaPlayer->m_frameView directly,
   38109         use accessor function.
   38110         (WebCore::MediaPlayerPrivate::setUpVideoRendering): Ditto.
   38111         (WebCore::MediaPlayerPrivate::paint): Ditto.
   38112         (WebCore::mimeTypeCache): New.
   38113         (WebCore::MediaPlayerPrivate::getSupportedTypes): New, media engine factory function.
   38114         (WebCore::MediaPlayerPrivate::supportsType): return MediaPlayer::SupportsType enum instead of bool
   38115         (-[WebCoreMovieObserver initWithCallback:]): fix formatting
   38116 
   38117         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
   38118         (WebCore::MediaPlayerPrivate::create):
   38119         (WebCore::MediaPlayerPrivate::registerMediaEngine):
   38120         (WebCore::MediaPlayerPrivate::supportsType):
   38121         (WebCore::MediaPlayerPrivate::load): URL is a const String.
   38122         * platform/graphics/qt/MediaPlayerPrivatePhonon.h:
   38123         (WebCore::MediaPlayerPrivate::isAvailable):
   38124 
   38125         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
   38126         (WebCore::MediaPlayerPrivate::create): New, media engine factory function
   38127         (WebCore::MediaPlayerPrivate::registerMediaEngine): New, register engine with MediaPlayer factory
   38128         (WebCore::MediaPlayerPrivate::load): URL is a const String.
   38129         (WebCore::MediaPlayerPrivate::paint): don't access MediaPlayer->m_frameView directly,
   38130         use accessor function.
   38131         (WebCore::mimeTypeCache): New.
   38132         (WebCore::MediaPlayerPrivateQTWin::getSupportedTypes): New, media engine factory function.
   38133         (WebCore::MediaPlayerPrivateQTWin::supportsType): return MediaPlayer::SupportsType enum instead of bool
   38134         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
   38135 
   38136 2009-02-12  Julien Chaffraix  <jchaffraix (a] webkit.org>
   38137 
   38138         Reviewed by Darin Adler.
   38139 
   38140         Test: fast/dom/prefixed-image-tag.xhtml
   38141 
   38142         Bug 23915: Remove setPrefix work-around in Document::createElement(QualifiedName, bool)
   38143 
   38144         Instead we now directly propage the QualifiedName inside the generated Factory.
   38145 
   38146         Test: fast/dom/prefixed-image-tag.xhtml
   38147 
   38148         * dom/Document.cpp:
   38149         (WebCore::Document::createElement): Removed the setPrefix work-around
   38150         and replaced it with an ASSERT to catch mistakes inside the Factory code.
   38151         Remove the unneeded ExceptionCode argument.
   38152 
   38153         (WebCore::Document::createElementNS): Removed ExceptionCode argument.
   38154         * dom/Document.h: Updated the signature.
   38155         * dom/XMLTokenizerLibxml2.cpp:
   38156         (WebCore::XMLTokenizer::startElementNs): Removed ExceptionCode argument.
   38157         * dom/XMLTokenizerQt.cpp: Ditto.
   38158         (WebCore::XMLTokenizer::parseStartElement): Ditto.
   38159 
   38160         * dom/make_names.pl: Implemented the QualifiedName propogation logic
   38161         in the Factory.
   38162 
   38163 2009-02-12  Simon Fraser  <simon.fraser (a] apple.com>
   38164 
   38165         Reviewed by Dave Hyatt
   38166 
   38167         https://bugs.webkit.org/show_bug.cgi?id=23188
   38168 
   38169         Define enum values for Animation::direction(), and one for
   38170         IterationCountInfinite to make the code more self-documenting.
   38171 
   38172         Order the member vars of Animation to optimize packing.
   38173 
   38174         * css/CSSComputedStyleDeclaration.cpp:
   38175         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   38176         * platform/animation/Animation.cpp:
   38177         (WebCore::Animation::Animation):
   38178         (WebCore::Animation::operator=):
   38179         (WebCore::Animation::animationsMatch):
   38180         * platform/animation/Animation.h:
   38181         (WebCore::Animation::):
   38182         (WebCore::Animation::direction):
   38183         (WebCore::Animation::initialAnimationDirection):
   38184         * platform/graphics/mac/GraphicsLayerCA.mm:
   38185         (WebCore::GraphicsLayerCA::setBasicAnimation):
   38186         (WebCore::GraphicsLayerCA::setKeyframeAnimation):
   38187 
   38188 2009-02-12  Christian Dywan  <christian (a] twotoasts.de>
   38189 
   38190         Reviewed by Holger Freyther.
   38191 
   38192         * platform/network/soup/ResourceHandleSoup.cpp:
   38193         (WebCore::ResourceHandle::startHttp): Don't use O_CLOEXEC for now.
   38194 
   38195 2009-02-12  Julien Chaffraix  <jchaffraix (a] webkit.org>
   38196 
   38197         Reviewed by Darin Adler.
   38198 
   38199         Bug 23826: Potential bug with before/after rule while moving element from one document to another
   38200 
   38201         Moved the document before/after toggle from the constructor to insertedIntoDocument.
   38202 
   38203         Test: fast/css-generated-content/beforeAfter-interdocument.html
   38204 
   38205         * html/HTMLQuoteElement.cpp:
   38206         (WebCore::HTMLQuoteElement::HTMLQuoteElement):
   38207         (WebCore::HTMLQuoteElement::insertedIntoDocument):
   38208         * html/HTMLQuoteElement.h:
   38209 
   38210 2009-02-12  David Hyatt  <hyatt (a] apple.com>
   38211 
   38212         Reviewed by Simon Fraser
   38213 
   38214         Fix for https://bugs.webkit.org/show_bug.cgi?id=23912
   38215 
   38216         I have no idea why this broke.  As far as I can tell the old code never should have worked in
   38217         the first place.  Add code to handleWheelEvent that will find an enclosing renderer for a node
   38218         in order to attempt a wheel scroll.
   38219 
   38220         * page/EventHandler.cpp:
   38221         (WebCore::EventHandler::handleWheelEvent):
   38222 
   38223 2009-02-12  David Hyatt  <hyatt (a] apple.com>
   38224 
   38225         Move the functions that paint borders, box shadows and border images into RenderBoxModelObject.  drawBorder and drawBorderArc, because they are used
   38226         for outlines as well as borders, need to stay in RenderObject.  Rename them to drawLineForBoxSide and drawArcForBoxSide in order to reflect their
   38227         more generic use.  Rename the BorderSide struct to BoxSide, since the concept of "side" is just a rectangle concept and not a border concept.
   38228 
   38229         Reviewed by Simon Fraser
   38230 
   38231         * rendering/InlineFlowBox.cpp:
   38232         (WebCore::InlineFlowBox::paintFillLayer):
   38233         (WebCore::InlineFlowBox::paintBoxShadow):
   38234         (WebCore::InlineFlowBox::paintBoxDecorations):
   38235         (WebCore::InlineFlowBox::paintMask):
   38236         * rendering/RenderBlock.cpp:
   38237         (WebCore::RenderBlock::paintColumns):
   38238         * rendering/RenderBoxModelObject.cpp:
   38239         (WebCore::RenderBoxModelObject::paintNinePieceImage):
   38240         (WebCore::RenderBoxModelObject::paintBorder):
   38241         (WebCore::RenderBoxModelObject::paintBoxShadow):
   38242         * rendering/RenderBoxModelObject.h:
   38243         * rendering/RenderFieldset.cpp:
   38244         (WebCore::RenderFieldset::paintBorderMinusLegend):
   38245         * rendering/RenderInline.cpp:
   38246         (WebCore::RenderInline::paintOutlineForLine):
   38247         * rendering/RenderObject.cpp:
   38248         (WebCore::RenderObject::drawLineForBoxSide):
   38249         (WebCore::RenderObject::drawArcForBoxSide):
   38250         (WebCore::RenderObject::paintOutline):
   38251         * rendering/RenderObject.h:
   38252         (WebCore::):
   38253         (WebCore::RenderObject::hasBoxDecorations):
   38254         * rendering/RenderTableCell.cpp:
   38255         (WebCore::CollapsedBorders::addBorder):
   38256         (WebCore::RenderTableCell::paintCollapsedBorder):
   38257 
   38258 2009-02-12  Eric Carlson  <eric.carlson (a] apple.com>
   38259 
   38260         Reviewed by Simon Fraser
   38261 
   38262         Bug 18322: video element should have ui when scripting is disabled
   38263         https://bugs.webkit.org/show_bug.cgi?id=18322
   38264 
   38265         * html/HTMLMediaElement.cpp:
   38266         (WebCore::HTMLMediaElement::controls): always return 'true' when JavaScript is disabled.
   38267         * manual-tests/media-controls-when-javascript-disabled.html: Added.
   38268 
   38269 2009-02-12  Dimitri Glazkov  <dglazkov (a] chromium.org>
   38270 
   38271         Reviewed by Eric Seidel.
   38272 
   38273         https://bugs.webkit.org/show_bug.cgi?id=23906
   38274         Add custom V8 bindings for HTMLPlugInElement.
   38275 
   38276         * bindings/v8/custom/V8HTMLPlugInElementCustom.cpp: Added.
   38277         (WebCore::NAMED_PROPERTY_GETTER):
   38278         (WebCore::NAMED_PROPERTY_SETTER):
   38279         (WebCore::CALLBACK_FUNC_DECL):
   38280         (WebCore::INDEXED_PROPERTY_GETTER):
   38281         (WebCore::INDEXED_PROPERTY_SETTER):
   38282 
   38283 2009-02-12  Gustavo Noronha Silva  <gns (a] gnome.org>
   38284 
   38285         Reviewed by Mark Rowe.
   38286 
   38287         [GTK] Soup backend must handle upload of multiple files
   38288         https://bugs.webkit.org/show_bug.cgi?id=18343
   38289 
   38290         * platform/network/soup/ResourceHandleSoup.cpp:
   38291         (WebCore::):
   38292         (WebCore::freeFileMapping):
   38293         (WebCore::ResourceHandle::startHttp): Support multipart request bodies
   38294         mmap'ing files to be uploaded.
   38295 
   38296 2009-02-12  Adam Treat  <adam.treat (a] torchmobile.com>
   38297 
   38298         Fix the Qt build following r40871 which changed RenderObject::element()
   38299         into RenderObject::node().
   38300 
   38301         * platform/qt/RenderThemeQt.cpp:
   38302         (WebCore::RenderThemeQt::getMediaElementFromRenderObject):
   38303         (WebCore::RenderThemeQt::getMediaControlForegroundColor):
   38304 
   38305 2009-02-12  Alexey Proskuryakov  <ap (a] webkit.org>
   38306 
   38307         Build fix.
   38308 
   38309         * platform/graphics/transforms/RotateTransformOperation.cpp: Include <algorithm>.
   38310 
   38311 2009-02-12  Jian Li  <jianli (a] chromium.org>
   38312 
   38313         Reviewed by Alexey Proskuryakov.
   38314 
   38315         Change worker code to use different proxy class pointers.
   38316         https://bugs.webkit.org/show_bug.cgi?id=23859
   38317 
   38318         This is a step towards using separate proxies in multi-process implementation.
   38319 
   38320         * bindings/js/WorkerScriptController.cpp:
   38321         (WebCore::WorkerScriptController::evaluate):
   38322         * dom/Worker.cpp:
   38323         (WebCore::Worker::Worker):
   38324         (WebCore::Worker::~Worker):
   38325         (WebCore::Worker::postMessage):
   38326         (WebCore::Worker::terminate):
   38327         (WebCore::Worker::hasPendingActivity):
   38328         (WebCore::Worker::notifyFinished):
   38329         (WebCore::Worker::dispatchMessage):
   38330         * dom/Worker.h:
   38331         * dom/WorkerContext.cpp:
   38332         (WebCore::WorkerContext::~WorkerContext):
   38333         (WebCore::WorkerContext::reportException):
   38334         (WebCore::WorkerContext::addMessage):
   38335         (WebCore::WorkerContext::postMessage):
   38336         (WebCore::WorkerContext::dispatchMessage):
   38337         * dom/WorkerContext.h:
   38338         * dom/WorkerContextProxy.h:
   38339         * dom/WorkerMessagingProxy.cpp:
   38340         (WebCore::MessageWorkerContextTask::performTask):
   38341         (WebCore::MessageWorkerTask::performTask):
   38342         (WebCore::WorkerContextProxy::create):
   38343         (WebCore::WorkerMessagingProxy::WorkerMessagingProxy):
   38344         (WebCore::WorkerMessagingProxy::~WorkerMessagingProxy):
   38345         (WebCore::WorkerMessagingProxy::startWorkerContext):
   38346         (WebCore::postConsoleMessageTask):
   38347         (WebCore::WorkerMessagingProxy::postConsoleMessageToWorkerObject):
   38348         (WebCore::WorkerMessagingProxy::workerThreadCreated):
   38349         * dom/WorkerMessagingProxy.h:
   38350         * dom/WorkerObjectProxy.h:
   38351         * dom/WorkerThread.cpp:
   38352         (WebCore::WorkerThread::create):
   38353         (WebCore::WorkerThread::WorkerThread):
   38354         (WebCore::WorkerThread::workerThread):
   38355         * dom/WorkerThread.h:
   38356         (WebCore::WorkerThread::workerObjectProxy):
   38357         * loader/WorkerThreadableLoader.cpp:
   38358         (WebCore::WorkerThreadableLoader::WorkerThreadableLoader):
   38359 
   38360 2009-02-12  David Levin  <levin (a] chromium.org>
   38361 
   38362         Reviewed by Alexey Proskuryakov.
   38363 
   38364         Bug 23688: ThreadableLoader needs a sync implementation for Workers.
   38365         <https://bugs.webkit.org/show_bug.cgi?id=23688>
   38366 
   38367         Add ResourceError to ThreadableLoaderClient.
   38368 
   38369         No observable change in behavior, so no test.
   38370 
   38371         * loader/DocumentThreadableLoader.cpp:
   38372         (WebCore::DocumentThreadableLoader::create):
   38373         (WebCore::DocumentThreadableLoader::willSendRequest):
   38374         (WebCore::DocumentThreadableLoader::didFail):
   38375         * loader/ThreadableLoaderClient.h:
   38376         (WebCore::ThreadableLoaderClient::didFail):
   38377         (WebCore::ThreadableLoaderClient::didFailWillSendRequestCheck):
   38378         * loader/ThreadableLoaderClientWrapper.h:
   38379         (WebCore::ThreadableLoaderClientWrapper::didFail):
   38380         * loader/WorkerThreadableLoader.cpp:
   38381         (WebCore::WorkerThreadableLoader::MainThreadBridge::mainThreadCreateLoader):
   38382         (WebCore::workerContextDidFail):
   38383         (WebCore::WorkerThreadableLoader::MainThreadBridge::didFail):
   38384         * loader/WorkerThreadableLoader.h:
   38385         * xml/XMLHttpRequest.cpp:
   38386         (WebCore::XMLHttpRequest::didFail):
   38387         (WebCore::XMLHttpRequest::didFailWillSendRequestCheck):
   38388         * xml/XMLHttpRequest.h:
   38389 
   38390 2009-02-11  Simon Fraser  <simon.fraser (a] apple.com>
   38391 
   38392         Reviewed by Dave Hyatt
   38393 
   38394         Fix the build on Leopard with ACCELERATED_COMPOSITING turned on.
   38395 
   38396         * WebCore.xcodeproj/project.pbxproj:
   38397         FloatPoint3D needs to be a private header, since it's included by GraphicsLayer.h
   38398         * platform/graphics/mac/GraphicsLayerCA.mm:
   38399         (WebCore::getTransformFunctionValue):
   38400         (WebCore::caValueFunctionSupported):
   38401         (WebCore::GraphicsLayerCA::setAnchorPoint):
   38402         (WebCore::GraphicsLayerCA::setPreserves3D):
   38403         (WebCore::GraphicsLayerCA::setContentsToImage):
   38404         (WebCore::GraphicsLayerCA::setBasicAnimation):
   38405         (WebCore::GraphicsLayerCA::setKeyframeAnimation):
   38406         * rendering/RenderLayer.h:
   38407         (WebCore::RenderLayer::isRootLayer):
   38408         Fix isRootLayer to return true for the renderView's layer, not the root
   38409         renderer's layer.
   38410 
   38411 2009-02-11  Adele Peterson  <adele (a] apple.com>
   38412 
   38413         Reviewed by Oliver Hunt.
   38414 
   38415         Fix for https://bugs.webkit.org/show_bug.cgi?id=23910
   38416         <rdar://problem/6160546> REGRESSION: In Full page mode, movie controller hides when I drag the knob if movie is playing
   38417 
   38418         * rendering/RenderMedia.cpp: (WebCore::RenderMedia::forwardEvent):
   38419         When we get a mouseOut event, consider the mouse as still within the RenderMedia if the relatedTarget is a descendant.
   38420 
   38421 2009-02-11  David Hyatt  <hyatt (a] apple.com>
   38422 
   38423         Remove all of the inline box wrapper functions from RenderObject, since they only apply to RenderBox.  Devirtualize the functions.
   38424         Patch all of the call sites to convert to a RenderBox.
   38425 
   38426         Reviewed by Simon Fraser
   38427 
   38428         * dom/Position.cpp:
   38429         (WebCore::nextRenderedEditable):
   38430         (WebCore::previousRenderedEditable):
   38431         (WebCore::Position::getInlineBoxAndOffset):
   38432         * rendering/InlineBox.cpp:
   38433         (WebCore::InlineBox::deleteLine):
   38434         (WebCore::InlineBox::extractLine):
   38435         (WebCore::InlineBox::attachLine):
   38436         * rendering/RenderLineBoxList.cpp:
   38437         (WebCore::RenderLineBoxList::dirtyLinesFromChangedChild):
   38438         * rendering/RenderObject.cpp:
   38439         * rendering/RenderObject.h:
   38440         * rendering/RenderObjectChildList.cpp:
   38441         (WebCore::RenderObjectChildList::removeChildNode):
   38442         * rendering/RenderTextControl.cpp:
   38443         (WebCore::RenderTextControl::textWithHardLineBreaks):
   38444 
   38445 2009-02-11  David Hyatt  <hyatt (a] apple.com>
   38446 
   38447         Eliminate createInlineBox and dirtyLineBoxes from RenderObject.  These functions have been devirtualized.
   38448         The single call site now calls a helper function that just bit checks and casts before calling the correct
   38449         type.  RenderBlock's dirtyLineBoxes function was dead code (caused by the RenderFlow deletion), so it has
   38450         just been removed.
   38451 
   38452         Reviewed by Eric Seidel
   38453 
   38454         * rendering/RenderBR.cpp:
   38455         * rendering/RenderBR.h:
   38456         * rendering/RenderBlock.cpp:
   38457         (WebCore::RenderBlock::createRootInlineBox):
   38458         * rendering/RenderBlock.h:
   38459         * rendering/RenderBox.cpp:
   38460         (WebCore::RenderBox::createInlineBox):
   38461         * rendering/RenderBox.h:
   38462         * rendering/RenderCounter.cpp:
   38463         * rendering/RenderCounter.h:
   38464         * rendering/RenderInline.cpp:
   38465         (WebCore::RenderInline::createInlineFlowBox):
   38466         * rendering/RenderInline.h:
   38467         * rendering/RenderObject.cpp:
   38468         * rendering/RenderObject.h:
   38469         * rendering/RenderSVGInlineText.cpp:
   38470         (WebCore::RenderSVGInlineText::createTextBox):
   38471         * rendering/RenderSVGInlineText.h:
   38472         (WebCore::RenderSVGInlineText::isSVGText):
   38473         * rendering/RenderText.cpp:
   38474         (WebCore::RenderText::createTextBox):
   38475         (WebCore::RenderText::createInlineTextBox):
   38476         * rendering/RenderText.h:
   38477         * rendering/bidi.cpp:
   38478         (WebCore::createInlineBoxForRenderer):
   38479         (WebCore::RenderBlock::createLineBoxes):
   38480         (WebCore::RenderBlock::constructLine):
   38481         (WebCore::RenderBlock::layoutInlineChildren):
   38482 
   38483 2009-02-11  Chris Marrin  <cmarrin (a] apple.com>
   38484 
   38485         Reviewed by Dave Hyatt.
   38486 
   38487         https://bugs.webkit.org/show_bug.cgi?id=23905
   38488 
   38489         Adds support for 3D CSS properties (transform-style-3d, perspective,
   38490         perspective-origin, and backface-visibility) to RenderStyle and friends
   38491 
   38492         * platform/graphics/transforms/TransformOperation.h
   38493         * rendering/style/RenderStyle.cpp:
   38494         (WebCore::RenderStyle::diff):
   38495         (WebCore::RenderStyle::applyTransform):
   38496         * rendering/style/RenderStyle.h:
   38497         (WebCore::InheritedFlags::transformOriginZ):
   38498         (WebCore::InheritedFlags::hasTransformRelatedProperty):
   38499         (WebCore::InheritedFlags::transformStyle3D):
   38500         (WebCore::InheritedFlags::backfaceVisibility):
   38501         (WebCore::InheritedFlags::perspective):
   38502         (WebCore::InheritedFlags::perspectiveOriginX):
   38503         (WebCore::InheritedFlags::perspectiveOriginY):
   38504         (WebCore::InheritedFlags::setTransformOriginZ):
   38505         (WebCore::InheritedFlags::setTransformStyle3D):
   38506         (WebCore::InheritedFlags::setBackfaceVisibility):
   38507         (WebCore::InheritedFlags::setPerspective):
   38508         (WebCore::InheritedFlags::setPerspectiveOriginX):
   38509         (WebCore::InheritedFlags::setPerspectiveOriginY):
   38510         (WebCore::InheritedFlags::initialTransformOriginZ):
   38511         (WebCore::InheritedFlags::initialTransformStyle3D):
   38512         (WebCore::InheritedFlags::initialBackfaceVisibility):
   38513         (WebCore::InheritedFlags::initialPerspective):
   38514         (WebCore::InheritedFlags::initialPerspectiveOriginX):
   38515         (WebCore::InheritedFlags::initialPerspectiveOriginY):
   38516         * rendering/style/RenderStyleConstants.h:
   38517         (WebCore::):
   38518         * rendering/style/StyleRareNonInheritedData.cpp:
   38519         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
   38520         (WebCore::StyleRareNonInheritedData::operator==):
   38521         * rendering/style/StyleRareNonInheritedData.h:
   38522         * rendering/style/StyleTransformData.cpp:
   38523         (WebCore::StyleTransformData::StyleTransformData):
   38524         (WebCore::StyleTransformData::operator==):
   38525         * rendering/style/StyleTransformData.h:
   38526 
   38527 2009-02-11  Simon Fraser  <simon.fraser (a] apple.com>
   38528 
   38529         No review.
   38530 
   38531         Fix ACCELERATED_COMPOSITING build.
   38532 
   38533         * rendering/RenderLayerBacking.cpp:
   38534         (WebCore::RenderLayerBacking::createGraphicsLayer):
   38535         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
   38536         * rendering/RenderLayerCompositor.cpp:
   38537         (WebCore::RenderLayerCompositor::updateLayerCompositingState):
   38538 
   38539 2009-02-11  Simon Fraser  <simon.fraser (a] apple.com>
   38540 
   38541         Reviewed by Dave Hyatt
   38542 
   38543         https://bugs.webkit.org/show_bug.cgi?id=23862
   38544 
   38545         Add a bit on RenderStyle that gets set when running accelerated
   38546         transitions of transform or opacity. These ensure that styles
   38547         compare as different during the transition, so that interruption
   38548         can be detected reliably.
   38549 
   38550         * page/animation/ImplicitAnimation.cpp:
   38551         (WebCore::ImplicitAnimation::animate):
   38552         * rendering/style/RenderStyle.h:
   38553         (WebCore::InheritedFlags::isRunningAcceleratedAnimation):
   38554         (WebCore::InheritedFlags::setIsRunningAcceleratedAnimation):
   38555         * rendering/style/StyleRareNonInheritedData.cpp:
   38556         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
   38557         (WebCore::StyleRareNonInheritedData::operator==):
   38558         * rendering/style/StyleRareNonInheritedData.h:
   38559 
   38560 2009-02-11  David Hyatt  <hyatt (a] apple.com>
   38561 
   38562         Eliminate the virtual position() function from RenderObject.  Rename the position() overrides
   38563         in RenderText and RenderBox to positionLineBox and devirtualize them.
   38564 
   38565         Patch the one call site to just check for isText() and isBox() and call the methods directly.
   38566 
   38567         Remove some unnecessary overrides of position() on table sections and rows.
   38568 
   38569         Reviewed by Simon Fraser
   38570 
   38571         * rendering/RenderBox.cpp:
   38572         (WebCore::RenderBox::positionLineBox):
   38573         * rendering/RenderBox.h:
   38574         * rendering/RenderObject.h:
   38575         * rendering/RenderSVGRoot.cpp:
   38576         * rendering/RenderSVGRoot.h:
   38577         * rendering/RenderTableRow.h:
   38578         (WebCore::RenderTableRow::lineHeight):
   38579         * rendering/RenderTableSection.h:
   38580         (WebCore::RenderTableSection::lineHeight):
   38581         * rendering/RenderText.cpp:
   38582         (WebCore::RenderText::positionLineBox):
   38583         * rendering/RenderText.h:
   38584         * rendering/bidi.cpp:
   38585         (WebCore::RenderBlock::computeVerticalPositionsForLine):
   38586 
   38587 2009-02-11  Dimitri Glazkov  <dglazkov (a] chromium.org>
   38588 
   38589         Reviewed by Eric Seidel.
   38590 
   38591         https://bugs.webkit.org/show_bug.cgi?id=23901
   38592         Add HTML options/collections V8 custom bindings.
   38593 
   38594         * bindings/v8/custom/V8HTMLCollectionCustom.cpp: Added.
   38595         (WebCore::getNamedItems):
   38596         (WebCore::getItem):
   38597         (WebCore::NAMED_PROPERTY_GETTER):
   38598         (WebCore::CALLBACK_FUNC_DECL):
   38599         * bindings/v8/custom/V8HTMLFormElementCustom.cpp: Added.
   38600         (WebCore::NAMED_PROPERTY_GETTER):
   38601         * bindings/v8/custom/V8HTMLInputElementCustom.cpp:
   38602         (WebCore::ACCESSOR_GETTER):
   38603         (WebCore::ACCESSOR_SETTER):
   38604         (WebCore::CALLBACK_FUNC_DECL):
   38605         * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
   38606         (WebCore::CALLBACK_FUNC_DECL):
   38607         (WebCore::ACCESSOR_SETTER):
   38608         * bindings/v8/custom/V8HTMLSelectElementCustom.cpp: Added.
   38609         (WebCore::CALLBACK_FUNC_DECL):
   38610         (WebCore::removeElement):
   38611         * bindings/v8/custom/V8HTMLSelectElementCustom.h: Added.
   38612         * bindings/v8/custom/V8NamedNodesCollection.cpp: Added.
   38613         (WebCore::V8NamedNodesCollection::item):
   38614         (WebCore::V8NamedNodesCollection::itemWithName):
   38615         * bindings/v8/custom/V8NamedNodesCollection.h: Added.
   38616         (WebCore::V8NamedNodesCollection::V8NamedNodesCollection):
   38617         (WebCore::V8NamedNodesCollection::length):
   38618 
   38619 2009-02-11  Dimitri Dupuis-latour  <dupuislatour (a] apple.com>
   38620 
   38621         Added a preference to disable some Inspector's panels (rdar://6419624, rdar://6419645).
   38622         This is controlled via the 'WebKitInspectorHiddenPanels' key; if nothing is specified, all panels are shown.
   38623 
   38624         Reviewed by Timothy Hatcher.
   38625 
   38626         * inspector/InspectorClient.h:
   38627         * inspector/InspectorController.cpp:
   38628         (WebCore::hiddenPanels):
   38629         (WebCore::InspectorController::hiddenPanels):
   38630         (WebCore::InspectorController::windowScriptObjectAvailable):
   38631         * inspector/InspectorController.h:
   38632         * inspector/front-end/inspector.js:
   38633         (WebInspector.loaded):
   38634         * loader/EmptyClients.h:
   38635         (WebCore::EmptyInspectorClient::hiddenPanels):
   38636 
   38637 2009-02-11  David Hyatt  <hyatt (a] apple.com>
   38638 
   38639         Combine RenderObject::element() and RenderObject::node() into a single function.
   38640         node() now has the "anonymous bit" checking behavior of element() and will
   38641         return 0 for anonymous content.  This patch switches all callers of element()
   38642         to node() and patches old callers of node() to deal with situations where they
   38643         did not expect node() to be 0.  A bunch of node() calls were calling stuff on
   38644         Document that they clearly didn't intend, so overall this is a nice improvement.
   38645 
   38646         Reviewed by Sam Weinig
   38647 
   38648         * dom/ContainerNode.cpp:
   38649         (WebCore::ContainerNode::getUpperLeftCorner):
   38650         * dom/Element.cpp:
   38651         (WebCore::Element::offsetParent):
   38652         * dom/Position.cpp:
   38653         (WebCore::Position::hasRenderedNonAnonymousDescendantsWithHeight):
   38654         * editing/ModifySelectionListLevel.cpp:
   38655         (WebCore::getStartEndListChildren):
   38656         (WebCore::IncreaseSelectionListLevelCommand::doApply):
   38657         (WebCore::DecreaseSelectionListLevelCommand::doApply):
   38658         * editing/TextIterator.cpp:
   38659         (WebCore::TextIterator::advance):
   38660         * editing/VisiblePosition.cpp:
   38661         (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
   38662         (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
   38663         * editing/visible_units.cpp:
   38664         (WebCore::startPositionForLine):
   38665         (WebCore::endPositionForLine):
   38666         * page/AXObjectCache.cpp:
   38667         (WebCore::AXObjectCache::get):
   38668         * page/AccessibilityList.cpp:
   38669         (WebCore::AccessibilityList::isUnorderedList):
   38670         (WebCore::AccessibilityList::isOrderedList):
   38671         (WebCore::AccessibilityList::isDefinitionList):
   38672         * page/AccessibilityListBox.cpp:
   38673         (WebCore::AccessibilityListBox::doAccessibilityHitTest):
   38674         * page/AccessibilityRenderObject.cpp:
   38675         (WebCore::AccessibilityRenderObject::isPasswordField):
   38676         (WebCore::AccessibilityRenderObject::isFileUploadButton):
   38677         (WebCore::AccessibilityRenderObject::isInputImage):
   38678         (WebCore::AccessibilityRenderObject::isMultiSelect):
   38679         (WebCore::AccessibilityRenderObject::isControl):
   38680         (WebCore::AccessibilityRenderObject::getAttribute):
   38681         (WebCore::AccessibilityRenderObject::anchorElement):
   38682         (WebCore::AccessibilityRenderObject::actionElement):
   38683         (WebCore::AccessibilityRenderObject::mouseButtonListener):
   38684         (WebCore::AccessibilityRenderObject::helpText):
   38685         (WebCore::AccessibilityRenderObject::textUnderElement):
   38686         (WebCore::AccessibilityRenderObject::hasIntValue):
   38687         (WebCore::AccessibilityRenderObject::intValue):
   38688         (WebCore::AccessibilityRenderObject::labelElementContainer):
   38689         (WebCore::AccessibilityRenderObject::title):
   38690         (WebCore::AccessibilityRenderObject::accessibilityDescription):
   38691         (WebCore::AccessibilityRenderObject::boundingBoxRect):
   38692         (WebCore::AccessibilityRenderObject::checkboxOrRadioRect):
   38693         (WebCore::AccessibilityRenderObject::titleUIElement):
   38694         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
   38695         (WebCore::AccessibilityRenderObject::text):
   38696         (WebCore::AccessibilityRenderObject::ariaSelectedTextDOMRange):
   38697         (WebCore::AccessibilityRenderObject::accessKey):
   38698         (WebCore::AccessibilityRenderObject::setSelectedTextRange):
   38699         (WebCore::AccessibilityRenderObject::url):
   38700         (WebCore::AccessibilityRenderObject::isFocused):
   38701         (WebCore::AccessibilityRenderObject::setFocused):
   38702         (WebCore::AccessibilityRenderObject::setValue):
   38703         (WebCore::AccessibilityRenderObject::isEnabled):
   38704         (WebCore::AccessibilityRenderObject::visiblePositionRange):
   38705         (WebCore::AccessibilityRenderObject::index):
   38706         (WebCore::AccessibilityRenderObject::activeDescendant):
   38707         (WebCore::AccessibilityRenderObject::handleActiveDescendantChanged):
   38708         (WebCore::AccessibilityRenderObject::observableObject):
   38709         (WebCore::AccessibilityRenderObject::roleValue):
   38710         (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
   38711         (WebCore::AccessibilityRenderObject::ariaListboxSelectedChildren):
   38712         * page/AccessibilityTable.cpp:
   38713         (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
   38714         (WebCore::AccessibilityTable::title):
   38715         * page/AccessibilityTableCell.cpp:
   38716         (WebCore::AccessibilityTableCell::titleUIElement):
   38717         * page/AccessibilityTableColumn.cpp:
   38718         (WebCore::AccessibilityTableColumn::headerObjectForSection):
   38719         * page/AccessibilityTableRow.cpp:
   38720         (WebCore::AccessibilityTableRow::headerObject):
   38721         * page/EventHandler.cpp:
   38722         (WebCore::EventHandler::dispatchMouseEvent):
   38723         (WebCore::EventHandler::canMouseDownStartSelect):
   38724         (WebCore::EventHandler::canMouseDragExtendSelect):
   38725         (WebCore::EventHandler::shouldDragAutoNode):
   38726         * page/Frame.cpp:
   38727         (WebCore::Frame::searchForLabelsAboveCell):
   38728         (WebCore::Frame::setFocusedNodeIfNeeded):
   38729         * page/FrameView.cpp:
   38730         (WebCore::FrameView::updateOverflowStatus):
   38731         * page/animation/AnimationBase.cpp:
   38732         (WebCore::AnimationBase::updateStateMachine):
   38733         * page/animation/AnimationController.cpp:
   38734         (WebCore::AnimationControllerPrivate::updateAnimationTimer):
   38735         (WebCore::AnimationController::cancelAnimations):
   38736         (WebCore::AnimationController::updateAnimations):
   38737         * page/animation/KeyframeAnimation.cpp:
   38738         (WebCore::KeyframeAnimation::KeyframeAnimation):
   38739         (WebCore::KeyframeAnimation::endAnimation):
   38740         * page/mac/AccessibilityObjectWrapper.mm:
   38741         (blockquoteLevel):
   38742         (AXAttributeStringSetHeadingLevel):
   38743         * page/mac/FrameMac.mm:
   38744         (WebCore::Frame::searchForNSLabelsAboveCell):
   38745         * rendering/InlineFlowBox.cpp:
   38746         (WebCore::InlineFlowBox::verticallyAlignBoxes):
   38747         (WebCore::InlineFlowBox::paint):
   38748         (WebCore::shouldDrawTextDecoration):
   38749         * rendering/InlineTextBox.cpp:
   38750         (WebCore::InlineTextBox::paintDocumentMarkers):
   38751         * rendering/RenderBR.cpp:
   38752         (WebCore::RenderBR::positionForCoordinates):
   38753         * rendering/RenderBlock.cpp:
   38754         (WebCore::RenderBlock::layoutBlock):
   38755         (WebCore::RenderBlock::handleRunInChild):
   38756         (WebCore::RenderBlock::paintObject):
   38757         (WebCore::RenderBlock::isSelectionRoot):
   38758         (WebCore::RenderBlock::rightmostPosition):
   38759         (WebCore::RenderBlock::positionForBox):
   38760         (WebCore::RenderBlock::positionForRenderer):
   38761         (WebCore::RenderBlock::positionForCoordinates):
   38762         (WebCore::RenderBlock::hasLineIfEmpty):
   38763         (WebCore::RenderBlock::updateFirstLetter):
   38764         (WebCore::RenderBlock::updateHitTestResult):
   38765         (WebCore::RenderBlock::addFocusRingRects):
   38766         * rendering/RenderBox.cpp:
   38767         (WebCore::RenderBox::styleWillChange):
   38768         (WebCore::RenderBox::updateBoxModelInfoFromStyle):
   38769         (WebCore::RenderBox::paintRootBoxDecorations):
   38770         (WebCore::RenderBox::positionForCoordinates):
   38771         * rendering/RenderButton.cpp:
   38772         (WebCore::RenderButton::updateFromElement):
   38773         (WebCore::RenderButton::canHaveChildren):
   38774         * rendering/RenderCounter.cpp:
   38775         (WebCore::planCounter):
   38776         * rendering/RenderFieldset.cpp:
   38777         (WebCore::RenderFieldset::findLegend):
   38778         * rendering/RenderFlexibleBox.cpp:
   38779         (WebCore::RenderFlexibleBox::layoutVerticalBox):
   38780         * rendering/RenderForeignObject.cpp:
   38781         (WebCore::RenderForeignObject::translationForAttributes):
   38782         (WebCore::RenderForeignObject::calculateLocalTransform):
   38783         * rendering/RenderFrame.h:
   38784         (WebCore::RenderFrame::element):
   38785         * rendering/RenderImage.cpp:
   38786         (WebCore::RenderImage::paintReplaced):
   38787         (WebCore::RenderImage::imageMap):
   38788         (WebCore::RenderImage::nodeAtPoint):
   38789         (WebCore::RenderImage::updateAltText):
   38790         * rendering/RenderInline.cpp:
   38791         (WebCore::RenderInline::cloneInline):
   38792         (WebCore::RenderInline::updateHitTestResult):
   38793         * rendering/RenderLayer.cpp:
   38794         (WebCore::RenderLayer::isTransparent):
   38795         (WebCore::RenderLayer::scrollToOffset):
   38796         (WebCore::RenderLayer::resize):
   38797         (WebCore::RenderLayer::createScrollbar):
   38798         (WebCore::RenderLayer::updateOverflowStatus):
   38799         (WebCore::RenderLayer::updateScrollInfoAfterLayout):
   38800         (WebCore::RenderLayer::enclosingElement):
   38801         (WebCore::RenderLayer::updateHoverActiveState):
   38802         (WebCore::RenderLayer::updateScrollCornerStyle):
   38803         (WebCore::RenderLayer::updateResizerStyle):
   38804         * rendering/RenderLayer.h:
   38805         (WebCore::RenderLayer::isRootLayer):
   38806         * rendering/RenderListItem.cpp:
   38807         (WebCore::getParentOfFirstLineBox):
   38808         * rendering/RenderMarquee.cpp:
   38809         (WebCore::RenderMarquee::marqueeSpeed):
   38810         * rendering/RenderObject.cpp:
   38811         (WebCore::RenderObject::RenderObject):
   38812         (WebCore::RenderObject::isBody):
   38813         (WebCore::RenderObject::isHR):
   38814         (WebCore::RenderObject::isHTMLMarquee):
   38815         (WebCore::RenderObject::isEditable):
   38816         (WebCore::RenderObject::addPDFURLRect):
   38817         (WebCore::RenderObject::showTreeForThis):
   38818         (WebCore::RenderObject::draggableNode):
   38819         (WebCore::RenderObject::hasOutlineAnnotation):
   38820         (WebCore::RenderObject::positionForCoordinates):
   38821         (WebCore::RenderObject::updateDragState):
   38822         (WebCore::RenderObject::updateHitTestResult):
   38823         (WebCore::RenderObject::getUncachedPseudoStyle):
   38824         (WebCore::RenderObject::getTextDecorationColors):
   38825         (WebCore::RenderObject::caretMaxOffset):
   38826         (WebCore::RenderObject::offsetParent):
   38827         * rendering/RenderObject.h:
   38828         (WebCore::RenderObject::isRoot):
   38829         (WebCore::RenderObject::isInlineContinuation):
   38830         (WebCore::RenderObject::node):
   38831         (WebCore::RenderObject::setNode):
   38832         * rendering/RenderObjectChildList.cpp:
   38833         (WebCore::RenderObjectChildList::destroyLeftoverChildren):
   38834         * rendering/RenderPart.cpp:
   38835         (WebCore::RenderPart::updateWidgetPosition):
   38836         * rendering/RenderPartObject.cpp:
   38837         (WebCore::RenderPartObject::updateWidget):
   38838         (WebCore::RenderPartObject::viewCleared):
   38839         * rendering/RenderPath.cpp:
   38840         (WebCore::RenderPath::calculateLocalTransform):
   38841         (WebCore::RenderPath::layout):
   38842         (WebCore::RenderPath::paint):
   38843         (WebCore::RenderPath::drawMarkersIfNeeded):
   38844         * rendering/RenderReplaced.cpp:
   38845         (WebCore::RenderReplaced::positionForCoordinates):
   38846         (WebCore::RenderReplaced::isSelected):
   38847         * rendering/RenderSVGGradientStop.cpp:
   38848         (WebCore::RenderSVGGradientStop::gradientElement):
   38849         * rendering/RenderSVGImage.cpp:
   38850         (WebCore::RenderSVGImage::calculateLocalTransform):
   38851         * rendering/RenderSVGInlineText.cpp:
   38852         (WebCore::RenderSVGInlineText::positionForCoordinates):
   38853         * rendering/RenderSVGRoot.cpp:
   38854         (WebCore::RenderSVGRoot::layout):
   38855         (WebCore::RenderSVGRoot::applyContentTransforms):
   38856         (WebCore::RenderSVGRoot::paint):
   38857         (WebCore::RenderSVGRoot::calcViewport):
   38858         (WebCore::RenderSVGRoot::absoluteTransform):
   38859         * rendering/RenderSVGText.cpp:
   38860         (WebCore::RenderSVGText::calculateLocalTransform):
   38861         (WebCore::RenderSVGText::layout):
   38862         * rendering/RenderSVGTextPath.cpp:
   38863         (WebCore::RenderSVGTextPath::layoutPath):
   38864         (WebCore::RenderSVGTextPath::startOffset):
   38865         (WebCore::RenderSVGTextPath::exactAlignment):
   38866         (WebCore::RenderSVGTextPath::stretchMethod):
   38867         * rendering/RenderSVGTransformableContainer.cpp:
   38868         (WebCore::RenderSVGTransformableContainer::calculateLocalTransform):
   38869         * rendering/RenderSVGViewportContainer.cpp:
   38870         (WebCore::RenderSVGViewportContainer::calcViewport):
   38871         (WebCore::RenderSVGViewportContainer::viewportTransform):
   38872         (WebCore::RenderSVGViewportContainer::nodeAtPoint):
   38873         * rendering/RenderTable.cpp:
   38874         (WebCore::RenderTable::addChild):
   38875         * rendering/RenderTableCell.cpp:
   38876         (WebCore::RenderTableCell::updateFromElement):
   38877         (WebCore::RenderTableCell::calcPrefWidths):
   38878         * rendering/RenderTableCol.cpp:
   38879         (WebCore::RenderTableCol::updateFromElement):
   38880         * rendering/RenderTableRow.cpp:
   38881         (WebCore::RenderTableRow::addChild):
   38882         * rendering/RenderTableSection.cpp:
   38883         (WebCore::RenderTableSection::addChild):
   38884         * rendering/RenderText.cpp:
   38885         (WebCore::RenderText::originalText):
   38886         (WebCore::RenderText::positionForCoordinates):
   38887         * rendering/RenderTextControlMultiLine.cpp:
   38888         (WebCore::RenderTextControlMultiLine::nodeAtPoint):
   38889         * rendering/RenderTextControlSingleLine.cpp:
   38890         (WebCore::RenderTextControlSingleLine::nodeAtPoint):
   38891         * rendering/RenderTextFragment.cpp:
   38892         (WebCore::RenderTextFragment::originalText):
   38893         (WebCore::RenderTextFragment::previousCharacter):
   38894         * rendering/RenderTheme.cpp:
   38895         (WebCore::RenderTheme::isActive):
   38896         (WebCore::RenderTheme::isChecked):
   38897         (WebCore::RenderTheme::isIndeterminate):
   38898         (WebCore::RenderTheme::isEnabled):
   38899         (WebCore::RenderTheme::isFocused):
   38900         (WebCore::RenderTheme::isPressed):
   38901         (WebCore::RenderTheme::isReadOnlyControl):
   38902         (WebCore::RenderTheme::isHovered):
   38903         * rendering/RenderThemeMac.mm:
   38904         (WebCore::RenderThemeMac::updatePressedState):
   38905         (WebCore::RenderThemeMac::paintMediaFullscreenButton):
   38906         (WebCore::RenderThemeMac::paintMediaMuteButton):
   38907         (WebCore::RenderThemeMac::paintMediaPlayButton):
   38908         (WebCore::RenderThemeMac::paintMediaSeekBackButton):
   38909         (WebCore::RenderThemeMac::paintMediaSeekForwardButton):
   38910         (WebCore::RenderThemeMac::paintMediaSliderTrack):
   38911         (WebCore::RenderThemeMac::paintMediaSliderThumb):
   38912         (WebCore::RenderThemeMac::paintMediaTimelineContainer):
   38913         (WebCore::RenderThemeMac::paintMediaCurrentTime):
   38914         (WebCore::RenderThemeMac::paintMediaTimeRemaining):
   38915         * rendering/RenderThemeSafari.cpp:
   38916         (WebCore::RenderThemeSafari::paintMediaMuteButton):
   38917         (WebCore::RenderThemeSafari::paintMediaPlayButton):
   38918         (WebCore::RenderThemeSafari::paintMediaSliderTrack):
   38919         * rendering/RenderTreeAsText.cpp:
   38920         (WebCore::operator<<):
   38921         (WebCore::writeSelection):
   38922         * rendering/RenderWidget.cpp:
   38923         (WebCore::RenderWidget::setWidgetGeometry):
   38924         (WebCore::RenderWidget::updateWidgetPosition):
   38925         (WebCore::RenderWidget::nodeAtPoint):
   38926         * rendering/RootInlineBox.cpp:
   38927         (WebCore::isEditableLeaf):
   38928         * rendering/SVGRenderSupport.cpp:
   38929         (WebCore::prepareToRenderSVGContent):
   38930         * rendering/SVGRenderTreeAsText.cpp:
   38931         (WebCore::write):
   38932         * rendering/SVGRootInlineBox.cpp:
   38933         (WebCore::SVGRootInlineBox::buildLayoutInformation):
   38934         (WebCore::SVGRootInlineBox::layoutInlineBoxes):
   38935         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
   38936         (WebCore::SVGRootInlineBox::buildTextChunks):
   38937         * rendering/style/SVGRenderStyle.cpp:
   38938         (WebCore::SVGRenderStyle::cssPrimitiveToLength):
   38939         * svg/SVGFont.cpp:
   38940         (WebCore::SVGTextRunWalker::walk):
   38941         (WebCore::floatWidthOfSubStringUsingSVGFont):
   38942         (WebCore::Font::drawTextUsingSVGFont):
   38943         * svg/SVGTextContentElement.cpp:
   38944         (WebCore::findInlineTextBoxInTextChunks):
   38945         * svg/graphics/SVGPaintServer.cpp:
   38946         (WebCore::SVGPaintServer::fillPaintServer):
   38947         (WebCore::SVGPaintServer::strokePaintServer):
   38948 
   38949 2009-02-11  Brady Eidson  <beidson (a] apple.com>
   38950 
   38951         Reviewed by Darin Adler
   38952 
   38953         <rdar://problem/3541409> - Further FrameLoader and page cache cleanup
   38954 
   38955         * history/CachedFrame.cpp:
   38956         (WebCore::CachedFrame::restore): Moved updatePlatformScriptObjects() here.
   38957 
   38958         * loader/FrameLoader.cpp:
   38959         (WebCore::FrameLoader::commitProvisionalLoad): Rolled opened() into this method.  This method was
   38960           the only caller and - in the future - will benefit from doing parts of opened()'s work differently.
   38961         (WebCore::FrameLoader::open): Split off per-frame logic into open(CachedFrame&) method.
   38962         (WebCore::FrameLoader::closeAndRemoveChild): Added.  Do the non-tree related cleanup that
   38963           FrameTree::removeChild() used to do.
   38964         (WebCore::FrameLoader::detachFromParent): Call ::closeAndRemoveChild() instead.
   38965         (WebCore::FrameLoader::cachePageForHistoryItem): Perform the "can cache page" check here.
   38966         * loader/FrameLoader.h:
   38967 
   38968         * page/FrameTree.cpp:
   38969         (WebCore::FrameTree::removeChild): Just remove the Frame from the tree.  Closing it and other
   38970           cleanup is the responsibility of the FrameLoader.
   38971         * page/FrameTree.h:
   38972         (WebCore::FrameTree::detachFromParent): Added to just clear a Frame's parent pointer
   38973 
   38974 2009-02-11  Scott Violet  <sky (a] google.com>
   38975 
   38976         Reviewed by Eric Seidel.
   38977 
   38978         https://bugs.webkit.org/show_bug.cgi?id=23882
   38979         GraphicsContextSkia draws round rects as solid rects
   38980 
   38981         Fixes two bugs in Skia's GraphicsContext::fillRoundedRect:
   38982         . fillRoundedRect had an extra call to fillRect, resulting in always
   38983           drawing a solid rectangle.
   38984         . if the total radius along a given axis is greater than the size of
   38985           the axis to draw, a solid rect should be drawn.
   38986 
   38987         The layout tests LayoutTests/fast/css/shadow-multiple.html and
   38988         LayoutTests/fast/box-shadow/basic-shadows.html cover this.
   38989 
   38990         * platform/graphics/skia/GraphicsContextSkia.cpp:
   38991         (WebCore::GraphicsContext::fillRoundedRect):
   38992 
   38993 2009-02-11  Julien Chaffraix  <jchaffraix (a] webkit.org>
   38994 
   38995         Reviewed by Eric Seidel.
   38996 
   38997         Bug 23536: Auto-generate HTMLElementFactory
   38998 
   38999         Remove the HTMLElementFactory files. Farewell.
   39000 
   39001         * html/HTMLElementFactory.cpp: Removed.
   39002         * html/HTMLElementFactory.h: Removed.
   39003 
   39004 2009-02-11  Julien Chaffraix  <jchaffraix (a] webkit.org>
   39005 
   39006         Reviewed by Eric Seidel.
   39007 
   39008         Bug 23536: Auto-generate HTMLElementFactory
   39009 
   39010         Make the platform auto-generate the HTMLElementFactory.
   39011 
   39012         * DerivedSources.make:
   39013         * GNUmakefile.am:
   39014         * WebCore.pro:
   39015         * WebCore.scons:
   39016         * WebCore.vcproj/WebCore.vcproj:
   39017         * WebCore.xcodeproj/project.pbxproj:
   39018         * WebCoreSources.bkl:
   39019         * webcore-base.bkl:
   39020 
   39021 2009-02-11  Sam Weinig  <sam (a] webkit.org>
   39022 
   39023         Reviewed by David Hyatt.
   39024 
   39025         Remove unneeded ASSERTS.
   39026 
   39027         * rendering/RenderBox.h:
   39028         (WebCore::RenderBox::width):
   39029         (WebCore::RenderBox::height):
   39030         (WebCore::RenderBox::size):
   39031         (WebCore::RenderBox::frameRect):
   39032 
   39033 2009-02-11  Simon Fraser  <simon.fraser (a] apple.com>
   39034 
   39035         Reviewed by Dave Hyatt
   39036 
   39037         Add function to RenderStyle to ask whether a background image has been specified.
   39038 
   39039         * rendering/style/RenderStyle.h:
   39040         (WebCore::InheritedFlags::hasBackgroundImage):
   39041 
   39042 2009-02-11  Simon Fraser  <simon.fraser (a] apple.com>
   39043 
   39044         Reviewed by Dave Hyatt
   39045 
   39046         https://bugs.webkit.org/show_bug.cgi?id=23548
   39047 
   39048         When opacity or transform change on an object which has a compositing layer,
   39049         avoid repainting the layer.
   39050 
   39051         Added a new StyleDifference value, StyleDifferenceRecompositeLayer, which indicates
   39052         that the only thing styleChanged() has to do is to update composited properties of
   39053         the layer. RenderStyle::diff() now has an out param for a bitmask of "context sensitive"
   39054         properties, currently for opacity and transform. When one of these changes, we need
   39055         to see if we have a compositing layer before we decide whether to layout/repaint,
   39056         or just update the composited layer, via adjustStyleDifference().
   39057 
   39058         * rendering/RenderObject.cpp:
   39059         (WebCore::RenderObject::adjustStyleDifference):
   39060         (WebCore::RenderObject::setStyle):
   39061         (WebCore::RenderObject::styleDidChange):
   39062         * rendering/RenderObject.h:
   39063         * rendering/style/RenderStyle.cpp:
   39064         (WebCore::RenderStyle::diff):
   39065         * rendering/style/RenderStyle.h:
   39066         * rendering/style/RenderStyleConstants.h:
   39067         (WebCore::):
   39068 
   39069 2009-02-11  Alexey Proskuryakov  <ap (a] webkit.org>
   39070 
   39071         Reviewed by Darin Adler.
   39072 
   39073         <rdar://problem/6562920> Pasted text should be normalized to NFC
   39074 
   39075         Testing requires putting non-HTML content in pasteboard, so it cannot be done with WebKit alone.
   39076 
   39077         * platform/mac/PasteboardMac.mm: (WebCore::Pasteboard::plainText): Route the text through
   39078         -[NSString precomposedStringWithCanonicalMapping].
   39079 
   39080 2009-02-10  Chris Marrin  <cmarrin (a] apple.com>
   39081 
   39082         Reviewed by Simon Fraser.
   39083 
   39084         https://bugs.webkit.org/show_bug.cgi?id=23883
   39085 
   39086         Added new TransformOperation subclasses and methods to existing ones
   39087         to support 3D.
   39088 
   39089         * WebCore.xcodeproj/project.pbxproj:
   39090         * platform/graphics/transforms/IdentityTransformOperation.h:
   39091         (WebCore::IdentityTransformOperation::isAffine):
   39092         * platform/graphics/transforms/Matrix3DTransformOperation.cpp: Added.
   39093         (WebCore::Matrix3DTransformOperation::blend):
   39094         * platform/graphics/transforms/Matrix3DTransformOperation.h: Added.
   39095         (WebCore::Matrix3DTransformOperation::create):
   39096         (WebCore::Matrix3DTransformOperation::isIdentity):
   39097         (WebCore::Matrix3DTransformOperation::isAffine):
   39098         (WebCore::Matrix3DTransformOperation::getOperationType):
   39099         (WebCore::Matrix3DTransformOperation::isSameType):
   39100         (WebCore::Matrix3DTransformOperation::operator==):
   39101         (WebCore::Matrix3DTransformOperation::apply):
   39102         (WebCore::Matrix3DTransformOperation::Matrix3DTransformOperation):
   39103         * platform/graphics/transforms/MatrixTransformOperation.h:
   39104         (WebCore::MatrixTransformOperation::isAffine):
   39105         (WebCore::MatrixTransformOperation::apply):
   39106         * platform/graphics/transforms/PerspectiveTransformOperation.cpp: Added.
   39107         (WebCore::PerspectiveTransformOperation::blend):
   39108         * platform/graphics/transforms/PerspectiveTransformOperation.h: Added.
   39109         (WebCore::PerspectiveTransformOperation::create):
   39110         (WebCore::PerspectiveTransformOperation::isIdentity):
   39111         (WebCore::PerspectiveTransformOperation::isAffine):
   39112         (WebCore::PerspectiveTransformOperation::getOperationType):
   39113         (WebCore::PerspectiveTransformOperation::isSameType):
   39114         (WebCore::PerspectiveTransformOperation::operator==):
   39115         (WebCore::PerspectiveTransformOperation::apply):
   39116         (WebCore::PerspectiveTransformOperation::PerspectiveTransformOperation):
   39117         * platform/graphics/transforms/RotateTransformOperation.cpp:
   39118         (WebCore::RotateTransformOperation::blend):
   39119         * platform/graphics/transforms/RotateTransformOperation.h:
   39120         (WebCore::RotateTransformOperation::create):
   39121         (WebCore::RotateTransformOperation::angle):
   39122         (WebCore::RotateTransformOperation::isAffine):
   39123         (WebCore::RotateTransformOperation::operator==):
   39124         (WebCore::RotateTransformOperation::apply):
   39125         (WebCore::RotateTransformOperation::RotateTransformOperation):
   39126         * platform/graphics/transforms/ScaleTransformOperation.cpp:
   39127         (WebCore::ScaleTransformOperation::blend):
   39128         * platform/graphics/transforms/ScaleTransformOperation.h:
   39129         (WebCore::ScaleTransformOperation::create):
   39130         (WebCore::ScaleTransformOperation::z):
   39131         (WebCore::ScaleTransformOperation::isIdentity):
   39132         (WebCore::ScaleTransformOperation::isAffine):
   39133         (WebCore::ScaleTransformOperation::operator==):
   39134         (WebCore::ScaleTransformOperation::apply):
   39135         (WebCore::ScaleTransformOperation::ScaleTransformOperation):
   39136         * platform/graphics/transforms/SkewTransformOperation.h:
   39137         (WebCore::SkewTransformOperation::isAffine):
   39138         * platform/graphics/transforms/TransformOperation.h:
   39139         (WebCore::TransformOperation::):
   39140         (WebCore::TransformOperation::is3DOperation):
   39141         * platform/graphics/transforms/TransformOperations.h:
   39142         (WebCore::TransformOperations::isAffine):
   39143         (WebCore::TransformOperations::has3DOperation):
   39144         * platform/graphics/transforms/TranslateTransformOperation.cpp:
   39145         (WebCore::TranslateTransformOperation::blend):
   39146         * platform/graphics/transforms/TranslateTransformOperation.h:
   39147         (WebCore::TranslateTransformOperation::create):
   39148         (WebCore::TranslateTransformOperation::z):
   39149         (WebCore::TranslateTransformOperation::isIdentity):
   39150         (WebCore::TranslateTransformOperation::isAffine):
   39151         (WebCore::TranslateTransformOperation::operator==):
   39152         (WebCore::TranslateTransformOperation::apply):
   39153         (WebCore::TranslateTransformOperation::TranslateTransformOperation):
   39154 
   39155 2009-02-11  David Hyatt  <hyatt (a] apple.com>
   39156 
   39157         Move createAnonymousBlock() to RenderBlock.  Since anonymous blocks are always parented to some other block,
   39158         we can move this function to RenderBlock.  Fix a couple of call sites as a result of this restriction.
   39159 
   39160         Reviewed by Simon Fraser
   39161 
   39162         * rendering/RenderBlock.cpp:
   39163         (WebCore::RenderBlock::createAnonymousBlock):
   39164         * rendering/RenderBlock.h:
   39165         * rendering/RenderInline.cpp:
   39166         (WebCore::RenderInline::childBecameNonInline):
   39167         * rendering/RenderObject.cpp:
   39168         (WebCore::RenderObject::handleDynamicFloatPositionChange):
   39169         * rendering/RenderObject.h:
   39170 
   39171 2009-02-11  David Hyatt  <hyatt (a] apple.com>
   39172 
   39173         https://bugs.webkit.org/show_bug.cgi?id=23895
   39174 
   39175         Remove two complete nonsense lines that I accidentally added from a cut and paste error.  This
   39176         restores the original logic.
   39177 
   39178         Reviewed by Simon Fraser
   39179 
   39180         * rendering/RenderBox.cpp:
   39181         (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
   39182 
   39183 2009-02-11  David Hyatt  <hyatt (a] apple.com>
   39184 
   39185         Rename getBaselineOfFirstLineBox to firstLineBoxBaseline.  Rename getBaselineOfLastLineBox to
   39186         lastLineBoxBaseline.  Remove the functions from RenderObject and add them to RenderBox instead.
   39187 
   39188         Reviewed by Eric Seidel
   39189 
   39190         * rendering/RenderBlock.cpp:
   39191         (WebCore::RenderBlock::baselinePosition):
   39192         (WebCore::RenderBlock::firstLineBoxBaseline):
   39193         (WebCore::RenderBlock::lastLineBoxBaseline):
   39194         * rendering/RenderBlock.h:
   39195         * rendering/RenderBox.h:
   39196         (WebCore::RenderBox::firstLineBoxBaseline):
   39197         (WebCore::RenderBox::lastLineBoxBaseline):
   39198         * rendering/RenderFlexibleBox.cpp:
   39199         (WebCore::RenderFlexibleBox::layoutHorizontalBox):
   39200         * rendering/RenderObject.h:
   39201         * rendering/RenderTable.cpp:
   39202         (WebCore::RenderTable::firstLineBoxBaseline):
   39203         * rendering/RenderTable.h:
   39204         * rendering/RenderTableCell.cpp:
   39205         (WebCore::RenderTableCell::baselinePosition):
   39206         * rendering/RenderTableSection.cpp:
   39207         (WebCore::RenderTableSection::firstLineBoxBaseline):
   39208         * rendering/RenderTableSection.h:
   39209 
   39210 2009-02-11  Eric Carlson  <eric.carlson (a] apple.com>
   39211 
   39212         Reviewed by Simon Fraser
   39213 
   39214         https://bugs.webkit.org/show_bug.cgi?id=23877
   39215         Allow port to disable progress events from <video> and <audio> elements
   39216 
   39217         * html/HTMLMediaElement.cpp: Initialize m_sendProgressEvents.
   39218         (WebCore::HTMLMediaElement::HTMLMediaElement): Don't post progress events if m_sendProgressEvents is false.
   39219         (WebCore::HTMLMediaElement::initAndDispatchProgressEvent): Ditto.
   39220         (WebCore::HTMLMediaElement::load): Ditto.
   39221         * html/HTMLMediaElement.h: Add m_sendProgressEvents
   39222 
   39223 2009-02-11  Adam Roben  <aroben (a] apple.com>
   39224 
   39225         Windows build fix
   39226 
   39227         * DerivedSources.cpp: Removed SVGElementFactory.cpp, since including
   39228         it leads to ambiguities for symbols like "aTag", which exist in both
   39229         the HTMLNames and SVGNames namespaces.
   39230 
   39231         * WebCore.vcproj/WebCore.vcproj: Added SVGElementFactory.cpp to the
   39232         project directly. VS also decided to reformat this file a little bit.
   39233 
   39234 2009-02-10  Julien Chaffraix  <jchaffraix (a] webkit.org>
   39235 
   39236         Reviewed by Eric Seidel.
   39237 
   39238         Bug 23536: Auto-generate HTMLElementFactory
   39239 
   39240         Those are the last auto-generation bits needed to have a working generated HTMLElementFactory:
   39241 
   39242         - Added a new option mapToTagName that enables a tag to use another's options and tagName (<image>
   39243           uses imgTag for example) and wired the code generation to be consistent with the current factory.
   39244 
   39245         - Disabled dashboard compatibility check for HTMLElementFactory as it would make at least one test case fail.
   39246 
   39247         - Pass the QualifiedName down to the Element constructor for shared constructors to make the generated code as
   39248           close as possible to the current one. We will pass the QualifiedName for all Element in a forthcoming patch.
   39249 
   39250         * dom/make_names.pl: Did all the above points and tweaked the code generation to match the current HTMLElementFactory
   39251           as closely as possible.
   39252 
   39253         * html/HTMLElementFactory.cpp:
   39254         (WebCore::quoteConstructor):
   39255         * html/HTMLQuoteElement.cpp:
   39256         (WebCore::HTMLQuoteElement::HTMLQuoteElement): Moved setUsesBeforeAfterRules to HTMLQuoteElement' constructor because some
   39257         part of the code creates elements without using the HTMLElementFactory. Also added a FIXME as it is not the right place.
   39258 
   39259         * html/HTMLTagNames.in: Corrected <image> parameters.
   39260 
   39261 2009-02-10  David Hyatt  <hyatt (a] apple.com>
   39262 
   39263         Fix for pixel test regression in fast/text.  Make sure not to add in
   39264         the borderTop and paddingTop of the block to the baseline when painting
   39265         strict mode text decorations.
   39266 
   39267         Reviewed by Mark Rowe
   39268 
   39269         * rendering/InlineFlowBox.cpp:
   39270         (WebCore::InlineFlowBox::paintTextDecorations):
   39271         * rendering/InlineFlowBox.h:
   39272 
   39273 2009-02-10  Jon Honeycutt  <jhoneycutt (a] apple.com>
   39274 
   39275         Windows build fix after r40837.
   39276 
   39277         Not reviewed.
   39278 
   39279         * DerivedSources.cpp:
   39280 
   39281 2009-02-10  Jon Honeycutt  <jhoneycutt (a] apple.com>
   39282 
   39283         <rdar://6349412> REGRESSION(r37204): Page is not repainted during and
   39284         after pan scrolling
   39285 
   39286         Reviewed by Steve Falkenburg.
   39287 
   39288         * platform/ScrollView.cpp:
   39289         (WebCore::ScrollView::scrollContents): Don't repaint the pan scroll
   39290         icon rect immediately; we will paint after the view has been scrolled.
   39291 
   39292 2009-02-10  Oliver Hunt  <oliver (a] apple.com>
   39293 
   39294         Reviewed by Adele Peterson.
   39295 
   39296         <rdar://problem/6156755> onMouseOver events do not fire properly for cross frame drag and drop
   39297 
   39298         This problem was caused by incorrectly ignoring whether or not the
   39299         default behaviour of the mousedown event was suppressed.  If a
   39300         mousedown handler in a frame prevents default handling then the
   39301         subsequent mousemove events fired for the drag should not be
   39302         captured by that frame, should the mouse move out of its bounds.
   39303 
   39304         Test: fast/events/mouse-drag-from-frame.html
   39305 
   39306         * page/EventHandler.cpp:
   39307         (WebCore::EventHandler::EventHandler):
   39308         (WebCore::EventHandler::clear):
   39309         (WebCore::EventHandler::handleMouseReleaseEvent):
   39310             Reset new m_capturesDragging flag
   39311 
   39312         (WebCore::EventHandler::handleMousePressEvent):
   39313             Respect the m_capturesDragging flag when we propagate
   39314             a mousedown event to a subframe.
   39315 
   39316         * page/EventHandler.h:
   39317         (WebCore::EventHandler::capturesDragging):
   39318 
   39319 2009-02-10  Kevin Ollivier  <kevino (a] theolliviers.com>
   39320 
   39321         wx build fixes for recent changes to TransformationMatrix and DOMElement.
   39322 
   39323         * WebCoreSources.bkl:
   39324         * dom/Element.cpp:
   39325         * platform/graphics/transforms/TransformationMatrix.h:
   39326         * platform/graphics/wx/TransformationMatrixWx.cpp:
   39327         (WebCore::TransformationMatrix::operator wxGraphicsMatrix):
   39328 
   39329 2009-02-10  David Hyatt  <hyatt (a] apple.com>
   39330 
   39331         Some renames on line boxes.  xPos()/yPos() -> x()/y().  setXPos()/setYPos() -> setX()/setY().  m_object/object() -> m_renderer/renderer().  textObject() -> textRenderer().
   39332 
   39333         Reviewed by Sam Weinig
   39334 
   39335         * dom/Position.cpp:
   39336         (WebCore::Position::upstream):
   39337         (WebCore::Position::downstream):
   39338         * editing/VisiblePosition.cpp:
   39339         (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
   39340         (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
   39341         (WebCore::VisiblePosition::localCaretRect):
   39342         * editing/visible_units.cpp:
   39343         (WebCore::startPositionForLine):
   39344         (WebCore::endPositionForLine):
   39345         (WebCore::previousLinePosition):
   39346         (WebCore::nextLinePosition):
   39347         * rendering/EllipsisBox.cpp:
   39348         (WebCore::EllipsisBox::paint):
   39349         (WebCore::EllipsisBox::nodeAtPoint):
   39350         * rendering/InlineBox.cpp:
   39351         (WebCore::InlineBox::showTreeForThis):
   39352         (WebCore::InlineBox::height):
   39353         (WebCore::InlineBox::caretMinOffset):
   39354         (WebCore::InlineBox::caretMaxOffset):
   39355         (WebCore::InlineBox::deleteLine):
   39356         (WebCore::InlineBox::extractLine):
   39357         (WebCore::InlineBox::attachLine):
   39358         (WebCore::InlineBox::adjustPosition):
   39359         (WebCore::InlineBox::paint):
   39360         (WebCore::InlineBox::nodeAtPoint):
   39361         (WebCore::InlineBox::selectionState):
   39362         (WebCore::InlineBox::canAccommodateEllipsis):
   39363         * rendering/InlineBox.h:
   39364         (WebCore::InlineBox::InlineBox):
   39365         (WebCore::InlineBox::renderer):
   39366         (WebCore::InlineBox::setX):
   39367         (WebCore::InlineBox::x):
   39368         (WebCore::InlineBox::setY):
   39369         (WebCore::InlineBox::y):
   39370         (WebCore::InlineBox::topOverflow):
   39371         (WebCore::InlineBox::bottomOverflow):
   39372         (WebCore::InlineBox::leftOverflow):
   39373         (WebCore::InlineBox::rightOverflow):
   39374         (WebCore::InlineBox::visibleToHitTesting):
   39375         (WebCore::InlineBox::boxModelObject):
   39376         * rendering/InlineFlowBox.cpp:
   39377         (WebCore::InlineFlowBox::height):
   39378         (WebCore::InlineFlowBox::addToLine):
   39379         (WebCore::InlineFlowBox::removeLineBoxFromRenderObject):
   39380         (WebCore::InlineFlowBox::extractLineBoxFromRenderObject):
   39381         (WebCore::InlineFlowBox::attachLineBoxToRenderObject):
   39382         (WebCore::InlineFlowBox::rendererLineBoxes):
   39383         (WebCore::InlineFlowBox::onEndChain):
   39384         (WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
   39385         (WebCore::InlineFlowBox::placeBoxesHorizontally):
   39386         (WebCore::InlineFlowBox::verticallyAlignBoxes):
   39387         (WebCore::InlineFlowBox::adjustMaxAscentAndDescent):
   39388         (WebCore::verticalPositionForBox):
   39389         (WebCore::InlineFlowBox::computeLogicalBoxHeights):
   39390         (WebCore::InlineFlowBox::placeBoxesVertically):
   39391         (WebCore::InlineFlowBox::nodeAtPoint):
   39392         (WebCore::InlineFlowBox::paint):
   39393         (WebCore::InlineFlowBox::paintFillLayer):
   39394         (WebCore::InlineFlowBox::paintBoxShadow):
   39395         (WebCore::InlineFlowBox::paintBoxDecorations):
   39396         (WebCore::InlineFlowBox::paintMask):
   39397         (WebCore::InlineFlowBox::paintTextDecorations):
   39398         * rendering/InlineFlowBox.h:
   39399         (WebCore::InlineFlowBox::borderLeft):
   39400         (WebCore::InlineFlowBox::borderRight):
   39401         (WebCore::InlineFlowBox::borderTop):
   39402         (WebCore::InlineFlowBox::borderBottom):
   39403         (WebCore::InlineFlowBox::baseline):
   39404         * rendering/InlineTextBox.cpp:
   39405         (WebCore::InlineTextBox::height):
   39406         (WebCore::InlineTextBox::selectionState):
   39407         (WebCore::InlineTextBox::selectionRect):
   39408         (WebCore::InlineTextBox::deleteLine):
   39409         (WebCore::InlineTextBox::extractLine):
   39410         (WebCore::InlineTextBox::attachLine):
   39411         (WebCore::InlineTextBox::placeEllipsisBox):
   39412         (WebCore::InlineTextBox::isLineBreak):
   39413         (WebCore::InlineTextBox::nodeAtPoint):
   39414         (WebCore::InlineTextBox::paint):
   39415         (WebCore::InlineTextBox::selectionStartEnd):
   39416         (WebCore::InlineTextBox::paintSelection):
   39417         (WebCore::InlineTextBox::paintCompositionBackground):
   39418         (WebCore::InlineTextBox::paintCustomHighlight):
   39419         (WebCore::InlineTextBox::paintDecoration):
   39420         (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
   39421         (WebCore::InlineTextBox::paintTextMatchMarker):
   39422         (WebCore::InlineTextBox::paintDocumentMarkers):
   39423         (WebCore::InlineTextBox::paintCompositionUnderline):
   39424         (WebCore::InlineTextBox::textPos):
   39425         (WebCore::InlineTextBox::offsetForPosition):
   39426         (WebCore::InlineTextBox::positionForOffset):
   39427         * rendering/InlineTextBox.h:
   39428         (WebCore::InlineTextBox::textRenderer):
   39429         * rendering/ListMarkerBox.cpp:
   39430         (WebCore::ListMarkerBox::isText):
   39431         * rendering/RenderBlock.cpp:
   39432         (WebCore::RenderBlock::paintEllipsisBoxes):
   39433         (WebCore::RenderBlock::lowestPosition):
   39434         (WebCore::RenderBlock::rightmostPosition):
   39435         (WebCore::RenderBlock::leftmostPosition):
   39436         (WebCore::RenderBlock::positionForBox):
   39437         (WebCore::RenderBlock::positionForCoordinates):
   39438         (WebCore::RenderBlock::getBaselineOfFirstLineBox):
   39439         (WebCore::RenderBlock::getBaselineOfLastLineBox):
   39440         (WebCore::RenderBlock::adjustForBorderFit):
   39441         (WebCore::RenderBlock::addFocusRingRects):
   39442         * rendering/RenderBox.cpp:
   39443         (WebCore::RenderBox::paintCustomHighlight):
   39444         (WebCore::RenderBox::position):
   39445         (WebCore::RenderBox::containingBlockWidthForPositioned):
   39446         (WebCore::RenderBox::calcAbsoluteHorizontalValues):
   39447         (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
   39448         * rendering/RenderBoxModelObject.cpp:
   39449         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
   39450         * rendering/RenderFlexibleBox.cpp:
   39451         (WebCore::RenderFlexibleBox::layoutVerticalBox):
   39452         * rendering/RenderInline.cpp:
   39453         (WebCore::RenderInline::absoluteRects):
   39454         (WebCore::RenderInline::absoluteQuads):
   39455         (WebCore::RenderInline::offsetLeft):
   39456         (WebCore::RenderInline::offsetTop):
   39457         (WebCore::RenderInline::linesBoundingBox):
   39458         (WebCore::RenderInline::relativePositionedInlineOffset):
   39459         (WebCore::RenderInline::addFocusRingRects):
   39460         (WebCore::RenderInline::paintOutline):
   39461         * rendering/RenderLayer.cpp:
   39462         (WebCore::RenderLayer::localBoundingBox):
   39463         * rendering/RenderSVGTSpan.cpp:
   39464         (WebCore::RenderSVGTSpan::absoluteRects):
   39465         (WebCore::RenderSVGTSpan::absoluteQuads):
   39466         * rendering/RenderSVGText.cpp:
   39467         (WebCore::RenderSVGText::absoluteRects):
   39468         (WebCore::RenderSVGText::absoluteQuads):
   39469         (WebCore::RenderSVGText::relativeBBox):
   39470         * rendering/RenderSVGTextPath.cpp:
   39471         (WebCore::RenderSVGTextPath::absoluteRects):
   39472         (WebCore::RenderSVGTextPath::absoluteQuads):
   39473         * rendering/RenderText.cpp:
   39474         (WebCore::RenderText::absoluteRects):
   39475         (WebCore::RenderText::absoluteRectsForRange):
   39476         (WebCore::RenderText::absoluteQuads):
   39477         (WebCore::RenderText::absoluteQuadsForRange):
   39478         (WebCore::RenderText::localCaretRect):
   39479         (WebCore::RenderText::linesBoundingBox):
   39480         * rendering/RootInlineBox.cpp:
   39481         (WebCore::RootInlineBox::height):
   39482         (WebCore::RootInlineBox::clearTruncation):
   39483         (WebCore::RootInlineBox::placeEllipsis):
   39484         (WebCore::RootInlineBox::paintEllipsisBox):
   39485         (WebCore::RootInlineBox::addHighlightOverflow):
   39486         (WebCore::RootInlineBox::paintCustomHighlight):
   39487         (WebCore::RootInlineBox::paint):
   39488         (WebCore::RootInlineBox::nodeAtPoint):
   39489         (WebCore::RootInlineBox::childRemoved):
   39490         (WebCore::RootInlineBox::fillLineSelectionGap):
   39491         (WebCore::RootInlineBox::block):
   39492         (WebCore::isEditableLeaf):
   39493         (WebCore::RootInlineBox::closestLeafChildForXPos):
   39494         (WebCore::RootInlineBox::setVerticalOverflowPositions):
   39495         * rendering/RootInlineBox.h:
   39496         (WebCore::RootInlineBox::bottomOverflow):
   39497         (WebCore::RootInlineBox::floats):
   39498         (WebCore::RootInlineBox::setHorizontalOverflowPositions):
   39499         (WebCore::RootInlineBox::setVerticalSelectionPositions):
   39500         * rendering/SVGCharacterLayoutInfo.cpp:
   39501         (WebCore::SVGCharacterLayoutInfo::addLayoutInformation):
   39502         * rendering/SVGInlineTextBox.cpp:
   39503         (WebCore::SVGInlineTextBox::calculateGlyphWidth):
   39504         (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::chunkPortionCallback):
   39505         (WebCore::SVGInlineTextBoxSelectionRectWalker::chunkPortionCallback):
   39506         (WebCore::SVGInlineTextBox::svgCharacterHitsPosition):
   39507         (WebCore::SVGInlineTextBox::nodeAtPoint):
   39508         (WebCore::SVGInlineTextBox::paintCharacters):
   39509         (WebCore::SVGInlineTextBox::paintSelection):
   39510         (WebCore::SVGInlineTextBox::paintDecoration):
   39511         * rendering/SVGRenderTreeAsText.cpp:
   39512         (WebCore::writeSVGInlineTextBox):
   39513         * rendering/SVGRootInlineBox.cpp:
   39514         (WebCore::SVGRootInlineBoxPaintWalker::SVGRootInlineBoxPaintWalker):
   39515         (WebCore::SVGRootInlineBoxPaintWalker::chunkStartCallback):
   39516         (WebCore::SVGRootInlineBoxPaintWalker::chunkEndCallback):
   39517         (WebCore::SVGRootInlineBoxPaintWalker::chunkSetupFillCallback):
   39518         (WebCore::SVGRootInlineBoxPaintWalker::chunkSetupStrokeCallback):
   39519         (WebCore::SVGRootInlineBoxPaintWalker::chunkPortionCallback):
   39520         (WebCore::SVGRootInlineBox::paint):
   39521         (WebCore::cummulatedWidthOfInlineBoxCharacterRange):
   39522         (WebCore::cummulatedHeightOfInlineBoxCharacterRange):
   39523         (WebCore::svgTextRunForInlineTextBox):
   39524         (WebCore::cummulatedWidthOrHeightOfTextChunk):
   39525         (WebCore::applyTextAnchorToTextChunk):
   39526         (WebCore::SVGRootInlineBox::buildLayoutInformation):
   39527         (WebCore::SVGRootInlineBox::layoutInlineBoxes):
   39528         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
   39529         (WebCore::SVGRootInlineBox::buildTextChunks):
   39530         * rendering/bidi.cpp:
   39531         (WebCore::RenderBlock::constructLine):
   39532         (WebCore::RenderBlock::computeVerticalPositionsForLine):
   39533         (WebCore::RenderBlock::layoutInlineChildren):
   39534         (WebCore::RenderBlock::checkLinesForTextOverflow):
   39535         * svg/SVGTextContentElement.cpp:
   39536         (WebCore::cumulativeCharacterRangeLength):
   39537         (WebCore::SVGInlineTextBoxQueryWalker::chunkPortionCallback):
   39538         (WebCore::findInlineTextBoxInTextChunks):
   39539 
   39540 2009-02-10  Simon Fraser  <simon.fraser (a] apple.com>
   39541 
   39542         Reviewed by Dave Hyatt
   39543 
   39544         Clean up "fallbackAnimating" logic in AnimationBase. This flag indicates
   39545         that animation of an accelerated property must run in software for some reason.
   39546 
   39547         Also remove use of private headers in GraphicsLayerCA related to a case
   39548         where we may have to fall back on software animation of transform.
   39549 
   39550         * page/animation/AnimationBase.cpp:
   39551         (WebCore::AnimationBase::blendProperties):
   39552         * page/animation/AnimationBase.h:
   39553         * page/animation/ImplicitAnimation.cpp:
   39554         (WebCore::ImplicitAnimation::animate):
   39555         * page/animation/KeyframeAnimation.cpp:
   39556         (WebCore::KeyframeAnimation::animate):
   39557         * platform/graphics/mac/GraphicsLayerCA.h:
   39558         * platform/graphics/mac/GraphicsLayerCA.mm:
   39559         (WebCore::getValueFunctionNameForTransformOperation):
   39560         (WebCore::caValueFunctionSupported):
   39561         (WebCore::GraphicsLayerCA::setBackgroundColor):
   39562         (WebCore::GraphicsLayerCA::setOpacity):
   39563         (WebCore::GraphicsLayerCA::animateTransform):
   39564         (WebCore::GraphicsLayerCA::animateFloat):
   39565         (WebCore::GraphicsLayerCA::setBasicAnimation):
   39566         (WebCore::GraphicsLayerCA::setKeyframeAnimation):
   39567 
   39568 2009-02-10  Simon Fraser  <simon.fraser (a] apple.com>
   39569 
   39570         Reviewed by Dave Hyatt
   39571 
   39572         Move enclosingCompositingLayer() from RenderObject to RenderLayer, since it
   39573         relates to the RenderLayer z-order/overflow structure, rather than the render tree
   39574         parent chain. Add a convenience method, ancestorCompositingLayer(), which finds
   39575         the enclosing layer excluding self.
   39576 
   39577         Fix enclosingCompositingLayer() to correctly look at stacking context and overflow
   39578         lists.
   39579 
   39580         Check for documentBeingDestroyed() in a few places to avoid work on document
   39581         teardown.
   39582 
   39583         * rendering/RenderLayer.cpp:
   39584         (WebCore::RenderLayer::enclosingCompositingLayer):
   39585         (WebCore::RenderLayer::setParent):
   39586         (WebCore::RenderLayer::dirtyZOrderLists):
   39587         (WebCore::RenderLayer::dirtyOverflowList):
   39588         * rendering/RenderLayer.h:
   39589         (WebCore::RenderLayer::ancestorCompositingLayer):
   39590         * rendering/RenderLayerBacking.cpp:
   39591         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
   39592         * rendering/RenderLayerCompositor.cpp:
   39593         (WebCore::RenderLayerCompositor::updateLayerCompositingState):
   39594         (WebCore::RenderLayerCompositor::calculateCompositedBounds):
   39595         (WebCore::RenderLayerCompositor::layerWillBeRemoved):
   39596         (WebCore::RenderLayerCompositor::clippedByAncestor):
   39597         * rendering/RenderLayerCompositor.h:
   39598         * rendering/RenderObject.cpp:
   39599         (WebCore::RenderObject::containerForRepaint):
   39600         * rendering/RenderObject.h:
   39601 
   39602 2009-02-10  David Hyatt  <hyatt (a] apple.com>
   39603 
   39604         Rename xPos() and yPos() on RenderLayer to x() and y() to match RenderBox.  Rename setPos to setLocation.
   39605 
   39606         Reviewed by Simon Fraser
   39607 
   39608         * dom/MouseRelatedEvent.cpp:
   39609         (WebCore::MouseRelatedEvent::receivedTarget):
   39610         * rendering/RenderLayer.cpp:
   39611         (WebCore::RenderLayer::updateLayerPosition):
   39612         (WebCore::RenderLayer::convertToLayerCoords):
   39613         * rendering/RenderLayer.h:
   39614         (WebCore::RenderLayer::x):
   39615         (WebCore::RenderLayer::y):
   39616         (WebCore::RenderLayer::setLocation):
   39617         * rendering/RenderTreeAsText.cpp:
   39618         (WebCore::write):
   39619         (WebCore::externalRepresentation):
   39620 
   39621 2009-02-10  Darin Fisher  <darin (a] chromium.org>
   39622 
   39623         Reviewed by Eric Seidel.
   39624 
   39625         https://bugs.webkit.org/show_bug.cgi?id=23879
   39626         Add missing PLATFORM(SKIA) changes to TransformationMatrix.h
   39627 
   39628         * platform/graphics/transforms/TransformationMatrix.h:
   39629 
   39630 2009-02-10  Sam Weinig  <sam (a] webkit.org>
   39631 
   39632         Reviewed by David Hyatt.
   39633 
   39634         Fix for https://bugs.webkit.org/show_bug.cgi?id=15897
   39635         Please implement getBoundingClientRect and getClientRects
   39636         <rdar://problem/6139669>
   39637 
   39638         Cursory implementation of Element.getBoundingClientRect and
   39639         Element.getClientRects. Adds necessary infrastructure classes
   39640         ClientRect and ClientRectList.
   39641 
   39642         Tests: fast/dom/getBoundingClientRect.html
   39643                fast/dom/getClientRects.html
   39644 
   39645         * DerivedSources.make:
   39646         * GNUmakefile.am:
   39647         * WebCore.pro:
   39648         * WebCore.vcproj/WebCore.vcproj:
   39649         * WebCore.xcodeproj/project.pbxproj:
   39650         * WebCoreSources.bkl:
   39651         * dom/ClientRect.cpp: Added.
   39652         (WebCore::ClientRect::ClientRect):
   39653         * dom/ClientRect.h: Added.
   39654         (WebCore::ClientRect::create):
   39655         (WebCore::ClientRect::top):
   39656         (WebCore::ClientRect::right):
   39657         (WebCore::ClientRect::bottom):
   39658         (WebCore::ClientRect::left):
   39659         (WebCore::ClientRect::width):
   39660         (WebCore::ClientRect::height):
   39661         * dom/ClientRect.idl: Added.
   39662         * dom/ClientRectList.cpp: Added.
   39663         (WebCore::ClientRectList::ClientRectList):
   39664         (WebCore::ClientRectList::~ClientRectList):
   39665         (WebCore::ClientRectList::length):
   39666         (WebCore::ClientRectList::item):
   39667         * dom/ClientRectList.h: Added.
   39668         (WebCore::ClientRectList::create):
   39669         * dom/ClientRectList.idl: Added.
   39670         * dom/Element.cpp:
   39671         (WebCore::Element::getClientRects):
   39672         (WebCore::Element::getBoundingClientRect):
   39673         * dom/Element.h:
   39674         * dom/Element.idl:
   39675         * page/DOMWindow.idl:
   39676         * rendering/RenderInline.cpp:
   39677         (WebCore::RenderInline::absoluteRects):
   39678         (WebCore::RenderInline::absoluteQuads):
   39679 
   39680 2009-02-10  David Hyatt  <hyatt (a] apple.com>
   39681 
   39682         Get rid of capsLockStateMayHaveChanged on RenderObject.  It is only implemented by one class (text fields),
   39683         so devirtualize and just query at the single call site.
   39684 
   39685         Reviewed by Eric Seidel
   39686 
   39687         * page/EventHandler.cpp:
   39688         (WebCore::EventHandler::capsLockStateMayHaveChanged):
   39689         * rendering/RenderObject.h:
   39690         * rendering/RenderTextControlSingleLine.h:
   39691 
   39692 2009-02-10  David Hyatt  <hyatt (a] apple.com>
   39693 
   39694         Shrink the size of all RenderObjects (except for RenderInlines) by 4 bytes.  This patch moves the cached vertical position member to RenderInlines,
   39695         since they were the only objects being queried across multiple lines.
   39696 
   39697         Reviewed by Sam Weinig
   39698 
   39699         * rendering/InlineFlowBox.cpp:
   39700         (WebCore::verticalPositionForBox):
   39701         (WebCore::InlineFlowBox::computeLogicalBoxHeights):
   39702         * rendering/RenderBoxModelObject.cpp:
   39703         (WebCore::RenderBoxModelObject::verticalPosition):
   39704         * rendering/RenderBoxModelObject.h:
   39705         * rendering/RenderInline.cpp:
   39706         (WebCore::RenderInline::RenderInline):
   39707         (WebCore::RenderInline::verticalPositionFromCache):
   39708         * rendering/RenderInline.h:
   39709         (WebCore::RenderInline::invalidateVerticalPosition):
   39710         * rendering/RenderObject.cpp:
   39711         (WebCore::RenderObject::RenderObject):
   39712         * rendering/RenderObject.h:
   39713         * rendering/RenderText.cpp:
   39714         * rendering/RenderText.h:
   39715         * rendering/bidi.cpp:
   39716         (WebCore::RenderBlock::layoutInlineChildren):
   39717 
   39718 2009-02-10  Dimitri Glazkov  <dglazkov (a] chromium.org>
   39719 
   39720         Reviewed by Mark Rowe.
   39721 
   39722         https://bugs.webkit.org/show_bug.cgi?id=23868
   39723         Fix code style issues: removed 80-col wrapping, incorrect include style, if statement body on same line.
   39724 
   39725         * bindings/v8/custom/V8HTMLInputElementCustom.cpp:
   39726         * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
   39727 
   39728 2009-02-10  Dimitri Glazkov  <dglazkov (a] chromium.org>
   39729 
   39730         Reviewed by Eric Seidel.
   39731 
   39732         https://bugs.webkit.org/show_bug.cgi?id=23868
   39733         Add HTMLInputElement and HTMLOptionsCollection V8 custom bindings.
   39734 
   39735         * bindings/v8/custom/V8HTMLInputElementCustom.cpp: Added.
   39736         (WebCore::ACCESSOR_GETTER):
   39737         (WebCore::ACCESSOR_SETTER):
   39738         (WebCore::CALLBACK_FUNC_DECL):
   39739         * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp: Added.
   39740         (WebCore::ACCESSOR_GETTER):
   39741         (WebCore::ACCESSOR_SETTER):
   39742 
   39743 2009-02-10  Adam Roben  <aroben (a] apple.com>
   39744 
   39745         Fix Bug 23871: Assertion failure beneath WebCore::openFunc when
   39746         running http/tests/security/xss-DENIED-xsl-document-redirect.xml
   39747 
   39748         <https://bugs.webkit.org/show_bug.cgi?id=23871>
   39749 
   39750         Reviewed by Alexey Proskuryakov.
   39751 
   39752         Covered by existing tests.
   39753 
   39754         * dom/XMLTokenizerLibxml2.cpp:
   39755         (WebCore::openFunc): Use the two-parameter KURL constructor so that
   39756         the string will be parsed. libxml2 gives us a UTF-8-encoded string
   39757         that needs to be parsed.
   39758 
   39759 2009-02-10  David Hyatt  <hyatt (a] apple.com>
   39760 
   39761         Shrink the size of all replaced elements (images, form controls, plugins) by 4 bytes by packing the
   39762         overflow boolean into the RenderObject base class.
   39763 
   39764         Reviewed by Sam Weinig
   39765 
   39766         * rendering/RenderObject.cpp:
   39767         (WebCore::RenderObject::RenderObject):
   39768         * rendering/RenderObject.h:
   39769         (WebCore::RenderObject::replacedHasOverflow):
   39770         (WebCore::RenderObject::setReplacedHasOverflow):
   39771         * rendering/RenderReplaced.cpp:
   39772         (WebCore::RenderReplaced::RenderReplaced):
   39773         (WebCore::RenderReplaced::~RenderReplaced):
   39774         (WebCore::RenderReplaced::adjustOverflowForBoxShadow):
   39775         (WebCore::RenderReplaced::overflowHeight):
   39776         (WebCore::RenderReplaced::overflowWidth):
   39777         (WebCore::RenderReplaced::overflowLeft):
   39778         (WebCore::RenderReplaced::overflowTop):
   39779         (WebCore::RenderReplaced::overflowRect):
   39780         * rendering/RenderReplaced.h:
   39781 
   39782 2009-02-10  Eric Carlson  <eric.carlson (a] apple.com>
   39783 
   39784         Reviewed by Simon Fraser.
   39785 
   39786         https://bugs.webkit.org/show_bug.cgi?id=23870
   39787         Make it possible for a port to require a user gesture for an <audio> or <video> element
   39788         to load a url.
   39789 
   39790         * html/HTMLMediaElement.cpp:
   39791         (WebCore::HTMLMediaElement::HTMLMediaElement): Initialize m_loadRestrictions.
   39792         (WebCore::HTMLMediaElement::attributeChanged): Only one attribute can change so put an "else" between tests.
   39793         (WebCore::HTMLMediaElement::load): Return INVALID_STATE_ERR if RequireUserGestureLoadRestriction is set
   39794         and we are not preocessing a user gesture.
   39795         (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged): Remove unnecessary white space.
   39796         (WebCore::HTMLMediaElement::play): Ditto.
   39797         (WebCore::HTMLMediaElement::endScrubbing): Remove unnecessary braces added in r40789.
   39798         (WebCore::HTMLMediaElement::mediaPlayerTimeChanged): Cache currentTime() in a local instead of calling it
   39799         multiple times.
   39800         (WebCore::HTMLMediaElement::processingUserGesture): New.
   39801         * html/HTMLMediaElement.h:
   39802         (WebCore::HTMLMediaElement::): Define LoadRestrictions, add m_loadRestrictions.
   39803 
   39804 2009-02-10  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   39805 
   39806         Reviewed by Sam Weinig.
   39807 
   39808         Remove the SVG checks from FloatPoint3D as it is used
   39809         by TransformationMatrix.
   39810 
   39811         * platform/graphics/FloatPoint3D.cpp:
   39812         * platform/graphics/FloatPoint3D.h:
   39813 
   39814 2009-02-10  David Hyatt  <hyatt (a] apple.com>
   39815 
   39816         Remove the m_baseline member variable from all line boxes, since it can easily be computed when needed and did not need to be cached.
   39817 
   39818         Reviewed by Sam Weinig
   39819 
   39820         * rendering/EllipsisBox.cpp:
   39821         (WebCore::EllipsisBox::paint):
   39822         (WebCore::EllipsisBox::nodeAtPoint):
   39823         * rendering/EllipsisBox.h:
   39824         (WebCore::EllipsisBox::EllipsisBox):
   39825         * rendering/InlineBox.h:
   39826         (WebCore::InlineBox::InlineBox):
   39827         * rendering/InlineFlowBox.cpp:
   39828         (WebCore::InlineFlowBox::verticallyAlignBoxes):
   39829         (WebCore::InlineFlowBox::computeLogicalBoxHeights):
   39830         (WebCore::InlineFlowBox::placeBoxesVertically):
   39831         (WebCore::InlineFlowBox::paintTextDecorations):
   39832         * rendering/InlineFlowBox.h:
   39833         (WebCore::InlineFlowBox::marginBorderPaddingLeft):
   39834         (WebCore::InlineFlowBox::marginBorderPaddingRight):
   39835         (WebCore::InlineFlowBox::marginLeft):
   39836         (WebCore::InlineFlowBox::marginRight):
   39837         (WebCore::InlineFlowBox::borderLeft):
   39838         (WebCore::InlineFlowBox::borderRight):
   39839         (WebCore::InlineFlowBox::borderTop):
   39840         (WebCore::InlineFlowBox::borderBottom):
   39841         (WebCore::InlineFlowBox::paddingLeft):
   39842         (WebCore::InlineFlowBox::paddingRight):
   39843         (WebCore::InlineFlowBox::paddingTop):
   39844         (WebCore::InlineFlowBox::paddingBottom):
   39845         (WebCore::InlineFlowBox::includeLeftEdge):
   39846         (WebCore::InlineFlowBox::includeRightEdge):
   39847         (WebCore::InlineFlowBox::baseline):
   39848         * rendering/InlineTextBox.cpp:
   39849         (WebCore::InlineTextBox::paint):
   39850         (WebCore::InlineTextBox::paintDecoration):
   39851         (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
   39852         (WebCore::InlineTextBox::paintCompositionUnderline):
   39853         * rendering/RenderBlock.cpp:
   39854         (WebCore::RenderBlock::getBaselineOfFirstLineBox):
   39855         (WebCore::RenderBlock::getBaselineOfLastLineBox):
   39856         * rendering/RenderTableCell.cpp:
   39857         (WebCore::RenderTableCell::baselinePosition):
   39858         * rendering/RootInlineBox.cpp:
   39859         (WebCore::RootInlineBox::placeEllipsis):
   39860         * rendering/SVGInlineTextBox.cpp:
   39861         (WebCore::SVGInlineTextBox::paintDecoration):
   39862         * rendering/SVGRootInlineBox.cpp:
   39863         (WebCore::applyTextAnchorToTextChunk):
   39864         (WebCore::SVGRootInlineBox::layoutInlineBoxes):
   39865 
   39866 2009-02-10  Alexey Proskuryakov  <ap (a] webkit.org>
   39867 
   39868         Reviewed by Darin Adler.
   39869 
   39870         https://bugs.webkit.org/show_bug.cgi?id=23867
   39871         Eliminate obsolete frame->document() checks
   39872 
   39873         * page/FrameView.cpp: (WebCore::FrameView::paintContents): Apparently due to a typo
   39874         (document vs. !document), fillWithRed was always set to false, and other branches were
   39875         never taken. Removing the check for document restores debug-only red color filling.
   39876 
   39877         * loader/FrameLoader.cpp: (WebCore::FrameLoader::begin): Only call dispatchWindowObjectAvailable()
   39878         after a document is created. A client can do anything in its delegate method, so we'd need
   39879         to have frame->document() checks otherwise. DumpRenderTree uses this delegate to add its
   39880         custom property, and it was crashing due to null document in JSDOMWindowBase::getOwnPropertySlot().
   39881 
   39882         * bindings/js/JSDOMWindowBase.cpp:
   39883         (WebCore::JSDOMWindowBase::getOwnPropertySlot):
   39884         * bindings/js/JSDOMWindowCustom.cpp:
   39885         (WebCore::JSDOMWindow::addEventListener):
   39886         (WebCore::JSDOMWindow::removeEventListener):
   39887         * bindings/js/JSNavigatorCustom.cpp:
   39888         (WebCore::needsYouTubeQuirk):
   39889         * bindings/js/ScheduledAction.cpp:
   39890         (WebCore::ScheduledAction::execute):
   39891         * bindings/js/ScriptControllerMac.mm:
   39892         (WebCore::updateRenderingForBindings):
   39893         * dom/Document.cpp:
   39894         (WebCore::Document::initSecurityContext):
   39895         * editing/Editor.cpp:
   39896         (WebCore::Editor::deleteWithDirection):
   39897         (WebCore::Editor::dispatchCPPEvent):
   39898         (WebCore::Editor::applyStyle):
   39899         (WebCore::Editor::applyParagraphStyle):
   39900         * editing/EditorCommand.cpp:
   39901         (WebCore::Editor::Command::execute):
   39902         (WebCore::Editor::Command::isEnabled):
   39903         (WebCore::Editor::Command::state):
   39904         (WebCore::Editor::Command::value):
   39905         * editing/SelectionController.cpp:
   39906         (WebCore::SelectionController::recomputeCaretRect):
   39907         (WebCore::SelectionController::selectFrameElementInParentIfFullySelected):
   39908         (WebCore::SelectionController::selectAll):
   39909         (WebCore::SelectionController::setFocused):
   39910         * inspector/InspectorController.cpp:
   39911         (WebCore::getResourceDocumentNode):
   39912         * inspector/JavaScriptDebugServer.cpp:
   39913         (WebCore::JavaScriptDebugServer::setJavaScriptPaused):
   39914         * loader/DocumentLoader.cpp:
   39915         (WebCore::canonicalizedTitle):
   39916         (WebCore::DocumentLoader::stopLoading):
   39917         (WebCore::DocumentLoader::isLoadingInAPISense):
   39918         (WebCore::DocumentLoader::subresource):
   39919         (WebCore::DocumentLoader::getSubresources):
   39920         * loader/FrameLoader.cpp:
   39921         (WebCore::FrameLoader::urlSelected):
   39922         (WebCore::FrameLoader::stop):
   39923         (WebCore::FrameLoader::iconURL):
   39924         (WebCore::FrameLoader::executeIfJavaScriptURL):
   39925         (WebCore::FrameLoader::clear):
   39926         (WebCore::FrameLoader::endIfNotLoadingMainResource):
   39927         (WebCore::FrameLoader::restoreDocumentState):
   39928         (WebCore::FrameLoader::gotoAnchor):
   39929         (WebCore::FrameLoader::loadDone):
   39930         (WebCore::FrameLoader::checkCompleted):
   39931         (WebCore::FrameLoader::checkCallImplicitClose):
   39932         (WebCore::FrameLoader::scheduleRefresh):
   39933         (WebCore::FrameLoader::outgoingOrigin):
   39934         (WebCore::FrameLoader::canCachePageContainingThisFrame):
   39935         (WebCore::FrameLoader::logCanCacheFrameDecision):
   39936         (WebCore::FrameLoader::updatePolicyBaseURL):
   39937         (WebCore::FrameLoader::setPolicyBaseURL):
   39938         (WebCore::FrameLoader::frameDetached):
   39939         (WebCore::FrameLoader::shouldScrollToAnchor):
   39940         (WebCore::FrameLoader::saveDocumentState):
   39941         * loader/archive/cf/LegacyWebArchive.cpp:
   39942         (WebCore::LegacyWebArchive::create):
   39943         * loader/icon/IconFetcher.cpp:
   39944         (WebCore::IconFetcher::create):
   39945         * loader/icon/IconLoader.cpp:
   39946         (WebCore::IconLoader::startLoading):
   39947         * page/AccessibilityRenderObject.cpp:
   39948         (WebCore::AccessibilityRenderObject::visiblePositionForPoint):
   39949         * page/Chrome.cpp:
   39950         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
   39951         (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
   39952         * page/DOMWindow.cpp:
   39953         (WebCore::DOMWindow::sessionStorage):
   39954         (WebCore::DOMWindow::alert):
   39955         (WebCore::DOMWindow::confirm):
   39956         (WebCore::DOMWindow::prompt):
   39957         (WebCore::DOMWindow::scrollX):
   39958         (WebCore::DOMWindow::scrollY):
   39959         (WebCore::DOMWindow::getMatchedCSSRules):
   39960         (WebCore::DOMWindow::openDatabase):
   39961         (WebCore::DOMWindow::scrollBy):
   39962         (WebCore::DOMWindow::scrollTo):
   39963         * page/EventHandler.cpp:
   39964         (WebCore::EventHandler::allowDHTMLDrag):
   39965         (WebCore::EventHandler::scrollOverflow):
   39966         (WebCore::EventHandler::handleMousePressEvent):
   39967         (WebCore::EventHandler::handleMouseDoubleClickEvent):
   39968         (WebCore::EventHandler::handleMouseMoveEvent):
   39969         (WebCore::EventHandler::handleMouseReleaseEvent):
   39970         (WebCore::EventHandler::updateDragAndDrop):
   39971         (WebCore::EventHandler::handleWheelEvent):
   39972         (WebCore::EventHandler::sendContextMenuEvent):
   39973         (WebCore::EventHandler::capsLockStateMayHaveChanged):
   39974         (WebCore::EventHandler::sendResizeEvent):
   39975         (WebCore::EventHandler::sendScrollEvent):
   39976         * page/FocusController.cpp:
   39977         (WebCore::deepFocusableNode):
   39978         (WebCore::FocusController::advanceFocus):
   39979         * page/Frame.cpp:
   39980         (WebCore::Frame::setFocusedNodeIfNeeded):
   39981         (WebCore::Frame::shouldApplyTextZoom):
   39982         (WebCore::Frame::shouldApplyPageZoom):
   39983         (WebCore::Frame::setZoomFactor):
   39984         (WebCore::Frame::setPrinting):
   39985         (WebCore::Frame::reapplyStyles):
   39986         (WebCore::Frame::isContentEditable):
   39987         (WebCore::Frame::computeAndSetTypingStyle):
   39988         (WebCore::Frame::selectionComputedStyle):
   39989         (WebCore::Frame::applyEditingStyleToBodyElement):
   39990         (WebCore::Frame::removeEditingStyleFromBodyElement):
   39991         (WebCore::Frame::contentRenderer):
   39992         (WebCore::Frame::styleForSelectionStart):
   39993         (WebCore::Frame::setSelectionFromNone):
   39994         (WebCore::Frame::findString):
   39995         (WebCore::Frame::markAllMatchesForText):
   39996         (WebCore::Frame::setMarkedTextMatchesAreHighlighted):
   39997         (WebCore::Frame::documentTypeString):
   39998         (WebCore::Frame::shouldClose):
   39999         (WebCore::Frame::respondToChangedSelection):
   40000         * page/FrameView.cpp:
   40001         (WebCore::FrameView::~FrameView):
   40002         (WebCore::FrameView::createScrollbar):
   40003         (WebCore::FrameView::layout):
   40004         (WebCore::FrameView::layoutTimerFired):
   40005         (WebCore::FrameView::scheduleRelayout):
   40006         (WebCore::FrameView::needsLayout):
   40007         (WebCore::FrameView::unscheduleRelayout):
   40008         (WebCore::FrameView::windowClipRect):
   40009         * page/Geolocation.cpp:
   40010         (WebCore::Geolocation::disconnectFrame):
   40011         * page/Page.cpp:
   40012         (WebCore::networkStateChanged):
   40013         (WebCore::Page::~Page):
   40014         (WebCore::Page::unmarkAllTextMatches):
   40015         (WebCore::Page::setMediaVolume):
   40016         * page/animation/AnimationController.cpp:
   40017         (WebCore::AnimationControllerPrivate::updateRenderingDispatcherFired):
   40018         * page/mac/EventHandlerMac.mm:
   40019         (WebCore::EventHandler::currentKeyboardEvent):
   40020         (WebCore::EventHandler::needsKeyboardEventDisambiguationQuirks):
   40021         * page/mac/FrameMac.mm:
   40022         (WebCore::Frame::dashboardRegionsDictionary):
   40023         (WebCore::Frame::setUserStyleSheetLocation):
   40024         (WebCore::Frame::setUserStyleSheet):
   40025         * storage/LocalStorageArea.cpp:
   40026         (WebCore::LocalStorageArea::dispatchStorageEvent):
   40027         * storage/SessionStorageArea.cpp:
   40028         (WebCore::SessionStorageArea::dispatchStorageEvent):
   40029         * svg/graphics/SVGImage.cpp:
   40030         (WebCore::SVGImage::setContainerSize):
   40031         (WebCore::SVGImage::usesContainerSize):
   40032         (WebCore::SVGImage::size):
   40033         (WebCore::SVGImage::hasRelativeWidth):
   40034         (WebCore::SVGImage::hasRelativeHeight):
   40035         Removed frame->document() checks.
   40036 
   40037 2009-02-10  Adam Treat  <adam.treat (a] torchmobile.com>
   40038 
   40039         Reviewed by George Staikos.
   40040 
   40041         Attempt to fix the Qt build after r40791.
   40042 
   40043         * rendering/RenderSVGRoot.cpp:
   40044 
   40045 2009-02-10  Adam Treat  <adam.treat (a] torchmobile.com>
   40046 
   40047         Reviewed by George Staikos.
   40048 
   40049         Minor code cleanup.
   40050 
   40051         * dom/ContainerNode.cpp:
   40052         (WebCore::ContainerNode::replaceChild):
   40053 
   40054 2009-02-10  Adam Treat  <adam.treat (a] torchmobile.com>
   40055 
   40056         Fix Qt build following r40793.
   40057 
   40058         * editing/qt/EditorQt.cpp:
   40059 
   40060 2009-02-10  Feng Qian <feng (a] chromium.org>
   40061 
   40062         Reviewed by Alexey Proskuryakov.
   40063 
   40064         Fix crashes when accessing navigator object of a deleted frame.
   40065         https://bugs.webkit.org/show_bug.cgi?id=23626
   40066         A layout test is added: fast/dom/navigator-detached-no-crash.html
   40067 
   40068         * page/Navigator.cpp:
   40069         (WebCore::Navigator::cookieEnabled):
   40070         (WebCore::Navigator::javaEnabled):
   40071 
   40072 2009-02-10  Sverrir Berg  <sverrir (a] chromium.org>
   40073 
   40074         Reviewed by Eric Seidel.
   40075 
   40076         https://bugs.webkit.org/show_bug.cgi?id=23630
   40077         Add complex font rendering using Skia instead of Windows ScriptTextOut.
   40078         This adds support for enhanced webkit styles when drawing complex
   40079         glyphs.
   40080 
   40081         * platform/graphics/chromium/FontChromiumWin.cpp:
   40082         (WebCore::Font::drawGlyphs):
   40083         (WebCore::Font::drawComplexText):
   40084         * platform/graphics/chromium/UniscribeHelper.cpp:
   40085         (WebCore::containsMissingGlyphs):
   40086         (WebCore::UniscribeHelper::draw):
   40087         (WebCore::UniscribeHelper::shape):
   40088         * platform/graphics/chromium/UniscribeHelper.h:
   40089         * platform/graphics/skia/SkiaFontWin.cpp:
   40090         (WebCore::windowsCanHandleTextDrawing):
   40091         (WebCore::skiaDrawText):
   40092         (WebCore::paintSkiaText):
   40093         * platform/graphics/skia/SkiaFontWin.h:
   40094 
   40095 2009-02-10  Darin Fisher  <darin (a] chromium.org>
   40096 
   40097         Revert r40797 as requested by Sam Weinig.
   40098 
   40099         https://bugs.webkit.org/show_bug.cgi?id=23809
   40100 
   40101         * bindings/scripts/CodeGeneratorJS.pm:
   40102         * dom/Document.idl:
   40103         * html/HTMLCanvasElement.idl:
   40104 
   40105 2009-02-09  Darin Fisher  <darin (a] chromium.org>
   40106 
   40107         Reviewed by Eric Seidel.
   40108 
   40109         https://bugs.webkit.org/show_bug.cgi?id=23855
   40110         Fix TransformationMatrixSkia.cpp and GraphicsContextSkia.cpp bustage
   40111 
   40112         * platform/graphics/skia/GraphicsContextSkia.cpp:
   40113         (WebCore::GraphicsContext::getCTM):
   40114         * platform/graphics/skia/TransformationMatrixSkia.cpp:
   40115         (WebCore::TransformationMatrix::operator SkMatrix):
   40116 
   40117 2009-02-09  Dan Bernstein  <mitz (a] apple.com>
   40118 
   40119         Reviewed by Dave Hyatt.
   40120 
   40121         - fix <rdar://problem/6568942> REGRESSION: Font rendering in Wikipedia input field is incorrect (default GDI text mode)
   40122 
   40123         * platform/graphics/win/SimpleFontDataWin.cpp:
   40124         (WebCore::SimpleFontData::widthForGDIGlyph): Make sure that the DC is
   40125         in the advanced graphics mode before calling GetCharWidthI(), because
   40126         otherwise that function returns incorrect results for the default UI
   40127         font at a certain size.
   40128 
   40129 2009-02-09  Chris Marrin  <cmarrin (a] apple.com>
   40130 
   40131         Reviewed by Simon Fraser
   40132 
   40133         https://bugs.webkit.org/show_bug.cgi?id=23689
   40134 
   40135         Added 3D functions to WebKitCSSMatrix. This depends on the 3D functions
   40136         added to TransformationMatrix in https://bugs.webkit.org/show_bug.cgi?id=6868
   40137 
   40138         Test: transforms/3d/cssmatrix-3d-interface.xhtml
   40139 
   40140         * css/WebKitCSSMatrix.cpp:
   40141         * css/WebKitCSSMatrix.h:
   40142         * css/WebKitCSSMatrix.idl:
   40143 
   40144 2009-02-09  Mark Rowe  <mrowe (a] apple.com>
   40145 
   40146         Reviewed by Darin Adler.
   40147 
   40148         Fix <https://bugs.webkit.org/show_bug.cgi?id=23858>
   40149         Bug 23858: Crash when removing a HTMLSelectElement from the document from inside its focus event handler
   40150 
   40151         * html/HTMLSelectElement.cpp:
   40152         (WebCore::HTMLSelectElement::menuListDefaultEventHandler): Don't store the renderer in a local variable
   40153         as it can be invalidated by any of the calls to focus() within the function.  Instead, retrieve it and
   40154         null-check it when it is needed.
   40155 
   40156 2009-02-09  David Hyatt  <hyatt (a] apple.com>
   40157 
   40158         Remove the m_height member from InlineBox.  This shaves 4 bytes off of all inline boxes.  Unfortunately SVG
   40159         sets heights that are independent of the renderer or of the font, and so all SVG boxes have to retain m_height
   40160         member variables.
   40161 
   40162         height() on InlineBox is now a virtual function that does a dynamic computation (including shrinking boxes
   40163         with no text children).  For SVG boxes there is also a non-virtual setHeight function for updating the
   40164         m_height member variable like before.
   40165 
   40166         Reviewed by Darin Adler
   40167 
   40168         * rendering/EllipsisBox.cpp:
   40169         (WebCore::EllipsisBox::nodeAtPoint):
   40170         * rendering/EllipsisBox.h:
   40171         (WebCore::EllipsisBox::EllipsisBox):
   40172         * rendering/InlineBox.cpp:
   40173         (WebCore::InlineBox::height):
   40174         (WebCore::InlineBox::root):
   40175         * rendering/InlineBox.h:
   40176         (WebCore::InlineBox::InlineBox):
   40177         (WebCore::InlineBox::isInlineFlowBox):
   40178         (WebCore::InlineBox::isRootInlineBox):
   40179         (WebCore::InlineBox::topOverflow):
   40180         (WebCore::InlineBox::bottomOverflow):
   40181         (WebCore::InlineBox::leftOverflow):
   40182         (WebCore::InlineBox::rightOverflow):
   40183         * rendering/InlineFlowBox.cpp:
   40184         (WebCore::InlineFlowBox::height):
   40185         (WebCore::InlineFlowBox::adjustMaxAscentAndDescent):
   40186         (WebCore::InlineFlowBox::computeLogicalBoxHeights):
   40187         (WebCore::InlineFlowBox::placeBoxesVertically):
   40188         (WebCore::InlineFlowBox::shrinkBoxesWithNoTextChildren):
   40189         (WebCore::InlineFlowBox::nodeAtPoint):
   40190         * rendering/InlineFlowBox.h:
   40191         (WebCore::InlineFlowBox::isInlineFlowBox):
   40192         * rendering/InlineTextBox.cpp:
   40193         (WebCore::InlineTextBox::height):
   40194         (WebCore::InlineTextBox::nodeAtPoint):
   40195         (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
   40196         (WebCore::InlineTextBox::paintCompositionUnderline):
   40197         * rendering/InlineTextBox.h:
   40198         * rendering/RootInlineBox.cpp:
   40199         (WebCore::RootInlineBox::height):
   40200         (WebCore::RootInlineBox::placeEllipsis):
   40201         (WebCore::RootInlineBox::setVerticalOverflowPositions):
   40202         * rendering/RootInlineBox.h:
   40203         (WebCore::RootInlineBox::isRootInlineBox):
   40204         (WebCore::RootInlineBox::topOverflow):
   40205         (WebCore::RootInlineBox::bottomOverflow):
   40206         (WebCore::RootInlineBox::leftOverflow):
   40207         (WebCore::RootInlineBox::rightOverflow):
   40208         (WebCore::RootInlineBox::selectionBottom):
   40209         (WebCore::RootInlineBox::Overflow::Overflow):
   40210         (WebCore::RootInlineBox::setVerticalSelectionPositions):
   40211         * rendering/SVGInlineFlowBox.h:
   40212         (WebCore::SVGInlineFlowBox::SVGInlineFlowBox):
   40213         (WebCore::SVGInlineFlowBox::height):
   40214         (WebCore::SVGInlineFlowBox::setHeight):
   40215         * rendering/SVGInlineTextBox.cpp:
   40216         (WebCore::SVGInlineTextBox::SVGInlineTextBox):
   40217         * rendering/SVGInlineTextBox.h:
   40218         (WebCore::SVGInlineTextBox::height):
   40219         (WebCore::SVGInlineTextBox::setHeight):
   40220         * rendering/SVGRootInlineBox.cpp:
   40221         (WebCore::SVGRootInlineBox::layoutInlineBoxes):
   40222         * rendering/SVGRootInlineBox.h:
   40223         (WebCore::SVGRootInlineBox::SVGRootInlineBox):
   40224         (WebCore::SVGRootInlineBox::height):
   40225         (WebCore::SVGRootInlineBox::setHeight):
   40226 
   40227 2009-02-09  Eric Seidel  <eric (a] webkit.org>
   40228 
   40229         Reviewed by Sam Weinig.
   40230 
   40231         Document our Selection DOM extensions
   40232         (in preparation for re-writing Selection to work with ranges)
   40233 
   40234         * page/DOMSelection.cpp:
   40235         (WebCore::DOMSelection::type):
   40236         * page/DOMSelection.h:
   40237         * page/DOMSelection.idl:
   40238 
   40239 2009-02-09  Eric Seidel  <eric (a] webkit.org>
   40240 
   40241         Attempt to fix wx build
   40242 
   40243         * WebCoreSources.bkl: change Selection to VisibleSelection
   40244 
   40245 2009-02-06  Darin Fisher  <darin (a] chromium.org>
   40246 
   40247         Reviewed by Eric Seidel.
   40248 
   40249         https://bugs.webkit.org/show_bug.cgi?id=23809
   40250         Return CanvasRenderingContext2D instead of DOMObject in IDL to avoid V8 #ifdefs
   40251 
   40252         * bindings/scripts/CodeGeneratorJS.pm:
   40253         * dom/Document.idl:
   40254         * html/HTMLCanvasElement.idl:
   40255 
   40256 2009-02-09  Dirk Schulze  <krit (a] webkit.org>
   40257 
   40258         Reviewed by Eric Seidel.
   40259 
   40260         Transform the gradient instead of the context for most platforms and
   40261         transform the context after CGContextReplacePathWithStrokedPath for CG.
   40262 
   40263         REGRESSION: SVG gradient transformation/BoundingBox can cause ugly stroke thickness
   40264         https://bugs.webkit.org/show_bug.cgi?id=23547
   40265 
   40266         * platform/graphics/Gradient.h:
   40267         (WebCore::Gradient::setGradientSpaceTransform):
   40268         (WebCore::Gradient::gradientSpaceTransform):
   40269         * platform/graphics/cairo/GradientCairo.cpp:
   40270         (WebCore::Gradient::platformGradient):
   40271         * platform/graphics/cg/GraphicsContextCG.cpp:
   40272         (WebCore::GraphicsContext::fillPath):
   40273         (WebCore::GraphicsContext::strokePath):
   40274         (WebCore::GraphicsContext::fillRect):
   40275         * platform/graphics/qt/GraphicsContextQt.cpp:
   40276         (WebCore::GraphicsContext::fillPath):
   40277         (WebCore::GraphicsContext::strokePath):
   40278         (WebCore::GraphicsContext::fillRect):
   40279         * platform/graphics/skia/GradientSkia.cpp:
   40280         (WebCore::Gradient::platformGradient):
   40281         * svg/graphics/SVGPaintServerGradient.cpp:
   40282         (WebCore::SVGPaintServerGradient::SVGPaintServerGradient):
   40283         (WebCore::clipToTextMask):
   40284         (WebCore::SVGPaintServerGradient::setup):
   40285         (WebCore::SVGPaintServerGradient::teardown):
   40286 
   40287 2009-02-09  Sam Weinig  <sam (a] webkit.org>
   40288 
   40289         Reviewed by David Hyatt.
   40290 
   40291         Fix the highlight when inspecting inline elements.
   40292 
   40293         * inspector/InspectorController.cpp:
   40294         (WebCore::drawHighlightForBox):
   40295         (WebCore::drawHighlightForLineBoxes):
   40296         (WebCore::InspectorController::drawNodeHighlight):
   40297 
   40298 2009-02-09  Eric Seidel  <eric (a] webkit.org>
   40299 
   40300         Fix the gtk build by adding VisibleSelection and removing Selection.
   40301 
   40302         * GNUmakefile.am:
   40303 
   40304 2009-02-09  Eric Seidel  <eric (a] webkit.org>
   40305 
   40306         Reviewed by Dave Hyatt.
   40307 
   40308         Rename Selection to VisibleSelection to allow us to separate
   40309         the selections the user works with from the ones used by
   40310         the JS editing APIs.
   40311         https://bugs.webkit.org/show_bug.cgi?id=23852
   40312 
   40313         No functional changes, thus no tests.
   40314 
   40315         * WebCore.base.exp:
   40316         * WebCore.pro:
   40317         * WebCore.scons:
   40318         * WebCore.vcproj/WebCore.vcproj:
   40319         * WebCore.xcodeproj/project.pbxproj:
   40320         * dom/Element.cpp:
   40321         (WebCore::Element::updateFocusAppearance):
   40322         * editing/ApplyStyleCommand.cpp:
   40323         (WebCore::ApplyStyleCommand::updateStartEnd):
   40324         (WebCore::ApplyStyleCommand::surroundNodeRangeWithElement):
   40325         * editing/BreakBlockquoteCommand.cpp:
   40326         (WebCore::BreakBlockquoteCommand::doApply):
   40327         * editing/CompositeEditCommand.cpp:
   40328         (WebCore::CompositeEditCommand::inputText):
   40329         (WebCore::CompositeEditCommand::deleteSelection):
   40330         (WebCore::CompositeEditCommand::rebalanceWhitespace):
   40331         (WebCore::CompositeEditCommand::pushAnchorElementDown):
   40332         (WebCore::CompositeEditCommand::pushPartiallySelectedAnchorElementsDown):
   40333         (WebCore::CompositeEditCommand::moveParagraphs):
   40334         (WebCore::CompositeEditCommand::breakOutOfEmptyListItem):
   40335         (WebCore::CompositeEditCommand::breakOutOfEmptyMailBlockquotedParagraph):
   40336         * editing/CompositeEditCommand.h:
   40337         * editing/CreateLinkCommand.cpp:
   40338         (WebCore::CreateLinkCommand::doApply):
   40339         * editing/DeleteButtonController.cpp:
   40340         (WebCore::enclosingDeletableElement):
   40341         (WebCore::DeleteButtonController::respondToChangedSelection):
   40342         * editing/DeleteButtonController.h:
   40343         * editing/DeleteSelectionCommand.cpp:
   40344         (WebCore::DeleteSelectionCommand::DeleteSelectionCommand):
   40345         (WebCore::DeleteSelectionCommand::clearTransientState):
   40346         (WebCore::DeleteSelectionCommand::doApply):
   40347         * editing/DeleteSelectionCommand.h:
   40348         (WebCore::DeleteSelectionCommand::create):
   40349         * editing/EditCommand.cpp:
   40350         (WebCore::EditCommand::setStartingSelection):
   40351         (WebCore::EditCommand::setEndingSelection):
   40352         * editing/EditCommand.h:
   40353         (WebCore::EditCommand::startingSelection):
   40354         (WebCore::EditCommand::endingSelection):
   40355         * editing/Editor.cpp:
   40356         (WebCore::Editor::selectionForCommand):
   40357         (WebCore::Editor::respondToChangedSelection):
   40358         (WebCore::Editor::respondToChangedContents):
   40359         (WebCore::Editor::applyStyle):
   40360         (WebCore::Editor::applyParagraphStyle):
   40361         (WebCore::Editor::appliedEditing):
   40362         (WebCore::Editor::unappliedEditing):
   40363         (WebCore::Editor::reappliedEditing):
   40364         (WebCore::Editor::insertTextWithoutSendingTextEvent):
   40365         (WebCore::Editor::selectComposition):
   40366         (WebCore::Editor::confirmComposition):
   40367         (WebCore::Editor::advanceToNextMisspelling):
   40368         (WebCore::Editor::markMisspellingsAfterTypingToPosition):
   40369         (WebCore::markMisspellingsOrBadGrammar):
   40370         (WebCore::Editor::markMisspellings):
   40371         (WebCore::Editor::markBadGrammar):
   40372         (WebCore::Editor::rangeForPoint):
   40373         (WebCore::Editor::transpose):
   40374         * editing/Editor.h:
   40375         * editing/EditorCommand.cpp:
   40376         (WebCore::expandSelectionToGranularity):
   40377         (WebCore::executeSwapWithMark):
   40378         (WebCore::enabledVisibleSelection):
   40379         (WebCore::enabledVisibleSelectionAndMark):
   40380         (WebCore::enableCaretInEditableText):
   40381         * editing/FormatBlockCommand.cpp:
   40382         (WebCore::FormatBlockCommand::modifyRange):
   40383         (WebCore::FormatBlockCommand::doApply):
   40384         * editing/IndentOutdentCommand.cpp:
   40385         (WebCore::IndentOutdentCommand::indentRegion):
   40386         (WebCore::IndentOutdentCommand::outdentRegion):
   40387         (WebCore::IndentOutdentCommand::doApply):
   40388         * editing/InsertLineBreakCommand.cpp:
   40389         (WebCore::InsertLineBreakCommand::doApply):
   40390         * editing/InsertListCommand.cpp:
   40391         (WebCore::InsertListCommand::modifyRange):
   40392         (WebCore::InsertListCommand::doApply):
   40393         * editing/InsertParagraphSeparatorCommand.cpp:
   40394         (WebCore::InsertParagraphSeparatorCommand::doApply):
   40395         * editing/InsertTextCommand.cpp:
   40396         (WebCore::InsertTextCommand::performTrivialReplace):
   40397         (WebCore::InsertTextCommand::input):
   40398         * editing/ModifySelectionListLevel.cpp:
   40399         (WebCore::getStartEndListChildren):
   40400         (WebCore::canIncreaseListLevel):
   40401         (WebCore::canDecreaseListLevel):
   40402         * editing/MoveSelectionCommand.cpp:
   40403         (WebCore::MoveSelectionCommand::doApply):
   40404         * editing/RemoveFormatCommand.cpp:
   40405         * editing/ReplaceSelectionCommand.cpp:
   40406         (WebCore::ReplacementFragment::ReplacementFragment):
   40407         (WebCore::ReplaceSelectionCommand::doApply):
   40408         (WebCore::ReplaceSelectionCommand::completeHTMLReplacement):
   40409         * editing/Selection.cpp: Removed.
   40410         * editing/Selection.h: Removed.
   40411         * editing/SelectionController.cpp:
   40412         (WebCore::SelectionController::moveTo):
   40413         (WebCore::SelectionController::setSelection):
   40414         (WebCore::SelectionController::nodeWillBeRemoved):
   40415         (WebCore::SelectionController::clear):
   40416         (WebCore::SelectionController::setBase):
   40417         (WebCore::SelectionController::setExtent):
   40418         (WebCore::SelectionController::selectFrameElementInParentIfFullySelected):
   40419         (WebCore::SelectionController::selectAll):
   40420         (WebCore::SelectionController::setSelectedRange):
   40421         * editing/SelectionController.h:
   40422         (WebCore::SelectionController::selection):
   40423         (WebCore::SelectionController::selectionType):
   40424         * editing/TypingCommand.cpp:
   40425         (WebCore::TypingCommand::insertText):
   40426         (WebCore::TypingCommand::deleteKeyPressed):
   40427         (WebCore::TypingCommand::forwardDeleteKeyPressed):
   40428         * editing/TypingCommand.h:
   40429         * editing/VisiblePosition.cpp:
   40430         (WebCore::VisiblePosition::honorEditableBoundaryAtOrBefore):
   40431         (WebCore::VisiblePosition::honorEditableBoundaryAtOrAfter):
   40432         * editing/VisibleSelection.cpp: Added.
   40433         (WebCore::VisibleSelection::VisibleSelection):
   40434         (WebCore::VisibleSelection::selectionFromContentsOfNode):
   40435         (WebCore::VisibleSelection::setBase):
   40436         (WebCore::VisibleSelection::setExtent):
   40437         (WebCore::VisibleSelection::firstRange):
   40438         (WebCore::VisibleSelection::toNormalizedRange):
   40439         (WebCore::VisibleSelection::expandUsingGranularity):
   40440         (WebCore::makeSearchRange):
   40441         (WebCore::VisibleSelection::appendTrailingWhitespace):
   40442         (WebCore::VisibleSelection::setBaseAndExtentToDeepEquivalents):
   40443         (WebCore::VisibleSelection::setStartAndEndFromBaseAndExtentRespectingGranularity):
   40444         (WebCore::VisibleSelection::updateSelectionType):
   40445         (WebCore::VisibleSelection::validate):
   40446         (WebCore::VisibleSelection::setWithoutValidation):
   40447         (WebCore::VisibleSelection::adjustSelectionToAvoidCrossingEditingBoundaries):
   40448         (WebCore::VisibleSelection::isContentEditable):
   40449         (WebCore::VisibleSelection::isContentRichlyEditable):
   40450         (WebCore::VisibleSelection::rootEditableElement):
   40451         (WebCore::VisibleSelection::shadowTreeRootNode):
   40452         (WebCore::VisibleSelection::debugPosition):
   40453         (WebCore::VisibleSelection::formatForDebugger):
   40454         (WebCore::VisibleSelection::showTreeForThis):
   40455         (showTree):
   40456         * editing/VisibleSelection.h: Added.
   40457         (WebCore::VisibleSelection::):
   40458         (WebCore::VisibleSelection::selectionType):
   40459         (WebCore::VisibleSelection::setAffinity):
   40460         (WebCore::VisibleSelection::affinity):
   40461         (WebCore::VisibleSelection::base):
   40462         (WebCore::VisibleSelection::extent):
   40463         (WebCore::VisibleSelection::start):
   40464         (WebCore::VisibleSelection::end):
   40465         (WebCore::VisibleSelection::visibleStart):
   40466         (WebCore::VisibleSelection::visibleEnd):
   40467         (WebCore::VisibleSelection::isNone):
   40468         (WebCore::VisibleSelection::isCaret):
   40469         (WebCore::VisibleSelection::isRange):
   40470         (WebCore::VisibleSelection::isCaretOrRange):
   40471         (WebCore::VisibleSelection::isBaseFirst):
   40472         (WebCore::VisibleSelection::granularity):
   40473         (WebCore::operator==):
   40474         (WebCore::operator!=):
   40475         * editing/htmlediting.cpp:
   40476         (WebCore::selectionForParagraphIteration):
   40477         (WebCore::avoidIntersectionWithNode):
   40478         * editing/htmlediting.h:
   40479         * editing/markup.cpp:
   40480         (WebCore::createMarkup):
   40481         * html/HTMLInputElement.cpp:
   40482         (WebCore::HTMLInputElement::selection):
   40483         * html/HTMLInputElement.h:
   40484         * html/HTMLTextAreaElement.cpp:
   40485         (WebCore::HTMLTextAreaElement::selection):
   40486         * html/HTMLTextAreaElement.h:
   40487         * page/AccessibilityObject.cpp:
   40488         (WebCore::AccessibilityObject::selection):
   40489         (WebCore::AccessibilityObject::visiblePositionRangeForUnorderedPositions):
   40490         * page/AccessibilityObject.h:
   40491         * page/AccessibilityRenderObject.cpp:
   40492         (WebCore::AccessibilityRenderObject::selection):
   40493         (WebCore::AccessibilityRenderObject::setSelectedTextRange):
   40494         (WebCore::AccessibilityRenderObject::visiblePositionRangeForLine):
   40495         (WebCore::AccessibilityRenderObject::setSelectedVisiblePositionRange):
   40496         (WebCore::AccessibilityRenderObject::doAXRangeForLine):
   40497         * page/AccessibilityRenderObject.h:
   40498         * page/DOMSelection.cpp:
   40499         (WebCore::DOMSelection::anchorNode):
   40500         (WebCore::DOMSelection::anchorOffset):
   40501         (WebCore::DOMSelection::focusNode):
   40502         (WebCore::DOMSelection::focusOffset):
   40503         (WebCore::DOMSelection::collapseToEnd):
   40504         (WebCore::DOMSelection::collapseToStart):
   40505         (WebCore::DOMSelection::getRangeAt):
   40506         (WebCore::DOMSelection::addRange):
   40507         * page/DOMSelection.h:
   40508         * page/DragController.cpp:
   40509         (WebCore::DragController::tryDocumentDrag):
   40510         (WebCore::setSelectionToDragCaret):
   40511         (WebCore::DragController::concludeEditDrag):
   40512         (WebCore::prepareClipboardForImageDrag):
   40513         (WebCore::DragController::startDrag):
   40514         (WebCore::DragController::placeDragCaret):
   40515         * page/EditorClient.h:
   40516         * page/EventHandler.cpp:
   40517         (WebCore::EventHandler::selectClosestWordFromMouseEvent):
   40518         (WebCore::EventHandler::selectClosestWordOrLinkFromMouseEvent):
   40519         (WebCore::EventHandler::handleMousePressEventTripleClick):
   40520         (WebCore::EventHandler::handleMousePressEventSingleClick):
   40521         (WebCore::EventHandler::updateSelectionForMouseDrag):
   40522         (WebCore::EventHandler::handleMouseReleaseEvent):
   40523         * page/Frame.cpp:
   40524         (WebCore::Frame::mark):
   40525         (WebCore::Frame::setMark):
   40526         (WebCore::Frame::selectionLayoutChanged):
   40527         (WebCore::Frame::shouldChangeSelection):
   40528         (WebCore::Frame::shouldDeleteSelection):
   40529         (WebCore::Frame::revealSelection):
   40530         (WebCore::Frame::setSelectionFromNone):
   40531         (WebCore::Frame::findString):
   40532         (WebCore::Frame::respondToChangedSelection):
   40533         * page/Frame.h:
   40534         * page/Page.cpp:
   40535         (WebCore::Page::selection):
   40536         * page/Page.h:
   40537         * page/mac/AccessibilityObjectWrapper.mm:
   40538         (-[AccessibilityObjectWrapper textMarkerRangeForSelection]):
   40539         * rendering/RenderBlock.cpp:
   40540         (WebCore::RenderBlock::fillInlineSelectionGaps):
   40541         * rendering/RenderTextControl.cpp:
   40542         (WebCore::RenderTextControl::setSelectionRange):
   40543         (WebCore::RenderTextControl::selection):
   40544         * rendering/RenderTextControl.h:
   40545         * rendering/RenderTreeAsText.cpp:
   40546         (WebCore::writeSelection):
   40547         * rendering/RootInlineBox.cpp:
   40548         (WebCore::RootInlineBox::fillLineSelectionGap):
   40549         * svg/SVGTextContentElement.cpp:
   40550         (WebCore::SVGTextContentElement::selectSubString):
   40551 
   40552 2009-02-09  Dimitri Glazkov  <dglazkov (a] chromium.org>
   40553 
   40554         Reviewed by Dave Hyatt.
   40555 
   40556         https://bugs.webkit.org/show_bug.cgi?id=23806
   40557         Fix a regression crash where an empty src value and a "text/html" type
   40558         on an EMBED element did not finish ResourceRequest initialization due to
   40559         an early return.
   40560 
   40561         Test: fast/loader/empty-embed-src-attribute.html
   40562 
   40563         * loader/FrameLoader.cpp:
   40564         (WebCore::FrameLoader::addExtraFieldsToRequest):
   40565 
   40566 2009-02-09  Rob Buis  <rwlbuis (a] gmail.com>
   40567 
   40568         Reviewed by Eric Seidel.
   40569 
   40570         https://bugs.webkit.org/show_bug.cgi?id=23816
   40571         Clean up RenderSVGRoot.cpp
   40572 
   40573         Clean up RenderSVGRoot.cpp.
   40574 
   40575         * rendering/RenderSVGRoot.cpp:
   40576         (WebCore::RenderSVGRoot::paint):
   40577         (WebCore::RenderSVGRoot::calcViewport):
   40578 
   40579 2009-02-09  Eric Carlson  <eric.carlson (a] apple.com>
   40580 
   40581         Reviewed by Antti Koivisto
   40582 
   40583         https://bugs.webkit.org/show_bug.cgi?id=23737
   40584         Make it possible to control media element playback without knowing so many
   40585         internal implementation details.
   40586 
   40587         * html/HTMLMediaElement.cpp:
   40588         (WebCore::HTMLMediaElement::togglePlayState): New, toggle between playing and paused state.
   40589         (WebCore::HTMLMediaElement::beginScrubbing): New, pause as necessary for scrubbing mode.
   40590         (WebCore::HTMLMediaElement::endScrubbing): New, resume playback if paused for scrubbing mode.
   40591         * html/HTMLMediaElement.h:
   40592 
   40593         (WebCore::HTMLMediaElement::hasVideo): New, added so clients don't need to access MediaPlayer directly.
   40594         * html/HTMLVideoElement.h:
   40595 
   40596         (WebCore::HTMLVideoElement::hasVideo): New.
   40597 
   40598         * rendering/MediaControlElements.cpp:
   40599         (WebCore::MediaControlPlayButtonElement::defaultEventHandler): Use new media element
   40600         togglePlayState method.
   40601         (WebCore::MediaControlTimelineElement::defaultEventHandler): Tell media element when scrubbing
   40602         begins and ends so it can deal with pausing logic. Don't call setCurrentTime unless the time
   40603         will change.
   40604 
   40605         * rendering/RenderMedia.cpp:
   40606         (WebCore::RenderMedia::updateControls): Ask media element if it is able to play instead of including
   40607         internal logic here.
   40608         (WebCore::RenderMedia::updateControlVisibility): Ditto.
   40609 
   40610 2009-02-09  Eric Carlson  <eric.carlson (a] apple.com>
   40611 
   40612         Reviewed by Antti Koivisto
   40613 
   40614         Change RenderPart and RenderPartObject constructors to take a Node*
   40615         instead of a HTMLFrameOwnerElement* since that is all then need.
   40616 
   40617         * rendering/RenderPart.cpp:
   40618         (WebCore::RenderPart::RenderPart): take Node* instead of HTMLFrameOwnerElement*
   40619         * rendering/RenderPart.h:
   40620         * rendering/RenderPartObject.cpp:
   40621         (WebCore::RenderPartObject::RenderPartObject):  take Node* instead of HTMLFrameOwnerElement*
   40622         * rendering/RenderPartObject.h:
   40623 
   40624 2009-02-09  Dan Bernstein  <mitz (a] apple.com>
   40625 
   40626         - fix -Wmissing-prototypes builds
   40627 
   40628         * editing/ReplaceSelectionCommand.cpp:
   40629         (WebCore::isHeaderElement): Marked this function static.
   40630         (WebCore::haveSameTagName): Ditto.
   40631         * editing/markup.cpp:
   40632         (WebCore::isSpecialAncestorBlock): Ditto.
   40633         * platform/graphics/transforms/TransformationMatrix.cpp:
   40634         (WebCore::makeMapBetweenRects): Removed unused function.
   40635         * platform/graphics/transforms/TransformationMatrix.h: Removed unused
   40636         declaration of private member makeMapBetweenRects().
   40637 
   40638 2009-02-09  Adam Treat  <adam.treat (a] torchmobile.com>
   40639 
   40640         Reviewed by Sam Weinig.
   40641 
   40642         https://bugs.webkit.org/show_bug.cgi?id=23850
   40643         Code cleanup of HTMLParser class which was using a mix of m_* and bare
   40644         class member variable names which helps to obfuscate the code.  Also
   40645         changed a few of the static helper functions to take a const pointer type
   40646         as they should not be modifying the node.
   40647 
   40648         * html/HTMLParser.cpp:
   40649         (WebCore::HTMLParser::HTMLParser):
   40650         (WebCore::HTMLParser::~HTMLParser):
   40651         (WebCore::HTMLParser::reset):
   40652         (WebCore::HTMLParser::setCurrent):
   40653         (WebCore::HTMLParser::parseToken):
   40654         (WebCore::HTMLParser::parseDoctypeToken):
   40655         (WebCore::isTableSection):
   40656         (WebCore::isTablePart):
   40657         (WebCore::isTableRelated):
   40658         (WebCore::HTMLParser::insertNode):
   40659         (WebCore::HTMLParser::handleError):
   40660         (WebCore::HTMLParser::textCreateErrorCheck):
   40661         (WebCore::HTMLParser::commentCreateErrorCheck):
   40662         (WebCore::HTMLParser::headCreateErrorCheck):
   40663         (WebCore::HTMLParser::bodyCreateErrorCheck):
   40664         (WebCore::HTMLParser::framesetCreateErrorCheck):
   40665         (WebCore::HTMLParser::formCreateErrorCheck):
   40666         (WebCore::HTMLParser::isindexCreateErrorCheck):
   40667         (WebCore::HTMLParser::noscriptCreateErrorCheck):
   40668         (WebCore::HTMLParser::pCloserStrictCreateErrorCheck):
   40669         (WebCore::HTMLParser::mapCreateErrorCheck):
   40670         (WebCore::HTMLParser::getNode):
   40671         (WebCore::HTMLParser::allowNestedRedundantTag):
   40672         (WebCore::HTMLParser::processCloseTag):
   40673         (WebCore::HTMLParser::isInline):
   40674         (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks):
   40675         (WebCore::HTMLParser::reopenResidualStyleTags):
   40676         (WebCore::HTMLParser::pushBlock):
   40677         (WebCore::HTMLParser::popBlock):
   40678         (WebCore::HTMLParser::popOneBlockCommon):
   40679         (WebCore::HTMLParser::popOneBlock):
   40680         (WebCore::HTMLParser::moveOneBlockToStack):
   40681         (WebCore::HTMLParser::checkIfHasPElementInScope):
   40682         (WebCore::HTMLParser::popInlineBlocks):
   40683         (WebCore::HTMLParser::freeBlock):
   40684         (WebCore::HTMLParser::createHead):
   40685         (WebCore::HTMLParser::handleIsindex):
   40686         (WebCore::HTMLParser::startBody):
   40687         (WebCore::HTMLParser::finished):
   40688         (WebCore::HTMLParser::reportErrorToConsole):
   40689         * html/HTMLParser.h:
   40690 
   40691 2009-02-09  Alexey Proskuryakov  <ap (a] webkit.org>
   40692 
   40693         Applying review comment on a second location.
   40694 
   40695         * rendering/RenderText.cpp: (WebCore::RenderText::nextOffset):
   40696         Use "ifdef BUILDING_ON_TIGER".
   40697 
   40698 2009-02-09  Alexey Proskuryakov  <ap (a] webkit.org>
   40699 
   40700         Reviewed by Darin Adler.
   40701 
   40702         https://bugs.webkit.org/show_bug.cgi?id=23845
   40703         editing/deleting/backward-deletion.html fails on Tiger
   40704 
   40705         * rendering/RenderText.cpp:
   40706         (WebCore::RenderText::previousOffset):
   40707         (WebCore::RenderText::nextOffset):
   40708         Work around a bug in older ICU versions by hardcoding narrow voiced marks.
   40709 
   40710 2009-02-09  Adam Roben  <aroben (a] apple.com>
   40711 
   40712         Windows build fix
   40713 
   40714         * WebCore.vcproj/WebCore.vcproj: Fix the XML syntax.
   40715 
   40716 2009-02-09  Jian Li  <jianli (a] chromium.org>
   40717 
   40718         Reviewed by Alexey Proskuryakov.
   40719 
   40720         Make WorkerMessagingProxy derive from two base proxy classes.
   40721         https://bugs.webkit.org/show_bug.cgi?id=23777
   40722 
   40723         * bindings/js/WorkerScriptController.cpp:
   40724         (WebCore::WorkerScriptController::evaluate):
   40725         * dom/Worker.cpp:
   40726         (WebCore::Worker::terminate):
   40727         (WebCore::Worker::hasPendingActivity):
   40728         * dom/WorkerContext.cpp:
   40729         (WebCore::WorkerContext::reportException):
   40730         * dom/WorkerMessagingProxy.cpp:
   40731         (WebCore::WorkerThreadActivityReportTask::performTask):
   40732         (WebCore::WorkerMessagingProxy::postExceptionToWorkerObject):
   40733         (WebCore::WorkerMessagingProxy::workerObjectDestroyed):
   40734         (WebCore::WorkerMessagingProxy::terminateWorkerContext):
   40735         (WebCore::WorkerMessagingProxy::confirmWorkerThreadMessage):
   40736         (WebCore::WorkerMessagingProxy::reportPendingActivity):
   40737         (WebCore::WorkerMessagingProxy::reportPendingActivityInternal):
   40738         (WebCore::WorkerMessagingProxy::hasPendingActivity):
   40739         * dom/WorkerMessagingProxy.h:
   40740 
   40741 2009-02-09  Jian Li  <jianli (a] chromium.org>
   40742 
   40743         Reviewed by Alexey Proskuryakov.
   40744 
   40745         Introduce 2 base classes to split WorkerMessagingProxy.
   40746         https://bugs.webkit.org/show_bug.cgi?id=23776
   40747 
   40748         * GNUmakefile.am:
   40749         * WebCore.vcproj/WebCore.vcproj:
   40750         * WebCore.xcodeproj/project.pbxproj:
   40751         * dom/WorkerContextProxy.h: Added.
   40752         (WebCore::WorkerContextProxy::~WorkerContextProxy):
   40753         * dom/WorkerObjectProxy.h: Added.
   40754         (WebCore::WorkerObjectProxy::~WorkerObjectProxy):
   40755 
   40756 2009-02-08  David Hyatt  <hyatt (a] apple.com>
   40757 
   40758         Fix for https://bugs.webkit.org/show_bug.cgi?id=23839
   40759 
   40760         Make sure that generated content is properly handled when content is moved from a block run-in
   40761         to an inline run-in.
   40762 
   40763         Reviewed by Sam Weinig
   40764 
   40765         Added fast/runin/002.html
   40766 
   40767         * rendering/RenderBlock.cpp:
   40768         (WebCore::RenderBlock::handleRunInChild):
   40769 
   40770 2009-02-08  David Hyatt  <hyatt (a] apple.com>
   40771 
   40772         Fix for https://bugs.webkit.org/show_bug.cgi?id=23832, crash when inspecting an image using the
   40773         Web inspector.
   40774 
   40775         Reviewed by Mark Rowe
   40776 
   40777         * rendering/RenderObject.cpp:
   40778         (WebCore::RenderObject::absoluteRectsForRange):
   40779         (WebCore::RenderObject::absoluteQuadsForRange):
   40780 
   40781 2009-02-08  Dirk Schulze  <krit (a] webkit.org>
   40782 
   40783         Unreviewed Qt build fix.
   40784 
   40785         TransformationMatrix changes in r40761 broke QT build.
   40786 
   40787         * platform/graphics/qt/GraphicsContextQt.cpp:
   40788         (WebCore::GraphicsContext::getCTM):
   40789         (WebCore::GraphicsContext::scale):
   40790 
   40791 2009-02-08  Dirk Schulze  <krit (a] webkit.org>
   40792 
   40793         Reviewed by Holger Freyther.
   40794 
   40795         This is a follow up of the last commit. It cleans up TransformationMatrix.h
   40796         and convert to a series of #elif.
   40797 
   40798         * platform/graphics/transforms/TransformationMatrix.h:
   40799 
   40800 2009-02-08  Gustavo Noronha Silva  <gns (a] gnome.org>
   40801 
   40802         Reviewed by Simon Fraser.
   40803 
   40804         [CAIRO] build broken by TransformationMatrix rework
   40805         https://bugs.webkit.org/show_bug.cgi?id=23831
   40806 
   40807         Fixed cairo build after the TransformationMatrix rework done in
   40808         revision 40761.
   40809 
   40810         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   40811         (WebCore::GraphicsContext::getCTM):
   40812         (WebCore::GraphicsContext::concatCTM):
   40813         * platform/graphics/cairo/TransformationMatrixCairo.cpp:
   40814         (WebCore::TransformationMatrix::operator cairo_matrix_t):
   40815         * platform/graphics/transforms/TransformationMatrix.h:
   40816 
   40817 2009-02-07  David Hyatt  <hyatt (a] apple.com>
   40818 
   40819         Shrink the size of all InlineTextBoxes and all InlineBoxes (for images and replaced elements) by four bytes.
   40820         Change the overflow variable on InlineFlowBoxes into a short and move the bits for InlineFlowBoxes out of the
   40821         base InlineBox class.  Since the number of bits in the base class was 35, shoving the 3 bits for InlineFlowBoxes
   40822         back down into that class (into the 16 bits exposed by making the overflow variable into a short), all text
   40823         boxes and image boxes shrink by 4 bytes.
   40824 
   40825         Reviewed by Anders
   40826 
   40827         * rendering/InlineBox.h:
   40828         (WebCore::InlineBox::InlineBox):
   40829         * rendering/InlineFlowBox.cpp:
   40830         (WebCore::InlineFlowBox::placeBoxesHorizontally):
   40831         (WebCore::InlineFlowBox::computeLogicalBoxHeights):
   40832         (WebCore::InlineFlowBox::placeBoxesVertically):
   40833         * rendering/InlineFlowBox.h:
   40834         (WebCore::InlineFlowBox::InlineFlowBox):
   40835         (WebCore::InlineFlowBox::maxHorizontalVisualOverflow):
   40836         (WebCore::InlineFlowBox::hasTextChildren):
   40837 
   40838 2009-02-07  Dean Jackson  <dino (a] apple.com>
   40839 
   40840         Attempted build fix for Qt. Not reviewed.
   40841 
   40842         TransformationMatrix changes in r40761 broke non-Apple builds.
   40843 
   40844         * platform/graphics/qt/TransformationMatrixQt.cpp:
   40845         (WebCore::TransformationMatrix::operator QMatrix):
   40846         * platform/graphics/transforms/TransformationMatrix.h:
   40847 
   40848 2009-02-07  David Hyatt  <hyatt (a] apple.com>
   40849 
   40850         This patch changes the base class of RenderInline from RenderBox to RenderBoxModelObject.  This shift
   40851         in base class knocks 32 bytes off the size of every RenderInline.  All of the necessary functions
   40852         for both RenderInline and RenderBox have either been pulled up into RenderBoxModelObject for sharing
   40853         or split into two functions (one in each derived class).
   40854 
   40855         Reviewed by Anders and Antti
   40856 
   40857         * dom/Element.cpp:
   40858         (WebCore::Element::offsetLeft):
   40859         (WebCore::Element::offsetTop):
   40860         (WebCore::Element::offsetWidth):
   40861         (WebCore::Element::offsetHeight):
   40862         (WebCore::Element::offsetParent):
   40863         (WebCore::Element::clientWidth):
   40864         (WebCore::Element::clientHeight):
   40865         (WebCore::Element::scrollWidth):
   40866         (WebCore::Element::scrollHeight):
   40867         * dom/Node.cpp:
   40868         (WebCore::Node::renderBox):
   40869         (WebCore::Node::renderBoxModelObject):
   40870         * dom/Node.h:
   40871         * html/HTMLAnchorElement.cpp:
   40872         (WebCore::HTMLAnchorElement::isKeyboardFocusable):
   40873         * rendering/InlineBox.h:
   40874         (WebCore::InlineBox::boxModelObject):
   40875         * rendering/InlineFlowBox.cpp:
   40876         (WebCore::InlineFlowBox::marginLeft):
   40877         (WebCore::InlineFlowBox::marginRight):
   40878         (WebCore::InlineFlowBox::placeBoxesHorizontally):
   40879         (WebCore::InlineFlowBox::computeLogicalBoxHeights):
   40880         (WebCore::InlineFlowBox::placeBoxesVertically):
   40881         (WebCore::InlineFlowBox::shrinkBoxesWithNoTextChildren):
   40882         * rendering/InlineFlowBox.h:
   40883         (WebCore::InlineFlowBox::borderLeft):
   40884         (WebCore::InlineFlowBox::borderRight):
   40885         (WebCore::InlineFlowBox::paddingLeft):
   40886         (WebCore::InlineFlowBox::paddingRight):
   40887         * rendering/RenderBlock.cpp:
   40888         (WebCore::getBorderPaddingMargin):
   40889         (WebCore::RenderBlock::calcInlinePrefWidths):
   40890         * rendering/RenderBox.cpp:
   40891         (WebCore::RenderBox::imageChanged):
   40892         (WebCore::RenderBox::calcReplacedWidthUsing):
   40893         (WebCore::RenderBox::calcReplacedHeightUsing):
   40894         (WebCore::RenderBox::containingBlockWidthForPositioned):
   40895         (WebCore::RenderBox::containingBlockHeightForPositioned):
   40896         (WebCore::RenderBox::calcAbsoluteHorizontal):
   40897         (WebCore::RenderBox::calcAbsoluteHorizontalValues):
   40898         (WebCore::RenderBox::calcAbsoluteVertical):
   40899         (WebCore::RenderBox::calcAbsoluteVerticalValues):
   40900         (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
   40901         (WebCore::RenderBox::calcAbsoluteVerticalReplaced):
   40902         (WebCore::RenderBox::positionForCoordinates):
   40903         * rendering/RenderBox.h:
   40904         (WebCore::RenderBox::borderBoundingBox):
   40905         (WebCore::RenderBox::offsetHeight):
   40906         (WebCore::RenderBox::marginTop):
   40907         (WebCore::RenderBox::marginBottom):
   40908         (WebCore::RenderBox::marginLeft):
   40909         (WebCore::RenderBox::marginRight):
   40910         * rendering/RenderBoxModelObject.cpp:
   40911         (WebCore::RenderBoxModelObject::offsetLeft):
   40912         (WebCore::RenderBoxModelObject::offsetTop):
   40913         (WebCore::RenderBoxModelObject::paddingTop):
   40914         (WebCore::RenderBoxModelObject::paddingBottom):
   40915         (WebCore::RenderBoxModelObject::paddingLeft):
   40916         (WebCore::RenderBoxModelObject::paddingRight):
   40917         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
   40918         (WebCore::RenderBoxModelObject::calculateBackgroundSize):
   40919         (WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry):
   40920         * rendering/RenderBoxModelObject.h:
   40921         (WebCore::RenderBoxModelObject::borderTop):
   40922         (WebCore::RenderBoxModelObject::borderBottom):
   40923         (WebCore::RenderBoxModelObject::borderLeft):
   40924         (WebCore::RenderBoxModelObject::borderRight):
   40925         (WebCore::RenderBoxModelObject::hasHorizontalBordersPaddingOrMargin):
   40926         (WebCore::RenderBoxModelObject::hasHorizontalBordersOrPadding):
   40927         (WebCore::RenderBoxModelObject::childBecameNonInline):
   40928         (WebCore::RenderBoxModelObject::isBoxModelObject):
   40929         * rendering/RenderInline.cpp:
   40930         (WebCore::RenderInline::RenderInline):
   40931         (WebCore::RenderInline::destroy):
   40932         (WebCore::RenderInline::styleDidChange):
   40933         (WebCore::nextContinuation):
   40934         (WebCore::RenderInline::continuationBefore):
   40935         (WebCore::RenderInline::addChildIgnoringContinuation):
   40936         (WebCore::RenderInline::splitInlines):
   40937         (WebCore::RenderInline::splitFlow):
   40938         (WebCore::RenderInline::addChildToContinuation):
   40939         (WebCore::RenderInline::absoluteRects):
   40940         (WebCore::RenderInline::offsetLeft):
   40941         (WebCore::RenderInline::offsetTop):
   40942         (WebCore::RenderInline::marginLeft):
   40943         (WebCore::RenderInline::marginRight):
   40944         (WebCore::RenderInline::positionForCoordinates):
   40945         (WebCore::RenderInline::clippedOverflowRectForRepaint):
   40946         (WebCore::RenderInline::rectWithOutlineForRepaint):
   40947         (WebCore::RenderInline::computeRectForRepaint):
   40948         (WebCore::RenderInline::updateDragState):
   40949         (WebCore::RenderInline::childBecameNonInline):
   40950         (WebCore::RenderInline::updateHitTestResult):
   40951         (WebCore::RenderInline::imageChanged):
   40952         (WebCore::RenderInline::addFocusRingRects):
   40953         * rendering/RenderInline.h:
   40954         (WebCore::RenderInline::marginTop):
   40955         (WebCore::RenderInline::marginBottom):
   40956         (WebCore::RenderInline::continuation):
   40957         (WebCore::RenderInline::setContinuation):
   40958         * rendering/RenderLineBoxList.cpp:
   40959         (WebCore::RenderLineBoxList::paint):
   40960         (WebCore::RenderLineBoxList::hitTest):
   40961         * rendering/RenderLineBoxList.h:
   40962         * rendering/RenderObject.cpp:
   40963         (WebCore::addLayers):
   40964         (WebCore::RenderObject::removeLayers):
   40965         (WebCore::RenderObject::moveLayers):
   40966         (WebCore::RenderObject::findNextLayer):
   40967         (WebCore::RenderObject::enclosingLayer):
   40968         (WebCore::RenderObject::enclosingCompositingLayer):
   40969         (WebCore::RenderObject::setLayerNeedsFullRepaint):
   40970         (WebCore::RenderObject::handleDynamicFloatPositionChange):
   40971         (WebCore::RenderObject::destroy):
   40972         (WebCore::RenderObject::offsetParent):
   40973         * rendering/RenderObject.h:
   40974         (WebCore::RenderObject::isInlineContinuation):
   40975         * rendering/RenderSVGTSpan.cpp:
   40976         (WebCore::RenderSVGTSpan::absoluteRects):
   40977         (WebCore::RenderSVGTSpan::absoluteQuads):
   40978         * rendering/RenderSVGTextPath.cpp:
   40979         (WebCore::RenderSVGTextPath::absoluteRects):
   40980         (WebCore::RenderSVGTextPath::absoluteQuads):
   40981         * rendering/RenderTreeAsText.cpp:
   40982         (WebCore::operator<<):
   40983         * rendering/RenderView.cpp:
   40984         (WebCore::RenderView::setBestTruncatedAt):
   40985         * rendering/RenderView.h:
   40986         * rendering/bidi.cpp:
   40987         (WebCore::getBorderPaddingMargin):
   40988         (WebCore::inlineWidth):
   40989         (WebCore::RenderBlock::layoutInlineChildren):
   40990         (WebCore::inlineFlowRequiresLineBox):
   40991         (WebCore::requiresLineBox):
   40992         (WebCore::RenderBlock::findNextLineBreak):
   40993         * wml/WMLAElement.cpp:
   40994         (WebCore::WMLAElement::isKeyboardFocusable):
   40995 
   40996 2009-02-07  Yael Aharon <yael.aharon (a] nokia.com>
   40997 
   40998         Reviewed by Timothy Hatcher <timothy (a] hatcher.name>
   40999 
   41000         Partial fix for <https://bugs.webkit.org/show_bug.cgi?id=21051>
   41001         Include localStorage and sessionStorage in DatabasesPanel.
   41002 
   41003         * WebCore.vcproj/WebCore.vcproj:
   41004         * inspector/InspectorController.cpp:
   41005         (WebCore::InspectorDOMStorageResource::create):
   41006         (WebCore::InspectorDOMStorageResource::setScriptObject):
   41007         (WebCore::InspectorDOMStorageResource::InspectorDOMStorageResource):
   41008         (WebCore::InspectorController::populateScriptObjects):
   41009         (WebCore::InspectorController::addDOMStorageScriptResource):
   41010         (WebCore::InspectorController::removeDOMStorageScriptResource):
   41011         (WebCore::InspectorController::resetScriptObjects):
   41012         (WebCore::InspectorController::didCommitLoad):
   41013         (WebCore::InspectorController::didUseDOMStorage):
   41014         * inspector/InspectorController.h:
   41015         * inspector/front-end/DOMStorage.js: Added.
   41016         (WebInspector.DOMStorage):
   41017         (WebInspector.DOMStorage.prototype.get domStorage):
   41018         (WebInspector.DOMStorage.prototype.set domStorage):
   41019         (WebInspector.DOMStorage.prototype.get domain):
   41020         (WebInspector.DOMStorage.prototype.set domain):
   41021         (WebInspector.DOMStorage.prototype.get isLocalStorage):
   41022         (WebInspector.DOMStorage.prototype.set isLocalStorage):
   41023         * inspector/front-end/DOMStorageItemsView.js: Added.
   41024         (WebInspector.DOMStorageItemsView):
   41025         (WebInspector.DOMStorageItemsView.prototype.show):
   41026         (WebInspector.DOMStorageItemsView.prototype.update):
   41027         * inspector/front-end/DatabaseQueryView.js:
   41028         (WebInspector.DatabaseQueryView):
   41029         * inspector/front-end/DatabaseTableView.js:
   41030         (WebInspector.DatabaseTableView):
   41031         (WebInspector.DatabaseTableView.prototype._queryFinished):
   41032         (WebInspector.DatabaseTableView.prototype._queryError):
   41033         * inspector/front-end/DatabasesPanel.js:
   41034         (WebInspector.DatabasesPanel):
   41035         (WebInspector.DatabasesPanel.prototype.reset):
   41036         (WebInspector.DatabasesPanel.prototype.addDatabase):
   41037         (WebInspector.DatabasesPanel.prototype.addDOMStorage):
   41038         (WebInspector.DatabasesPanel.prototype.showDatabase):
   41039         (WebInspector.DatabasesPanel.prototype.showDOMStorage):
   41040         (WebInspector.DatabasesPanel.prototype.closeVisibleView):
   41041         (WebInspector.DatabasesPanel.prototype.updateDatabaseTables):
   41042         (WebInspector.DatabasesPanel.prototype.dataGridForDOMStorage):
   41043         (WebInspector.DatabasesPanel.prototype._updateSidebarWidth):
   41044         (WebInspector.DOMStorageSidebarTreeElement):
   41045         (WebInspector.DOMStorageSidebarTreeElement.prototype.onselect):
   41046         (WebInspector.DOMStorageSidebarTreeElement.prototype.get mainTitle):
   41047         (WebInspector.DOMStorageSidebarTreeElement.prototype.set mainTitle):
   41048         (WebInspector.DOMStorageSidebarTreeElement.prototype.get subtitle):
   41049         (WebInspector.DOMStorageSidebarTreeElement.prototype.set subtitle):
   41050         * inspector/front-end/Images/domStorage.png: Added.
   41051         * inspector/front-end/WebKit.qrc:
   41052         * inspector/front-end/inspector.css:
   41053         * inspector/front-end/inspector.html:
   41054         * inspector/front-end/inspector.js:
   41055         (WebInspector.addDOMStorage):
   41056         * page/DOMWindow.cpp:
   41057         (WebCore::DOMWindow::sessionStorage):
   41058         (WebCore::DOMWindow::localStorage):
   41059 
   41060 2009-02-07  Feng Qian <feng (a] chromium.org>
   41061 
   41062         Reviewed by Eric Seidel <eric (a] webkit.org>
   41063 
   41064         Put #if ENABLE(PAN_SCROLLING) around EventHandler::setPanScrollCursor.
   41065         https://bugs.webkit.org/show_bug.cgi?id=23574
   41066 
   41067         * page/EventHandler.cpp:
   41068         * page/EventHandler.h:
   41069 
   41070 2009-02-07  Zalan Bujtas  <zbujtas (a] gmail.com>
   41071 
   41072         Reviewed by Rob Buis <rwlbuis (a] gmail.com>
   41073 
   41074         https://bugs.webkit.org/show_bug.cgi?id=23788
   41075         call style()->isOriginalDisplayInlineType() on RenderBox instead of RenderObject.
   41076 
   41077         * rendering/bidi.cpp:
   41078         (WebCore::RenderBlock::skipLeadingWhitespace):
   41079 
   41080 2009-02-07  Rob Buis  <rwlbuis (a] gmail.com>
   41081 
   41082         Reviewed by Darin.
   41083 
   41084         https://bugs.webkit.org/show_bug.cgi?id=3248
   41085         Bug 3248: Mouse events on OPTION element seem to be ignored
   41086 
   41087         Support mouse events on options in a select when it forms a list box.
   41088 
   41089         Test: fast/forms/option-mouseevents.html
   41090 
   41091         * html/HTMLSelectElement.cpp: Convert to coords relative to the list box.
   41092         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
   41093         * rendering/RenderListBox.cpp: Handle hit testing for option elements.
   41094         (WebCore::RenderListBox::nodeAtPoint):
   41095         * rendering/RenderListBox.h:
   41096 
   41097 2009-02-07  Adam Treat  <adam.treat (a] torchmobile.com>
   41098 
   41099         Prospective build fix for all non-Apple platforms.
   41100 
   41101         * platform/graphics/transforms/TransformationMatrix.h:
   41102 
   41103 2009-02-06  Chris Marrin  <cmarrin (a] apple.com>
   41104 
   41105         Reviewed by Simon Fraser.
   41106 
   41107         https://bugs.webkit.org/show_bug.cgi?id=6868
   41108 
   41109         I have not only made TransformationMatrix platform independent
   41110         but I've also added 3D methods, which will be used when I update
   41111         WebKitCSSMatrix to include 3D (see https://bugs.webkit.org/show_bug.cgi?id=23689).
   41112         I am now keeping a full 4x4 matrix in TransformationMatrix. I'm also doing all
   41113         the math as doubles rather than floats. This makes a TransformationMatrix
   41114         go from 24 bytes to 128 bytes, but I don't think this class is used enough to
   41115         make this overhead will be significant.
   41116 
   41117         The change from floats to doubles has caused some differences in rounding and
   41118         display (sometimes things that displayed as -0.0 now display as 0.0 or vice versa),
   41119         so I've had to change some LayoutTest results in the SVG tests.
   41120 
   41121         * platform/graphics/FloatPoint.cpp:
   41122         (WebCore::FloatPoint::matrixTransform):
   41123         * platform/graphics/cg/GraphicsContextCG.cpp:
   41124         (WebCore::GraphicsContext::getCTM):
   41125         * platform/graphics/cg/TransformationMatrixCG.cpp:
   41126         (WebCore::TransformationMatrix::operator CGAffineTransform):
   41127         * platform/graphics/transforms/TransformationMatrix.cpp:
   41128         (WebCore::determinant2x2):
   41129         (WebCore::determinant3x3):
   41130         (WebCore::determinant4x4):
   41131         (WebCore::adjoint):
   41132         (WebCore::inverse):
   41133         (WebCore::transposeMatrix4):
   41134         (WebCore::v4MulPointByMatrix):
   41135         (WebCore::v3Length):
   41136         (WebCore::v3Scale):
   41137         (WebCore::v3Dot):
   41138         (WebCore::v3Combine):
   41139         (WebCore::v3Cross):
   41140         (WebCore::decompose):
   41141         (WebCore::slerp):
   41142         (WebCore::TransformationMatrix::scale):
   41143         (WebCore::TransformationMatrix::rotateFromVector):
   41144         (WebCore::TransformationMatrix::flipX):
   41145         (WebCore::TransformationMatrix::flipY):
   41146         (WebCore::makeMapBetweenRects):
   41147         (WebCore::TransformationMatrix::projectPoint):
   41148         (WebCore::TransformationMatrix::mapPoint):
   41149         (WebCore::TransformationMatrix::mapRect):
   41150         (WebCore::TransformationMatrix::mapQuad):
   41151         (WebCore::TransformationMatrix::scale3d):
   41152         (WebCore::TransformationMatrix::rotate3d):
   41153         (WebCore::TransformationMatrix::translate):
   41154         (WebCore::TransformationMatrix::translate3d):
   41155         (WebCore::TransformationMatrix::skew):
   41156         (WebCore::TransformationMatrix::applyPerspective):
   41157         (WebCore::TransformationMatrix::multLeft):
   41158         (WebCore::TransformationMatrix::multVecMatrix):
   41159         (WebCore::TransformationMatrix::isInvertible):
   41160         (WebCore::TransformationMatrix::inverse):
   41161         (WebCore::blendFloat):
   41162         (WebCore::TransformationMatrix::blend):
   41163         (WebCore::TransformationMatrix::decompose):
   41164         (WebCore::TransformationMatrix::recompose):
   41165         * platform/graphics/transforms/TransformationMatrix.h:
   41166         (WebCore::TransformationMatrix::TransformationMatrix):
   41167         (WebCore::TransformationMatrix::setMatrix):
   41168         (WebCore::TransformationMatrix::operator =):
   41169         (WebCore::TransformationMatrix::makeIdentity):
   41170         (WebCore::TransformationMatrix::isIdentity):
   41171         (WebCore::TransformationMatrix::map):
   41172         (WebCore::TransformationMatrix::m11):
   41173         (WebCore::TransformationMatrix::setM11):
   41174         (WebCore::TransformationMatrix::m12):
   41175         (WebCore::TransformationMatrix::setM12):
   41176         (WebCore::TransformationMatrix::m13):
   41177         (WebCore::TransformationMatrix::setM13):
   41178         (WebCore::TransformationMatrix::m14):
   41179         (WebCore::TransformationMatrix::setM14):
   41180         (WebCore::TransformationMatrix::m21):
   41181         (WebCore::TransformationMatrix::setM21):
   41182         (WebCore::TransformationMatrix::m22):
   41183         (WebCore::TransformationMatrix::setM22):
   41184         (WebCore::TransformationMatrix::m23):
   41185         (WebCore::TransformationMatrix::setM23):
   41186         (WebCore::TransformationMatrix::m24):
   41187         (WebCore::TransformationMatrix::setM24):
   41188         (WebCore::TransformationMatrix::m31):
   41189         (WebCore::TransformationMatrix::setM31):
   41190         (WebCore::TransformationMatrix::m32):
   41191         (WebCore::TransformationMatrix::setM32):
   41192         (WebCore::TransformationMatrix::m33):
   41193         (WebCore::TransformationMatrix::setM33):
   41194         (WebCore::TransformationMatrix::m34):
   41195         (WebCore::TransformationMatrix::setM34):
   41196         (WebCore::TransformationMatrix::m41):
   41197         (WebCore::TransformationMatrix::setM41):
   41198         (WebCore::TransformationMatrix::m42):
   41199         (WebCore::TransformationMatrix::setM42):
   41200         (WebCore::TransformationMatrix::m43):
   41201         (WebCore::TransformationMatrix::setM43):
   41202         (WebCore::TransformationMatrix::m44):
   41203         (WebCore::TransformationMatrix::setM44):
   41204         (WebCore::TransformationMatrix::a):
   41205         (WebCore::TransformationMatrix::setA):
   41206         (WebCore::TransformationMatrix::b):
   41207         (WebCore::TransformationMatrix::setB):
   41208         (WebCore::TransformationMatrix::c):
   41209         (WebCore::TransformationMatrix::setC):
   41210         (WebCore::TransformationMatrix::d):
   41211         (WebCore::TransformationMatrix::setD):
   41212         (WebCore::TransformationMatrix::e):
   41213         (WebCore::TransformationMatrix::setE):
   41214         (WebCore::TransformationMatrix::f):
   41215         (WebCore::TransformationMatrix::setF):
   41216         (WebCore::TransformationMatrix::multiply):
   41217         (WebCore::TransformationMatrix::rotate):
   41218         (WebCore::TransformationMatrix::skewX):
   41219         (WebCore::TransformationMatrix::skewY):
   41220         (WebCore::TransformationMatrix::hasPerspective):
   41221         (WebCore::TransformationMatrix::):
   41222         (WebCore::TransformationMatrix::isAffine):
   41223         (WebCore::TransformationMatrix::operator==):
   41224         (WebCore::TransformationMatrix::operator*=):
   41225         (WebCore::TransformationMatrix::operator*):
   41226         * rendering/RenderForeignObject.cpp:
   41227         (WebCore::RenderForeignObject::nodeAtPoint):
   41228         * rendering/RenderLayer.cpp:
   41229         (WebCore::RenderLayer::updateTransform):
   41230         * rendering/RenderPath.cpp:
   41231         (WebCore::RenderPath::mapAbsolutePointToLocal):
   41232         * rendering/RenderSVGImage.cpp:
   41233         (WebCore::RenderSVGImage::nodeAtPoint):
   41234         * rendering/RenderSVGRoot.cpp:
   41235         (WebCore::RenderSVGRoot::nodeAtPoint):
   41236         * rendering/RenderSVGText.cpp:
   41237         (WebCore::RenderSVGText::nodeAtPoint):
   41238         * rendering/RenderSVGViewportContainer.cpp:
   41239         (WebCore::RenderSVGViewportContainer::nodeAtPoint):
   41240         * svg/SVGAnimateMotionElement.cpp:
   41241         (WebCore::SVGAnimateMotionElement::resetToBaseValue):
   41242         (WebCore::SVGAnimateMotionElement::calculateAnimatedValue):
   41243         * svg/SVGSVGElement.cpp:
   41244         (WebCore::SVGSVGElement::viewport):
   41245         * svg/SVGTransform.cpp:
   41246         (SVGTransform::setTranslate):
   41247         (SVGTransform::setScale):
   41248         (SVGTransform::setRotate):
   41249         (SVGTransform::setSkewX):
   41250         (SVGTransform::setSkewY):
   41251         * svg/graphics/SVGResourceMarker.cpp:
   41252         (WebCore::SVGResourceMarker::draw):
   41253 
   41254 2009-02-07  Simon Hausmann  <simon.hausmann (a] nokia.com>
   41255 
   41256         Reviewed by Tor Arne Vestb.
   41257 
   41258         For the Qt port implement Image::drawPattern via
   41259         BitmapImage::drawPatterns' implementation and implement
   41260         Gradient::fill.
   41261 
   41262         This partially fixes rendering of generated gradient content.
   41263 
   41264         * platform/graphics/BitmapImage.h: Remove the drawPattern
   41265         implementation for the Qt port in BitmapImage, it's been moved to
   41266         Image::drawPattern.
   41267         * platform/graphics/qt/GradientQt.cpp:
   41268         (WebCore::Gradient::fill): Implement using a simple fillRect.
   41269         * platform/graphics/qt/ImageQt.cpp:
   41270         (WebCore::Image::drawPattern): Moved implementation from
   41271         BitmapImage::drawPattern.
   41272 
   41273 2009-02-06  Eric Seidel  <eric (a] webkit.org>
   41274 
   41275         Reviewed by Justin Garcia.
   41276 
   41277         DOMSelection.getRangeAt() returns a different range than the selection
   41278         https://bugs.webkit.org/show_bug.cgi?id=23601
   41279 
   41280         Rename toRange to toNormalizedRange and add new firstRange which returns an unmodified range
   41281 
   41282         Test: fast/dom/Selection/getRangeAt.html
   41283 
   41284         * WebCore.base.exp:
   41285         * dom/InputElement.cpp:
   41286         (WebCore::InputElement::handleBeforeTextInsertedEvent):
   41287         * editing/DeleteButtonController.cpp:
   41288         (WebCore::enclosingDeletableElement):
   41289         * editing/Editor.cpp:
   41290         (WebCore::Editor::selectedRange):
   41291         (WebCore::Editor::fontForSelection):
   41292         (WebCore::Editor::applyStyleToSelection):
   41293         (WebCore::Editor::applyParagraphStyleToSelection):
   41294         (WebCore::Editor::insertTextWithoutSendingTextEvent):
   41295         (WebCore::Editor::insertLineBreak):
   41296         (WebCore::Editor::insertParagraphSeparator):
   41297         (WebCore::Editor::ignoreSpelling):
   41298         (WebCore::Editor::isSelectionUngrammatical):
   41299         (WebCore::Editor::guessesForUngrammaticalSelection):
   41300         (WebCore::markMisspellingsOrBadGrammar):
   41301         (WebCore::Editor::rangeForPoint):
   41302         * editing/EditorCommand.cpp:
   41303         (WebCore::expandSelectionToGranularity):
   41304         (WebCore::executeDeleteToMark):
   41305         (WebCore::executeSelectToMark):
   41306         * editing/RemoveFormatCommand.cpp:
   41307         (WebCore::RemoveFormatCommand::doApply):
   41308         * editing/ReplaceSelectionCommand.cpp:
   41309         (WebCore::ReplacementFragment::ReplacementFragment):
   41310         * editing/Selection.cpp:
   41311         (WebCore::Selection::firstRange):
   41312         (WebCore::Selection::toNormalizedRange):
   41313         * editing/Selection.h:
   41314         * editing/SelectionController.h:
   41315         (WebCore::SelectionController::toNormalizedRange):
   41316         * editing/TypingCommand.cpp:
   41317         (WebCore::TypingCommand::deleteKeyPressed):
   41318         (WebCore::TypingCommand::forwardDeleteKeyPressed):
   41319         * editing/markup.cpp:
   41320         (WebCore::createMarkup):
   41321         * loader/archive/cf/LegacyWebArchive.cpp:
   41322         (WebCore::LegacyWebArchive::createFromSelection):
   41323         * page/AccessibilityRenderObject.cpp:
   41324         (WebCore::AccessibilityRenderObject::ariaSelectedTextDOMRange):
   41325         * page/ContextMenuController.cpp:
   41326         (WebCore::ContextMenuController::contextMenuItemSelected):
   41327         * page/DOMSelection.cpp:
   41328         (WebCore::DOMSelection::getRangeAt):
   41329         (WebCore::DOMSelection::addRange):
   41330         (WebCore::DOMSelection::deleteFromDocument):
   41331         (WebCore::DOMSelection::containsNode):
   41332         (WebCore::DOMSelection::toString):
   41333         * page/DragController.cpp:
   41334         (WebCore::setSelectionToDragCaret):
   41335         (WebCore::DragController::concludeEditDrag):
   41336         (WebCore::DragController::startDrag):
   41337         * page/EventHandler.cpp:
   41338         (WebCore::EventHandler::dispatchMouseEvent):
   41339         * page/Frame.cpp:
   41340         (WebCore::Frame::selectedText):
   41341         (WebCore::Frame::shouldChangeSelection):
   41342         (WebCore::Frame::shouldDeleteSelection):
   41343         (WebCore::Frame::selectionComputedStyle):
   41344         (WebCore::Frame::selectionTextRects):
   41345         (WebCore::Frame::findString):
   41346         (WebCore::Frame::respondToChangedSelection):
   41347         * platform/ContextMenu.cpp:
   41348         (WebCore::selectionContainsPossibleWord):
   41349 
   41350 2009-02-06  Brady Eidson  <beidson (a] apple.com>
   41351 
   41352         Reviewed by Dan Bernstein
   41353 
   41354         <rdar://problem/6563402> - Workaround a case where ::didReceiveData() might be called on a ResourceHandleClient
   41355         before ::didReceiveResponse().
   41356 
   41357         No layout test, as we don't have a concrete way to reproduce these conditions.  To that effect, I've added an ASSERT
   41358         to catch the conditions before the workaround takes effect in case any WebKit Debug-build developer runs across
   41359         this case and can come up with something more reproducible.
   41360 
   41361         * loader/MainResourceLoader.cpp:
   41362         (WebCore::MainResourceLoader::didReceiveData): If the response is null create a dummy response.  This is much
   41363           like the FrameLoader::init() response that is used for initial document creation.
   41364 
   41365 2009-02-06  Geoffrey Garen  <ggaren (a] apple.com>
   41366 
   41367         Build fix.
   41368 
   41369         * WebCore.base.exp:
   41370 
   41371 2009-02-06  Xan Lopez  <xan (a] gnome.org>
   41372 
   41373         Reviewed by Holger Freyther.
   41374 
   41375         https://bugs.webkit.org/show_bug.cgi?id=23621
   41376 
   41377         Do not use m_scrollOffset to check if we are setting the same
   41378         value than we already have.
   41379 
   41380         m_scrollOffset starts at 0 for ScrollView, so when opening a new
   41381         page and scrolling to 0 (the usual case) the check will fail and
   41382         we won't update the adjustment value, resulting in a possibly
   41383         mispositioned scrollbar. Use the adjustment value directly
   41384         instead, which is what we are updating anyway.
   41385 
   41386         * platform/gtk/ScrollViewGtk.cpp:
   41387         (WebCore::ScrollView::platformHandleHorizontalAdjustment):
   41388         (WebCore::ScrollView::platformHandleVerticalAdjustment):
   41389 
   41390 2009-02-06  Justin Garcia  <justin.garcia (a] apple.com>
   41391 
   41392         Reviewed by Oliver Hunt.
   41393 
   41394         https://bugs.webkit.org/show_bug.cgi?id=23800
   41395         Header elements are not always preserved during paste
   41396 
   41397         At paste time, don't merge out of header elements.  At copy time, be sure to include
   41398         headers in the list of special common ancestor blocks, so that copying a paragraph or less
   41399         of content inside a header will include the header element in the copied markup.
   41400 
   41401         * editing/ReplaceSelectionCommand.cpp:
   41402         (WebCore::areSameHeaderElements):
   41403         (WebCore::ReplaceSelectionCommand::shouldMerge):
   41404         * editing/markup.cpp:
   41405         (WebCore::isSpecialAncestorBlock):
   41406         (WebCore::createMarkup):
   41407 
   41408 2009-02-06  Geoffrey Garen  <ggaren (a] apple.com>
   41409 
   41410         Reviewed by Sam Weinig.
   41411 
   41412         Part III of <rdar://problem/6552272>.
   41413 
   41414         Make redirect data available to WebKit. (I tried having WebKit track this
   41415         data for itself, but that went wrong -- it's just too hard to figure
   41416         out the weird corners of the WebCore loader from within another framework.)
   41417 
   41418         * loader/DocumentLoader.cpp:
   41419         (WebCore::DocumentLoader::DocumentLoader):
   41420         * loader/DocumentLoader.h: Store a flag indicating whether we created
   41421         a global history entry. If we didn't, then we know that the next redirect
   41422         should not link to us, since we're not in history.
   41423 
   41424         (WebCore::DocumentLoader::clientRedirectSourceForHistory):
   41425         (WebCore::DocumentLoader::clientRedirectDestinationForHistory):
   41426         (WebCore::DocumentLoader::setClientRedirectSourceForHistory):
   41427         (WebCore::DocumentLoader::serverRedirectSourceForHistory):
   41428         (WebCore::DocumentLoader::serverRedirectDestinationForHistory):
   41429         (WebCore::DocumentLoader::didCreateGlobalHistoryEntry):
   41430         (WebCore::DocumentLoader::setDidCreateGlobalHistoryEntry): Added accessors
   41431         to help WebKit wade through the muck of WebCore history.
   41432 
   41433         * loader/EmptyClients.h:
   41434         (WebCore::EmptyFrameLoaderClient::updateGlobalHistoryRedirectLinks): Renamed
   41435         this client function to say what it does, instead of when it's called.
   41436 
   41437         * loader/FrameLoader.cpp:
   41438         (WebCore::FrameLoader::load):
   41439         (WebCore::FrameLoader::loadWithNavigationAction): In the case of a redirect,
   41440         store a link to the previous history URL in the new DocumentLoader, so
   41441         it can update WebKit with that link when the load commits.
   41442 
   41443         (WebCore::FrameLoader::updateHistory*): Use our new flags and names,
   41444         described above.
   41445 
   41446         * loader/FrameLoader.h:
   41447         (WebCore::FrameLoader::documentLoader):
   41448         (WebCore::FrameLoader::policyDocumentLoader):
   41449         (WebCore::FrameLoader::provisionalDocumentLoader):
   41450         (WebCore::FrameLoader::state): Inlined a few trivial functions because
   41451         performance mistakes give me the itches.
   41452 
   41453         * loader/FrameLoaderClient.h: Renamed this client function to say what
   41454         it does, instead of when it's called.
   41455 
   41456 2009-02-06  Eric Seidel  <eric (a] webkit.org>
   41457 
   41458         Reviewed by Justin Garcia.
   41459 
   41460         Minor refactoring and cleanup to Selection code
   41461         https://bugs.webkit.org/show_bug.cgi?id=23774
   41462 
   41463         No functional changes, thus no tests.
   41464 
   41465         * editing/Editor.cpp:
   41466         (WebCore::Editor::applyStyle):
   41467         (WebCore::Editor::applyParagraphStyle):
   41468         * editing/Selection.cpp:
   41469         (WebCore::Selection::Selection):
   41470         (WebCore::Selection::setBaseAndExtentToDeepEquivalents):
   41471         (WebCore::Selection::setStartAndEndFromBaseAndExtentRespectingGranularity):
   41472         (WebCore::Selection::updateSelectionType):
   41473         (WebCore::Selection::validate):
   41474         (WebCore::Selection::setWithoutValidation):
   41475         (WebCore::Selection::adjustSelectionToAvoidCrossingEditingBoundaries):
   41476         * editing/Selection.h:
   41477         (WebCore::Selection::):
   41478         (WebCore::Selection::selectionType):
   41479         (WebCore::Selection::extent):
   41480         (WebCore::Selection::isNone):
   41481         (WebCore::Selection::isCaret):
   41482         (WebCore::Selection::isRange):
   41483         (WebCore::Selection::isCaretOrRange):
   41484         * editing/SelectionController.h:
   41485         (WebCore::SelectionController::selectionType):
   41486         * editing/TypingCommand.cpp:
   41487         (WebCore::TypingCommand::deleteKeyPressed):
   41488         (WebCore::TypingCommand::forwardDeleteKeyPressed):
   41489         * page/Frame.cpp:
   41490         (WebCore::Frame::revealSelection):
   41491 
   41492 2009-02-06  Dimitri Glazkov  <dglazkov (a] chromium.org>
   41493 
   41494         Reviewed by Eric Seidel.
   41495 
   41496         https://bugs.webkit.org/show_bug.cgi?id=23801
   41497         Add custom V8 bindings for SVG.
   41498 
   41499         * bindings/v8/custom/V8SVGElementInstanceCustom.cpp: Added.
   41500         (WebCore::CALLBACK_FUNC_DECL):
   41501         * bindings/v8/custom/V8SVGLengthCustom.cpp: Added.
   41502         (WebCore::ACCESSOR_GETTER):
   41503         (WebCore::CALLBACK_FUNC_DECL):
   41504         * bindings/v8/custom/V8SVGMatrixCustom.cpp: Added.
   41505         (WebCore::CALLBACK_FUNC_DECL):
   41506 
   41507 2009-02-06  David Levin  <levin (a] chromium.org>
   41508 
   41509         Reviewed by Eric Seidel.
   41510 
   41511         Bug 23792: unused param is used in RenderLayer.cpp but not #include'd
   41512         <https://bugs.webkit.org/show_bug.cgi?id=23792>
   41513 
   41514         Add include file for UnusedParam which is used in this file.
   41515 
   41516         * rendering/RenderLayer.cpp:
   41517 
   41518 2009-02-06  David Levin  <levin (a] chromium.org>
   41519 
   41520         Reviewed by Eric Seidel.
   41521 
   41522         <https://bugs.webkit.org/show_bug.cgi?id=23741>
   41523 
   41524         Bug 23798: KURLGoogle needs support for protocolInHTTPFamily
   41525         <https://bugs.webkit.org/show_bug.cgi?id=23798>
   41526 
   41527         Add protocolInHTTPFamily() to the KURLGoogle implementation.
   41528         This is another chromium build fix to mirror r40553.
   41529 
   41530         While in this file, I did some style fixes and consistency fixes:
   41531         + fixed many_occurences_of_underscoring_naming
   41532         + usages of NULL
   41533         + comparisons to 0
   41534         + changed the copyright remove an extraneous , and capitalize the (C)
   41535           which was suggested for other files that I've submitted.
   41536 
   41537         No observable change in behavior, so no test.
   41538 
   41539         * platform/KURL.h:
   41540         (WebCore::KURL::protocolInHTTPFamily):
   41541         * platform/KURLGoogle.cpp:
   41542         (WebCore::KURLCharsetConverter::ConvertFromUTF16):
   41543         (WebCore::lowerCaseEqualsASCII):
   41544         (WebCore::KURLGooglePrivate::KURLGooglePrivate):
   41545         (WebCore::KURLGooglePrivate::setUtf8):
   41546         (WebCore::KURLGooglePrivate::setAscii):
   41547         (WebCore::KURLGooglePrivate::init):
   41548         (WebCore::KURLGooglePrivate::initProtocolInHTTPFamily):
   41549         (WebCore::KURLGooglePrivate::copyTo):
   41550         (WebCore::KURLGooglePrivate::replaceComponents):
   41551         (WebCore::KURL::KURL):
   41552         (WebCore::KURL::createCFURL):
   41553         (WebCore::KURL::isEmpty):
   41554         (WebCore::KURL::protocolInHTTPFamily):
   41555         (WebCore::KURL::query):
   41556         (WebCore::decodeURLEscapeSequences):
   41557         (WebCore::KURL::protocolIs):
   41558         (WebCore::encodeWithURLEscapeSequences):
   41559         (WebCore::KURL::invalidate):
   41560         (WebCore::equalIgnoringRef):
   41561         * platform/KURLGooglePrivate.h:
   41562 
   41563 2009-02-06  David Kilzer  <ddkilzer (a] apple.com>
   41564 
   41565         Bug 23741: StyleRareNonInheritedData::operator==() should not compare ContentData objects by pointer
   41566 
   41567         Reviewed by Darin Adler.
   41568 
   41569         * rendering/style/RenderStyle.cpp:
   41570         (WebCore::RenderStyle::contentDataEquivalent): Moved method to
   41571         WebCore::StyleRareNonInheritedData class.
   41572         * rendering/style/RenderStyle.h:
   41573         (WebCore::InheritedFlags::contentDataEquivalent): Replaced declaration
   41574         with inline method that calls contentDataEquivalent() on
   41575         WebCore::StyleRareNonInheritedData instead.
   41576         * rendering/style/StyleRareNonInheritedData.cpp:
   41577         (WebCore::StyleRareNonInheritedData::operator==): This is the bug fix!
   41578         Replaced pointer comparison of ContentData objects with call to
   41579         StyleRareNonInheritedData::contentDataEquivalent().
   41580         (WebCore::StyleRareNonInheritedData::contentDataEquivalent): Added.
   41581         * rendering/style/StyleRareNonInheritedData.h:
   41582         (WebCore::StyleRareNonInheritedData::contentDataEquivalent): Added
   41583         declaration.
   41584 
   41585 2009-02-06  Simon Fraser  <simon.fraser (a] apple.com>
   41586 
   41587         Reviewed by Eric Seidel
   41588 
   41589         Factor code that checks whether the object is rooted in
   41590         repaint() and repaintRectangle() into a common isRooted()
   41591         method.
   41592 
   41593         * rendering/RenderObject.cpp:
   41594         (WebCore::RenderObject::repaint):
   41595         (WebCore::RenderObject::repaintRectangle):
   41596         (WebCore::RenderObject::isRooted):
   41597         * rendering/RenderObject.h:
   41598 
   41599 2009-02-06  Simon Fraser  <simon.fraser (a] apple.com>
   41600 
   41601         Reviewed by Eric Seidel
   41602 
   41603         Expose an isRootLayer() method on RenderLayer that works whether the
   41604         layer is rooted or not, and use that in a few places in the
   41605         accelerated compositing code.
   41606 
   41607         * rendering/RenderLayer.h:
   41608         (WebCore::RenderLayer::isRootLayer):
   41609         * rendering/RenderLayerBacking.cpp:
   41610         (WebCore::RenderLayerBacking::paintingGoesToWindow):
   41611         * rendering/RenderLayerCompositor.cpp:
   41612         (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
   41613         (WebCore::RenderLayerCompositor::requiresCompositingLayer):
   41614 
   41615 2009-02-06  Dan Bernstein  <mitz (a] apple.com>
   41616 
   41617         Reviewed by Darin Adler.
   41618 
   41619         - fix <rdar://problem/6552338> FontCache::releaseFontData() called on a small caps font that is not in the cache
   41620 
   41621         Most platforms do not retrieve the small caps font from the FontCache,
   41622         but cross-platform code in ~SimpleFontData() assumes the the small caps
   41623         font data did come from the cache and therefore calls releaseFontData()
   41624         on it.
   41625 
   41626         * platform/graphics/SimpleFontData.cpp:
   41627         (WebCore::SimpleFontData::~SimpleFontData): Reordered to call
   41628         platformDestroy() before releasing the small caps font and pruning the
   41629         glyph page tree. This allows platformDestroy() to reset
   41630         m_smallCapsFontData to 0 if it was not obtained from the cache.
   41631         * platform/graphics/chromium/SimpleFontDataLinux.cpp:
   41632         (WebCore::SimpleFontData::platformDestroy): Set m_smallCapsFontData to
   41633         0 after deleting it.
   41634         * platform/graphics/gtk/SimpleFontDataGtk.cpp:
   41635         (WebCore::SimpleFontData::platformDestroy): Ditto.
   41636         * platform/graphics/gtk/SimpleFontDataPango.cpp:
   41637         (WebCore::SimpleFontData::platformDestroy): Ditto.
   41638         * platform/graphics/win/SimpleFontDataWin.cpp:
   41639         (WebCore::SimpleFontData::platformCommonDestroy): Ditto.
   41640         * platform/graphics/wx/SimpleFontDataWx.cpp:
   41641         (WebCore::SimpleFontData::platformDestroy): Ditto.
   41642 
   41643 2009-02-06  Simon Fraser  <simon.fraser (a] apple.com>
   41644 
   41645         Reviewed by Eric Seidel
   41646 
   41647         Make RenderStyle::transitionForProperty() const.
   41648 
   41649         * rendering/style/RenderStyle.cpp:
   41650         (WebCore::RenderStyle::transitionForProperty):
   41651         * rendering/style/RenderStyle.h:
   41652 
   41653 2009-02-06  Simon Fraser  <simon.fraser (a] apple.com>
   41654 
   41655         Fix build when ACCELERATED_COMPOSITING is turned on.
   41656 
   41657         Remove font smoothing changes that will be committed
   41658         separately.
   41659 
   41660         * platform/graphics/mac/WebLayer.mm:
   41661         (WebCore::if):
   41662 
   41663 2009-02-06  Anders Carlsson  <andersca (a] apple.com>
   41664 
   41665         Build fix.
   41666 
   41667         * bridge/npapi.h:
   41668 
   41669 2009-02-06  Darin Fisher  <darin (a] chromium.org>
   41670 
   41671         Reviewed by Eric Seidel.
   41672 
   41673         https://bugs.webkit.org/show_bug.cgi?id=23790
   41674         Custom -> JSCCustom in SVGPointList.idl
   41675 
   41676         * svg/SVGPointList.idl:
   41677 
   41678 2009-02-06  Anantanarayanan Iyengar  <ananta (a] chromium.org>
   41679 
   41680         Reviewed by Eric Seidel.
   41681 
   41682         https://bugs.webkit.org/show_bug.cgi?id=23309
   41683         Fix whitespace indent errors. The rest of the original patch has already
   41684         landed.
   41685 
   41686         * platform/graphics/cairo/ImageSourceCairo.cpp:
   41687         (WebCore::ImageSource::clear):
   41688         * platform/graphics/cg/ImageSourceCG.cpp:
   41689         (WebCore::ImageSource::clear):
   41690         * platform/graphics/qt/ImageSourceQt.cpp:
   41691         (WebCore::ImageSource::clear):
   41692         * platform/graphics/wx/ImageSourceWx.cpp:
   41693         (WebCore::ImageSource::clear):
   41694 
   41695 2009-02-06  Dirk Schulze  <krit (a] webkit.org>
   41696 
   41697         Reviewed by Simon Hausmann.
   41698 
   41699         Fix bug in clearRect(). Use fillRect() instead of eraseRect() to get
   41700         the context transparent.
   41701 
   41702         [QT] clearRect fill's a given rect with white
   41703         https://bugs.webkit.org/show_bug.cgi?id=23728
   41704 
   41705         * platform/graphics/qt/GraphicsContextQt.cpp:
   41706         (WebCore::GraphicsContext::clearRect):
   41707 
   41708 2009-02-06  Simon Fraser  <simon.fraser (a] apple.com>
   41709 
   41710         Reviewed by Dave Hyatt
   41711 
   41712         https://bugs.webkit.org/show_bug.cgi?id=23781
   41713 
   41714         When the document is attached and detached, and when it becomes active/inactive
   41715         (e.g. coming out or going into the page cache) we need to call
   41716         RenderView::didMoveOnscreen()/willMoveOffscreen() to hook and unhook the composited
   41717         layers.
   41718 
   41719         Also, if Document::recalcStyle() does not do a layout, it needs to
   41720         update the compositing layers.
   41721 
   41722         * dom/Document.cpp:
   41723         (WebCore::Document::updateRendering):
   41724         (WebCore::Document::updateLayout):
   41725         (WebCore::Document::attach):
   41726         (WebCore::Document::detach):
   41727         (WebCore::Document::documentWillBecomeInactive):
   41728         (WebCore::Document::documentDidBecomeActive):
   41729 
   41730 2009-02-06  Simon Hausmann  <simon.hausmann (a] nokia.com>
   41731 
   41732         Reviewed by Tor Arne Vestb.
   41733 
   41734         Added support for different ownership models for wrapped QObjects in
   41735         the JavaScript environment.
   41736 
   41737         * bindings/js/ScriptControllerQt.cpp:
   41738         (WebCore::ScriptController::createScriptInstanceForWidget): Specify
   41739         QtOwnership for scriptable widgets.
   41740         * bridge/npruntime_internal.h: Add "NormalState" to the list of
   41741         undef'ed macros as an included Qt header uses "NormalState" as value
   41742         in an enum.
   41743         * bridge/qt/qt_instance.cpp:
   41744         (JSC::Bindings::QtInstance::QtInstance): Save and initialize ownership
   41745         member.
   41746         (JSC::Bindings::QtInstance::~QtInstance): Respect
   41747         QScriptEngine::ValueOwnership policy with regards to wrapped m_object.
   41748         (JSC::Bindings::QtInstance::getQtInstance): Pass the ownership down to
   41749         the instance.
   41750         * bridge/qt/qt_instance.h:
   41751         (JSC::Bindings::QtInstance::create): Ditto.
   41752         * bridge/qt/qt_runtime.cpp:
   41753         (JSC::Bindings::convertQVariantToValue): Use QtOwnership for
   41754         automatically wrapped QObjects.
   41755         (JSC::Bindings::QtConnectionObject::execute): Ditto.
   41756 
   41757 2009-02-05  Maciej Stachowiak  <mjs (a] apple.com> and Brady Eidson  <beidson (a] apple.com>
   41758 
   41759         Reviewed by Dan Bernstein and Geoff Garen.
   41760 
   41761         - WebCore code to track per-day and per-week visit counts in history
   41762 
   41763         The basic idea is as follows: we track daily visits for up to 13
   41764         days, and weekly visits for up to 5 weeks past the end of the
   41765         current daily visits. As soon as the number of daily counts goes
   41766         over 13, we squish them down into weeks, and then prune the excess weeks.
   41767 
   41768         * history/HistoryItem.cpp:
   41769         (WebCore::HistoryItem::HistoryItem): Remove bogus whitespace.
   41770         (WebCore::timeToDay): Helper function: convert time to days from the epoch.
   41771         (WebCore::HistoryItem::padDailyCountsForNewVisit): Insert 0 counts if
   41772         a site is visited after a span of days.
   41773         (WebCore::HistoryItem::collapseDailyVisitsToWeekly): Core day/week upgrade
   41774         algorithm as described above.
   41775         (WebCore::HistoryItem::recordVisitAtTime): Use above helpers to record all
   41776         info about a visit to this history item.
   41777         (WebCore::HistoryItem::setLastVisitedTime): Updated.
   41778         (WebCore::HistoryItem::visited): Updated.
   41779         (WebCore::HistoryItem::recordInitialVisit): New function to
   41780         handle recording data about the very first visit, replacing the
   41781         prior practice of explicitly setting visit count to 1.
   41782         (WebCore::HistoryItem::adoptVisitCounts): Take ownership of
   41783         daily and weekly visit count vectors.
   41784         (WebCore::HistoryItem::mergeAutoCompleteHints): Added a comment
   41785         noting that this function doesn't work properly now (though
   41786         this shouldn't matter much in practice.)
   41787         * history/HistoryItem.h:
   41788         (WebCore::HistoryItem::dailyVisitCounts): Accessor for daily counts.
   41789         (WebCore::HistoryItem::weeklyVisitCounts): Ditto for weekly counts.
   41790         * WebCore.base.exp: Add new symbols and sort.
   41791 
   41792 2009-02-05  Alexey Proskuryakov  <ap (a] webkit.org>
   41793 
   41794         Reviewed by Darin Adler.
   41795 
   41796         <rdar://problem/6438271> Improve backspace handling of accented characters
   41797 
   41798         Test: platform/mac/editing/deleting/backward-delete.html
   41799 
   41800         This change makes WebKit behave like AppKit on the Mac. Other platforms are not affected,
   41801         because the current behavior matches their standards (tested on Windows, assumed elsewhere).
   41802 
   41803         * dom/Position.cpp:
   41804         (WebCore::Position::previous):
   41805         (WebCore::Position::next):
   41806         (WebCore::Position::uncheckedPreviousOffsetForBackwardDeletion):
   41807         * dom/Position.h:
   41808         Added a new option for previous(), used to move to a next position for backward deletion.
   41809         Renamed EUsingComposedCharacters to PositionMoveType.
   41810 
   41811         * editing/TypingCommand.cpp: (WebCore::TypingCommand::deleteKeyPressed):
   41812         Use previous(BackwardDeletion) to find a proper range to delete. Also, simplified a check
   41813         surrounding this code a little.
   41814 
   41815         * editing/htmlediting.cpp:
   41816         (WebCore::nextVisuallyDistinctCandidate):
   41817         (WebCore::previousVisuallyDistinctCandidate):
   41818         Adjusted for renamed enum values.
   41819 
   41820         * rendering/RenderObject.cpp:
   41821         * rendering/RenderObject.h:
   41822         * rendering/RenderText.h:
   41823         Added previousOffsetForBackwardDeletion().
   41824 
   41825         * rendering/RenderText.cpp: (WebCore::RenderText::previousOffsetForBackwardDeletion):
   41826         On PLATFORM(MAC), use an algorithm that matches the one AppKit has for backward deletion.
   41827 
   41828 2009-02-05  Adam Roben  <aroben (a] apple.com>
   41829 
   41830         Fix a crash in RenderWidget::destroy when navigating away from a page
   41831         with an <iframe>
   41832 
   41833         This was a regression caused by r40679
   41834 
   41835         Reviewed by Dave Hyatt.
   41836 
   41837         Tested by many many tests.
   41838 
   41839         * rendering/RenderWidget.cpp:
   41840         (WebCore::RenderWidget::destroy): Only deref the RenderWidget after we
   41841         finish accessing its members.
   41842 
   41843 2009-02-05  Simon Fraser  <simon.fraser (a] apple.com>
   41844 
   41845         Reviewed by Anders Carlsson
   41846 
   41847         getAnimatedStyleForRenderer() should not create a new
   41848         CompositeAnimation if the object isn't already animating, and
   41849         it should just fall back to returning renderer->style().
   41850 
   41851         * page/animation/AnimationController.cpp:
   41852         (WebCore::AnimationControllerPrivate::getAnimatedStyleForRenderer):
   41853 
   41854 2009-02-05  Simon Fraser  <simon.fraser (a] apple.com>
   41855 
   41856         Fix build when ACCELERATED_COMPOSITING is turned on.
   41857 
   41858         Give RenderLayerBacking some love after the great
   41859         RenderBoxModelObject split.
   41860 
   41861         * rendering/RenderLayerBacking.cpp:
   41862         (WebCore::RenderLayerBacking::updateLayerTransform):
   41863         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
   41864         (WebCore::RenderLayerBacking::contentsBox):
   41865         (WebCore::RenderLayerBacking::paintIntoLayer):
   41866         (WebCore::RenderLayerBacking::startAnimation):
   41867         (WebCore::RenderLayerBacking::startTransition):
   41868         * rendering/RenderLayerBacking.h:
   41869         (WebCore::RenderLayerBacking::renderer):
   41870 
   41871 2009-02-05  Simon Fraser  <simon.fraser (a] apple.com>
   41872 
   41873         Fix build when ACCELERATED_COMPOSITING is turned on.
   41874 
   41875         writeIndent() needs to be static to avoid warnings on some OSes,
   41876         and remove unused CAToTransform3D() method.
   41877 
   41878         * platform/graphics/GraphicsLayer.cpp:
   41879         (WebCore::writeIndent):
   41880         * platform/graphics/mac/GraphicsLayerCA.mm:
   41881 
   41882 2009-02-05  Simon Fraser  <simon.fraser (a] apple.com>
   41883 
   41884         Reviewed by Anders Carlsson
   41885 
   41886         Add some methods to the TransformOperation classes that are required
   41887         by GraphicsLayer when ACCELERATED_COMPOSITING is turned on.
   41888 
   41889         * platform/graphics/transforms/MatrixTransformOperation.h:
   41890         (WebCore::MatrixTransformOperation::create):
   41891         (WebCore::MatrixTransformOperation::MatrixTransformOperation):
   41892         * platform/graphics/transforms/ScaleTransformOperation.h:
   41893         (WebCore::ScaleTransformOperation::x):
   41894         (WebCore::ScaleTransformOperation::y):
   41895         * platform/graphics/transforms/TranslateTransformOperation.h:
   41896         (WebCore::TranslateTransformOperation::x):
   41897         (WebCore::TranslateTransformOperation::y):
   41898 
   41899 2009-02-05  Simon Fraser  <simon.fraser (a] apple.com>
   41900 
   41901         Minor clenaup: fix brace style in CompositeAnimationPrivate::updateTransitions(),
   41902         and correct a usage of UNUSED_PARAM().
   41903 
   41904         * page/animation/CompositeAnimation.cpp:
   41905         (WebCore::CompositeAnimationPrivate::updateTransitions):
   41906         * page/animation/ImplicitAnimation.cpp:
   41907         (WebCore::ImplicitAnimation::startAnimation):
   41908 
   41909 2009-02-05  Simon Fraser  <simon.fraser (a] apple.com>
   41910 
   41911         Fix build when ACCELERATED_COMPOSITING is turned on.
   41912 
   41913         animationOfPropertyIsAccelerated() needs to be public because
   41914         it is called from AnimationController.
   41915 
   41916         * page/animation/AnimationBase.h:
   41917 
   41918 2009-02-05  Simon Fraser  <simon.fraser (a] apple.com>
   41919 
   41920         Reviewed by Anders Carlsson
   41921 
   41922         Fix mis-typed enum value which is hidden inside #ifdefs so didn't break
   41923         the build.
   41924 
   41925         * page/FrameView.cpp:
   41926         (WebCore::FrameView::updateCompositingLayers):
   41927 
   41928 2009-02-05  Sam Weinig  <sam (a] webkit.org>
   41929 
   41930         Reviewed by Geoffrey Garen.
   41931 
   41932         Fix missing checked toRenderBlock casts.
   41933 
   41934         * rendering/RenderBlock.cpp:
   41935         (WebCore::RenderBlock::clearFloats):
   41936         * rendering/RenderBox.cpp:
   41937         (WebCore::RenderBox::availableHeightUsing):
   41938 
   41939 2009-02-05  Sam Weinig  <sam (a] webkit.org>
   41940 
   41941         Patch from Darin Adler.
   41942         Reviewed by Sam Weinig.
   41943 
   41944         Fix case where we were casting to RenderView.
   41945 
   41946         No test case possible.
   41947 
   41948         * editing/mac/SelectionControllerMac.mm:
   41949         (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
   41950 
   41951 2009-02-05  Aaron Boodman  <aa (a] chromium.org>
   41952 
   41953         Reviewed by Dave Hyatt.
   41954 
   41955         https://bugs.webkit.org/show_bug.cgi?id=23708
   41956         Adds documentElementAvailable() callback to FrameLoaderClient.
   41957 
   41958         * dom/XMLTokenizerLibxml2.cpp:
   41959         (WebCore::XMLTokenizer::startElementNs):
   41960         Add call to dispatchDocumentElementAvailable()
   41961         * dom/XMLTokenizerQt.cpp:
   41962         (WebCore::XMLTokenizer::parseStartElement):
   41963         Ditto.
   41964         * html/HTMLParser.cpp:
   41965         (WebCore::HTMLParser::insertNode):
   41966         Ditto.
   41967         * loader/EmptyClients.h:
   41968         (WebCore::EmptyFrameLoaderClient::documentElementAvailable):
   41969         Stub out documentElementAvailable().
   41970         * loader/FrameLoader.cpp:
   41971         documentElementAvailable() callback plumbing.
   41972         * loader/FrameLoader.h:
   41973         Ditto.
   41974         * loader/FrameLoaderClient.h:
   41975         Add new documentElementAvailable() callback.
   41976 
   41977 2009-02-05  Scott Violet  <sky (a] google.com>
   41978 
   41979         Reviewed by Eric Seidel.
   41980 
   41981         https://bugs.webkit.org/show_bug.cgi?id=23766
   41982         CanvasRenderingContext2D::setShadow needs else for other platforms.
   41983 
   41984         Implements the CMYK variant of CanvasRenderingContext2D::setShadow for
   41985         other platforms using the CMYK color constructor.
   41986 
   41987         * html/CanvasRenderingContext2D.cpp:
   41988         (WebCore::CanvasRenderingContext2D::setShadow):
   41989 
   41990 2009-02-05  Scott Violet  <sky (a] google.com>
   41991 
   41992         Reviewed by Eric Seidel.
   41993 
   41994         https://bugs.webkit.org/show_bug.cgi?id=23687
   41995         Wires up Skia'a ImageBuffer::toDataURL to support pngs.
   41996         This helps Chromium pass a couple of layout tests.
   41997 
   41998         * platform/graphics/skia/ImageBufferSkia.cpp:
   41999         (WebCore::ImageBuffer::toDataURL):
   42000         * platform/image-encoders: Added.
   42001         * platform/image-encoders/skia: Added.
   42002         * platform/image-encoders/skia/PNGImageEncoder.cpp: Added.
   42003         (WebCore::):
   42004         (WebCore::PngEncoderState::EncoderWriteCallback):
   42005         (WebCore::PngEncoderState::ConvertBGRAtoRGB):
   42006         (WebCore::PngEncoderState::PngWriteStructDestroyer::PngWriteStructDestroyer):
   42007         (WebCore::PngEncoderState::PngWriteStructDestroyer::~PngWriteStructDestroyer):
   42008         (WebCore::PNGImageEncoder::encode):
   42009         * platform/image-encoders/skia/PNGImageEncoder.h: Added.
   42010 
   42011 2009-02-05  Sam Weinig  <sam (a] webkit.org>
   42012 
   42013         Reviewed by Darin Adler.
   42014 
   42015         Fix missing checked cast.
   42016 
   42017         * rendering/RenderObject.cpp:
   42018         (WebCore::RenderObject::containingBlock):
   42019 
   42020 2009-02-05  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   42021 
   42022         Not reviewed. Fix WML enabled builds.
   42023 
   42024         FrameLoader::load() got an additional 'lockHistory' parameter, pass 'false'.
   42025 
   42026         * wml/WMLGoElement.cpp:
   42027         (WebCore::WMLGoElement::executeTask):
   42028 
   42029 2009-02-05  Scott Violet  <sky (a] google.com>
   42030 
   42031         Reviewed by Eric Seidel.
   42032 
   42033         https://bugs.webkit.org/show_bug.cgi?id=23625
   42034         Additional fix: Skia platform doesn't render text to a canvas or support clipping to an image buffer
   42035 
   42036         Fixes three bugs in PlatformContextSkia:
   42037 
   42038         * When a new layer was started clipped to an image we used the
   42039           assignment operator to copy the SkBitmap. If the SkBitmap owns it's
   42040           pixels, this is not the right thing to do. Instead we need to create
   42041           a copy of the image.
   42042         * State holds an SkBitmap by value. State's copy constructor does a
   42043           memcpy. This is confusing and subtle, I've converted to use a member
   42044           initializer list which I think is clearer and less error prone.
   42045         * When creating a new layer there is no need to copy the clip image.
   42046 
   42047         * platform/graphics/skia/PlatformContextSkia.cpp:
   42048         (PlatformContextSkia::State::State):
   42049         (PlatformContextSkia::save):
   42050         (PlatformContextSkia::beginLayerClippedToImage):
   42051 
   42052 2009-02-05  Scott Violet  <sky (a] google.com>
   42053 
   42054         Reviewed by George Staikos.
   42055 
   42056         https://bugs.webkit.org/show_bug.cgi?id=23462
   42057         Changes call from setFillColor to setStrokeColor.
   42058 
   42059         * html/CanvasStyle.cpp:
   42060         (WebCore::CanvasStyle::applyStrokeColor):
   42061 
   42062 2009-02-05  David Hyatt  <hyatt (a] apple.com>
   42063 
   42064         Fix crash on svg custom stop test.  A virtual function didn't get patched properly.
   42065 
   42066         Reviewed by Sam Weinig
   42067 
   42068         * rendering/RenderObject.cpp:
   42069         (WebCore::RenderObject::clippedOverflowRectForRepaint):
   42070         * rendering/RenderSVGGradientStop.h:
   42071         (WebCore::RenderSVGGradientStop::clippedOverflowRectForRepaint):
   42072 
   42073 2009-02-05  Simon Fraser  <simon.fraser (a] apple.com>
   42074 
   42075         Reviewed by Dave Hyatt
   42076 
   42077         https://bugs.webkit.org/show_bug.cgi?id=23765
   42078 
   42079         Add toRenderBoxModelObject() so that we can cast objects that
   42080         can have layers.
   42081 
   42082         Fix getComputedStyle to return the current value of style
   42083         properties that are undergoing accelerated animations, by
   42084         asking the AnimationController if the property has accelerated
   42085         animations, and, if so, asking it to generate an appropriate
   42086         style.
   42087 
   42088         Tightened up some type safety (CSSPropertyID), and code clarity
   42089         (replace bool with enum).
   42090 
   42091         * WebCore.xcodeproj/project.pbxproj:
   42092         * css/CSSComputedStyleDeclaration.cpp:
   42093         (WebCore::hasCompositedLayer):
   42094         (WebCore::computedTransform):
   42095         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   42096         * page/animation/AnimationController.cpp:
   42097         (WebCore::AnimationControllerPrivate::isAnimatingPropertyOnRenderer):
   42098         (WebCore::AnimationController::isAnimatingPropertyOnRenderer):
   42099         (WebCore::AnimationController::supportsAcceleratedAnimationOfProperty):
   42100         * page/animation/AnimationController.h:
   42101         * page/animation/AnimationControllerPrivate.h:
   42102         * page/animation/ImplicitAnimation.cpp:
   42103         (WebCore::ImplicitAnimation::startAnimation):
   42104         (WebCore::ImplicitAnimation::endAnimation):
   42105         * page/animation/KeyframeAnimation.cpp:
   42106         (WebCore::KeyframeAnimation::startAnimation):
   42107         (WebCore::KeyframeAnimation::endAnimation):
   42108         * rendering/RenderBoxModelObject.h:
   42109         (WebCore::RenderBoxModelObject::isBoxModelObject):
   42110         (WebCore::toRenderBoxModelObject):
   42111         * rendering/RenderLayerBacking.cpp:
   42112         (WebCore::RenderLayerBacking::updateLayerTransform):
   42113         * rendering/RenderObject.h:
   42114         (WebCore::RenderObject::isBoxModelObject):
   42115         * rendering/style/RenderStyle.cpp:
   42116         (WebCore::RenderStyle::applyTransform):
   42117         * rendering/style/RenderStyle.h:
   42118         (WebCore::InheritedFlags::):
   42119 
   42120 2009-02-05  Dimitri Glazkov  <dglazkov (a] chromium.org>
   42121 
   42122         Reviewed by Eric Seidel.
   42123 
   42124         https://bugs.webkit.org/show_bug.cgi?id=23767
   42125         Add custom V8 bindings for HTML5 database.
   42126 
   42127         * bindings/v8/custom/V8CustomSQLStatementCallback.cpp: Added.
   42128         (WebCore::V8CustomSQLStatementCallback::V8CustomSQLStatementCallback):
   42129         (WebCore::V8CustomSQLStatementCallback::~V8CustomSQLStatementCallback):
   42130         (WebCore::V8CustomSQLStatementCallback::handleEvent):
   42131         * bindings/v8/custom/V8CustomSQLStatementCallback.h: Added.
   42132         (WebCore::V8CustomSQLStatementCallback::create):
   42133         * bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp: Added.
   42134         (WebCore::V8CustomSQLStatementErrorCallback::V8CustomSQLStatementErrorCallback):
   42135         (WebCore::V8CustomSQLStatementErrorCallback::~V8CustomSQLStatementErrorCallback):
   42136         (WebCore::V8CustomSQLStatementErrorCallback::handleEvent):
   42137         * bindings/v8/custom/V8CustomSQLStatementErrorCallback.h: Added.
   42138         (WebCore::V8CustomSQLStatementErrorCallback::create):
   42139         * bindings/v8/custom/V8CustomSQLTransactionCallback.cpp: Added.
   42140         (WebCore::V8CustomSQLTransactionCallback::V8CustomSQLTransactionCallback):
   42141         (WebCore::V8CustomSQLTransactionCallback::~V8CustomSQLTransactionCallback):
   42142         (WebCore::V8CustomSQLTransactionCallback::handleEvent):
   42143         * bindings/v8/custom/V8CustomSQLTransactionCallback.h: Added.
   42144         (WebCore::V8CustomSQLTransactionCallback::create):
   42145         * bindings/v8/custom/V8CustomSQLTransactionErrorCallback.cpp: Added.
   42146         (WebCore::V8CustomSQLTransactionErrorCallback::V8CustomSQLTransactionErrorCallback):
   42147         (WebCore::V8CustomSQLTransactionErrorCallback::~V8CustomSQLTransactionErrorCallback):
   42148         (WebCore::V8CustomSQLTransactionErrorCallback::handleEvent):
   42149         * bindings/v8/custom/V8CustomSQLTransactionErrorCallback.h: Added.
   42150         (WebCore::V8CustomSQLTransactionErrorCallback::create):
   42151         * bindings/v8/custom/V8CustomVoidCallback.cpp: Added.
   42152         (WebCore::V8CustomVoidCallback::V8CustomVoidCallback):
   42153         (WebCore::V8CustomVoidCallback::~V8CustomVoidCallback):
   42154         (WebCore::V8CustomVoidCallback::handleEvent):
   42155         (WebCore::invokeCallback):
   42156         * bindings/v8/custom/V8CustomVoidCallback.h: Added.
   42157         (WebCore::V8CustomVoidCallback::create):
   42158         * bindings/v8/custom/V8DatabaseCustom.cpp: Added.
   42159         (WebCore::CALLBACK_FUNC_DECL):
   42160         * bindings/v8/custom/V8SQLResultSetRowListCustom.cpp: Added.
   42161         (WebCore::CALLBACK_FUNC_DECL):
   42162         * bindings/v8/custom/V8SQLTransactionCustom.cpp: Added.
   42163         (WebCore::CALLBACK_FUNC_DECL):
   42164 
   42165 2009-02-05  Dimitri Glazkov  <dglazkov (a] chromium.org>
   42166 
   42167         Reviewed by Eric Seidel.
   42168 
   42169         https://bugs.webkit.org/show_bug.cgi?id=23747
   42170         Add Chromium threading-related files.
   42171 
   42172         * platform/chromium/TemporaryLinkStubs.cpp: Removed theading-related stubs.
   42173 
   42174 2009-02-05  Sam Weinig  <sam (a] webkit.org>
   42175 
   42176         Reviewed by Adam Roben.
   42177 
   42178         Add toRenderButton methods for casting RenderObjects to RenderButtons. The methods will assert if the object
   42179         is not a RenderButton. Also add a toRenderButton method that takes a RenderButton but returns void and that
   42180         is unimplemented. This method will catch anyone trying to do a cast when the object is already a RenderButton.
   42181 
   42182         * rendering/RenderButton.h:
   42183         (WebCore::RenderButton::isRenderButton):
   42184         (WebCore::toRenderButton):
   42185         * rendering/RenderFileUploadControl.cpp:
   42186         (WebCore::RenderFileUploadControl::paintObject):
   42187         * rendering/RenderObject.h:
   42188         (WebCore::RenderObject::isRenderButton):
   42189 
   42190 2009-02-05  David Hyatt  <hyatt (a] apple.com>
   42191 
   42192         Move the m_layer member variable of RenderBox up into RenderBoxModelObject.  Refactor styleDidChange'
   42193         of RenderObject, RenderBoxModelObject and RenderBox to get more of the code in the correct subclass.
   42194         In order to set the various RenderObject bits properly prior to the test for whether a layer is
   42195         required, I added an additional method, updateBoxModelInfoAfterStyleChange, that is responsible
   42196         for setting all of the bits.
   42197 
   42198         Eliminate hasStaticX/Y, staticX/Y, and setStaticX/Y from the render tree.  Move hasStaticX/Y to
   42199         RenderStyle, and just use the corresponding layer() methods for the
   42200         staticX/Y getters/setters.
   42201 
   42202         Reviewed by Sam Weinig
   42203 
   42204         * rendering/RenderBlock.cpp:
   42205         (WebCore::RenderBlock::layoutBlock):
   42206         (WebCore::RenderBlock::adjustPositionedBlock):
   42207         (WebCore::RenderBlock::layoutOnlyPositionedObjects):
   42208         (WebCore::RenderBlock::layoutPositionedObjects):
   42209         (WebCore::RenderBlock::paintObject):
   42210         (WebCore::RenderBlock::nodeAtPoint):
   42211         (WebCore::RenderBlock::offsetForContents):
   42212         (WebCore::RenderBlock::calcPrefWidths):
   42213         (WebCore::RenderBlock::baselinePosition):
   42214         * rendering/RenderBox.cpp:
   42215         (WebCore::RenderBox::RenderBox):
   42216         (WebCore::RenderBox::destroy):
   42217         (WebCore::RenderBox::styleWillChange):
   42218         (WebCore::RenderBox::styleDidChange):
   42219         (WebCore::RenderBox::updateBoxModelInfoFromStyle):
   42220         (WebCore::RenderBox::scrollWidth):
   42221         (WebCore::RenderBox::scrollHeight):
   42222         (WebCore::RenderBox::scrollLeft):
   42223         (WebCore::RenderBox::scrollTop):
   42224         (WebCore::RenderBox::setScrollLeft):
   42225         (WebCore::RenderBox::setScrollTop):
   42226         (WebCore::RenderBox::getOverflowClipRect):
   42227         (WebCore::RenderBox::localToAbsolute):
   42228         (WebCore::RenderBox::absoluteToLocal):
   42229         (WebCore::RenderBox::localToContainerQuad):
   42230         (WebCore::RenderBox::position):
   42231         (WebCore::RenderBox::computeRectForRepaint):
   42232         (WebCore::RenderBox::calcAbsoluteHorizontal):
   42233         (WebCore::RenderBox::calcAbsoluteVertical):
   42234         (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
   42235         (WebCore::RenderBox::calcAbsoluteVerticalReplaced):
   42236         * rendering/RenderBox.h:
   42237         * rendering/RenderBoxModelObject.cpp:
   42238         (WebCore::RenderBoxModelObject::RenderBoxModelObject):
   42239         (WebCore::RenderBoxModelObject::destroy):
   42240         (WebCore::RenderBoxModelObject::styleWillChange):
   42241         (WebCore::RenderBoxModelObject::styleDidChange):
   42242         (WebCore::RenderBoxModelObject::updateBoxModelInfoFromStyle):
   42243         * rendering/RenderBoxModelObject.h:
   42244         (WebCore::RenderBoxModelObject::layer):
   42245         (WebCore::RenderBoxModelObject::requiresLayer):
   42246         * rendering/RenderFlexibleBox.cpp:
   42247         (WebCore::RenderFlexibleBox::layoutBlock):
   42248         (WebCore::RenderFlexibleBox::layoutHorizontalBox):
   42249         (WebCore::RenderFlexibleBox::layoutVerticalBox):
   42250         * rendering/RenderInline.cpp:
   42251         (WebCore::RenderInline::updateBoxModelInfoFromStyle):
   42252         (WebCore::RenderInline::styleDidChange):
   42253         (WebCore::RenderInline::relativePositionedInlineOffset):
   42254         * rendering/RenderInline.h:
   42255         * rendering/RenderLayer.cpp:
   42256         (WebCore::RenderLayer::setStaticY):
   42257         (WebCore::RenderLayer::updateLayerPosition):
   42258         * rendering/RenderLayer.h:
   42259         * rendering/RenderObject.cpp:
   42260         (WebCore::RenderObject::setStyle):
   42261         (WebCore::RenderObject::styleDidChange):
   42262         * rendering/RenderObject.h:
   42263         (WebCore::RenderObject::markContainingBlocksForLayout):
   42264         * rendering/RenderTableRow.cpp:
   42265         (WebCore::RenderTableRow::paint):
   42266         * rendering/RenderWidget.cpp:
   42267         (WebCore::RenderWidget::destroy):
   42268         * rendering/bidi.cpp:
   42269         (WebCore::appendRunsForObject):
   42270         (WebCore::RenderBlock::layoutInlineChildren):
   42271         (WebCore::RenderBlock::skipTrailingWhitespace):
   42272         (WebCore::RenderBlock::skipLeadingWhitespace):
   42273         (WebCore::RenderBlock::findNextLineBreak):
   42274         * rendering/style/RenderStyle.h:
   42275         (WebCore::InheritedFlags::hasStaticX):
   42276         (WebCore::InheritedFlags::hasStaticY):
   42277 
   42278 2009-02-05  Sam Weinig  <sam (a] webkit.org>
   42279 
   42280         Fix the windows build.
   42281 
   42282         * bindings/scripts/CodeGeneratorCOM.pm:
   42283         * dom/Node.idl:
   42284 
   42285 2009-02-05  Anders Carlsson  <andersca (a] apple.com>
   42286 
   42287         Reviewed by Kevin Decker.
   42288 
   42289         Update to match Gecko.
   42290 
   42291         * bridge/npapi.h:
   42292         * plugins/npfunctions.h:
   42293 
   42294 2009-02-05  Sam Weinig  <sam (a] webkit.org>
   42295 
   42296         Reviewed by Darin Adler.
   42297 
   42298         Finish merging EventTargetNode up into Node.
   42299 
   42300         This also fixes a small recently introduced issue where EventListeners
   42301         would not be removed from the document if they were attached to comment
   42302         nodes outside of the documentElement.
   42303 
   42304         * GNUmakefile.am:
   42305         * WebCore.pro:
   42306         * WebCore.scons:
   42307         * WebCore.vcproj/WebCore.vcproj:
   42308         * WebCore.xcodeproj/project.pbxproj:
   42309         * WebCoreSources.bkl:
   42310         * bindings/js/JSEventTargetNodeCustom.cpp: Removed.
   42311         * bindings/js/JSNodeCustom.cpp:
   42312         (WebCore::JSNode::addEventListener):
   42313         (WebCore::JSNode::removeEventListener):
   42314         (WebCore::JSNode::pushEventHandlerScope):
   42315         * bindings/scripts/CodeGenerator.pm:
   42316         * dom/CharacterData.cpp:
   42317         (WebCore::CharacterData::CharacterData):
   42318         (WebCore::CharacterData::rendererIsNeeded):
   42319         * dom/CharacterData.h:
   42320         * dom/ContainerNode.cpp:
   42321         (WebCore::ContainerNode::willRemove):
   42322         (WebCore::ContainerNode::attach):
   42323         (WebCore::ContainerNode::detach):
   42324         (WebCore::ContainerNode::insertedIntoDocument):
   42325         (WebCore::ContainerNode::removedFromDocument):
   42326         (WebCore::ContainerNode::setFocus):
   42327         (WebCore::ContainerNode::setActive):
   42328         (WebCore::ContainerNode::setHovered):
   42329         (WebCore::dispatchChildInsertionEvents):
   42330         (WebCore::dispatchChildRemovalEvents):
   42331         * dom/ContainerNode.h:
   42332         (WebCore::ContainerNode::ContainerNode):
   42333         * dom/Document.cpp:
   42334         (WebCore::Document::removeAllEventListenersFromAllNodes):
   42335         (WebCore::Document::removeAllDisconnectedNodeEventListeners):
   42336         (WebCore::Document::setFocusedNode):
   42337         * dom/EventTargetNode.cpp: Removed.
   42338         * dom/EventTargetNode.h: Removed.
   42339         * dom/Node.cpp:
   42340         (WebCore::Node::scriptExecutionContext):
   42341         (WebCore::Node::eventListeners):
   42342         (WebCore::Node::insertedIntoDocument):
   42343         (WebCore::Node::removedFromDocument):
   42344         (WebCore::Node::willMoveToNewOwnerDocument):
   42345         (WebCore::Node::didMoveToNewOwnerDocument):
   42346         (WebCore::updateSVGElementInstancesAfterEventListenerChange):
   42347         (WebCore::Node::addEventListener):
   42348         (WebCore::Node::removeEventListener):
   42349         (WebCore::Node::removeAllEventListenersSlowCase):
   42350         (WebCore::Node::handleLocalEvents):
   42351         (WebCore::eventTargetAsSVGElementInstance):
   42352         (WebCore::eventTargetRespectingSVGTargetRules):
   42353         (WebCore::Node::dispatchEvent):
   42354         (WebCore::Node::dispatchGenericEvent):
   42355         (WebCore::Node::dispatchSubtreeModifiedEvent):
   42356         (WebCore::Node::dispatchWindowEvent):
   42357         (WebCore::Node::dispatchUIEvent):
   42358         (WebCore::Node::dispatchKeyEvent):
   42359         (WebCore::Node::dispatchMouseEvent):
   42360         (WebCore::Node::dispatchSimulatedMouseEvent):
   42361         (WebCore::Node::dispatchSimulatedClick):
   42362         (WebCore::Node::dispatchWheelEvent):
   42363         (WebCore::Node::dispatchWebKitAnimationEvent):
   42364         (WebCore::Node::dispatchWebKitTransitionEvent):
   42365         (WebCore::Node::dispatchFocusEvent):
   42366         (WebCore::Node::dispatchBlurEvent):
   42367         (WebCore::Node::dispatchEventForType):
   42368         (WebCore::Node::dispatchProgressEvent):
   42369         (WebCore::Node::dispatchStorageEvent):
   42370         (WebCore::Node::removeInlineEventListenerForType):
   42371         (WebCore::Node::setInlineEventListenerForType):
   42372         (WebCore::Node::setInlineEventListenerForTypeAndAttribute):
   42373         (WebCore::Node::inlineEventListenerForType):
   42374         (WebCore::Node::disabled):
   42375         (WebCore::Node::defaultEventHandler):
   42376         (WebCore::Node::onabort):
   42377         (WebCore::Node::setOnabort):
   42378         (WebCore::Node::onblur):
   42379         (WebCore::Node::setOnblur):
   42380         (WebCore::Node::onchange):
   42381         (WebCore::Node::setOnchange):
   42382         (WebCore::Node::onclick):
   42383         (WebCore::Node::setOnclick):
   42384         (WebCore::Node::oncontextmenu):
   42385         (WebCore::Node::setOncontextmenu):
   42386         (WebCore::Node::ondblclick):
   42387         (WebCore::Node::setOndblclick):
   42388         (WebCore::Node::onerror):
   42389         (WebCore::Node::setOnerror):
   42390         (WebCore::Node::onfocus):
   42391         (WebCore::Node::setOnfocus):
   42392         (WebCore::Node::oninput):
   42393         (WebCore::Node::setOninput):
   42394         (WebCore::Node::onkeydown):
   42395         (WebCore::Node::setOnkeydown):
   42396         (WebCore::Node::onkeypress):
   42397         (WebCore::Node::setOnkeypress):
   42398         (WebCore::Node::onkeyup):
   42399         (WebCore::Node::setOnkeyup):
   42400         (WebCore::Node::onload):
   42401         (WebCore::Node::setOnload):
   42402         (WebCore::Node::onmousedown):
   42403         (WebCore::Node::setOnmousedown):
   42404         (WebCore::Node::onmousemove):
   42405         (WebCore::Node::setOnmousemove):
   42406         (WebCore::Node::onmouseout):
   42407         (WebCore::Node::setOnmouseout):
   42408         (WebCore::Node::onmouseover):
   42409         (WebCore::Node::setOnmouseover):
   42410         (WebCore::Node::onmouseup):
   42411         (WebCore::Node::setOnmouseup):
   42412         (WebCore::Node::onmousewheel):
   42413         (WebCore::Node::setOnmousewheel):
   42414         (WebCore::Node::onbeforecut):
   42415         (WebCore::Node::setOnbeforecut):
   42416         (WebCore::Node::oncut):
   42417         (WebCore::Node::setOncut):
   42418         (WebCore::Node::onbeforecopy):
   42419         (WebCore::Node::setOnbeforecopy):
   42420         (WebCore::Node::oncopy):
   42421         (WebCore::Node::setOncopy):
   42422         (WebCore::Node::onbeforepaste):
   42423         (WebCore::Node::setOnbeforepaste):
   42424         (WebCore::Node::onpaste):
   42425         (WebCore::Node::setOnpaste):
   42426         (WebCore::Node::ondragenter):
   42427         (WebCore::Node::setOndragenter):
   42428         (WebCore::Node::ondragover):
   42429         (WebCore::Node::setOndragover):
   42430         (WebCore::Node::ondragleave):
   42431         (WebCore::Node::setOndragleave):
   42432         (WebCore::Node::ondrop):
   42433         (WebCore::Node::setOndrop):
   42434         (WebCore::Node::ondragstart):
   42435         (WebCore::Node::setOndragstart):
   42436         (WebCore::Node::ondrag):
   42437         (WebCore::Node::setOndrag):
   42438         (WebCore::Node::ondragend):
   42439         (WebCore::Node::setOndragend):
   42440         (WebCore::Node::onreset):
   42441         (WebCore::Node::setOnreset):
   42442         (WebCore::Node::onresize):
   42443         (WebCore::Node::setOnresize):
   42444         (WebCore::Node::onscroll):
   42445         (WebCore::Node::setOnscroll):
   42446         (WebCore::Node::onsearch):
   42447         (WebCore::Node::setOnsearch):
   42448         (WebCore::Node::onselect):
   42449         (WebCore::Node::setOnselect):
   42450         (WebCore::Node::onselectstart):
   42451         (WebCore::Node::setOnselectstart):
   42452         (WebCore::Node::onsubmit):
   42453         (WebCore::Node::setOnsubmit):
   42454         (WebCore::Node::onunload):
   42455         (WebCore::Node::setOnunload):
   42456         * dom/Node.h:
   42457         * editing/Editor.cpp:
   42458         (WebCore::Editor::dispatchCPPEvent):
   42459         * html/HTMLFormElement.cpp:
   42460         (WebCore::HTMLFormElement::handleLocalEvents):
   42461         * html/HTMLInputElement.cpp:
   42462         (WebCore::HTMLInputElement::defaultEventHandler):
   42463         * html/HTMLTokenizer.cpp:
   42464         (WebCore::HTMLTokenizer::notifyFinished):
   42465         * loader/MediaDocument.cpp:
   42466         (WebCore::MediaDocument::defaultEventHandler):
   42467         * page/AccessibilityRenderObject.cpp:
   42468         (WebCore::AccessibilityRenderObject::mouseButtonListener):
   42469         * page/EventHandler.cpp:
   42470         (WebCore::EventHandler::dispatchDragEvent):
   42471         (WebCore::EventHandler::updateMouseEventTargetNode):
   42472         (WebCore::EventHandler::dispatchMouseEvent):
   42473         (WebCore::EventHandler::handleWheelEvent):
   42474         (WebCore::EventHandler::canMouseDownStartSelect):
   42475         (WebCore::EventHandler::canMouseDragExtendSelect):
   42476         (WebCore::eventTargetNodeForDocument):
   42477         (WebCore::EventHandler::keyEvent):
   42478         * page/FrameView.cpp:
   42479         (WebCore::FrameView::scheduleEvent):
   42480         (WebCore::FrameView::updateOverflowStatus):
   42481         * page/FrameView.h:
   42482         * page/Page.cpp:
   42483         (WebCore::networkStateChanged):
   42484         * rendering/RenderLayer.cpp:
   42485         (WebCore::RenderLayer::scrollToOffset):
   42486         (WebCore::RenderLayer::updateOverflowStatus):
   42487         * rendering/RenderListBox.cpp:
   42488         (WebCore::RenderListBox::valueChanged):
   42489         * rendering/RenderMedia.h:
   42490         * rendering/RenderTextControl.cpp:
   42491         (WebCore::RenderTextControl::selectionChanged):
   42492         * svg/SVGElementInstance.h:
   42493         (WebCore::SVGElementInstance::toNode):
   42494         * xml/XPathExpression.cpp:
   42495         (WebCore::XPathExpression::evaluate):
   42496         * xml/XPathResult.cpp:
   42497         (WebCore::XPathResult::XPathResult):
   42498 
   42499 2009-02-05  Adam Treat  <adam.treat (a] torchmobile.com>
   42500 
   42501         Fix the Qt build now that EventTargetNode.idl was removed in r40672.
   42502 
   42503         * WebCore.pro:
   42504 
   42505 2009-02-05  Scott Violet  <sky (a] google.com>
   42506 
   42507         Reviewed by Sam Weinig.
   42508 
   42509         Bug 23462: Add RGB -> CMYK conversion algorithm
   42510         <https://bugs.webkit.org/show_bug.cgi?id=23462>
   42511 
   42512         Adds an RGB -> CMYK converter. This isn't perfect, but better than
   42513         nothing.
   42514 
   42515         * html/CanvasStyle.cpp:
   42516         (WebCore::CanvasStyle::applyStrokeColor):
   42517         (WebCore::CanvasStyle::applyFillColor):
   42518         (WebCore::CanvasStyle::cmykToRGB):
   42519         * html/CanvasStyle.h:
   42520 
   42521 2009-02-04  Sam Weinig  <sam (a] webkit.org>
   42522 
   42523         Reviewed by Darin Adler.
   42524 
   42525         First stage of merging EventTargetNode up into Node. The intent of this change
   42526         is to both simplify the inheritance hierarchy (at the same time making it more
   42527         closely match the spec which states that all Nodes are EventTargets) and save
   42528         4 bytes per Node that the polymorphic multiple-inheritance was costing us.
   42529 
   42530         This does the bare minimum to get things compiling, the next patch will clean
   42531 
   42532         * DerivedSources.make:
   42533         * WebCore.base.exp:
   42534         * WebCore.xcodeproj/project.pbxproj:
   42535         * bindings/js/JSDocumentCustom.cpp:
   42536         (WebCore::JSDocument::mark):
   42537         * bindings/js/JSEventListener.cpp:
   42538         (WebCore::JSLazyEventListener::parseCode):
   42539         * bindings/js/JSEventTarget.cpp:
   42540         (WebCore::toEventTarget):
   42541         * bindings/js/JSEventTarget.h:
   42542         * bindings/js/JSEventTargetNodeCustom.cpp:
   42543         (WebCore::JSNode::addEventListener):
   42544         (WebCore::JSNode::removeEventListener):
   42545         (WebCore::JSNode::pushEventHandlerScope):
   42546         * bindings/js/JSStyleSheetCustom.cpp:
   42547         * bindings/scripts/CodeGeneratorJS.pm:
   42548         * bindings/scripts/CodeGeneratorObjC.pm:
   42549         * dom/Attr.idl:
   42550         * dom/CharacterData.h:
   42551         * dom/CharacterData.idl:
   42552         * dom/Document.idl:
   42553         * dom/DocumentFragment.idl:
   42554         * dom/Element.idl:
   42555         * dom/EventTarget.cpp:
   42556         (WebCore::EventTarget::toNode):
   42557         * dom/EventTarget.h:
   42558         * dom/EventTarget.idl:
   42559         * dom/EventTargetNode.cpp:
   42560         (WebCore::Node::scriptExecutionContext):
   42561         (WebCore::Node::eventListeners):
   42562         (WebCore::Node::insertedIntoDocument):
   42563         (WebCore::Node::removedFromDocument):
   42564         (WebCore::Node::willMoveToNewOwnerDocument):
   42565         (WebCore::Node::didMoveToNewOwnerDocument):
   42566         (WebCore::Node::addEventListener):
   42567         (WebCore::Node::removeEventListener):
   42568         (WebCore::Node::removeAllEventListenersSlowCase):
   42569         (WebCore::Node::handleLocalEvents):
   42570         (WebCore::Node::dispatchEvent):
   42571         (WebCore::Node::dispatchGenericEvent):
   42572         (WebCore::Node::dispatchSubtreeModifiedEvent):
   42573         (WebCore::Node::dispatchWindowEvent):
   42574         (WebCore::Node::dispatchUIEvent):
   42575         (WebCore::Node::dispatchKeyEvent):
   42576         (WebCore::Node::dispatchMouseEvent):
   42577         (WebCore::Node::dispatchSimulatedMouseEvent):
   42578         (WebCore::Node::dispatchSimulatedClick):
   42579         (WebCore::Node::dispatchWheelEvent):
   42580         (WebCore::Node::dispatchWebKitAnimationEvent):
   42581         (WebCore::Node::dispatchWebKitTransitionEvent):
   42582         (WebCore::Node::dispatchFocusEvent):
   42583         (WebCore::Node::dispatchBlurEvent):
   42584         (WebCore::Node::dispatchEventForType):
   42585         (WebCore::Node::dispatchProgressEvent):
   42586         (WebCore::Node::dispatchStorageEvent):
   42587         (WebCore::Node::removeInlineEventListenerForType):
   42588         (WebCore::Node::setInlineEventListenerForType):
   42589         (WebCore::Node::setInlineEventListenerForTypeAndAttribute):
   42590         (WebCore::Node::inlineEventListenerForType):
   42591         (WebCore::Node::disabled):
   42592         (WebCore::Node::defaultEventHandler):
   42593         (WebCore::Node::onabort):
   42594         (WebCore::Node::setOnabort):
   42595         (WebCore::Node::onblur):
   42596         (WebCore::Node::setOnblur):
   42597         (WebCore::Node::onchange):
   42598         (WebCore::Node::setOnchange):
   42599         (WebCore::Node::onclick):
   42600         (WebCore::Node::setOnclick):
   42601         (WebCore::Node::oncontextmenu):
   42602         (WebCore::Node::setOncontextmenu):
   42603         (WebCore::Node::ondblclick):
   42604         (WebCore::Node::setOndblclick):
   42605         (WebCore::Node::onerror):
   42606         (WebCore::Node::setOnerror):
   42607         (WebCore::Node::onfocus):
   42608         (WebCore::Node::setOnfocus):
   42609         (WebCore::Node::oninput):
   42610         (WebCore::Node::setOninput):
   42611         (WebCore::Node::onkeydown):
   42612         (WebCore::Node::setOnkeydown):
   42613         (WebCore::Node::onkeypress):
   42614         (WebCore::Node::setOnkeypress):
   42615         (WebCore::Node::onkeyup):
   42616         (WebCore::Node::setOnkeyup):
   42617         (WebCore::Node::onload):
   42618         (WebCore::Node::setOnload):
   42619         (WebCore::Node::onmousedown):
   42620         (WebCore::Node::setOnmousedown):
   42621         (WebCore::Node::onmousemove):
   42622         (WebCore::Node::setOnmousemove):
   42623         (WebCore::Node::onmouseout):
   42624         (WebCore::Node::setOnmouseout):
   42625         (WebCore::Node::onmouseover):
   42626         (WebCore::Node::setOnmouseover):
   42627         (WebCore::Node::onmouseup):
   42628         (WebCore::Node::setOnmouseup):
   42629         (WebCore::Node::onmousewheel):
   42630         (WebCore::Node::setOnmousewheel):
   42631         (WebCore::Node::onbeforecut):
   42632         (WebCore::Node::setOnbeforecut):
   42633         (WebCore::Node::oncut):
   42634         (WebCore::Node::setOncut):
   42635         (WebCore::Node::onbeforecopy):
   42636         (WebCore::Node::setOnbeforecopy):
   42637         (WebCore::Node::oncopy):
   42638         (WebCore::Node::setOncopy):
   42639         (WebCore::Node::onbeforepaste):
   42640         (WebCore::Node::setOnbeforepaste):
   42641         (WebCore::Node::onpaste):
   42642         (WebCore::Node::setOnpaste):
   42643         (WebCore::Node::ondragenter):
   42644         (WebCore::Node::setOndragenter):
   42645         (WebCore::Node::ondragover):
   42646         (WebCore::Node::setOndragover):
   42647         (WebCore::Node::ondragleave):
   42648         (WebCore::Node::setOndragleave):
   42649         (WebCore::Node::ondrop):
   42650         (WebCore::Node::setOndrop):
   42651         (WebCore::Node::ondragstart):
   42652         (WebCore::Node::setOndragstart):
   42653         (WebCore::Node::ondrag):
   42654         (WebCore::Node::setOndrag):
   42655         (WebCore::Node::ondragend):
   42656         (WebCore::Node::setOndragend):
   42657         (WebCore::Node::onreset):
   42658         (WebCore::Node::setOnreset):
   42659         (WebCore::Node::onresize):
   42660         (WebCore::Node::setOnresize):
   42661         (WebCore::Node::onscroll):
   42662         (WebCore::Node::setOnscroll):
   42663         (WebCore::Node::onsearch):
   42664         (WebCore::Node::setOnsearch):
   42665         (WebCore::Node::onselect):
   42666         (WebCore::Node::setOnselect):
   42667         (WebCore::Node::onselectstart):
   42668         (WebCore::Node::setOnselectstart):
   42669         (WebCore::Node::onsubmit):
   42670         (WebCore::Node::setOnsubmit):
   42671         (WebCore::Node::onunload):
   42672         (WebCore::Node::setOnunload):
   42673         * dom/EventTargetNode.h:
   42674         (WebCore::toEventTargetNode):
   42675         (WebCore::EventTargetNodeCast):
   42676         * dom/EventTargetNode.idl: Removed.
   42677         * dom/MouseEvent.cpp:
   42678         (WebCore::MouseEvent::MouseEvent):
   42679         (WebCore::MouseEvent::initMouseEvent):
   42680         (WebCore::MouseEvent::toElement):
   42681         (WebCore::MouseEvent::fromElement):
   42682         * dom/MouseEvent.h:
   42683         (WebCore::MouseEvent::create):
   42684         (WebCore::MouseEvent::relatedTarget):
   42685         * dom/Node.cpp:
   42686         (WebCore::Node::~Node):
   42687         * dom/Node.h:
   42688         (WebCore::Node::isEventTargetNode):
   42689         (WebCore::Node::toNode):
   42690         (WebCore::Node::removeAllEventListeners):
   42691         (WebCore::Node::refEventTarget):
   42692         (WebCore::Node::derefEventTarget):
   42693         * dom/Node.idl:
   42694         * page/EventHandler.h:
   42695         * page/FrameView.h:
   42696         * xml/XPathResult.h:
   42697         (WebCore::XPathResult::create):
   42698 
   42699 2009-02-04  David Hyatt  <hyatt (a] apple.com>
   42700 
   42701         Convert RenderLayer from having a RenderBox* m_renderer to having a RenderBoxModelObject*.  The
   42702         container-relative repaint methods all had to be changed as a result to use RenderBoxModelObject* also.
   42703 
   42704         All of RenderLayer.cpp now uses what will be the new style for dealing with an object that can be a block
   42705         or an inline flow.  x()/y()/width()/height() can't be queried on an inline flow, nor can many other
   42706         properties (like scrollWidth() / scrollHeight()), so the code has to be tightened up to convert to RenderBox
   42707         under the right conditions.
   42708 
   42709         There was a bogus subtraction of renderer()->y() in localBounding box for RenderInlines.  Since y was always
   42710         0, this subtraction wasn't necessary.  It has been removed.
   42711 
   42712         Reviewed by Adam Roben
   42713 
   42714         * page/animation/AnimationBase.cpp:
   42715         * rendering/RenderBR.h:
   42716         (WebCore::RenderBR::selectionRectForRepaint):
   42717         * rendering/RenderBlock.cpp:
   42718         (WebCore::RenderBlock::selectionGapRectsForRepaint):
   42719         (WebCore::RenderBlock::rectWithOutlineForRepaint):
   42720         * rendering/RenderBlock.h:
   42721         (WebCore::RenderBlock::selectionRectForRepaint):
   42722         * rendering/RenderBox.cpp:
   42723         (WebCore::RenderBox::outlineBoundsForRepaint):
   42724         (WebCore::RenderBox::localToContainerQuad):
   42725         (WebCore::RenderBox::clippedOverflowRectForRepaint):
   42726         (WebCore::RenderBox::computeRectForRepaint):
   42727         * rendering/RenderBox.h:
   42728         * rendering/RenderBoxModelObject.cpp:
   42729         (WebCore::RenderBoxModelObject::relativePositionOffsetX):
   42730         (WebCore::RenderBoxModelObject::relativePositionOffsetY):
   42731         * rendering/RenderBoxModelObject.h:
   42732         (WebCore::RenderBoxModelObject::relativePositionOffset):
   42733         * rendering/RenderForeignObject.cpp:
   42734         (WebCore::RenderForeignObject::computeRectForRepaint):
   42735         * rendering/RenderForeignObject.h:
   42736         * rendering/RenderInline.cpp:
   42737         (WebCore::RenderInline::clippedOverflowRectForRepaint):
   42738         (WebCore::RenderInline::rectWithOutlineForRepaint):
   42739         * rendering/RenderInline.h:
   42740         * rendering/RenderLayer.cpp:
   42741         (WebCore::RenderLayer::RenderLayer):
   42742         (WebCore::RenderLayer::updateLayerPositions):
   42743         (WebCore::RenderLayer::updateTransform):
   42744         (WebCore::RenderLayer::setHasVisibleContent):
   42745         (WebCore::RenderLayer::updateLayerPosition):
   42746         (WebCore::RenderLayer::scrollToOffset):
   42747         (WebCore::RenderLayer::scrollRectToVisible):
   42748         (WebCore::resizerCornerRect):
   42749         (WebCore::RenderLayer::scrollbarCornerPresent):
   42750         (WebCore::RenderLayer::invalidateScrollbarRect):
   42751         (WebCore::RenderLayer::positionOverflowControls):
   42752         (WebCore::RenderLayer::computeScrollDimensions):
   42753         (WebCore::RenderLayer::updateScrollInfoAfterLayout):
   42754         (WebCore::RenderLayer::paintScrollCorner):
   42755         (WebCore::RenderLayer::paintResizer):
   42756         (WebCore::RenderLayer::isPointInResizeControl):
   42757         (WebCore::RenderLayer::hitTestOverflowControls):
   42758         (WebCore::RenderLayer::paintLayer):
   42759         (WebCore::RenderLayer::hitTestLayer):
   42760         (WebCore::RenderLayer::localBoundingBox):
   42761         * rendering/RenderLayer.h:
   42762         (WebCore::RenderLayer::renderer):
   42763         (WebCore::RenderLayer::renderBox):
   42764         (WebCore::RenderLayer::renderBoxX):
   42765         (WebCore::RenderLayer::renderBoxY):
   42766         * rendering/RenderListMarker.cpp:
   42767         (WebCore::RenderListMarker::selectionRectForRepaint):
   42768         * rendering/RenderListMarker.h:
   42769         * rendering/RenderMarquee.cpp:
   42770         (WebCore::RenderMarquee::computePosition):
   42771         (WebCore::RenderMarquee::timerFired):
   42772         * rendering/RenderObject.cpp:
   42773         (WebCore::RenderObject::containerForRepaint):
   42774         (WebCore::RenderObject::repaintUsingContainer):
   42775         (WebCore::RenderObject::repaint):
   42776         (WebCore::RenderObject::repaintRectangle):
   42777         (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
   42778         (WebCore::RenderObject::rectWithOutlineForRepaint):
   42779         (WebCore::RenderObject::clippedOverflowRectForRepaint):
   42780         (WebCore::RenderObject::computeRectForRepaint):
   42781         (WebCore::RenderObject::localToContainerQuad):
   42782         * rendering/RenderObject.h:
   42783         (WebCore::RenderObject::selectionRectForRepaint):
   42784         (WebCore::RenderObject::outlineBoundsForRepaint):
   42785         * rendering/RenderPath.cpp:
   42786         (WebCore::RenderPath::clippedOverflowRectForRepaint):
   42787         (WebCore::RenderPath::outlineBoundsForRepaint):
   42788         * rendering/RenderPath.h:
   42789         * rendering/RenderReplaced.cpp:
   42790         (WebCore::RenderReplaced::selectionRectForRepaint):
   42791         (WebCore::RenderReplaced::clippedOverflowRectForRepaint):
   42792         * rendering/RenderReplaced.h:
   42793         * rendering/RenderSVGContainer.cpp:
   42794         (WebCore::RenderSVGContainer::clippedOverflowRectForRepaint):
   42795         (WebCore::RenderSVGContainer::outlineBoundsForRepaint):
   42796         * rendering/RenderSVGContainer.h:
   42797         * rendering/RenderSVGHiddenContainer.cpp:
   42798         (WebCore::RenderSVGHiddenContainer::clippedOverflowRectForRepaint):
   42799         * rendering/RenderSVGHiddenContainer.h:
   42800         * rendering/RenderSVGImage.cpp:
   42801         (WebCore::RenderSVGImage::clippedOverflowRectForRepaint):
   42802         * rendering/RenderSVGImage.h:
   42803         * rendering/RenderSVGInlineText.cpp:
   42804         (WebCore::RenderSVGInlineText::selectionRectForRepaint):
   42805         (WebCore::RenderSVGInlineText::computeRepaintRectForRange):
   42806         * rendering/RenderSVGInlineText.h:
   42807         * rendering/RenderSVGRoot.cpp:
   42808         (WebCore::RenderSVGRoot::clippedOverflowRectForRepaint):
   42809         * rendering/RenderSVGRoot.h:
   42810         * rendering/RenderSVGText.cpp:
   42811         (WebCore::RenderSVGText::clippedOverflowRectForRepaint):
   42812         * rendering/RenderSVGText.h:
   42813         * rendering/RenderSelectionInfo.h:
   42814         (WebCore::RenderSelectionInfoBase::repaintContainer):
   42815         * rendering/RenderTableCell.cpp:
   42816         (WebCore::RenderTableCell::clippedOverflowRectForRepaint):
   42817         (WebCore::RenderTableCell::computeRectForRepaint):
   42818         (WebCore::RenderTableCell::localToContainerQuad):
   42819         * rendering/RenderTableCell.h:
   42820         * rendering/RenderTableCol.cpp:
   42821         (WebCore::RenderTableCol::clippedOverflowRectForRepaint):
   42822         * rendering/RenderTableCol.h:
   42823         * rendering/RenderTableRow.cpp:
   42824         (WebCore::RenderTableRow::clippedOverflowRectForRepaint):
   42825         * rendering/RenderTableRow.h:
   42826         * rendering/RenderText.cpp:
   42827         (WebCore::RenderText::clippedOverflowRectForRepaint):
   42828         (WebCore::RenderText::selectionRectForRepaint):
   42829         * rendering/RenderText.h:
   42830         * rendering/RenderTreeAsText.cpp:
   42831         (WebCore::write):
   42832         * rendering/RenderView.cpp:
   42833         (WebCore::RenderView::localToContainerQuad):
   42834         (WebCore::RenderView::computeRectForRepaint):
   42835         * rendering/RenderView.h:
   42836 
   42837 2009-02-05  Alexey Proskuryakov  <ap (a] webkit.org>
   42838 
   42839         Build fix.
   42840 
   42841         * page/animation/KeyframeAnimation.h: A function prototype had two "fromStyle" arguments.
   42842 
   42843 2009-02-05  Yael Aharon  <yael.aharon (a] nokia.com>
   42844 
   42845         Reviewed by Alexey Proskuryakov.
   42846         Landed by Simon Hausmann.
   42847 
   42848         https://bugs.webkit.org/show_bug.cgi?id=23733
   42849 
   42850         Use a 2 arguments constructor for KURL to avoid ASSERT failure.
   42851 
   42852         * page/SecurityOrigin.cpp:
   42853         (WebCore::SecurityOrigin::createFromDatabaseIdentifier):
   42854 
   42855 2009-02-04  Feng Qian  <feng (a] chromium.org>
   42856 
   42857         Reviewed by Darin Adler.
   42858 
   42859         Add Android-specific files to WebCore/editing directory.
   42860         https://bugs.webkit.org/show_bug.cgi?id=23294
   42861 
   42862         * editing/android: Added.
   42863         * editing/android/EditorAndroid.cpp: Added.
   42864         (WebCore::Editor::newGeneralClipboard):
   42865 
   42866 2009-02-04  Dean Jackson  <dino (a] apple.com>
   42867 
   42868         Reviewed by Darin Adler.
   42869 
   42870         Remove -webkit-animation-play-state
   42871         The AnimationController still has the code to execute the property, but
   42872         it is no longer parsed or recorded.
   42873         https://bugs.webkit.org/show_bug.cgi?id=22907
   42874 
   42875         * css/CSSComputedStyleDeclaration.cpp:
   42876         (WebCore::):
   42877         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   42878         * css/CSSParser.cpp:
   42879         (WebCore::CSSParser::parseValue):
   42880         (WebCore::CSSParser::parseAnimationProperty):
   42881         * css/CSSParser.h:
   42882         * css/CSSPropertyNames.in:
   42883         * css/CSSStyleSelector.cpp:
   42884         (WebCore::CSSStyleSelector::applyProperty):
   42885         * css/CSSStyleSelector.h:
   42886         * platform/animation/Animation.h:
   42887         * rendering/style/RenderStyleConstants.h:
   42888 
   42889 2009-02-04  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   42890 
   42891         Reviewed by Darin Adler.
   42892 
   42893         Make sure we don't load on removing the media element from the document
   42894         https://bugs.webkit.org/show_bug.cgi?id=22105
   42895 
   42896         Test: media/remove-from-document-no-load.html
   42897 
   42898         * html/HTMLMediaElement.cpp:
   42899         (WebCore::HTMLMediaElement::removedFromDocument):
   42900 
   42901 2009-02-04  David Hyatt  <hyatt (a] apple.com>
   42902 
   42903         Add a new RenderBoxModelObject class that will eventually act as the direct base class for RenderInlines.  For
   42904         now just adding the class and putting it in between RenderObject and RenderBox in the hierarchy.  RenderInline remains
   42905         derived from RenderBox for now.
   42906 
   42907         Reviewed by Sam Weinig
   42908 
   42909         * WebCore.xcodeproj/project.pbxproj:
   42910         * rendering/RenderBox.cpp:
   42911         (WebCore::RenderBox::RenderBox):
   42912         (WebCore::RenderBox::destroy):
   42913         (WebCore::RenderBox::styleWillChange):
   42914         (WebCore::RenderBox::styleDidChange):
   42915         (WebCore::RenderBox::computeRectForRepaint):
   42916         * rendering/RenderBox.h:
   42917         * rendering/RenderBoxModelObject.cpp: Added.
   42918         (WebCore::RenderBoxModelObject::RenderBoxModelObject):
   42919         (WebCore::RenderBoxModelObject::~RenderBoxModelObject):
   42920         * rendering/RenderBoxModelObject.h: Added.
   42921         * rendering/RenderObject.h:
   42922 
   42923 2009-02-04  Chris Marrin  <cmarrin (a] apple.com>
   42924 
   42925         Reviewed by Dave Hyatt
   42926 
   42927         Added accelerated animation support to AnimationController and friends. The primary
   42928         changes are:
   42929         * accelerated animations get their start time from the compositing engine, so we
   42930           wait for a callback (notifyAnimationStarted()) in order to get the start time.
   42931         * if software and accelerated animations start in the same cycle, they all need
   42932           to use the same start time, which is that of the accelerated animations.
   42933 
   42934         Added AnimationControllerPrivate to preserve the encapsulation under
   42935         AnimationController.
   42936 
   42937         * GNUmakefile.am:
   42938         * WebCore.vcproj/WebCore.vcproj:
   42939         * WebCore.xcodeproj/project.pbxproj:
   42940         * page/animation/AnimationBase.cpp:
   42941         (WebCore::PropertyWrapperBase::animationIsAccelerated):
   42942         (WebCore::PropertyWrapperAcceleratedOpacity::PropertyWrapperAcceleratedOpacity):
   42943         (WebCore::PropertyWrapperAcceleratedOpacity::animationIsAccelerated):
   42944         (WebCore::PropertyWrapperAcceleratedOpacity::blend):
   42945         (WebCore::PropertyWrapperAcceleratedTransform::PropertyWrapperAcceleratedTransform):
   42946         (WebCore::PropertyWrapperAcceleratedTransform::animationIsAccelerated):
   42947         (WebCore::PropertyWrapperAcceleratedTransform::blend):
   42948         (WebCore::ensurePropertyMap):
   42949         (WebCore::AnimationBase::AnimationBase):
   42950         (WebCore::AnimationBase::~AnimationBase):
   42951         (WebCore::AnimationBase::blendProperties):
   42952         (WebCore::AnimationBase::animationOfPropertyIsAccelerated):
   42953         (WebCore::AnimationBase::updateStateMachine):
   42954         (WebCore::AnimationBase::fireAnimationEventsIfNeeded):
   42955         (WebCore::AnimationBase::willNeedService):
   42956         (WebCore::AnimationBase::getTimeToNextEvent):
   42957         (WebCore::AnimationBase::goIntoEndingOrLoopingState):
   42958         (WebCore::AnimationBase::beginAnimationUpdateTime):
   42959         * page/animation/AnimationBase.h:
   42960         (WebCore::AnimationBase::onAnimationStartResponse):
   42961         (WebCore::AnimationBase::getAnimatedStyle):
   42962         (WebCore::AnimationBase::isAnimatingProperty):
   42963         (WebCore::AnimationBase::endAnimation):
   42964         (WebCore::AnimationBase::isFallbackAnimating):
   42965         * page/animation/AnimationController.cpp:
   42966         (WebCore::AnimationControllerPrivate::AnimationControllerPrivate):
   42967         (WebCore::AnimationControllerPrivate::accessCompositeAnimation):
   42968         (WebCore::AnimationControllerPrivate::addNodeChangeToDispatch):
   42969         (WebCore::AnimationControllerPrivate::animationTimerFired):
   42970         (WebCore::AnimationControllerPrivate::pauseAnimationAtTime):
   42971         (WebCore::AnimationControllerPrivate::pauseTransitionAtTime):
   42972         (WebCore::AnimationControllerPrivate::beginAnimationUpdateTime):
   42973         (WebCore::AnimationControllerPrivate::getAnimatedStyleForRenderer):
   42974         (WebCore::AnimationControllerPrivate::styleAvailable):
   42975         (WebCore::AnimationControllerPrivate::addToStartTimeResponseWaitList):
   42976         (WebCore::AnimationControllerPrivate::removeFromStartTimeResponseWaitList):
   42977         (WebCore::AnimationControllerPrivate::startTimeResponse):
   42978         (WebCore::AnimationController::getAnimatedStyleForRenderer):
   42979         (WebCore::AnimationController::notifyAnimationStarted):
   42980         (WebCore::AnimationController::endAnimationUpdate):
   42981         * page/animation/AnimationController.h:
   42982         * page/animation/AnimationControllerPrivate.h: Added.
   42983         (WebCore::AnimationControllerPrivate::hasAnimations):
   42984         (WebCore::AnimationControllerPrivate::setBeginAnimationUpdateTime):
   42985         (WebCore::AnimationControllerPrivate::endAnimationUpdate):
   42986         (WebCore::AnimationControllerPrivate::receivedStartTimeResponse):
   42987         * page/animation/CompositeAnimation.cpp:
   42988         (WebCore::CompositeAnimationPrivate::CompositeAnimationPrivate):
   42989         (WebCore::CompositeAnimationPrivate::animationControllerPriv):
   42990         (WebCore::CompositeAnimationPrivate::updateTransitions):
   42991         (WebCore::CompositeAnimationPrivate::updateKeyframeAnimations):
   42992         (WebCore::CompositeAnimationPrivate::animate):
   42993         (WebCore::CompositeAnimationPrivate::getAnimatedStyle):
   42994         (WebCore::CompositeAnimationPrivate::addToStartTimeResponseWaitList):
   42995         (WebCore::CompositeAnimationPrivate::removeFromStartTimeResponseWaitList):
   42996         (WebCore::CompositeAnimation::CompositeAnimation):
   42997         (WebCore::CompositeAnimation::animationControllerPriv):
   42998         (WebCore::CompositeAnimation::getAnimatedStyle):
   42999         (WebCore::CompositeAnimation::addToStartTimeResponseWaitList):
   43000         (WebCore::CompositeAnimation::removeFromStartTimeResponseWaitList):
   43001         * page/animation/CompositeAnimation.h:
   43002         (WebCore::CompositeAnimation::create):
   43003         * page/animation/ImplicitAnimation.cpp:
   43004         (WebCore::ImplicitAnimation::shouldSendEventForListener):
   43005         (WebCore::ImplicitAnimation::animate):
   43006         (WebCore::ImplicitAnimation::getAnimatedStyle):
   43007         (WebCore::ImplicitAnimation::startAnimation):
   43008         (WebCore::ImplicitAnimation::endAnimation):
   43009         (WebCore::ImplicitAnimation::sendTransitionEvent):
   43010         (WebCore::ImplicitAnimation::willNeedService):
   43011         * page/animation/ImplicitAnimation.h:
   43012         * page/animation/KeyframeAnimation.cpp:
   43013         (WebCore::KeyframeAnimation::getKeyframeAnimationInterval):
   43014         (WebCore::KeyframeAnimation::animate):
   43015         (WebCore::KeyframeAnimation::getAnimatedStyle):
   43016         (WebCore::KeyframeAnimation::startAnimation):
   43017         (WebCore::KeyframeAnimation::endAnimation):
   43018         (WebCore::KeyframeAnimation::shouldSendEventForListener):
   43019         (WebCore::KeyframeAnimation::sendAnimationEvent):
   43020         (WebCore::KeyframeAnimation::willNeedService):
   43021         * page/animation/KeyframeAnimation.h:
   43022         * platform/graphics/GraphicsLayerClient.h:
   43023         * platform/graphics/mac/GraphicsLayerCA.mm:
   43024         (-[WebAnimationDelegate animationDidStart:]):
   43025         * rendering/RenderLayerBacking.h:
   43026 
   43027 2009-02-04  Dimitri Glazkov  <dglazkov (a] chromium.org>
   43028 
   43029         Not reviewed, build fix.
   43030 
   43031         Remove duplicate definition of msSans in FontCache::alternateFamilyName.
   43032 
   43033         * platform/graphics/FontCache.cpp:
   43034         (WebCore::alternateFamilyName):
   43035 
   43036 2009-02-04  Eric Seidel  <eric (a] webkit.org>
   43037 
   43038         Reviewed by George Staikos.
   43039 
   43040         Reverse the meaning of the if check so that Android
   43041         (dpad devices) do not scroll on focus and normal platforms do
   43042         http://trac.webkit.org/changeset/40647
   43043 
   43044         This was caught by George Staikos, and I wrote the patch.
   43045 
   43046         * dom/Element.cpp:
   43047         (WebCore::Element::updateFocusAppearance):
   43048 
   43049 2009-02-04  David Hyatt  <hyatt (a] apple.com>
   43050 
   43051         Eliminate RenderContainer.
   43052 
   43053         Reviewed by Sam and Anders
   43054 
   43055         * GNUmakefile.am:
   43056         * WebCore.pro:
   43057         * WebCore.vcproj/WebCore.vcproj:
   43058         * WebCore.xcodeproj/project.pbxproj:
   43059         * WebCoreSources.bkl:
   43060         * rendering/RenderBlock.cpp:
   43061         (WebCore::RenderBlock::RenderBlock):
   43062         (WebCore::RenderBlock::destroy):
   43063         (WebCore::RenderBlock::styleWillChange):
   43064         (WebCore::RenderBlock::styleDidChange):
   43065         (WebCore::RenderBlock::addChild):
   43066         (WebCore::RenderBlock::dirtyLineBoxes):
   43067         (WebCore::RenderBlock::createInlineBox):
   43068         (WebCore::RenderBlock::removeChild):
   43069         (WebCore::RenderBlock::setSelectionState):
   43070         (WebCore::RenderBlock::avoidsFloats):
   43071         (WebCore::RenderBlock::positionForCoordinates):
   43072         (WebCore::RenderBlock::calcInlinePrefWidths):
   43073         (WebCore::RenderBlock::baselinePosition):
   43074         (WebCore::RenderBlock::getBaselineOfFirstLineBox):
   43075         (WebCore::RenderBlock::getBaselineOfLastLineBox):
   43076         (WebCore::RenderBlock::rectWithOutlineForRepaint):
   43077         (WebCore::RenderBlock::hoverAncestor):
   43078         (WebCore::RenderBlock::updateDragState):
   43079         (WebCore::RenderBlock::localCaretRect):
   43080         * rendering/RenderBlock.h:
   43081         (WebCore::RenderBlock::virtualChildren):
   43082         (WebCore::RenderBlock::children):
   43083         * rendering/RenderContainer.cpp: Removed.
   43084         * rendering/RenderContainer.h: Removed.
   43085         * rendering/RenderFrameSet.cpp:
   43086         (WebCore::RenderFrameSet::RenderFrameSet):
   43087         (WebCore::RenderFrameSet::nodeAtPoint):
   43088         (WebCore::RenderFrameSet::layout):
   43089         * rendering/RenderFrameSet.h:
   43090         (WebCore::RenderFrameSet::virtualChildren):
   43091         (WebCore::RenderFrameSet::children):
   43092         * rendering/RenderInline.cpp:
   43093         (WebCore::RenderInline::RenderInline):
   43094         (WebCore::RenderInline::destroy):
   43095         (WebCore::RenderInline::styleDidChange):
   43096         (WebCore::nextContinuation):
   43097         (WebCore::RenderInline::continuationBefore):
   43098         (WebCore::RenderInline::addChildIgnoringContinuation):
   43099         (WebCore::RenderInline::splitInlines):
   43100         (WebCore::RenderInline::splitFlow):
   43101         (WebCore::RenderInline::addChildToContinuation):
   43102         (WebCore::RenderInline::offsetLeft):
   43103         (WebCore::RenderInline::offsetTop):
   43104         (WebCore::RenderInline::positionForCoordinates):
   43105         (WebCore::RenderInline::clippedOverflowRectForRepaint):
   43106         (WebCore::RenderInline::rectWithOutlineForRepaint):
   43107         (WebCore::RenderInline::updateDragState):
   43108         (WebCore::RenderInline::childBecameNonInline):
   43109         * rendering/RenderInline.h:
   43110         (WebCore::RenderInline::virtualChildren):
   43111         (WebCore::RenderInline::children):
   43112         (WebCore::RenderInline::continuation):
   43113         (WebCore::RenderInline::setContinuation):
   43114         * rendering/RenderLineBoxList.h:
   43115         * rendering/RenderObject.h:
   43116         * rendering/RenderObjectChildList.h:
   43117         * rendering/RenderSVGInlineText.cpp:
   43118         (WebCore::RenderSVGInlineText::computeRepaintRectForRange):
   43119         * rendering/RenderSVGRoot.cpp:
   43120         (WebCore::RenderSVGRoot::RenderSVGRoot):
   43121         (WebCore::RenderSVGRoot::applyContentTransforms):
   43122         (WebCore::RenderSVGRoot::paint):
   43123         (WebCore::RenderSVGRoot::absoluteTransform):
   43124         (WebCore::RenderSVGRoot::nodeAtPoint):
   43125         (WebCore::RenderSVGRoot::position):
   43126         * rendering/RenderSVGRoot.h:
   43127         (WebCore::RenderSVGRoot::virtualChildren):
   43128         (WebCore::RenderSVGRoot::children):
   43129         * rendering/RenderSVGText.cpp:
   43130         (WebCore::RenderSVGText::absoluteRects):
   43131         (WebCore::RenderSVGText::absoluteQuads):
   43132         * rendering/RenderTable.cpp:
   43133         (WebCore::RenderTable::addChild):
   43134         (WebCore::RenderTable::removeChild):
   43135         * rendering/RenderTableCol.cpp:
   43136         (WebCore::RenderTableCol::RenderTableCol):
   43137         * rendering/RenderTableCol.h:
   43138         (WebCore::RenderTableCol::virtualChildren):
   43139         (WebCore::RenderTableCol::children):
   43140         * rendering/RenderTableRow.cpp:
   43141         (WebCore::RenderTableRow::RenderTableRow):
   43142         (WebCore::RenderTableRow::destroy):
   43143         (WebCore::RenderTableRow::styleWillChange):
   43144         (WebCore::RenderTableRow::addChild):
   43145         * rendering/RenderTableRow.h:
   43146         (WebCore::RenderTableRow::virtualChildren):
   43147         (WebCore::RenderTableRow::children):
   43148         * rendering/RenderTableSection.cpp:
   43149         (WebCore::RenderTableSection::RenderTableSection):
   43150         (WebCore::RenderTableSection::destroy):
   43151         (WebCore::RenderTableSection::addChild):
   43152         (WebCore::RenderTableSection::removeChild):
   43153         (WebCore::RenderTableSection::lowestPosition):
   43154         (WebCore::RenderTableSection::rightmostPosition):
   43155         (WebCore::RenderTableSection::leftmostPosition):
   43156         * rendering/RenderTableSection.h:
   43157         (WebCore::RenderTableSection::virtualChildren):
   43158         (WebCore::RenderTableSection::children):
   43159 
   43160 2009-02-04  Mads Adger  <mad (a] chromium.org>
   43161 
   43162         Reviewed by Antti Koivisto.
   43163 
   43164         Bug 23180 Reading freed memory at DocumentLoader::checkForPendingPreloads
   43165         https://bugs.webkit.org/show_bug.cgi?id=23180
   43166 
   43167         Added a protector for the document potentially holding on the last reference to the loader we are interating with.
   43168 
   43169         * loader/loader.cpp:
   43170         (WebCore::Loader::Host::didFinishLoading):
   43171         (WebCore::Loader::Host::didFail):
   43172 
   43173 2009-02-04  Cary Clark  <caryclark (a] google.com>
   43174 
   43175         Reviewed by Darin Adler.
   43176 
   43177         https://bugs.webkit.org/show_bug.cgi?id=23163
   43178         Don't scroll to show current focus on devices that use
   43179         directional pads for navigation.
   43180 
   43181         * dom/Element.cpp:
   43182         (WebCore::Element::updateFocusAppearance):
   43183 
   43184 2009-02-04  Cary Clark  <caryclark (a] google.com>
   43185 
   43186         Reviewed by Darin Adler.
   43187 
   43188         Change RenderBlock::columnGap() access permissions from protected to
   43189         public. ANDROID creates an array of focus rectangles for navigation
   43190         with a trackball or directional pad, and needs access to the column gap
   43191         to implement this logic.
   43192 
   43193         Android has no testing harness @ webkit.org, thus no tests.
   43194 
   43195         * rendering/RenderBlock.h:
   43196 
   43197 2009-02-04  Cary Clark  <caryclark (a] google.com>
   43198 
   43199         Reviewed by Darin Adler and Eric Seidel.
   43200 
   43201         Fixes: https://bugs.webkit.org/show_bug.cgi?id=22917
   43202 
   43203         Add ENABLE_ON_FIRST_TEXTAREA_FOCUS_SELECT_ALL to permit the ANDROID
   43204         platform to select all when focusing on a textarea. This matches
   43205         the user interface guidelines other applications on the platform.
   43206 
   43207         * html/HTMLTextAreaElement.cpp:
   43208         (WebCore::HTMLTextAreaElement::updateFocusAppearance):
   43209 
   43210 2009-02-04  Beth Dakin  <bdakin (a] apple.com>
   43211 
   43212         Reviewed by Dave Hyatt.
   43213 
   43214         Fix for <rdar://problem/6386112> Some inline-elements are not
   43215         becoming proper dashboard-regions
   43216 
   43217         RenderInline needs its own implementation of addDashboardRegions
   43218         because otherwise all of the coordinate calculations are
   43219         inaccurate.
   43220 
   43221         * rendering/RenderInline.cpp:
   43222         (WebCore::RenderInline::addDashboardRegions):
   43223         * rendering/RenderInline.h:
   43224         * rendering/RenderObject.h:
   43225 
   43226 2009-02-04  David Hyatt  <hyatt (a] apple.com>
   43227 
   43228         Move addChild/removeChild from RenderContainer to RenderObject.
   43229 
   43230         Reviewed by Sam Weinig
   43231 
   43232         * rendering/RenderContainer.cpp:
   43233         * rendering/RenderContainer.h:
   43234         * rendering/RenderObject.cpp:
   43235         (WebCore::updateListMarkerNumbers):
   43236         (WebCore::RenderObject::addChild):
   43237         (WebCore::RenderObject::removeChild):
   43238         * rendering/RenderObject.h:
   43239         (WebCore::RenderObject::addChildIgnoringContinuation):
   43240         * rendering/RenderSVGContainer.cpp:
   43241         * rendering/RenderSVGContainer.h:
   43242 
   43243 2009-02-04  Brady Eidson  <beidson (a] apple.com>
   43244 
   43245         Reviewed by Sam Weinig
   43246 
   43247         <rdar://problem/3541409> - Further HistoryItem / BF cache cleanup
   43248 
   43249         * history/CachedFrame.cpp:
   43250         (WebCore::CachedFrame::CachedFrame):
   43251         (WebCore::CachedFrame::restore):
   43252         * history/CachedFrame.h:
   43253 
   43254         * history/CachedPage.cpp:
   43255         (WebCore::CachedPage::restore):
   43256         * history/CachedPage.h:
   43257         (WebCore::CachedPage::mainFrameView):
   43258 
   43259         * history/HistoryItem.cpp:
   43260         (WebCore::HistoryItem::HistoryItem):
   43261         (WebCore::HistoryItem::~HistoryItem):
   43262         * history/HistoryItem.h:
   43263         (WebCore::HistoryItem::isInPageCache):
   43264 
   43265         * loader/FrameLoader.cpp:
   43266         (WebCore::FrameLoader::open):
   43267 
   43268 2009-02-04  Peter Kasting  <pkasting (a] google.com>
   43269 
   43270         Reviewed by David Hyatt.
   43271 
   43272         https://bugs.webkit.org/show_bug.cgi?id=23743
   43273         Fix memory corruption with open-source GIF decoders.
   43274 
   43275         * platform/image-decoders/ImageDecoder.h:
   43276         (WebCore::RGBA32Buffer::clear):
   43277         * platform/image-decoders/gif/GIFImageDecoder.cpp:
   43278         (WebCore::GIFImageDecoder::clearFrameBufferCache):
   43279         * platform/image-decoders/skia/GIFImageDecoder.cpp:
   43280         (WebCore::GIFImageDecoder::clearFrameBufferCache):
   43281         (WebCore::GIFImageDecoder::initFrameBuffer):
   43282         * platform/image-decoders/skia/ImageDecoder.h:
   43283         (WebCore::RGBA32Buffer::clear):
   43284 
   43285 2009-02-04  Simon Fraser  <simon.fraser (a] apple.com>
   43286 
   43287         Reviewed by Dave Hyatt
   43288 
   43289         https://bugs.webkit.org/show_bug.cgi?id=23360
   43290 
   43291         When using accelerated compositing, make repaints use the correct
   43292         repaint container. Hook up the RenderLayerCompositor in RenderView,
   43293         and add to RenderView a method that repaints both the view
   43294         contents, and any intersecting composited layers.
   43295 
   43296         Make enclosingCompositingLayer() a method on RenderObject, and update
   43297         the compositor to use that. Add a helper method on the compositor to
   43298         get the non-self compositing ancestor: ancestorCompositingLayer().
   43299 
   43300         Call repaintRectangleInViewAndCompositedLayers() in places that don't do
   43301         container-relative repainting: selection redraw on focus change, caret,
   43302         and widget updates.
   43303 
   43304         Fix a bug in RenderLayerCompositor where the m_compositingLayersNeedUpdate flag
   43305         would get cleared for partial updates, thus preventing subsequent full updates.
   43306 
   43307         Fix a bug in RenderLayer::ensureBacking() that made new backing every time.
   43308 
   43309         * WebCore.xcodeproj/project.pbxproj:
   43310         * editing/SelectionController.cpp:
   43311         (WebCore::SelectionController::recomputeCaretRect):
   43312         (WebCore::SelectionController::invalidateCaretRect):
   43313         (WebCore::SelectionController::focusedOrActiveStateChanged):
   43314         * rendering/RenderInline.cpp:
   43315         (WebCore::RenderInline::clippedOverflowRectForRepaint):
   43316         * rendering/RenderLayer.cpp:
   43317         (WebCore::RenderLayer::RenderLayer):
   43318         (WebCore::RenderLayer::compositor):
   43319         (WebCore::RenderLayer::updateLayerPositions):
   43320         (WebCore::RenderLayer::removeChild):
   43321         (WebCore::RenderLayer::ensureBacking):
   43322         * rendering/RenderLayer.h:
   43323         (WebCore::RenderLayer::backing):
   43324         * rendering/RenderLayerBacking.cpp:
   43325         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
   43326         (WebCore::RenderLayerBacking::paintIntoLayer):
   43327         (WebCore::RenderLayerBacking::notifyTransitionStarted):
   43328         (WebCore::RenderLayerBacking::notifyAnimationStarted):
   43329         * rendering/RenderLayerCompositor.cpp:
   43330         (WebCore::RenderLayerCompositor::updateCompositingLayers):
   43331         (WebCore::RenderLayerCompositor::updateLayerCompositingState):
   43332         (WebCore::RenderLayerCompositor::layerWillBeRemoved):
   43333         (WebCore::RenderLayerCompositor::ancestorCompositingLayer):
   43334         (WebCore::RenderLayerCompositor::clippedByAncestor):
   43335         * rendering/RenderLayerCompositor.h:
   43336         * rendering/RenderObject.cpp:
   43337         (WebCore::RenderObject::enclosingCompositingLayer):
   43338         (WebCore::RenderObject::containingBlockWidth):
   43339         (WebCore::RenderObject::containingBlockHeight):
   43340         (WebCore::RenderObject::containerForRepaint):
   43341         (WebCore::RenderObject::repaintUsingContainer):
   43342         * rendering/RenderObject.h:
   43343         * rendering/RenderView.cpp:
   43344         (WebCore::RenderView::shouldRepaint):
   43345         (WebCore::RenderView::repaintViewRectangle):
   43346         (WebCore::RenderView::repaintRectangleInViewAndCompositedLayers):
   43347         (WebCore::RenderView::setMaximalOutlineSize):
   43348         (WebCore::RenderView::usesCompositing):
   43349         (WebCore::RenderView::compositor):
   43350         (WebCore::RenderView::didMoveOnscreen):
   43351         (WebCore::RenderView::willMoveOffscreen):
   43352         * rendering/RenderView.h:
   43353         * rendering/RenderWidget.cpp:
   43354         (WebCore::RenderWidget::updateWidgetPosition):
   43355 
   43356 2009-02-04  Sam Weinig  <sam (a] webkit.org>
   43357 
   43358         Reviewed by David Hyatt.
   43359 
   43360         Add toRenderImage methods for casting RenderObjects to RenderImages.  The methods will assert if the object
   43361         is not a RenderImage.  Also add a toRenderImage method that takes a RenderImage but returns void and that
   43362         is unimplemented.  This method will catch anyone trying to do a cast when the object is already a RenderImage.
   43363 
   43364         * html/HTMLAnchorElement.cpp:
   43365         (WebCore::HTMLAnchorElement::defaultEventHandler):
   43366         * html/HTMLEmbedElement.cpp:
   43367         (WebCore::HTMLEmbedElement::attach):
   43368         * html/HTMLImageElement.cpp:
   43369         (WebCore::HTMLImageElement::parseMappedAttribute):
   43370         (WebCore::HTMLImageElement::attach):
   43371         * html/HTMLInputElement.cpp:
   43372         (WebCore::HTMLInputElement::parseMappedAttribute):
   43373         (WebCore::HTMLInputElement::attach):
   43374         * html/HTMLObjectElement.cpp:
   43375         (WebCore::HTMLObjectElement::attach):
   43376         * html/HTMLVideoElement.cpp:
   43377         (WebCore::HTMLVideoElement::attach):
   43378         * loader/ImageLoader.cpp:
   43379         (WebCore::ImageLoader::setImage):
   43380         (WebCore::ImageLoader::updateFromElement):
   43381         (WebCore::ImageLoader::notifyFinished):
   43382         * page/AccessibilityRenderObject.cpp:
   43383         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
   43384         (WebCore::AccessibilityRenderObject::addChildren):
   43385         * page/DragController.cpp:
   43386         (WebCore::getCachedImage):
   43387         (WebCore::getImage):
   43388         * platform/mac/PasteboardMac.mm:
   43389         (WebCore::Pasteboard::writeImage):
   43390         * rendering/RenderImage.h:
   43391         (WebCore::toRenderImage):
   43392         * wml/WMLImageElement.cpp:
   43393         (WebCore::WMLImageElement::parseMappedAttribute):
   43394         (WebCore::WMLImageElement::attach):
   43395 
   43396 2009-02-04  Jungshik Shin  <jshin (a] chromium.org>
   43397 
   43398         Reviewed by Eric Seidel and Dave Hyatt.
   43399 
   43400         https://bugs.webkit.org/show_bug.cgi?id=20531
   43401 
   43402         Make alternateFamilyName customized for Windows and Chromium.
   43403 
   43404         * platform/graphics/FontCache.cpp:
   43405         (WebCore::alternateFamilyName):
   43406 
   43407 2009-02-04  Jungshik Shin <jshin (a] chromium.org>
   43408 
   43409         Reviewed by Eric Seidel.
   43410 
   43411         This comes from Chromium patch (http://codereview.chromium.org/17624).
   43412 
   43413         Add m_disableFontFallback to UniscriberHelper class and set it
   43414         to true when filling up glyph pages for non-BMP code points.
   43415         When it's set true, UniscriberHelper does not do its own font
   43416         fallback. Neither does it do glyph placement. Font fallback
   43417         will be taken care of in the simple script font path and glyph
   43418         placement is not necessary for simple scripts.
   43419 
   43420         Layout test is missing at the moment due to the lack of freely
   43421         distributable font covering a non-BMP code page. A test page
   43422         is available at http://i18nl10n.com/webkit/nonbmp2.html
   43423 
   43424         See also https://bugs.webkit.org/show_bug.cgi?id=23602
   43425 
   43426         * platform/graphics/chromium/GlyphPageTreeNodeChromiumWin.cpp:
   43427         (WebCore::fillNonBMPGlyphs):
   43428         * platform/graphics/chromium/UniscribeHelper.cpp:
   43429         (WebCore::UniscribeHelper::UniscribeHelper):
   43430         (WebCore::UniscribeHelper::shape):
   43431         (WebCore::UniscribeHelper::fillShapes):
   43432         * platform/graphics/chromium/UniscribeHelper.h:
   43433         (WebCore::UniscribeHelper::setDisableFontFallback):
   43434 
   43435 2009-02-04  Sam Weinig  <sam (a] webkit.org>
   43436 
   43437         Reviewed by David Hyatt.
   43438 
   43439         Remove some unnecessary #includes of RenderStyle.h
   43440 
   43441         * css/CSSPrimitiveValueMappings.h:
   43442         * css/SVGCSSComputedStyleDeclaration.cpp:
   43443         * dom/Node.h:
   43444         * rendering/PointerEventsHitRules.h:
   43445         * rendering/RenderImageGeneratedContent.h:
   43446         * rendering/RenderMarquee.h:
   43447         * rendering/RenderScrollbar.h:
   43448 
   43449 2009-02-04  Dimitri Glazkov  <dglazkov (a] chromium.org>
   43450 
   43451         Reviewed by Sam Weinig.
   43452 
   43453         https://bugs.webkit.org/show_bug.cgi?id=23657
   43454         Clean up WebCore/storage IDLs.
   43455 
   43456         * storage/SQLError.idl: Changed to match spec.
   43457         * storage/SQLResultSet.idl: Changed to match spec.
   43458         * storage/SQLStatementCallback.idl: Removed.
   43459         * storage/SQLStatementErrorCallback.idl: Removed.
   43460         * storage/SQLTransactionCallback.idl: Removed.
   43461         * storage/SQLTransactionErrorCallback.idl: Removed.
   43462 
   43463 2009-02-04  David Hyatt  <hyatt (a] apple.com>
   43464 
   43465         Fix for https://bugs.webkit.org/show_bug.cgi?id=23734, blank content on blogs.msdn.com.
   43466 
   43467         Add debugging code that will catch the incorrect dirtying of a table section immediately if it happens
   43468         during calcRowHeight or layoutRows.  This should make it possible to discover future bugs where table sections don't
   43469         paint.
   43470 
   43471         The bug in blogs.msdn.com, which was caused by a bad setNeedsLayout in RenderLayer::updateScrollInfoAtferLayout.  Make
   43472         sure to do only a local setNeedsLayout inside that function.
   43473 
   43474         Reviewed by Beth Dakin
   43475 
   43476         * rendering/RenderLayer.cpp:
   43477         (WebCore::RenderLayer::updateScrollInfoAfterLayout):
   43478         * rendering/RenderObject.cpp:
   43479         (WebCore::RenderObject::RenderObject):
   43480         * rendering/RenderObject.h:
   43481         (WebCore::RenderObject::isSetNeedsLayoutForbidden):
   43482         (WebCore::RenderObject::setNeedsLayoutIsForbidden):
   43483         (WebCore::RenderObject::setNeedsLayout):
   43484         (WebCore::RenderObject::setChildNeedsLayout):
   43485         (WebCore::RenderObject::markContainingBlocksForLayout):
   43486         * rendering/RenderTable.cpp:
   43487         (WebCore::RenderTable::layout):
   43488         * rendering/RenderTableSection.cpp:
   43489         (WebCore::RenderTableSection::calcRowHeight):
   43490         (WebCore::RenderTableSection::layoutRows):
   43491 
   43492 2009-02-04  Sam Weinig  <sam (a] webkit.org>
   43493 
   43494         Reviewed by David Hyatt.
   43495 
   43496         Rename RenderStyle::Diff to StyleDifference and move it to
   43497         RenderStyleConstants.h.
   43498 
   43499         * rendering/RenderBR.cpp:
   43500         (WebCore::RenderBR::styleDidChange):
   43501         * rendering/RenderBR.h:
   43502         * rendering/RenderBlock.cpp:
   43503         (WebCore::RenderBlock::styleWillChange):
   43504         (WebCore::RenderBlock::styleDidChange):
   43505         * rendering/RenderBlock.h:
   43506         * rendering/RenderBox.cpp:
   43507         (WebCore::RenderBox::styleWillChange):
   43508         (WebCore::RenderBox::styleDidChange):
   43509         * rendering/RenderBox.h:
   43510         * rendering/RenderButton.cpp:
   43511         (WebCore::RenderButton::styleWillChange):
   43512         (WebCore::RenderButton::styleDidChange):
   43513         * rendering/RenderButton.h:
   43514         * rendering/RenderFieldset.cpp:
   43515         (WebCore::RenderFieldset::styleDidChange):
   43516         * rendering/RenderFieldset.h:
   43517         * rendering/RenderFileUploadControl.cpp:
   43518         (WebCore::RenderFileUploadControl::styleDidChange):
   43519         * rendering/RenderFileUploadControl.h:
   43520         * rendering/RenderInline.cpp:
   43521         (WebCore::RenderInline::styleDidChange):
   43522         * rendering/RenderInline.h:
   43523         * rendering/RenderLayer.cpp:
   43524         (WebCore::RenderLayer::styleChanged):
   43525         * rendering/RenderLayer.h:
   43526         * rendering/RenderLayerCompositor.cpp:
   43527         (WebCore::RenderLayerCompositor::updateLayerCompositingState):
   43528         (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
   43529         * rendering/RenderLayerCompositor.h:
   43530         * rendering/RenderListBox.cpp:
   43531         (WebCore::RenderListBox::styleDidChange):
   43532         * rendering/RenderListBox.h:
   43533         * rendering/RenderListItem.cpp:
   43534         (WebCore::RenderListItem::styleDidChange):
   43535         * rendering/RenderListItem.h:
   43536         * rendering/RenderListMarker.cpp:
   43537         (WebCore::RenderListMarker::styleWillChange):
   43538         (WebCore::RenderListMarker::styleDidChange):
   43539         * rendering/RenderListMarker.h:
   43540         * rendering/RenderMenuList.cpp:
   43541         (WebCore::RenderMenuList::styleDidChange):
   43542         * rendering/RenderMenuList.h:
   43543         * rendering/RenderObject.cpp:
   43544         (WebCore::RenderObject::setStyle):
   43545         (WebCore::RenderObject::styleWillChange):
   43546         (WebCore::RenderObject::styleDidChange):
   43547         * rendering/RenderObject.h:
   43548         * rendering/RenderReplaced.cpp:
   43549         (WebCore::RenderReplaced::styleDidChange):
   43550         * rendering/RenderReplaced.h:
   43551         * rendering/RenderSVGGradientStop.cpp:
   43552         (WebCore::RenderSVGGradientStop::styleDidChange):
   43553         * rendering/RenderSVGGradientStop.h:
   43554         * rendering/RenderSVGInlineText.cpp:
   43555         (WebCore::RenderSVGInlineText::styleDidChange):
   43556         * rendering/RenderSVGInlineText.h:
   43557         * rendering/RenderScrollbarPart.cpp:
   43558         (WebCore::RenderScrollbarPart::styleWillChange):
   43559         (WebCore::RenderScrollbarPart::styleDidChange):
   43560         * rendering/RenderScrollbarPart.h:
   43561         * rendering/RenderSlider.cpp:
   43562         (WebCore::RenderSlider::styleDidChange):
   43563         * rendering/RenderSlider.h:
   43564         * rendering/RenderTable.cpp:
   43565         (WebCore::RenderTable::styleDidChange):
   43566         * rendering/RenderTable.h:
   43567         * rendering/RenderTableCell.cpp:
   43568         (WebCore::RenderTableCell::styleWillChange):
   43569         (WebCore::RenderTableCell::styleDidChange):
   43570         * rendering/RenderTableCell.h:
   43571         * rendering/RenderTableRow.cpp:
   43572         (WebCore::RenderTableRow::styleWillChange):
   43573         * rendering/RenderTableRow.h:
   43574         * rendering/RenderText.cpp:
   43575         (WebCore::RenderText::styleDidChange):
   43576         * rendering/RenderText.h:
   43577         (WebCore::RenderText::styleWillChange):
   43578         * rendering/RenderTextControl.cpp:
   43579         (WebCore::RenderTextControl::styleDidChange):
   43580         * rendering/RenderTextControl.h:
   43581         * rendering/RenderTextControlSingleLine.cpp:
   43582         (WebCore::RenderTextControlSingleLine::styleDidChange):
   43583         * rendering/RenderTextControlSingleLine.h:
   43584         * rendering/RenderWidget.cpp:
   43585         (WebCore::RenderWidget::styleDidChange):
   43586         * rendering/RenderWidget.h:
   43587         * rendering/style/RenderStyle.cpp:
   43588         (WebCore::RenderStyle::diff):
   43589         (WebCore::RenderStyle::setClip):
   43590         * rendering/style/RenderStyle.h:
   43591         * rendering/style/RenderStyleConstants.h:
   43592         (WebCore::):
   43593 
   43594 2009-02-03  Sam Weinig  <sam (a] webkit.org>
   43595 
   43596         Reviewed by David Hyatt.
   43597 
   43598         Move PseudoId enum out of RenderStyle and into RenderStyleConstants.h
   43599 
   43600         * css/CSSStyleSelector.cpp:
   43601         (WebCore::CSSStyleSelector::matchRulesForList):
   43602         (WebCore::CSSStyleSelector::initForStyleResolve):
   43603         (WebCore::CSSStyleSelector::SelectorChecker::SelectorChecker):
   43604         (WebCore::CSSStyleSelector::SelectorChecker::checkSelector):
   43605         (WebCore::CSSStyleSelector::styleForElement):
   43606         (WebCore::CSSStyleSelector::pseudoStyleForElement):
   43607         (WebCore::CSSStyleSelector::checkSelector):
   43608         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
   43609         (WebCore::CSSStyleSelector::SelectorChecker::checkScrollbarPseudoClass):
   43610         (WebCore::CSSStyleSelector::applyProperty):
   43611         * css/CSSStyleSelector.h:
   43612         * dom/Node.cpp:
   43613         (WebCore::Node::diff):
   43614         * page/FrameView.cpp:
   43615         (WebCore::FrameView::createScrollbar):
   43616         * rendering/InlineTextBox.cpp:
   43617         (WebCore::InlineTextBox::paint):
   43618         * rendering/MediaControlElements.cpp:
   43619         (WebCore::MediaTextDisplayElement::MediaTextDisplayElement):
   43620         (WebCore::MediaTimeDisplayElement::MediaTimeDisplayElement):
   43621         (WebCore::MediaControlInputElement::MediaControlInputElement):
   43622         (WebCore::MediaControlMuteButtonElement::MediaControlMuteButtonElement):
   43623         (WebCore::MediaControlPlayButtonElement::MediaControlPlayButtonElement):
   43624         (WebCore::MediaControlSeekButtonElement::MediaControlSeekButtonElement):
   43625         (WebCore::MediaControlTimelineElement::MediaControlTimelineElement):
   43626         (WebCore::MediaControlFullscreenButtonElement::MediaControlFullscreenButtonElement):
   43627         * rendering/MediaControlElements.h:
   43628         * rendering/RenderBlock.cpp:
   43629         (WebCore::RenderBlock::styleDidChange):
   43630         (WebCore::RenderBlock::updateBeforeAfterContent):
   43631         (WebCore::RenderBlock::firstLineBlock):
   43632         (WebCore::RenderBlock::updateFirstLetter):
   43633         * rendering/RenderBlock.h:
   43634         * rendering/RenderBox.cpp:
   43635         (WebCore::RenderBox::isAfterContent):
   43636         * rendering/RenderButton.cpp:
   43637         (WebCore::RenderButton::updateBeforeAfterContent):
   43638         * rendering/RenderButton.h:
   43639         * rendering/RenderFileUploadControl.cpp:
   43640         (WebCore::RenderFileUploadControl::createButtonStyle):
   43641         * rendering/RenderInline.cpp:
   43642         (WebCore::RenderInline::styleDidChange):
   43643         (WebCore::isAfterContent):
   43644         (WebCore::RenderInline::addChildIgnoringContinuation):
   43645         (WebCore::RenderInline::splitInlines):
   43646         * rendering/RenderLayer.cpp:
   43647         (WebCore::RenderLayer::createScrollbar):
   43648         (WebCore::RenderLayer::updateScrollCornerStyle):
   43649         (WebCore::RenderLayer::updateResizerStyle):
   43650         * rendering/RenderListBox.cpp:
   43651         (WebCore::RenderListBox::createScrollbar):
   43652         * rendering/RenderMedia.cpp:
   43653         (WebCore::RenderMedia::createPanel):
   43654         (WebCore::RenderMedia::createTimelineContainer):
   43655         * rendering/RenderMenuList.cpp:
   43656         (WebCore::RenderMenuList::createScrollbar):
   43657         * rendering/RenderObject.cpp:
   43658         (WebCore::RenderObject::selectionBackgroundColor):
   43659         (WebCore::RenderObject::selectionForegroundColor):
   43660         (WebCore::RenderObject::firstLineStyleSlowCase):
   43661         (WebCore::RenderObject::getCachedPseudoStyle):
   43662         (WebCore::RenderObject::getUncachedPseudoStyle):
   43663         * rendering/RenderObject.h:
   43664         (WebCore::RenderObject::isAnonymousBlock):
   43665         * rendering/RenderObjectChildList.cpp:
   43666         (WebCore::RenderObjectChildList::destroyLeftoverChildren):
   43667         (WebCore::beforeAfterContainer):
   43668         (WebCore::RenderObjectChildList::invalidateCounters):
   43669         (WebCore::RenderObjectChildList::updateBeforeAfterContent):
   43670         * rendering/RenderObjectChildList.h:
   43671         * rendering/RenderScrollbar.cpp:
   43672         (WebCore::RenderScrollbar::getScrollbarPseudoStyle):
   43673         (WebCore::pseudoForScrollbarPart):
   43674         * rendering/RenderScrollbar.h:
   43675         * rendering/RenderSlider.cpp:
   43676         (WebCore::RenderSlider::createThumbStyle):
   43677         * rendering/RenderTextControlSingleLine.cpp:
   43678         (WebCore::RenderTextControlSingleLine::createInnerTextStyle):
   43679         (WebCore::RenderTextControlSingleLine::createResultsButtonStyle):
   43680         (WebCore::RenderTextControlSingleLine::createCancelButtonStyle):
   43681         (WebCore::RenderTextControlSingleLine::createScrollbar):
   43682         * rendering/style/RenderStyle.cpp:
   43683         (WebCore::pseudoBit):
   43684         * rendering/style/RenderStyle.h:
   43685         (WebCore::):
   43686         * rendering/style/RenderStyleConstants.h:
   43687         (WebCore::):
   43688 
   43689 2009-02-04  David Kilzer  <ddkilzer (a] apple.com>
   43690 
   43691         CrashTracer: [REGRESSION] 53 crashes in Safari at com.apple.WebCore: WebCore::LegacyWebArchive::create + 2706
   43692 
   43693         <rdar://problem/6509514>
   43694 
   43695         Reviewed by Mark Rowe.
   43696 
   43697         * loader/archive/cf/LegacyWebArchive.cpp:
   43698         (WebCore::LegacyWebArchive::create): Fix it correctly this time.
   43699         Check for the value returned from WebCore::IconDatabase::iconForPageURL(),
   43700         not WebCore::Image::data().
   43701 
   43702 2009-02-04  David Hyatt  <hyatt (a] apple.com>
   43703 
   43704         Rename removeFromObjectLists and move it into RenderBox, since it only applies to boxes.
   43705 
   43706         Reviewed by Adam Roben
   43707 
   43708         * rendering/RenderBox.cpp:
   43709         (WebCore::RenderBox::removeFloatingOrPositionedChildFromBlockLists):
   43710         (WebCore::RenderBox::styleWillChange):
   43711         * rendering/RenderBox.h:
   43712         * rendering/RenderContainer.cpp:
   43713         (WebCore::RenderContainer::removeChild):
   43714         * rendering/RenderObject.cpp:
   43715         (WebCore::RenderObject::styleWillChange):
   43716         * rendering/RenderObject.h:
   43717         * rendering/RenderSVGContainer.cpp:
   43718         (WebCore::RenderSVGContainer::removeChild):
   43719 
   43720 2009-02-04  Jeremy Moskovich  <jeremy (a] chromium.org>
   43721 
   43722         Reviewed by Dave Hyatt.
   43723 
   43724         https://bugs.webkit.org/show_bug.cgi?id=23471
   43725         Fix text-overflow:ellipsis; for RTL case.
   43726 
   43727         Test: fast/css/text-overflow-ellipses.html
   43728 
   43729         * rendering/InlineTextBox.cpp:
   43730         (WebCore::InlineTextBox::placeEllipsisBox): Add support for rtl placement.
   43731         (WebCore::InlineTextBox::paintDecoration): Correctly draw decorations
   43732         for rtl truncation.
   43733 
   43734 2009-02-04  Dimitri Glazkov  <dglazkov (a] chromium.org>
   43735 
   43736         Reviewed by Darin Adler.
   43737 
   43738         https://bugs.webkit.org/show_bug.cgi?id=23700
   43739         Upstream local changes to due to unforking of SimpleFontData
   43740         (corresponds to Chromium check-in http://src.chromium.org/viewvc/chrome?view=rev&revision=8646).
   43741 
   43742         * platform/graphics/chromium/GlyphPageTreeNodeChromiumWin.cpp:
   43743         (WebCore::fillBMPGlyphs): Removed extra checks for ZWS chars.
   43744 
   43745 2009-02-04  David Hyatt  <hyatt (a] apple.com>
   43746 
   43747         <rdar://problem/6554115> REGRESSION (r40475): World leak (JS global object) after viewing a photo on Facebook
   43748 
   43749         Fix a ginormous leak. (GINORMOUS!) Make sure to disconnect the event listeners attached to the Document,
   43750         because, like, they point to a lot of stuff... like ... everything...
   43751 
   43752         Reviewed by Darin Adler
   43753 
   43754         * dom/Document.cpp:
   43755         (WebCore::Document::removeAllEventListenersFromAllNodes):
   43756 
   43757 2009-02-04  Darin Fisher  <darin (a] chromium.org>
   43758 
   43759         Reviewed by Darin Adler.
   43760 
   43761         https://bugs.webkit.org/show_bug.cgi?id=23731
   43762         Add JSCCustom and V8Custom as extended IDL attributes
   43763 
   43764         This helps avoid having to add #ifdefs to the IDL files to support V8 bindings.
   43765 
   43766         * bindings/scripts/CodeGeneratorJS.pm:
   43767         * dom/Document.idl:
   43768         * dom/Node.idl:
   43769         * svg/SVGPathSegList.idl:
   43770         * svg/SVGPointList.idl:
   43771         * svg/SVGTransformList.idl:
   43772 
   43773 2009-02-04  Dan Bernstein  <mitz (a] apple.com>
   43774 
   43775         - build fix
   43776 
   43777         * rendering/RenderImageGeneratedContent.h:
   43778 
   43779 2009-02-04  miggilin  <mr.diggilin (a] gmail.com>
   43780 
   43781         Reviewed by Kevin Ollivier.
   43782 
   43783         Switch to using a ref-counted wxFont pointer for FontPlatformData to fix a crash
   43784         with assigning to uninitialized HashTable buckets.
   43785 
   43786         https://bugs.webkit.org/show_bug.cgi?id=23669
   43787 
   43788         * platform/graphics/SimpleFontData.h:
   43789         (WebCore::SimpleFontData::getWxFont):
   43790         * platform/graphics/wx/FontPlatformData.h:
   43791         (WebCore::):
   43792         (WebCore::FontPlatformData::FontPlatformData):
   43793         (WebCore::FontPlatformData::font):
   43794         (WebCore::FontPlatformData::operator==):
   43795         * platform/graphics/wx/FontPlatformDataWx.cpp:
   43796         (WebCore::FontPlatformData::FontPlatformData):
   43797         (WebCore::FontPlatformData::computeHash):
   43798         (WebCore::FontPlatformData::~FontPlatformData):
   43799         * platform/graphics/wx/SimpleFontDataWx.cpp:
   43800         (WebCore::SimpleFontData::platformInit):
   43801         (WebCore::SimpleFontData::determinePitch):
   43802         (WebCore::SimpleFontData::platformWidthForGlyph):
   43803         * platform/wx/wxcode/gtk/non-kerned-drawing.cpp:
   43804         (WebCore::drawTextWithSpacing):
   43805 
   43806 2009-02-04  David Hyatt  <hyatt (a] apple.com>
   43807 
   43808         Fix a crash in generated content when a generated image with an already-cached background image gets
   43809         created.  It's not completely clear how to reproduce this crash.
   43810 
   43811         Reviewed by Adam Roben
   43812 
   43813         * rendering/RenderImageGeneratedContent.h:
   43814         (WebCore::RenderImageGeneratedContent::imagePtr):
   43815 
   43816 2009-02-04  Simon Hausmann  <simon.hausmann (a] nokia.com>
   43817 
   43818         Unreviewed Qt build fix.
   43819 
   43820         Changed ASSERT(image) to ASSERT(!image.isNull()).
   43821 
   43822         * platform/graphics/qt/ImageBufferQt.cpp:
   43823         (WebCore::ImageBuffer::getImageData):
   43824 
   43825 2009-02-04  Trenton Schulz <trenton.schulz (a] nokia.com>
   43826 
   43827         Reviewed by Simon Hausmann.
   43828 
   43829         Fix implementation of PluginViewMac::invalidateRect to update only the
   43830         specified rect, not the entire browser window.
   43831 
   43832         * plugins/mac/PluginViewMac.cpp:
   43833         (WebCore::PluginView::invalidateRect):
   43834 
   43835 2009-02-04  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   43836 
   43837         Rubber stamped by Mark Rowe.
   43838 
   43839         FramePrivate was removed in r40024 remove the forward
   43840         declaration as well.
   43841 
   43842         * page/Frame.h:
   43843 
   43844 2009-02-04  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   43845 
   43846         Reviewed by Sam Weinig.
   43847 
   43848         https://bugs.webkit.org/show_bug.cgi?id=23426
   43849 
   43850         Make isFrameSet virtual and by default return false. Reimplement
   43851         it in HTMLDocument.
   43852 
   43853         * dom/Document.cpp:
   43854         * dom/Document.h:
   43855         (WebCore::Document::isFrameSet):
   43856         * html/HTMLDocument.cpp:
   43857         (WebCore::HTMLDocument::isFrameSet):
   43858         * html/HTMLDocument.h:
   43859 
   43860 2009-02-03  Oliver Hunt  <oliver (a] apple.com>
   43861 
   43862         Reviewed by John Sullivan.
   43863 
   43864         <rdar://problem/6554092> Slow script dialog starts coming up over and over again
   43865 
   43866         Work around <rdar://problem/6554067> by consuming any exceptions that are
   43867         thrown by _web_localizedDescription
   43868 
   43869         * platform/network/mac/ResourceErrorMac.mm:
   43870         (WebCore::ResourceError::platformLazyInit):
   43871 
   43872 2009-02-03  David Hyatt  <hyatt (a] apple.com>
   43873 
   43874         Move the isRenderInline checks for clientWidth/Height and scrollWidth/Height to the DOM element
   43875         versions of the functions.  Since internal render tree usage doesn't ever (incorrectly) call these
   43876         functions on RenderInlines, this manages to get virtual function calls out of contentWidth/Height and
   43877         availableWidth/Height.
   43878 
   43879         Reviewed by Mark Rowe
   43880 
   43881         * dom/Element.cpp:
   43882         (WebCore::Element::clientWidth):
   43883         (WebCore::Element::clientHeight):
   43884         (WebCore::Element::scrollWidth):
   43885         (WebCore::Element::scrollHeight):
   43886         * rendering/RenderBox.cpp:
   43887         (WebCore::RenderBox::clientWidth):
   43888         (WebCore::RenderBox::clientHeight):
   43889         (WebCore::RenderBox::scrollWidth):
   43890         (WebCore::RenderBox::scrollHeight):
   43891 
   43892 2009-02-03  Brad Garcia  <bgarcia (a] google.com>
   43893 
   43894         Reviewed by Eric Seidel.
   43895 
   43896         https://bugs.webkit.org/show_bug.cgi?id=20443
   43897         Remove call to canResize when trying to determine if pointer
   43898         is within a frame.
   43899         Also removed the implementation of canResize as it is no longer used.
   43900 
   43901         Test: fast/frames/frame-dead-region.html
   43902 
   43903         * rendering/RenderFrameSet.cpp:
   43904         (WebCore::RenderFrameSet::nodeAtPoint):
   43905         * rendering/RenderFrameSet.h:
   43906 
   43907 2009-02-03  David Hyatt  <hyatt (a] apple.com>
   43908 
   43909         Reduce the number of calls to virtualChildren (indirectly made via RenderObject::firstChild()).
   43910         This is a small gain on the PLT.
   43911 
   43912         Reviewed by Mark Rowe
   43913 
   43914         * rendering/bidi.cpp:
   43915         (WebCore::inlineWidth):
   43916         (WebCore::bidiNext):
   43917 
   43918 2009-02-03  Simon Fraser  <simon.fraser (a] apple.com>
   43919 
   43920         Reviewed by Dave Hyatt
   43921 
   43922         https://bugs.webkit.org/show_bug.cgi?id=23628
   43923 
   43924         Fix selection repainting to do container-relative repaints. RenderView now
   43925         repaints the selection using the containerForRepaint() for each RenderSelectionInfo.
   43926         selectionRect() is now a wrapper for selectionRectForRepaint() with no container.
   43927 
   43928         Pull SelectionInfo out of RenderObject.h, and BlockSelectionInfo out
   43929         of RenderBlock.h and move them into RenderSelectionInfo.h, with some
   43930         sharing and refactoring.
   43931 
   43932         RenderBlock::selectionGapRectsForRepaint() is not yet container-aware.
   43933 
   43934         * GNUmakefile.am:
   43935         * WebCore.vcproj/WebCore.vcproj:
   43936         * WebCore.xcodeproj/project.pbxproj:
   43937         * rendering/RenderBR.h:
   43938         (WebCore::RenderBR::selectionRectForRepaint):
   43939         * rendering/RenderBlock.cpp:
   43940         (WebCore::RenderBlock::selectionGapRectsForRepaint):
   43941         * rendering/RenderBlock.h:
   43942         (WebCore::RenderBlock::selectionRectForRepaint):
   43943         * rendering/RenderListMarker.cpp:
   43944         (WebCore::RenderListMarker::paint):
   43945         (WebCore::RenderListMarker::selectionRectForRepaint):
   43946         * rendering/RenderListMarker.h:
   43947         * rendering/RenderObject.h:
   43948         (WebCore::RenderObject::selectionRect):
   43949         (WebCore::RenderObject::selectionRectForRepaint):
   43950         * rendering/RenderReplaced.cpp:
   43951         (WebCore::RenderReplaced::selectionRectForRepaint):
   43952         * rendering/RenderReplaced.h:
   43953         * rendering/RenderSVGInlineText.cpp:
   43954         (WebCore::RenderSVGInlineText::absoluteRects):
   43955         (WebCore::RenderSVGInlineText::absoluteQuads):
   43956         (WebCore::RenderSVGInlineText::selectionRectForRepaint):
   43957         (WebCore::RenderSVGInlineText::computeRepaintRectForRange):
   43958         * rendering/RenderSVGInlineText.h:
   43959         * rendering/RenderSelectionInfo.h: Added.
   43960         (WebCore::RenderSelectionInfoBase::RenderSelectionInfoBase):
   43961         (WebCore::RenderSelectionInfoBase::object):
   43962         (WebCore::RenderSelectionInfoBase::repaintContainer):
   43963         (WebCore::RenderSelectionInfoBase::state):
   43964         (WebCore::RenderSelectionInfo::RenderSelectionInfo):
   43965         (WebCore::RenderSelectionInfo::repaint):
   43966         (WebCore::RenderSelectionInfo::rect):
   43967         (WebCore::RenderBlockSelectionInfo::RenderBlockSelectionInfo):
   43968         (WebCore::RenderBlockSelectionInfo::repaint):
   43969         (WebCore::RenderBlockSelectionInfo::block):
   43970         (WebCore::RenderBlockSelectionInfo::rects):
   43971         * rendering/RenderText.cpp:
   43972         (WebCore::RenderText::selectionRectForRepaint):
   43973         * rendering/RenderText.h:
   43974         * rendering/RenderView.cpp:
   43975         (WebCore::RenderView::selectionBounds):
   43976         (WebCore::RenderView::setSelection):
   43977         * rendering/RenderView.h:
   43978         * rendering/RenderWidget.cpp:
   43979         (WebCore::RenderWidget::paint):
   43980 
   43981 2009-02-03  David Hyatt  <hyatt (a] apple.com>
   43982 
   43983         Add inline capacity back to CSSMutableStyleDeclaration now that the bug in Vector has been fixed.
   43984 
   43985         Reviewed by Darin Adler & Sam Weinig
   43986 
   43987         * css/CSSMutableStyleDeclaration.cpp:
   43988         (WebCore::CSSMutableStyleDeclaration::removePropertiesInSet):
   43989         * css/CSSMutableStyleDeclaration.h:
   43990 
   43991 2009-02-03  Justin Garcia  <justin.garcia (a] apple.com>
   43992 
   43993         Reviewed by Darin Adler.
   43994 
   43995         https://bugs.webkit.org/show_bug.cgi?id=13490
   43996         Implement execCommand("styleWithCSS", ...)
   43997 
   43998         Determine whether or not to use HTML formatting tags for styling on the new
   43999         boolean on Editor instead of whether or not the document is quirks mode.
   44000 
   44001         * editing/ApplyStyleCommand.cpp:
   44002         (WebCore::StyleChange::StyleChange):
   44003         (WebCore::StyleChange::init):
   44004         (WebCore::ApplyStyleCommand::applyBlockStyle):
   44005         (WebCore::ApplyStyleCommand::applyTextDecorationStyle):
   44006         (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
   44007         * editing/Editor.cpp:
   44008         (WebCore::Editor::Editor):
   44009         (WebCore::Editor::clear):
   44010         * editing/Editor.h:
   44011         (WebCore::Editor::setShouldStyleWithCSS):
   44012         (WebCore::Editor::shouldStyleWithCSS):
   44013         * editing/EditorCommand.cpp:
   44014         (WebCore::executeStyleWithCSS):
   44015         (WebCore::stateStyleWithCSS):
   44016         (WebCore::CommandEntry::):
   44017 
   44018 2009-02-03  Dirk Schulze  <krit (a] webkit.org>
   44019 
   44020         Reviewed by Sam Weinig.
   44021 
   44022         This is a follow up of r40546. Call toImage() once speeds up ImageBuffer::getImageData()
   44023 
   44024         * platform/graphics/qt/ImageBufferQt.cpp:
   44025         (WebCore::ImageBuffer::getImageData):
   44026 
   44027 2009-02-03  Anders Carlsson  <andersca (a] apple.com>
   44028 
   44029         Reviewed by Kevin Decker.
   44030 
   44031         - Fix for <rdar://problem/6549743>
   44032 
   44033         On Tiger, create an autorelease pool before creating the NSGraphicsContext and drain it immediately
   44034         after the call to -[NSView displayRectIgnoringOpacity:inContext:].
   44035 
   44036         * platform/mac/WidgetMac.mm:
   44037         (WebCore::Widget::paint):
   44038 
   44039 2009-02-03  David Hyatt  <hyatt (a] apple.com>
   44040 
   44041         Back this change out since it is causing layout tests to crash.  There is something subtle going on
   44042         here.
   44043 
   44044         Reviewed by Darin Adler
   44045 
   44046         * css/CSSMutableStyleDeclaration.cpp:
   44047         (WebCore::CSSMutableStyleDeclaration::removePropertiesInSet):
   44048         * css/CSSMutableStyleDeclaration.h:
   44049 
   44050 2009-02-03  David Hyatt  <hyatt (a] apple.com>
   44051 
   44052         Give the properties vector of mutable style declarations an initial inline capacity to reduce malloc churn.
   44053 
   44054         Reviewed by Sam Weinig
   44055 
   44056         * css/CSSMutableStyleDeclaration.cpp:
   44057         (WebCore::CSSMutableStyleDeclaration::removePropertiesInSet):
   44058         * css/CSSMutableStyleDeclaration.h:
   44059 
   44060 2009-02-03  David Hyatt  <hyatt (a] apple.com>
   44061 
   44062         Avoid creating extra copies of NSURLRequests for non-HTTP URLs.  Only mark platform requests
   44063         as needing updating when HTTP fields change if the scheme of the URL is actually HTTP or HTTPS.
   44064         Thus cuts down significantly on the number of copied NSURLRequests and is about a 1% gain on the PLT.
   44065 
   44066         Reviewed by Darin Adler
   44067 
   44068         * loader/FrameLoader.cpp:
   44069         (WebCore::FrameLoader::addExtraFieldsToRequest):
   44070         * platform/KURL.cpp:
   44071         (WebCore::KURL::invalidate):
   44072         (WebCore::KURL::KURL):
   44073         * platform/KURL.h:
   44074         (WebCore::KURL::isHTTPOrHTTPS):
   44075         * platform/network/ResourceRequestBase.cpp:
   44076         (WebCore::ResourceRequestBase::setCachePolicy):
   44077         (WebCore::ResourceRequestBase::setTimeoutInterval):
   44078         (WebCore::ResourceRequestBase::setMainDocumentURL):
   44079         (WebCore::ResourceRequestBase::setHTTPMethod):
   44080         (WebCore::ResourceRequestBase::setHTTPHeaderField):
   44081         (WebCore::ResourceRequestBase::setResponseContentDispositionEncodingFallbackArray):
   44082         (WebCore::ResourceRequestBase::setHTTPBody):
   44083         (WebCore::ResourceRequestBase::setAllowHTTPCookies):
   44084 
   44085 2009-02-03  Xan Lopez  <xan (a] gnome.org>
   44086 
   44087         Reviewed by Holger Freyther.
   44088 
   44089         https://bugs.webkit.org/show_bug.cgi?id=23711
   44090 
   44091         Add manual test for floating divs with scrollbars.
   44092 
   44093         * manual-tests/gtk/floatingdiv.html: Added.
   44094 
   44095 2009-02-03  Xan Lopez  <xan (a] gnome.org>
   44096 
   44097         Reviewed by Holger Freyther.
   44098 
   44099         https://bugs.webkit.org/show_bug.cgi?id=23711
   44100 
   44101         There's no need to hold an extra ref to the scrollbar, calling
   44102         setPlatformWidget takes ownership of it.
   44103 
   44104         Also do not disconnect the signals when destroying the widget,
   44105         it's superfluous.
   44106 
   44107         * platform/gtk/ScrollbarGtk.cpp:
   44108         (ScrollbarGtk::ScrollbarGtk):
   44109         * platform/gtk/ScrollbarGtk.h:
   44110 
   44111 2009-02-03  Xan Lopez  <xan (a] gnome.org>
   44112 
   44113         Reviewed by Holger Freyther.
   44114 
   44115         https://bugs.webkit.org/show_bug.cgi?id=23711
   44116 
   44117         Declare scrollBar as GtkWidget* to avoid needless
   44118         casting.
   44119 
   44120         * platform/gtk/ScrollbarGtk.cpp:
   44121         (ScrollbarGtk::ScrollbarGtk):
   44122         (ScrollbarGtk::~ScrollbarGtk):
   44123 
   44124 2009-02-03  Xan Lopez  <xan (a] gnome.org>
   44125 
   44126         Reviewed by Holger Freyther.
   44127 
   44128         https://bugs.webkit.org/show_bug.cgi?id=23711
   44129 
   44130         Properly calculate the scrollbar location for their
   44131         usage in RenderLayout.
   44132 
   44133         * platform/gtk/ScrollbarGtk.cpp:
   44134         (ScrollbarGtk::frameRectsChanged):
   44135 
   44136 2009-02-03  David Hyatt  <hyatt (a] apple.com>
   44137 
   44138         Rename addLineBoxRects to absoluteRectsForRange, and do the same thing for the corresponding quads methods.  Move the RenderContainer implementations
   44139         of these methods up to RenderObject.
   44140 
   44141         Reviewed by Beth Dakin
   44142 
   44143         * bindings/objc/DOM.mm:
   44144         (-[DOMNode lineBoxRects]):
   44145         * dom/Range.cpp:
   44146         (WebCore::Range::addLineBoxRects):
   44147         * inspector/InspectorController.cpp:
   44148         (WebCore::InspectorController::drawNodeHighlight):
   44149         * rendering/RenderContainer.cpp:
   44150         * rendering/RenderContainer.h:
   44151         * rendering/RenderObject.cpp:
   44152         (WebCore::RenderObject::absoluteRectsForRange):
   44153         (WebCore::RenderObject::absoluteQuadsForRange):
   44154         * rendering/RenderObject.h:
   44155         * rendering/RenderText.cpp:
   44156         (WebCore::RenderText::absoluteRectsForRange):
   44157         (WebCore::RenderText::absoluteQuadsForRange):
   44158         * rendering/RenderText.h:
   44159 
   44160 2009-02-03  Dirk Schulze  <krit (a] webkit.org>
   44161 
   44162         Reviewed by Sam Weinig and Oliver Hunt.
   44163 
   44164         Added getImageData() support for QtWebKit.
   44165 
   44166         [QT] lacks getImageData / putImageData support in Canvas
   44167         https://bugs.webkit.org/show_bug.cgi?id=22186
   44168 
   44169         * platform/graphics/qt/ImageBufferQt.cpp:
   44170         (WebCore::ImageBuffer::getImageData):
   44171 
   44172 2009-02-03  Eric Roman  <eroman (a] chromium.org>
   44173 
   44174         Reviewed by Holger Freyther.
   44175 
   44176         Fix FrameChromium.cpp following r40473 which moved Frame::adjustPageHeight to FrameView::adjustPageHeight.
   44177 
   44178         * page/chromium/FrameChromium.cpp:
   44179         (WebCore::computePageRectsForFrame):
   44180 
   44181 2009-02-02  Simon Fraser  <simon.fraser (a] apple.com>
   44182 
   44183         Reviewed by Dave Hyatt
   44184 
   44185         https://bugs.webkit.org/show_bug.cgi?id=23358
   44186 
   44187         Hook accelerated compositing into RenderLayer.
   44188 
   44189         * rendering/RenderLayer.cpp:
   44190         (WebCore::RenderLayer::RenderLayer):
   44191         (WebCore::RenderLayer::~RenderLayer):
   44192         Init and clean up backing and the hasCompositingDescendant bit.
   44193 
   44194         (WebCore::RenderLayer::compositor):
   44195         Shortcut to get to the RenderLayerCompositor.
   44196 
   44197         (WebCore::RenderLayer::updateLayerPositions):
   44198         We need to let full repaints propagate to all compositing layers, and
   44199         update the backing after layout here.
   44200 
   44201         (WebCore::RenderLayer::transparentAncestor):
   44202         (WebCore::transparencyClipBox):
   44203         (WebCore::RenderLayer::beginTransparencyLayers):
   44204         Account for the fact that opacity may be rendered via the compositing
   44205         layer sometimes.
   44206 
   44207         (WebCore::RenderLayer::addChild):
   44208         (WebCore::RenderLayer::removeChild):
   44209         (WebCore::RenderLayer::removeOnlyThisLayer):
   44210         Tell the compositor when the RenderLayer hierarchy changes.
   44211 
   44212         (WebCore::RenderLayer::scrollToOffset):
   44213         Update layer geometry after scrolling.
   44214 
   44215         (WebCore::RenderLayer::paintLayer):
   44216         We short-circuit painting on composited layers, because these layers
   44217         are painted on a callback from the compositing system.
   44218 
   44219         (WebCore::RenderLayer::hitTestLayer):
   44220         Only apply transforms if we are rendering them in software.
   44221 
   44222         (WebCore::RenderLayer::localBoundingBox):
   44223         (WebCore::RenderLayer::boundingBox):
   44224         (WebCore::RenderLayer::absoluteBoundingBox):
   44225         Refactor bounding box code that we can compute local, and ancestor-relative
   44226         bounding box, as well as absolute.
   44227 
   44228         (WebCore::RenderLayer::ensureBacking):
   44229         (WebCore::RenderLayer::clearBacking):
   44230         RenderLayerBacking creation and destruction.
   44231 
   44232         (WebCore::RenderLayer::setParent):
   44233         Tell the compositor when the RenderLayer hierarchy changes.
   44234 
   44235         (WebCore::RenderLayer::dirtyZOrderLists):
   44236         (WebCore::RenderLayer::dirtyStackingContextZOrderLists):
   44237         (WebCore::RenderLayer::dirtyOverflowList):
   44238         When the z-order and overflow lists change, we need to tell the
   44239         compositor that the composited layers need to be rejiggered soon.
   44240 
   44241         (WebCore::RenderLayer::updateZOrderLists):
   44242         Whitespace cleanup.
   44243 
   44244         (WebCore::RenderLayer::setBackingNeedsRepaint):
   44245         (WebCore::RenderLayer::setBackingNeedsRepaintInRect):
   44246         Dirty composited layer contents for painting.
   44247 
   44248         (WebCore::RenderLayer::styleChanged):
   44249         Update the layer backing after style changes.
   44250 
   44251         * rendering/RenderLayer.h:
   44252         (WebCore::RenderLayer::isComposited):
   44253         (WebCore::RenderLayer::backing):
   44254         Accessors for testing and getting the backing for this RenderLayer.
   44255 
   44256         (WebCore::RenderLayer::paintsWithTransparency):
   44257         (WebCore::RenderLayer::paintsWithTransform):
   44258         Transform and opacity can be applied via the compositing layer, or rendered
   44259         in software. These methods tell us if we need to account for them in the
   44260         non-compositing path.
   44261 
   44262         (WebCore::RenderLayer::hasCompositingDescendant):
   44263         (WebCore::RenderLayer::setHasCompositingDescendant):
   44264         Maintain a bit to tell if this layer has composited descendants.
   44265 
   44266 2009-02-03  Simon Fraser  <simon.fraser (a] apple.com>
   44267 
   44268         Reviewed by Dave Hyatt
   44269 
   44270         https://bugs.webkit.org/show_bug.cgi?id=23365
   44271 
   44272         Hook up accelerated compositing layers the native
   44273         view system on Mac.
   44274 
   44275         * WebCore.base.exp:
   44276         Export new Page methods.
   44277 
   44278         * page/ChromeClient.h:
   44279         (WebCore::ChromeClient::attachRootGraphicsLayer):
   44280         (WebCore::ChromeClient::setNeedsOneShotDrawingSynchronization):
   44281         New methods for attaching/detaching the root GraphicsLayer, and
   44282         synchronizing layer changes with window drawing.
   44283 
   44284         * page/FrameView.h:
   44285         * page/FrameView.cpp:
   44286         (WebCore::FrameView::updateCompositingLayers):
   44287         (WebCore::FrameView::setNeedsOneShotDrawingSynchronization):
   44288         (WebCore::FrameView::didMoveOnscreen):
   44289         (WebCore::FrameView::willMoveOffscreen):
   44290         New methods to update the compositing layer hierarchy,
   44291         and pass-throughs to the RenderLayerCompositor.
   44292 
   44293         (WebCore::FrameView::layout):
   44294         Update compositing layers after layout() and updateLayerPositions().
   44295 
   44296         * page/Page.cpp:
   44297         (WebCore::Page::didMoveOnscreen):
   44298         (WebCore::Page::willMoveOffscreen):
   44299         * page/Page.h:
   44300         New methods to allow the native view system to tell the Page when it
   44301         starts to be presented on-screen, and when it will be hidden.
   44302 
   44303         * rendering/RenderLayerCompositor.h:
   44304         * rendering/RenderLayerCompositor.cpp:
   44305         (WebCore::RenderLayerCompositor::updateLayerCompositingState):
   44306         (WebCore::RenderLayerCompositor::didMoveOnscreen):
   44307         (WebCore::RenderLayerCompositor::willMoveOffscreen):
   44308         (WebCore::RenderLayerCompositor::ensureRootPlatformLayer):
   44309         Rename 'attached' methods to 'moveOnscreen/moveOffscreen' to match
   44310         the calls through from Page, FrameView.
   44311 
   44312         (WebCore::RenderLayerCompositor::layerWillBeRemoved):
   44313         Dont' try to repaint or update layers if the document is being torn
   44314         down.
   44315 
   44316         * rendering/RenderView.cpp:
   44317         (WebCore::RenderView::didMoveOnscreen):
   44318         (WebCore::RenderView::willMoveOffscreen):
   44319         * rendering/RenderView.h:
   44320         New methods.
   44321 
   44322 2009-02-03  Dirk Schulze  <krit (a] webkit.org>
   44323 
   44324         Reviewed by Holger Hans Peter Freyther.
   44325 
   44326         Fixed getImageData and putImageData and respect pre-
   44327         multiplied colors.
   44328 
   44329         Cairo's ImageBuffer::getImageData() does not handle alpha=0 case correctly
   44330         https://bugs.webkit.org/show_bug.cgi?id=21575
   44331 
   44332         * platform/graphics/cairo/ImageBufferCairo.cpp:
   44333         (WebCore::ImageBuffer::getImageData):
   44334         (WebCore::ImageBuffer::putImageData):
   44335 
   44336 2009-02-03  Dan Bernstein  <mitz (a] apple.com>
   44337 
   44338         Reviewed by Brady Eidson.
   44339 
   44340         - fix <rdar://problem/6550530> REGRESSION (r40508): Window opened with window.open has no initial history item (global and back/forward)
   44341 
   44342         Test: fast/history/window-open.html
   44343 
   44344         * bindings/js/JSDOMWindowBase.cpp:
   44345         (WebCore::createWindow): Pass the missing lockBackForwardList parameter
   44346         to FrameLoader::changeLocation().
   44347 
   44348 2009-02-03  Adam Treat  <adam.treat (a] torchmobile.com>
   44349 
   44350         Fix the Qt build after r40536.
   44351 
   44352         * bridge/qt/qt_runtime.cpp:
   44353         (JSC::Bindings::convertQVariantToValue):
   44354 
   44355 2009-02-03  Dan Bernstein  <mitz (a] apple.com>
   44356 
   44357         - fix -Wmissing-prototypes builds
   44358 
   44359         * loader/WorkerThreadableLoader.cpp:
   44360         (WebCore::workerContextDidSendData): Marked this function static.
   44361         (WebCore::workerContextDidReceiveResponse): Ditto.
   44362         (WebCore::workerContextDidReceiveData): Ditto.
   44363         (WebCore::workerContextDidFinishLoading): Ditto.
   44364         (WebCore::workerContextDidFail): Ditto.
   44365         (WebCore::workerContextDidGetCancelled): Ditto.
   44366         (WebCore::workerContextDidReceiveAuthenticationCancellation): Ditto.
   44367 
   44368 2009-02-03  David Kilzer  <ddkilzer (a] apple.com>
   44369 
   44370         CrashTracer: [REGRESSION] 53 crashes in Safari at com.apple.WebCore: WebCore::LegacyWebArchive::create + 2706
   44371 
   44372         <rdar://problem/6509514>
   44373 
   44374         Reviewed by Adam Roben.
   44375 
   44376         * loader/archive/cf/LegacyWebArchive.cpp:
   44377         (WebCore::LegacyWebArchive::create): Null check the value returned
   44378         from WebCore::IconDatabase::iconForPageURL().
   44379 
   44380 2009-02-03  Simon Hausmann  <simon.hausmann (a] nokia.com>
   44381 
   44382         Reviewed by Tor Arne Vestb.
   44383 
   44384         Fix conversion of QByteArray to JavaScript and back. Instead of
   44385         converting it to a String (data loss!) we now map it to JSByteArray.
   44386 
   44387         * bridge/qt/qt_runtime.cpp:
   44388         (JSC::Bindings::):
   44389         (JSC::Bindings::valueRealType): Added JSByteArray as converstion type.
   44390         (JSC::Bindings::convertValueToQVariant): Convert from JSByteArray to
   44391         QVariant(QByteArray).
   44392         (JSC::Bindings::convertQVariantToValue): Convert from
   44393         QVariant::ByteArray to jsByteArray.
   44394 
   44395 2009-02-03  Alexey Proskuryakov  <ap (a] webkit.org>
   44396 
   44397         Build fix.
   44398 
   44399         * GNUmakefile.am: Removed WorkerTask.{h,cpp}.
   44400 
   44401 2009-02-03  Dmitry Titov  <dimich (a] chromium.org>
   44402 
   44403         Reviewed by Alexey Proskuryakov.
   44404 
   44405         https://bugs.webkit.org/show_bug.cgi?id=22718
   44406         Implement WindowTimers interface in Workers.
   44407 
   44408         This patch moves timeoutID from Document to ScriptExecutionContext
   44409         and exposes JS methods setTimeout/setInterval/clearTimeout/clearInterval inside of a Worker.
   44410         Also added a test for those methods.
   44411 
   44412         Test: fast/workers/worker-timeout.html
   44413 
   44414         * bindings/js/JSWorkerContextCustom.cpp:
   44415         (WebCore::setTimeoutOrInterval):
   44416         Creates ScheduledAction and calls WorkerContext::installTimeout to actually add a timer.
   44417 
   44418         (WebCore::JSWorkerContext::setTimeout):
   44419         (WebCore::JSWorkerContext::clearTimeout):
   44420         (WebCore::JSWorkerContext::setInterval):
   44421         (WebCore::JSWorkerContext::clearInterval):
   44422         Added methods exposed to JS.
   44423 
   44424         * dom/Document.cpp:
   44425         * dom/Document.h:
   44426         * dom/ScriptExecutionContext.cpp:
   44427         (WebCore::ScriptExecutionContext::addTimeout):
   44428         (WebCore::ScriptExecutionContext::removeTimeout):
   44429         (WebCore::ScriptExecutionContext::findTimeout):
   44430         * dom/ScriptExecutionContext.h:
   44431         The timerID map moves from Document to ScriptExecutionContext,
   44432         to be available to Document and to WorkerContext.
   44433 
   44434         * dom/WorkerContext.cpp:
   44435         (WebCore::WorkerContext::installTimeout): Adds a DOMTimeout.
   44436         (WebCore::WorkerContext::removeTimeout): Removes a DOMTimeout.
   44437         * dom/WorkerContext.h:
   44438 
   44439         * page/DOMTimer.cpp:
   44440         (WebCore::DOMTimer::DOMTimer):
   44441         (WebCore::DOMTimer::~DOMTimer):
   44442         (WebCore::DOMTimer::removeById):
   44443         Code change here reflects move of timeoutID map to the ScriptExecutionContext.
   44444         Some checks and casts are no longer needed.
   44445 
   44446 2009-02-03  Dmitry Titov  <dimich (a] chromium.org>
   44447 
   44448         Reviewed by Alexey Proskuryakov.
   44449 
   44450         https://bugs.webkit.org/show_bug.cgi?id=23560
   44451         Implement SharedTimer for Workers.
   44452 
   44453         * dom/WorkerRunLoop.cpp:
   44454         Added private class WorkerSharedTimer that implements SharedTimer interface for worker threads.
   44455         (WebCore::WorkerSharedTimer::WorkerSharedTimer):
   44456         (WebCore::WorkerSharedTimer::setFiredFunction):
   44457         (WebCore::WorkerSharedTimer::setFireTime):
   44458         (WebCore::WorkerSharedTimer::stop):
   44459         (WebCore::WorkerSharedTimer::isActive):
   44460         (WebCore::WorkerSharedTimer::fireTime):
   44461         (WebCore::WorkerSharedTimer::fire):
   44462         (WebCore::WorkerRunLoop::WorkerRunLoop):
   44463         Initializes a WorkerSharedTimer instance.
   44464         (WebCore::WorkerRunLoop::~WorkerRunLoop):
   44465         The destructor is here so compiler is ok with having OwnPtr<WorkerSharedTimer> in .h file w/o defining WorkerSharedTimer.
   44466         (WebCore::WorkerRunLoop::run):
   44467         Set/reset shared timer interface on ThreadTimers, use MessageQueue::waitForMessageTimed() if timer is active.
   44468         * dom/WorkerRunLoop.h:
   44469         Add member of type OwnPtr<WorkerSharedTimer>
   44470 
   44471 2009-02-03  Steve Falkenburg  <sfalken (a] apple.com>
   44472 
   44473         Build fix.
   44474 
   44475         * WebCore.vcproj/WebCore.vcproj:
   44476 
   44477 2009-02-03  Alexey Proskuryakov  <ap (a] webkit.org>
   44478 
   44479         Windows build fix.
   44480 
   44481         * dom/CrossThreadCopier.h: Changed forward declarations to use struct instead of class where
   44482         appropriate.
   44483 
   44484 2009-02-02  David Levin  <levin (a] chromium.org>
   44485 
   44486         Reviewed by Alexey Proskuryakov.
   44487 
   44488         Bug 23636: Make the async api of ThreadableLoader functional for the worker context.
   44489         <https://bugs.webkit.org/show_bug.cgi?id=23636>
   44490 
   44491         Enable the async portion of ThreadableLoader for workers.
   44492 
   44493         No observable change in behavior, so no test.
   44494 
   44495         * GNUmakefile.am:
   44496         * WebCore.pro:
   44497         * WebCore.scons:
   44498         * WebCore.vcproj/WebCore.vcproj:
   44499         * WebCore.xcodeproj/project.pbxproj:
   44500         * WebCoreSources.bkl:
   44501         * dom/CrossThreadCopier.h:
   44502         * dom/GenericWorkerTask.h:
   44503         * dom/WorkerThread.cpp:
   44504         * loader/ThreadableLoader.cpp:
   44505         (WebCore::ThreadableLoader::create):
   44506         * loader/ThreadableLoaderClient.h:
   44507         (WebCore::ThreadableLoaderClient::didFinishLoading):
   44508         * loader/ThreadableLoaderClientWrapper.h: Added.
   44509         (WebCore::ThreadableLoaderClientWrapper::create):
   44510         (WebCore::ThreadableLoaderClientWrapper::clearClient):
   44511         (WebCore::ThreadableLoaderClientWrapper::didSendData):
   44512         (WebCore::ThreadableLoaderClientWrapper::didReceiveResponse):
   44513         (WebCore::ThreadableLoaderClientWrapper::didReceiveData):
   44514         (WebCore::ThreadableLoaderClientWrapper::didFinishLoading):
   44515         (WebCore::ThreadableLoaderClientWrapper::didFail):
   44516         (WebCore::ThreadableLoaderClientWrapper::didGetCancelled):
   44517         (WebCore::ThreadableLoaderClientWrapper::didReceiveAuthenticationCancellation):
   44518         (WebCore::ThreadableLoaderClientWrapper::ThreadableLoaderClientWrapper):
   44519         * loader/WorkerThreadableLoader.cpp: Added.
   44520         (WebCore::WorkerThreadableLoader::WorkerThreadableLoader):
   44521         (WebCore::WorkerThreadableLoader::~WorkerThreadableLoader):
   44522         (WebCore::WorkerThreadableLoader::cancel):
   44523         (WebCore::WorkerThreadableLoader::MainThreadBridge::MainThreadBridge):
   44524         (WebCore::WorkerThreadableLoader::MainThreadBridge::~MainThreadBridge):
   44525         (WebCore::WorkerThreadableLoader::MainThreadBridge::mainThreadCreateLoader):
   44526         (WebCore::WorkerThreadableLoader::MainThreadBridge::mainThreadDestroy):
   44527         (WebCore::WorkerThreadableLoader::MainThreadBridge::destroy):
   44528         (WebCore::WorkerThreadableLoader::MainThreadBridge::mainThreadCancel):
   44529         (WebCore::WorkerThreadableLoader::MainThreadBridge::cancel):
   44530         (WebCore::WorkerThreadableLoader::MainThreadBridge::clearClientWrapper):
   44531         (WebCore::workerContextDidSendData):
   44532         (WebCore::WorkerThreadableLoader::MainThreadBridge::didSendData):
   44533         (WebCore::workerContextDidReceiveResponse):
   44534         (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveResponse):
   44535         (WebCore::workerContextDidReceiveData):
   44536         (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveData):
   44537         (WebCore::workerContextDidFinishLoading):
   44538         (WebCore::WorkerThreadableLoader::MainThreadBridge::didFinishLoading):
   44539         (WebCore::workerContextDidFail):
   44540         (WebCore::WorkerThreadableLoader::MainThreadBridge::didFail):
   44541         (WebCore::workerContextDidGetCancelled):
   44542         (WebCore::WorkerThreadableLoader::MainThreadBridge::didGetCancelled):
   44543         (WebCore::workerContextDidReceiveAuthenticationCancellation):
   44544         (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveAuthenticationCancellation):
   44545         * loader/WorkerThreadableLoader.h: Added.
   44546         (WebCore::WorkerThreadableLoader::create):
   44547         (WebCore::WorkerThreadableLoader::refThreadableLoader):
   44548         (WebCore::WorkerThreadableLoader::derefThreadableLoader):
   44549 
   44550 2009-02-02  David Levin  <levin (a] chromium.org>
   44551 
   44552         Reviewed by Alexey Proskuryakov.
   44553 
   44554         Bug 23636: Make the async api of ThreadableLoader functional for the worker context.
   44555         <https://bugs.webkit.org/show_bug.cgi?id=23636>
   44556 
   44557         No observable change in behavior, so no test.
   44558 
   44559         * WebCore.xcodeproj/project.pbxproj:
   44560         * dom/Worker.cpp:
   44561         * dom/Worker.h:
   44562         * dom/WorkerContext.cpp:
   44563         (WebCore::WorkerContext::addMessage):
   44564         (WebCore::WorkerContext::postTask):
   44565         (WebCore::WorkerContext::postTaskToWorkerObject):
   44566         * dom/WorkerContext.h:
   44567         * dom/WorkerMessagingProxy.cpp:
   44568         (WebCore::MessageWorkerContextTask::performTask):
   44569         (WebCore::WorkerMessagingProxy::postMessageToWorkerContext):
   44570         (WebCore::WorkerMessagingProxy::postTaskToWorkerContext):
   44571         Expose postTaskToWorkerContext for use by the worker object thread.
   44572 
   44573         (WebCore::WorkerMessagingProxy::postTaskToWorkerObject):
   44574         Change the name of postTaskToParentContext to postTaskToWorkerObject for consistency
   44575         with postMessageToWorkerObject.
   44576 
   44577         * dom/WorkerMessagingProxy.h:
   44578         * dom/WorkerRunLoop.cpp:
   44579         (WebCore::WorkerRunLoop::run):
   44580         (WebCore::WorkerRunLoop::postTask):
   44581         * dom/WorkerRunLoop.h:
   44582         * dom/WorkerTask.cpp: Removed.
   44583         * dom/WorkerTask.h: Removed.
   44584         Removed WorkerTask and replaced with the existing ScriptExecutionContext::Task.
   44585 
   44586         The resulted in the class going away along with an adapter that made
   44587         a ScriptExecutionContext::Task look like a WorkerTask.
   44588 
   44589         * dom/WorkerThread.cpp:
   44590         * dom/WorkerThread.h:
   44591 
   44592 2009-02-02  David Levin  <levin (a] chromium.org>
   44593 
   44594         Reviewed by Alexey Proskuryakov.
   44595 
   44596         Bug 23618: Templated worker tasks should be more error proof to use.
   44597         <https://bugs.webkit.org/show_bug.cgi?id=23618>
   44598 
   44599         Add the generic worker tasks templates needed for the WorkerThreadableLoader.
   44600 
   44601         No observable change in behavior, so no test.
   44602 
   44603         * GNUmakefile.am:
   44604         * WebCore.pro:
   44605         * WebCore.scons:
   44606         * WebCore.vcproj/WebCore.vcproj:
   44607         * WebCore.xcodeproj/project.pbxproj:
   44608         * WebCoreSources.bkl:
   44609         * dom/CrossThreadCopier.cpp: Added.
   44610         * dom/CrossThreadCopier.h: Added.
   44611         (WebCore::CrossThreadCopierPassThrough::copy):
   44612         * dom/GenericWorkerTask.h:
   44613         Stop doing the WorkerMessagingProxy::askedToTerminate call automatically
   44614         in performTask because was not obvious that it would be done and not always needed.
   44615 
   44616         (WebCore::GenericWorkerTask1::create):
   44617         (WebCore::GenericWorkerTask1::GenericWorkerTask1):
   44618         (WebCore::GenericWorkerTask1::performTask):
   44619         (WebCore::GenericWorkerTask2::create):
   44620         (WebCore::GenericWorkerTask2::GenericWorkerTask2):
   44621         (WebCore::GenericWorkerTask2::performTask):
   44622         (WebCore::GenericWorkerTask3::create):
   44623         (WebCore::GenericWorkerTask3::GenericWorkerTask3):
   44624         (WebCore::GenericWorkerTask3::performTask):
   44625         (WebCore::GenericWorkerTask4::create):
   44626         (WebCore::GenericWorkerTask4::GenericWorkerTask4):
   44627         (WebCore::GenericWorkerTask4::performTask):
   44628         (WebCore::GenericWorkerTask5::create):
   44629         (WebCore::GenericWorkerTask5::GenericWorkerTask5):
   44630         (WebCore::GenericWorkerTask5::performTask):
   44631         (WebCore::GenericWorkerTask6::create):
   44632         (WebCore::GenericWorkerTask6::GenericWorkerTask6):
   44633         (WebCore::GenericWorkerTask6::performTask):
   44634         (WebCore::GenericWorkerTask7::create):
   44635         (WebCore::GenericWorkerTask7::GenericWorkerTask7):
   44636         (WebCore::GenericWorkerTask7::performTask):
   44637         (WebCore::createCallbackTask):
   44638         * dom/WorkerContext.cpp:
   44639         (WebCore::addMessageTask):
   44640         (WebCore::WorkerContext::addMessage):
   44641         * dom/WorkerMessagingProxy.h:
   44642         (WebCore::WorkerMessagingProxy::askedToTerminate):
   44643 
   44644 2009-02-02  Sam Weinig  <sam (a] webkit.org>
   44645 
   44646         Reviewed by David "The Barnabas Jones" Hyatt.
   44647 
   44648         Move removeChildNode, appendChildNode and insertChildNode from
   44649         RenderContainer into RenderObjectChildList.  Make moveChildNode
   44650         static in RenderBlock, as that was the only user.
   44651 
   44652         * rendering/RenderBlock.cpp:
   44653         (WebCore::moveChild):
   44654         (WebCore::RenderBlock::makeChildrenNonInline):
   44655         (WebCore::RenderBlock::removeChild):
   44656         (WebCore::RenderBlock::handleRunInChild):
   44657         * rendering/RenderContainer.cpp:
   44658         (WebCore::RenderContainer::addChild):
   44659         (WebCore::RenderContainer::removeChild):
   44660         * rendering/RenderContainer.h:
   44661         * rendering/RenderInline.cpp:
   44662         (WebCore::RenderInline::splitInlines):
   44663         (WebCore::RenderInline::splitFlow):
   44664         (WebCore::RenderInline::childBecameNonInline):
   44665         * rendering/RenderObject.cpp:
   44666         (WebCore::RenderObject::handleDynamicFloatPositionChange):
   44667         * rendering/RenderObject.h:
   44668         (WebCore::RenderObject::createsAnonymousWrapper):
   44669         * rendering/RenderObjectChildList.cpp:
   44670         (WebCore::updateListMarkerNumbers):
   44671         (WebCore::RenderObjectChildList::removeChildNode):
   44672         (WebCore::RenderObjectChildList::appendChildNode):
   44673         (WebCore::RenderObjectChildList::insertChildNode):
   44674         * rendering/RenderObjectChildList.h:
   44675         * rendering/RenderSVGContainer.cpp:
   44676         (WebCore::RenderSVGContainer::addChild):
   44677         (WebCore::RenderSVGContainer::removeChild):
   44678         * rendering/RenderSVGContainer.h:
   44679         * rendering/RenderTable.cpp:
   44680         (WebCore::RenderTable::removeChild):
   44681         * rendering/RenderTable.h:
   44682         * rendering/RenderTableSection.cpp:
   44683         (WebCore::RenderTableSection::removeChild):
   44684         * rendering/RenderTableSection.h:
   44685 
   44686 2009-02-02  Alexey Proskuryakov  <ap (a] webkit.org>
   44687 
   44688         Reviewed by Darin Alder.
   44689 
   44690         https://bugs.webkit.org/show_bug.cgi?id=23697
   44691         Leaks seen on Worker tests
   44692 
   44693         * dom/WorkerMessagingProxy.cpp: (WebCore::WorkerMessagingProxy::workerContextDestroyedInternal):
   44694         Zero out m_workerThread, so that the proxy could be deleted once workerObjectDestroyed()
   44695         is called.
   44696 
   44697 2009-02-02  David Hyatt  <hyatt (a] apple.com>
   44698 
   44699         Move positionForCoordinates up from RenderContainer into RenderBox.
   44700 
   44701         Reviewed by Sam Weinig
   44702 
   44703         * rendering/RenderBox.cpp:
   44704         (WebCore::RenderBox::positionForCoordinates):
   44705         * rendering/RenderBox.h:
   44706         * rendering/RenderContainer.cpp:
   44707         * rendering/RenderContainer.h:
   44708 
   44709 2009-02-02  Hiroaki Nakamura <hnakamur (a] gmail.com>
   44710 
   44711         Reviewed by Adam Roben.
   44712 
   44713         Fixes https://bugs.webkit.org/show_bug.cgi?id=15813
   44714         Modify pre-build step to properly handle the errorlevel
   44715         shell command.
   44716 
   44717         * WebCore.vcproj/WebCore.vcproj: Change errorlevel handling
   44718         for all targets so prefast is only enabled in builds
   44719         where /analyze is available.
   44720 
   44721 2009-02-02  David Hyatt  <hyatt (a] apple.com>
   44722 
   44723         Refactor the handling of before/after content and generated content.  Move most of the functions from
   44724         RenderContainer into RenderObjectChildList.
   44725 
   44726         Reviewed by Sam Weinig
   44727 
   44728         * rendering/RenderBlock.cpp:
   44729         (WebCore::RenderBlock::updateBeforeAfterContent):
   44730         * rendering/RenderBlock.h:
   44731         * rendering/RenderBox.cpp:
   44732         (WebCore::RenderBox::isAfterContent):
   44733         * rendering/RenderBox.h:
   44734         * rendering/RenderButton.cpp:
   44735         (WebCore::RenderButton::updateBeforeAfterContent):
   44736         * rendering/RenderContainer.cpp:
   44737         * rendering/RenderContainer.h:
   44738         * rendering/RenderCounter.cpp:
   44739         (WebCore::destroyCounterNodeChildren):
   44740         * rendering/RenderInline.cpp:
   44741         (WebCore::RenderInline::styleDidChange):
   44742         (WebCore::RenderInline::addChildIgnoringContinuation):
   44743         (WebCore::RenderInline::splitInlines):
   44744         * rendering/RenderObject.h:
   44745         * rendering/RenderObjectChildList.cpp:
   44746         (WebCore::beforeAfterContainer):
   44747         (WebCore::findBeforeAfterParent):
   44748         (WebCore::invalidateCountersInContainer):
   44749         (WebCore::RenderObjectChildList::invalidateCounters):
   44750         (WebCore::RenderObjectChildList::updateBeforeAfterContent):
   44751         * rendering/RenderObjectChildList.h:
   44752 
   44753 2009-02-02  Dmitry Titov  <dimich (a] chromium.org>
   44754 
   44755         Reviewed by Darin Adler.
   44756 
   44757         https://bugs.webkit.org/show_bug.cgi?id=23661
   44758         Fix Chromium build.
   44759 
   44760         * history/HistoryItem.h: need to include <wtf/OwnPtr.h>
   44761 
   44762         * rendering/RenderThemeChromiumMac.mm:
   44763         (WebCore::RenderThemeChromiumMac::adjustMenuListStyle): isEnabled() is now on FormControlElement.
   44764 
   44765 2009-02-02  Geoffrey Garen  <ggaren (a] apple.com>
   44766 
   44767         Build fix.
   44768 
   44769         * plugins/PluginView.cpp:
   44770         (WebCore::PluginView::performRequest):
   44771 
   44772 2009-02-02  Geoffrey Garen  <ggaren (a] apple.com>
   44773 
   44774         Build fix.
   44775 
   44776         * WebCore.base.exp:
   44777 
   44778 2009-02-02  Geoffrey Garen  <ggaren (a] apple.com>
   44779 
   44780         Reviewed by Sam Weinig.
   44781 
   44782         Track redirects in global history.
   44783 
   44784         * WebCore.base.exp: Renamed some exports.
   44785 
   44786         * bindings/js/JSDOMWindowBase.cpp:
   44787         (WebCore::createWindow):
   44788         (windowProtoFuncOpen):
   44789         * bindings/js/JSDOMWindowCustom.cpp:
   44790         (WebCore::JSDOMWindow::setLocation):
   44791         * bindings/js/JSDocumentCustom.cpp:
   44792         (WebCore::JSDocument::setLocation):
   44793         * bindings/js/JSHTMLFormElementCustom.cpp:
   44794         (WebCore::JSHTMLFormElement::submit):
   44795         * bindings/js/JSLocationCustom.cpp:
   44796         (WebCore::JSLocation::setHref):
   44797         (WebCore::JSLocation::setProtocol):
   44798         (WebCore::JSLocation::setHost):
   44799         (WebCore::JSLocation::setHostname):
   44800         (WebCore::JSLocation::setPort):
   44801         (WebCore::JSLocation::setPathname):
   44802         (WebCore::JSLocation::setSearch):
   44803         (WebCore::JSLocation::setHash):
   44804         (WebCore::JSLocation::assign): Treat any navigation that is not initiated
   44805         by the user as a redirect from the perspective of global history.
   44806 
   44807         * history/HistoryItem.cpp:
   44808         (WebCore::HistoryItem::addRedirectURL): Store the last URL in the redirect
   44809         chain.
   44810 
   44811         * loader/DocumentLoader.cpp:
   44812         (WebCore::DocumentLoader::DocumentLoader):
   44813         * loader/DocumentLoader.h:
   44814         (WebCore::DocumentLoader::urlForHistoryReflectsServerRedirect):
   44815         (WebCore::DocumentLoader::urlForHistoryReflectsClientRedirect):
   44816         (WebCore::DocumentLoader::setURLForHistoryReflectsClientRedirect): Sadly,
   44817         added yet another way to track redirect state during loading, since none
   44818         of the others did what I wanted, and I didn't want to cause behavior
   44819         changes in existing code.
   44820 
   44821         * loader/EmptyClients.h:
   44822         (WebCore::EmptyFrameLoaderClient::updateGlobalHistoryForRedirectWithoutHistoryItem):
   44823         Stubbed out a client function to keep things building.
   44824 
   44825         * loader/FrameLoader.cpp:
   44826         (WebCore::isBackForwardLoadType):
   44827         (WebCore::FrameLoader::restoreDocumentState): Renamed FrameLoadTypeRedirect =>
   44828         FrameLoadTypeRedirectWithLockedBackForwardList, to distinguish from all
   44829         the other meanings of "redirect" in the loading code.
   44830 
   44831         (WebCore::FrameLoader::scheduleHTTPRedirection): Treat any HTTP refresh
   44832         redirect as a redirect from the perspective of global history.
   44833 
   44834         (WebCore::FrameLoader::loadURLIntoChildFrame): Updated for rename and extra
   44835         parameter.
   44836 
   44837         (WebCore::FrameLoader::startRedirectionTimer): Removed unused parameter.
   44838 
   44839         (WebCore::FrameLoader::loadFrameRequestWithFormAndValues):
   44840         (WebCore::FrameLoader::loadURL):
   44841         (WebCore::FrameLoader::load): Updated for rename and extra parameter.
   44842 
   44843         (WebCore::FrameLoader::loadWithNavigationAction): Track redirect status
   44844         in the DocumentLoader, so it's accessible to WebKit's global history code.
   44845 
   44846         (WebCore::FrameLoader::clientRedirected): Ignore lockHistory, since it
   44847         only has meaning to global history, and m_quickRedirectComing pertains
   44848         to other kinds of history.
   44849 
   44850         (WebCore::FrameLoader::loadPostRequest):
   44851         (WebCore::FrameLoader::loadEmptyDocumentSynchronously):
   44852         (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy):
   44853         (WebCore::FrameLoader::continueLoadAfterNewWindowPolicy):
   44854         (WebCore::FrameLoader::loadItem): Updated for extra parameter and rename.
   44855 
   44856         (WebCore::FrameLoader::updateHistory*): Notify WebKit about redirect
   44857         navigations even if they don't create new history items, so we can track
   44858         the redirect in the existing history item.
   44859 
   44860         * loader/FrameLoader.h: See above.
   44861 
   44862         * loader/FrameLoaderClient.h: New client interface used by
   44863         FrameLoader::updateHistory* to record a redirect even if it doesn't create
   44864         a new history item of its own.
   44865 
   44866         * loader/FrameLoaderTypes.h: See above.
   44867         (WebCore::):
   44868 
   44869         * page/DragController.cpp:
   44870         (WebCore::DragController::performDrag):
   44871         * svg/graphics/SVGImage.cpp:
   44872         (WebCore::SVGImage::dataChanged): Updated for extra parameter.
   44873 
   44874 2009-02-02  David Hyatt  <hyatt (a] apple.com>
   44875 
   44876         Make calcPrefWidths non-abstract on RenderBox and just give it RenderContainer's implementation.
   44877         Remove RenderSVGContainer's implementation, since it was never called.
   44878 
   44879         Reviewed by Beth Dakin
   44880 
   44881         * rendering/RenderBox.cpp:
   44882         (WebCore::RenderBox::minPrefWidth):
   44883         * rendering/RenderBox.h:
   44884         (WebCore::RenderBox::calcPrefWidths):
   44885         * rendering/RenderContainer.h:
   44886         (WebCore::RenderContainer::moveChildNode):
   44887         * rendering/RenderSVGContainer.h:
   44888 
   44889 2009-02-02  Anders Carlsson  <andersca (a] apple.com>
   44890 
   44891         Reviewed by Sam Weinig.
   44892 
   44893         Add jsObjectForPluginElement to ScriptController, and have createScriptObjectForPluginElement call it.
   44894 
   44895         * WebCore.LP64.exp:
   44896         * bindings/js/ScriptController.cpp:
   44897         (WebCore::ScriptController::createScriptObjectForPluginElement):
   44898         (WebCore::ScriptController::jsObjectForPluginElement):
   44899         * bindings/js/ScriptController.h:
   44900 
   44901 2009-02-02  Darin Fisher  <darin (a] chromium.org>
   44902 
   44903         Reviewed by Eric Seidel (and Ojan Vafai).
   44904 
   44905         https://bugs.webkit.org/show_bug.cgi?id=23696
   44906         Select element doesn't show new value when focus is switched in
   44907         onchange event.
   44908 
   44909         Fix PopupMenuChromium to hide itself before calling valueChanged.  This
   44910         better matches the behavior of the other ports.
   44911 
   44912         * platform/chromium/PopupMenuChromium.cpp:
   44913         (WebCore::PopupListBox::create):
   44914         (WebCore::PopupContainer::PopupContainer):
   44915         (WebCore::PopupContainer::showPopup):
   44916         (WebCore::PopupContainer::hidePopup):
   44917         (WebCore::PopupListBox::abandon):
   44918         (WebCore::PopupListBox::acceptIndex):
   44919         (WebCore::PopupMenu::show):
   44920         (WebCore::PopupMenu::hide):
   44921 
   44922 2009-02-02  David Hyatt  <hyatt (a] apple.com>
   44923 
   44924         Make sure scrollWidth/Height just return 0 for inline flows.
   44925 
   44926         Reviewed by Beth Dakin
   44927 
   44928         * rendering/RenderBox.cpp:
   44929         (WebCore::RenderBox::scrollWidth):
   44930         (WebCore::RenderBox::scrollHeight):
   44931 
   44932 2009-02-02  Darin Adler  <darin (a] apple.com>
   44933 
   44934         Reviewed by Dave Hyatt.
   44935 
   44936         Bug 23676: Speed up uses of reserveCapacity on new vectors by adding a new reserveInitialCapacity
   44937         https://bugs.webkit.org/show_bug.cgi?id=23676
   44938 
   44939         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
   44940         (WebCore::cssPropertyName):
   44941         * css/CSSMutableStyleDeclaration.cpp:
   44942         (WebCore::CSSMutableStyleDeclaration::CSSMutableStyleDeclaration):
   44943         (WebCore::CSSMutableStyleDeclaration::removePropertiesInSet):
   44944         * css/CSSPrimitiveValue.cpp:
   44945         (WebCore::CSSPrimitiveValue::cssText):
   44946         * css/CSSStyleDeclaration.cpp:
   44947         (WebCore::CSSStyleDeclaration::copyPropertiesInSet):
   44948         * css/CSSStyleSelector.cpp:
   44949         (WebCore::CSSStyleSelector::sortMatchedRules):
   44950         * dom/Document.cpp:
   44951         (WebCore::Document::formElementsState):
   44952         * dom/NamedAttrMap.h:
   44953         (WebCore::NamedAttrMap::reserveInitialCapacity):
   44954         * editing/TextIterator.cpp:
   44955         (WebCore::CharacterIterator::string):
   44956         (WebCore::SearchBuffer::SearchBuffer):
   44957         (WebCore::plainTextToMallocAllocatedBuffer):
   44958         * editing/markup.cpp:
   44959         (WebCore::joinMarkups):
   44960         * history/HistoryItem.cpp:
   44961         (WebCore::HistoryItem::HistoryItem):
   44962         * html/HTMLTokenizer.cpp:
   44963         (WebCore::Token::addAttribute):
   44964         * loader/appcache/DOMApplicationCache.cpp:
   44965         (WebCore::DOMApplicationCache::items):
   44966         * page/SecurityOrigin.cpp:
   44967         (WebCore::SecurityOrigin::toString):
   44968         * page/mac/AccessibilityObjectWrapper.mm:
   44969         (convertToVector):
   44970         * platform/graphics/FontCache.cpp:
   44971         (WebCore::FontCache::purgeInactiveFontData):
   44972         (WebCore::FontCache::invalidate):
   44973         * platform/network/FormData.cpp:
   44974         (WebCore::FormData::deepCopy):
   44975         * platform/network/HTTPHeaderMap.cpp:
   44976         (WebCore::HTTPHeaderMap::copyData):
   44977         * platform/network/ResourceRequestBase.cpp:
   44978         (WebCore::ResourceRequestBase::copyData):
   44979         * platform/network/mac/FormDataStreamMac.mm:
   44980         (WebCore::formCreate):
   44981         * xml/XPathNodeSet.cpp:
   44982         (WebCore::XPath::NodeSet::sort):
   44983         Use reserveInitialCapacity instead of of reserveCapacity in all these call sites,
   44984         which are working on new vectors that are guaranteed not to be empty.
   44985 
   44986 2009-02-26  Jon Honeycutt  <jhoneycutt (a] apple.com>
   44987 
   44988         Build fix after r40486.
   44989 
   44990         Rubber-stamped by Ada Chan.
   44991 
   44992         * dom/Document.h: Changed HitTestRequest to a class from a struct.
   44993         * page/EventHandler.h: Ditto.
   44994         * rendering/EllipsisBox.h: Ditto.
   44995         * rendering/InlineBox.h: Ditto.
   44996         * rendering/InlineFlowBox.h: Ditto.
   44997         * rendering/RenderLayer.h: Ditto.
   44998 
   44999 2009-02-02  Darin Adler  <darin (a] apple.com>
   45000 
   45001         Reviewed by Anders Carlsson.
   45002 
   45003         Bug 23694: REGRESSION: Running svg/custom tests crashes, randomly, depending on the order of tests
   45004         https://bugs.webkit.org/show_bug.cgi?id=23694
   45005 
   45006         * dom/ContainerNode.cpp:
   45007         (WebCore::ContainerNode::insertedIntoDocument): Added back the call through to EventTargetNode.
   45008         (WebCore::ContainerNode::removedFromDocument): Ditto.
   45009         * dom/EventTargetNode.cpp:
   45010         (WebCore::EventTargetNode::insertedIntoDocument): Changed this to not call through to Node.
   45011         (WebCore::EventTargetNode::removedFromDocument): Ditto.
   45012         * dom/Node.cpp:
   45013         (WebCore::Node::insertedIntoDocument): Updated comment.
   45014         (WebCore::Node::removedFromDocument): Ditto.
   45015 
   45016 2009-02-02  Anders Carlsson  <andersca (a] apple.com>
   45017 
   45018         Reviewed by Dan Bernstein.
   45019 
   45020         More plug-in cleanup.
   45021 
   45022         * WebCore.NPAPI.exp:
   45023         Add new symbols.
   45024 
   45025         * bindings/objc/DOM.mm:
   45026         * bindings/objc/DOMPrivate.h:
   45027         Remove methods that WebKit doesn't use anymore.
   45028 
   45029 2009-02-02  Jay Campan  <jcampan (a] chromium.org>
   45030 
   45031         Reviewed by Eric Seidel.
   45032 
   45033         Clean up PopupMenuChromium a little.
   45034         https://bugs.webkit.org/show_bug.cgi?id=23653
   45035 
   45036         No functional changes, only code cleanup, thus no tests.
   45037 
   45038         * platform/chromium/PopupMenuChromium.cpp:
   45039         (WebCore::):
   45040         (WebCore::PopupListBox::PopupListBox):
   45041         (WebCore::PopupContainer::create):
   45042         (WebCore::PopupContainer::PopupContainer):
   45043         (WebCore::PopupContainer::showPopup):
   45044         (WebCore::PopupListBox::handleKeyEvent):
   45045         (WebCore::PopupListBox::isSelectableItem):
   45046         (WebCore::PopupListBox::selectNextRow):
   45047         (WebCore::PopupListBox::selectPreviousRow):
   45048         (WebCore::PopupMenu::show):
   45049         * platform/chromium/PopupMenuChromium.h:
   45050 
   45051 2009-02-02  Anders Carlsson  <andersca (a] apple.com>
   45052 
   45053         Reviewed by Dan Bernstein.
   45054 
   45055         Change createPlugin to take a HTMLPlugInElement, and createJavaAppletWidget to take a HTMLAppletElement.
   45056 
   45057         * WebCore.xcodeproj/project.pbxproj:
   45058         * loader/EmptyClients.h:
   45059         (WebCore::EmptyFrameLoaderClient::createPlugin):
   45060         (WebCore::EmptyFrameLoaderClient::createJavaAppletWidget):
   45061         * loader/FrameLoader.cpp:
   45062         (WebCore::toPlugInElement):
   45063         (WebCore::FrameLoader::loadPlugin):
   45064         (WebCore::FrameLoader::loadItem):
   45065         * loader/FrameLoader.h:
   45066         * loader/FrameLoaderClient.h:
   45067 
   45068 2009-02-02  Genevieve Mak  <gen (a] staikos.net>
   45069 
   45070         Reviewed by George Staikos.
   45071 
   45072         https://bugs.webkit.org/show_bug.cgi?id=23508
   45073         Returns Blank Page for all "about" protocols
   45074 
   45075         * loader/MainResourceLoader.cpp:
   45076         Fix shouldLoadAsEmptyDocument() to return a blank page for an empty
   45077         url or about:blank only (for now, exclusively for Torch Mobile platform).
   45078 
   45079 2009-02-02  Brent Fulgham  <bfulgham (a] webkit.org>
   45080 
   45081         Reviewed by George Staikos.
   45082 
   45083         Fixes https://bugs.webkit.org/show_bug.cgi?id=23691.
   45084         Correct build break caused by @r40366 by moving the
   45085         common code implmentations from GraphicsContextCGWin.cpp
   45086         into the base Windows class (GraphicsContextWin.cpp).  Also
   45087         move inTransparencyLayer since it is identical in both
   45088         children.
   45089 
   45090         * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
   45091           Added member m_shouldIncludeChildWindows to Windows version,
   45092           similar to GraphicsContextPlatformPrivateCG.h.
   45093         * platform/graphics/win/GraphicsContextCGWin.cpp: Remove the
   45094           implementations of shouldIncludeChildWindows,
   45095           setShouldIncludeChildWindows, and inTransparencyLayer.
   45096         * platform/graphics/win/GraphicsContextCairoWin.cpp: Remove
   45097           the implementation of inTransparencyLayer.
   45098         * platform/graphics/win/GraphicsContextWin.cpp: Move common code
   45099           from GraphicsContextCGWin.cpp and GraphicsContextCairoWin.cpp.
   45100         (WebCore::GraphicsContext::inTransparencyLayer):
   45101         (WebCore::GraphicsContext::setShouldIncludeChildWindows):
   45102         (WebCore::GraphicsContext::shouldIncludeChildWindows):
   45103 
   45104 2009-02-02  Darin Adler  <darin (a] apple.com>
   45105 
   45106         Try to fix Wx build, and maybe Chromium build too.
   45107 
   45108         * WebCore.scons: Added IdentifierRep.cpp.
   45109         * WebCoreSources.bkl: Ditto.
   45110 
   45111 2009-02-02  Darin Adler  <darin (a] apple.com>
   45112 
   45113         Try to fix Wx build.
   45114 
   45115         * html/HTMLAreaElement.cpp: Added missing include of "Path.h".
   45116 
   45117 2009-02-02  Adam Treat  <adam.treat (a] torchmobile.com>
   45118 
   45119         Reviewed by Nikolas Zimmermann.
   45120 
   45121         https://bugs.webkit.org/show_bug.cgi?id=23587
   45122         Refactor HitTestRequest to eliminate all the ugly boolean arguments and
   45123         use an enum bitflag instead.  Cleanup all the code that constructs the
   45124         various HitTestRequests to make the code more readable.
   45125 
   45126         * dom/Document.cpp:
   45127         (WebCore::Document::elementFromPoint):
   45128         (WebCore::Document::prepareMouseEvent):
   45129         * editing/SelectionController.cpp:
   45130         (WebCore::SelectionController::contains):
   45131         * page/AccessibilityRenderObject.cpp:
   45132         (WebCore::AccessibilityRenderObject::visiblePositionForPoint):
   45133         (WebCore::AccessibilityRenderObject::doAccessibilityHitTest):
   45134         * page/EventHandler.cpp:
   45135         (WebCore::EventHandler::eventMayStartDrag):
   45136         (WebCore::EventHandler::updateSelectionForMouseDrag):
   45137         (WebCore::EventHandler::hitTestResultAtPoint):
   45138         (WebCore::EventHandler::handleMousePressEvent):
   45139         (WebCore::EventHandler::handleMouseDoubleClickEvent):
   45140         (WebCore::EventHandler::handleMouseMoveEvent):
   45141         (WebCore::EventHandler::handleMouseReleaseEvent):
   45142         (WebCore::EventHandler::updateDragAndDrop):
   45143         (WebCore::EventHandler::handleWheelEvent):
   45144         (WebCore::EventHandler::sendContextMenuEvent):
   45145         (WebCore::EventHandler::hoverTimerFired):
   45146         (WebCore::EventHandler::handleDrag):
   45147         * page/EventHandler.h:
   45148         * rendering/HitTestRequest.h:
   45149         (WebCore::HitTestRequest::):
   45150         (WebCore::HitTestRequest::HitTestRequest):
   45151         (WebCore::HitTestRequest::readOnly):
   45152         (WebCore::HitTestRequest::active):
   45153         (WebCore::HitTestRequest::mouseMove):
   45154         (WebCore::HitTestRequest::mouseUp):
   45155         (WebCore::HitTestRequest::ignoreClipping):
   45156         * rendering/RenderFrameSet.cpp:
   45157         (WebCore::RenderFrameSet::nodeAtPoint):
   45158         * rendering/RenderLayer.cpp:
   45159         (WebCore::RenderLayer::hitTest):
   45160         (WebCore::RenderLayer::hitTestLayer):
   45161         (WebCore::RenderLayer::updateHoverActiveState):
   45162 
   45163 2009-02-02  George Staikos  <george.staikos (a] torchmobile.com>
   45164 
   45165         Reviewed by Niko Zimmermann.
   45166 
   45167         Fix WML build by including the inlined renderStyle().
   45168 
   45169         * wml/WMLOptGroupElement.cpp:
   45170         * wml/WMLOptionElement.cpp:
   45171 
   45172 2009-02-02  Darin Adler  <darin (a] apple.com>
   45173 
   45174         Reviewed by Niko Zimmermann.
   45175 
   45176         Bug 23686: REGRESSION (r40475): Failure in fast/xpath/4XPath/Core/test_core_functions.html
   45177         https://bugs.webkit.org/show_bug.cgi?id=23686
   45178         rdar://problem/6547971
   45179 
   45180         Also fix other XPath tests that are crashing.
   45181 
   45182         * xml/XPathFunctions.cpp:
   45183         (WebCore::XPath::FunLang::evaluate): Fix order of arguments when creating QualifiedName.
   45184         * xml/XPathStep.cpp:
   45185         (WebCore::XPath::Step::nodesInAxis): Use createAttrIfNeeded() rather than attr() since we
   45186         need to make Attr nodes here. Yuck!
   45187 
   45188 2009-02-02  Yichao Yin  <yichao.yin (a] torchmobile.com.cn>
   45189 
   45190         Reviewed by Niko Zimmermann.
   45191 
   45192         Test: wml/input-format.html
   45193 
   45194         * wml/WMLInputElement.cpp:
   45195         (WebCore::WMLInputElement::WMLInputElement):
   45196         (WebCore::formatCodes):
   45197         (WebCore::WMLInputElement::dispatchBlurEvent):
   45198         (WebCore::WMLInputElement::parseMappedAttribute):
   45199         (WebCore::WMLInputElement::attach):
   45200         (WebCore::WMLInputElement::defaultEventHandler):
   45201         (WebCore::WMLInputElement::init):
   45202         (WebCore::WMLInputElement::validateInputMask):
   45203         (WebCore::WMLInputElement::isConformedToInputMask):
   45204         (WebCore::WMLInputElement::cursorPositionToMaskIndex):
   45205         * wml/WMLInputElement.h:
   45206 
   45207 2009-02-02  Brent Fulgham  <bfulgham (a] webkit.org>
   45208 
   45209         Build fix only, no review.
   45210 
   45211         Fixes https://bugs.webkit.org/show_bug.cgi?id=23685.
   45212         Correct build break caused by @r40473.
   45213 
   45214         * page/win/FrameWin.cpp: Correct access for adjustPageHeight.
   45215         (WebCore::computePageRectsForFrame):
   45216 
   45217 2009-02-02  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   45218 
   45219         Not reviewed. Fix WML enabled builds.
   45220         FrameLoader::urlSelected() got a new parameter: lockBackForwardList. Pass 'false', as HTMLAnchorElement does.
   45221 
   45222         * wml/WMLAElement.cpp:
   45223         (WebCore::WMLAElement::defaultEventHandler):
   45224 
   45225 2009-02-02  Alexey Proskuryakov  <ap (a] webkit.org>
   45226 
   45227         Reviewed by Darin Adler.
   45228 
   45229         <rdar://problem/6451610> Reloading a AppCache page doesn't ever hit the server
   45230 
   45231         Not easily testable.
   45232 
   45233         * loader/appcache/ApplicationCacheGroup.cpp:
   45234         (WebCore::ApplicationCacheGroup::createResourceHandle): A new method that creates a resource
   45235         handle in a manner that is closer to what CachedResource does. We now make conditional
   45236         requests for better performance, and set max-age to ensure that stale responses are not used.
   45237         (WebCore::ApplicationCacheGroup::update): Use the new createResourceHandle() method.
   45238         (WebCore::ApplicationCacheGroup::didReceiveResponse): If the response code for the resource
   45239         is 304, take it from the newest cache.
   45240         (WebCore::ApplicationCacheGroup::didFail): Pre-compute request URL.
   45241         (WebCore::ApplicationCacheGroup::didReceiveManifestResponse): Don't create a resource for
   45242         the manifest if the response code was 304 - it won't be needed.
   45243         (WebCore::ApplicationCacheGroup::didReceiveManifestData): Replaced an assertion that
   45244         m_manifestResource is not null with a check.
   45245         (WebCore::ApplicationCacheGroup::didFinishLoadingManifest): Treat null m_manifestResource as
   45246         an indication that the response was 304.
   45247         (WebCore::ApplicationCacheGroup::startLoadingEntry): Use createResourceHandle().
   45248 
   45249         * loader/appcache/ApplicationCacheGroup.h: Added createResourceHandle().
   45250 
   45251 2009-02-01  Darin Adler  <darin (a] apple.com>
   45252 
   45253         Reviewed by Dave Hyatt.
   45254 
   45255         Bug 23674: Speed up some things based on profiling the page load test
   45256         https://bugs.webkit.org/show_bug.cgi?id=23674
   45257 
   45258         * css/CSSStyleSelector.cpp:
   45259         (WebCore::CSSStyleSelector::canShareStyleWithElement): Use the newly named cssTarget instead
   45260         of the old name, getCSSTarget.
   45261         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): Ditto.
   45262 
   45263         * dom/ContainerNode.cpp:
   45264         (WebCore::ContainerNode::insertedIntoDocument): Moved code from Node in here rather than
   45265         calling through to EventTargetNode::insertedIntoDocument.
   45266         (WebCore::ContainerNode::removedFromDocument): Ditto.
   45267         (WebCore::ContainerNode::insertedIntoTree): Tweaked a bit.
   45268         (WebCore::ContainerNode::removedFromTree): Ditto.
   45269 
   45270         * dom/ContainerNode.h: Moved the constructor definition here and made it inline.
   45271 
   45272         * dom/Document.cpp:
   45273         (WebCore::Document::removeAllEventListenersFromAllNodes): Iterate the document element and
   45274         its contents only to avoid the document type node. This allows us to remove the virtual
   45275         function call to isEventTargetNode from the loop.
   45276         (WebCore::Document::setCSSTarget): Changed argument to be an Element rather than Node.
   45277 
   45278         * dom/Document.h: Changed CSS target to be an Element rather than a Node. Renamed
   45279         getCSSTarget to cssTarget.
   45280 
   45281         * dom/EventTargetNode.cpp:
   45282         (WebCore::EventTargetNode::removeAllEventListenersSlowCase): Renamed and turned the
   45283         rare data check into an assertion.
   45284 
   45285         * dom/EventTargetNode.h: Made the fast case of removeAllEventListeners be inline.
   45286         Also moved the constructor definition here and made it inline. And added toEventTargetNode,
   45287         matching the design of the render tree checked casts. Later we can migrate all callers
   45288         from EventTargetNodeCast to toEventTargetNode.
   45289 
   45290         * dom/NamedAttrMap.cpp:
   45291         (WebCore::NamedAttrMap::detachAttributesFromElement): Added. Factored out from
   45292         clearAttributes, so we could use this loop in cases where we're not clearing the attributes.
   45293         (WebCore::NamedAttrMap::~NamedAttrMap): Call detachAttributesFromElement instead of
   45294         clearAttributes here.
   45295         (WebCore::NamedAttrMap::clearAttributes): Call detachAttributesFromElement here.
   45296         (WebCore::NamedAttrMap::detachFromElement): Call detachAttributesFromElement instead of
   45297         clearAttributes. We don't need to clear the attributes array just because the element is
   45298         going away, so don't.
   45299         (WebCore::NamedAttrMap::virtualLength): Added.
   45300 
   45301         * dom/NamedAttrMap.h: Made all the virtual functions inherited from NamedNodeMap be private.
   45302         These are all unnecessarily inefficient for use outside the DOM. Changed length to be a
   45303         non-virtual function. This was a fairly hot function.
   45304 
   45305         * dom/NamedMappedAttrMap.cpp:
   45306         (WebCore::NamedMappedAttrMap::setClass): Changed to use element() function now that the
   45307         m_element data member is private.
   45308 
   45309         * dom/NamedMappedAttrMap.h: Made a few functions private. Made the
   45310         hasMappedAttributes function non-virtual.
   45311 
   45312         * dom/NamedNodeMap.h: Made length a non-virtual inline function that calls a virtual
   45313         function, name virtualLength. This lets NamedAttrMap::length be a non-virtual function.
   45314 
   45315         * dom/Node.cpp:
   45316         (WebCore::Node::insertedIntoDocument): Removed call to insertedIntoTree, since it's
   45317         only non-empty in subclasses of ContainerNode.
   45318         (WebCore::Node::removedFromDocument): Ditto. Also removed setCSSTarget. Since a CSS
   45319         target has to be an Element, this can be moved down to ContainerNode (or it could be
   45320         moved down to Element for that matter).
   45321 
   45322         * dom/QualifiedName.cpp:
   45323         (WebCore::QualifiedName::QualifiedName): Removed double initialization of m_impl.
   45324 
   45325         * dom/QualifiedName.h: Moved the destructor, copy constructor, assignment operator, and
   45326         setPrefix function definitions into the header and made them inline.
   45327 
   45328         * html/HTMLAreaElement.cpp:
   45329         (WebCore::HTMLAreaElement::mapMouseEvent): Updated since the stored region is now
   45330         an OwnPtr.
   45331         (WebCore::HTMLAreaElement::accessKey): Use AtomicString.
   45332         (WebCore::HTMLAreaElement::setAccessKey): Ditto.
   45333         (WebCore::HTMLAreaElement::alt): Ditto.
   45334         (WebCore::HTMLAreaElement::setAlt): Ditto.
   45335         (WebCore::HTMLAreaElement::coords): Ditto.
   45336         (WebCore::HTMLAreaElement::setCoords): Ditto.
   45337         (WebCore::HTMLAreaElement::setHref): Ditto.
   45338         (WebCore::HTMLAreaElement::shape): Ditto.
   45339         (WebCore::HTMLAreaElement::setShape): Ditto.
   45340         (WebCore::HTMLAreaElement::setTarget): Ditto.
   45341 
   45342         * html/HTMLAreaElement.h: Use AtomicString in the getter and setter DOM operations.
   45343         Change the region data member to be an OwnPtr<Path> instead of a Path to optimize
   45344         the common case where an area element is parsed but never hit-tested. This could
   45345         also have been done by changing the Path class's null case to be more efficient,
   45346         but this seems fine.
   45347 
   45348         * html/HTMLViewSourceDocument.cpp:
   45349         (WebCore::HTMLViewSourceDocument::createContainingTable): Use addAttribute instead
   45350         of insertAttribute.
   45351         (WebCore::HTMLViewSourceDocument::addSpanWithClassName): Ditto.
   45352         (WebCore::HTMLViewSourceDocument::addLine): Ditto.
   45353         (WebCore::HTMLViewSourceDocument::addLink): Ditto.
   45354 
   45355         * loader/FrameLoader.cpp:
   45356         (WebCore::FrameLoader::gotoAnchor): Use cssTarget under its new name instead
   45357         of its old name getCSSTarget.
   45358 
   45359         * platform/graphics/GlyphWidthMap.cpp:
   45360         (WebCore::GlyphWidthMap::locatePageSlowCase): Refactored from locatePage.
   45361 
   45362         * platform/graphics/GlyphWidthMap.h: Made most of this class inline.
   45363         Changed m_pages to use OwnPtr.
   45364 
   45365         * platform/text/PlatformString.h: Remove include no longer needed since
   45366         StringImpl.h includes it.
   45367 
   45368         * platform/text/StringImpl.cpp:
   45369         (WebCore::StringImpl::createStrippingNullCharactersSlowCase): Refactored
   45370         from createStrippingNullCharacters.
   45371         * platform/text/StringImpl.h: Moved the definition of
   45372         createStrippingNullCharacters here and made it inline.
   45373 
   45374         * rendering/RenderObject.cpp:
   45375         (WebCore::RenderObject::firstLineStyleSlowCase): Refactored from
   45376         firstLineStyle.
   45377 
   45378         * rendering/RenderObject.h: Moved the definition of the firstLineStyle
   45379         function here and made it inline. Moved the definition of the
   45380         documentBeingDestroyed function here and made it inline.
   45381 
   45382         * svg/SVGSVGElement.cpp:
   45383         (WebCore::SVGSVGElement::getCTM): Use getAttributeItem instead of
   45384         getNamedItem here since it accomplishes the same thing but is more efficient.
   45385         (WebCore::SVGSVGElement::getScreenCTM): Ditto.
   45386         * svg/SVGStyledElement.cpp:
   45387         (WebCore::SVGStyledElement::getPresentationAttribute): Ditto.
   45388 
   45389         * xml/XPathFunctions.cpp:
   45390         (WebCore::XPath::FunLang::evaluate): Use getAttributeItem instead of
   45391         getNamedItemNS.
   45392 
   45393         * xml/XPathStep.cpp:
   45394         (WebCore::XPath::Step::nodesInAxis): Use attributeItem instead of item here.
   45395 
   45396 2009-02-02  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   45397 
   45398         Reviewed by Darin Adler.
   45399 
   45400         Move Frame::forceLayout, Frame::adjustPageHeight and Frame::forceLayoutWithPageWidthRange to FrameView
   45401 
   45402         https://bugs.webkit.org/show_bug.cgi?id=23428
   45403 
   45404         FrameView::forceLayout could be killed but the comment might
   45405         contain a value over the the plain FrameView::layout...
   45406 
   45407         Adjust the WebCore/WebKit consumers of these methods.
   45408 
   45409         * WebCore.base.exp:
   45410         * page/Frame.cpp:
   45411         (WebCore::Frame::setPrinting):
   45412         * page/Frame.h:
   45413         * page/FrameView.cpp:
   45414         (WebCore::FrameView::forceLayout):
   45415         (WebCore::FrameView::forceLayoutWithPageWidthRange):
   45416         (WebCore::FrameView::adjustPageHeight):
   45417         * page/FrameView.h:
   45418         * page/PrintContext.cpp:
   45419         (WebCore::PrintContext::computePageRects):
   45420 
   45421 2009-02-01  Dan Bernstein  <mitz (a] apple.com>
   45422 
   45423         Reviewed by John Sullivan.
   45424 
   45425         - fix <rdar://problem/6546625> REGRESSION (r40432): iframes added to global history at haaretz.co.il
   45426 
   45427         Fixes http/tests/navigation/multiple-back-forward-entries.html
   45428 
   45429         r40432 added a parameter to FrameLoader::scheduleLocationChange() and
   45430         failed to update all call sites.
   45431 
   45432         * bindings/js/JSDOMWindowBase.cpp:
   45433         (WebCore::createWindow): Pass the lockBackForwardHistory parameter,
   45434         giving it the same value as the lockHistory parameter.
   45435         (windowProtoFuncOpen): Ditto.
   45436         * bindings/js/JSDOMWindowCustom.cpp:
   45437         (WebCore::JSDOMWindow::setLocation): Ditto.
   45438         * bindings/js/JSDocumentCustom.cpp:
   45439         (WebCore::JSDocument::setLocation): Ditto.
   45440         * loader/FrameLoader.cpp:
   45441         (WebCore::FrameLoader::requestFrame): Ditto.
   45442 
   45443 2009-01-31  Dan Bernstein  <mitz (a] apple.com>
   45444 
   45445         Reviewed by Oliver Hunt.
   45446 
   45447         - fix <rdar://problem/6546549> Eliminate some RenderText::width() overhead from findNextLineBreak()
   45448 
   45449         On the PLT, this results in 0.36x the number of virtual function calls
   45450         to RenderText::width() and 0.69x the number of calls to
   45451         Font::isFixedPitch(), but makes 1.0004x the number of calls to
   45452         Font::width().
   45453 
   45454         * rendering/RenderText.cpp:
   45455         (WebCore::RenderText::width): Replaced bounds checks on 'from' and 'len'
   45456         with an assertion.
   45457         * rendering/bidi.cpp:
   45458         (WebCore::textWidth): Added this inlined helper function which calls
   45459         Font::width() directly in the non-fixed-pitch, non-full-range case, and
   45460         otherwise calls RenderText::width().
   45461         (WebCore::RenderBlock::findNextLineBreak): Cache whether the font has
   45462         fixed pitch (in which case RenderText::width() will be called in order
   45463         to take advantage of the widthFromCache() optimization for fixed-pitch
   45464         fonts). Replaced all calls to RenderText::width() with calls to the
   45465         textWidth() helper function.
   45466 
   45467 2009-01-31  David Hyatt  <hyatt (a] apple.com>
   45468 
   45469         Inline all of the setNeedsLayout method and its associated functions.  Also inline setChildNeedsLayout
   45470         and setNeedsPositionedMovementLayout.
   45471 
   45472         Reviewed by Dan Bernstein
   45473 
   45474         * rendering/RenderObject.cpp:
   45475         (WebCore::RenderObject::setLayerNeedsFullRepaint):
   45476         * rendering/RenderObject.h:
   45477         (WebCore::RenderObject::setNeedsLayout):
   45478         (WebCore::RenderObject::setChildNeedsLayout):
   45479         (WebCore::RenderObject::setNeedsPositionedMovementLayout):
   45480         (WebCore::objectIsRelayoutBoundary):
   45481         (WebCore::RenderObject::markContainingBlocksForLayout):
   45482 
   45483 2009-01-31  Darin Adler  <darin (a] apple.com>
   45484 
   45485         Fix Mac build.
   45486 
   45487         * loader/FrameLoader.cpp: Moved FrameLoaderClient::hasHTMLView in here.
   45488         We need it to not be an inline. Sadly, FrameLoaderClient.cpp was prematurely
   45489         deleted and I don't want to bring it back just to fix the build.
   45490 
   45491         * loader/FrameLoaderClient.h: Rearrange virtual functions and corrected
   45492         a possibly-confusing comment.
   45493 
   45494 2009-01-31  Adam Treat  <adam.treat (a] torchmobile.com>
   45495 
   45496         Reviewed by David Hyatt.
   45497 
   45498         https://bugs.webkit.org/show_bug.cgi?id=23664
   45499         Remove unused dead code from RenderTable class.  The dead code includes
   45500         two enums and the associated member variables as well as one getter function.
   45501 
   45502         * rendering/RenderTable.cpp:
   45503         (WebCore::RenderTable::RenderTable):
   45504         * rendering/RenderTable.h:
   45505 
   45506 2009-01-31  David Hyatt  <hyatt (a] apple.com>
   45507 
   45508         More removal of code from RenderContainer.  Move removeLeftoverAnonymousBlock down into RenderBlock.
   45509         Move destroyLeftoverChildren into the RenderObjectChildList.  Convert all containers to use the
   45510         RenderObjectChildList.
   45511 
   45512         Reviewed by Sam Weinig
   45513 
   45514         * WebCore.xcodeproj/project.pbxproj:
   45515         * rendering/RenderBlock.cpp:
   45516         (WebCore::RenderBlock::destroy):
   45517         (WebCore::RenderBlock::addChild):
   45518         (WebCore::RenderBlock::removeLeftoverAnonymousBlock):
   45519         (WebCore::RenderBlock::layoutPositionedObjects):
   45520         (WebCore::RenderBlock::childBecameNonInline):
   45521         * rendering/RenderBlock.h:
   45522         * rendering/RenderBox.cpp:
   45523         (WebCore::RenderBox::layout):
   45524         * rendering/RenderBox.h:
   45525         (WebCore::RenderBox::firstChildBox):
   45526         (WebCore::RenderBox::lastChildBox):
   45527         * rendering/RenderContainer.cpp:
   45528         (WebCore::RenderContainer::addChild):
   45529         (WebCore::RenderContainer::removeChildNode):
   45530         (WebCore::RenderContainer::updateBeforeAfterContentForContainer):
   45531         (WebCore::RenderContainer::appendChildNode):
   45532         (WebCore::RenderContainer::insertChildNode):
   45533         (WebCore::RenderContainer::positionForCoordinates):
   45534         (WebCore::RenderContainer::addLineBoxRects):
   45535         (WebCore::RenderContainer::collectAbsoluteLineBoxQuads):
   45536         * rendering/RenderContainer.h:
   45537         (WebCore::RenderContainer::virtualChildren):
   45538         (WebCore::RenderContainer::children):
   45539         * rendering/RenderInline.cpp:
   45540         (WebCore::RenderInline::destroy):
   45541         * rendering/RenderInline.h:
   45542         (WebCore::RenderInline::layout):
   45543         * rendering/RenderMedia.cpp:
   45544         (WebCore::RenderMedia::destroy):
   45545         (WebCore::RenderMedia::children):
   45546         * rendering/RenderMedia.h:
   45547         (WebCore::RenderMedia::virtualChildren):
   45548         * rendering/RenderObject.cpp:
   45549         (WebCore::RenderObject::destroy):
   45550         (WebCore::RenderObject::layout):
   45551         * rendering/RenderObject.h:
   45552         (WebCore::RenderObject::firstChild):
   45553         (WebCore::RenderObject::lastChild):
   45554         (WebCore::RenderObject::virtualChildren):
   45555         (WebCore::RenderObject::canHaveChildren):
   45556         * rendering/RenderObjectChildList.cpp: Added.
   45557         (WebCore::RenderObjectChildList::destroyLeftoverChildren):
   45558         * rendering/RenderObjectChildList.h:
   45559         * rendering/RenderReplaced.h:
   45560         (WebCore::RenderReplaced::canHaveChildren):
   45561         * rendering/RenderSVGContainer.cpp:
   45562         (WebCore::RenderSVGContainer::RenderSVGContainer):
   45563         (WebCore::RenderSVGContainer::destroy):
   45564         (WebCore::RenderSVGContainer::removeChildNode):
   45565         (WebCore::RenderSVGContainer::appendChildNode):
   45566         (WebCore::RenderSVGContainer::insertChildNode):
   45567         * rendering/RenderSVGContainer.h:
   45568         (WebCore::RenderSVGContainer::virtualChildren):
   45569         (WebCore::RenderSVGContainer::children):
   45570 
   45571 2009-01-31  David Hyatt  <hyatt (a] apple.com>
   45572 
   45573         Fix for https://bugs.webkit.org/show_bug.cgi?id=11363
   45574 
   45575         Remove the hacks in table code around the DeleteButtonController and fix tables so that positioned children don't get wrapped in anonymous objects.
   45576         With the removal of a non-positioned DeleteButtonController renderer, table layout can be tightened up to only lay out table sections.  Table section
   45577         layout is tightened up to ignore non-table rows.  When a table has multiple captions, only the real one will do a layout now.  The other ones will
   45578         be properly ignored.
   45579 
   45580         Reviewed by Oliver Hunt
   45581 
   45582         * editing/DeleteButtonController.cpp:
   45583         (WebCore::DeleteButtonController::createDeletionUI):
   45584         * rendering/RenderTable.cpp:
   45585         (WebCore::RenderTable::addChild):
   45586         (WebCore::RenderTable::layout):
   45587         * rendering/RenderTableSection.cpp:
   45588         (WebCore::RenderTableSection::layout):
   45589         * rendering/RenderTableSection.h:
   45590 
   45591 2009-01-31  Adam Treat  <adam.treat (a] torchmobile.com>
   45592 
   45593         Reviewed by Darin Adler.
   45594 
   45595         https://bugs.webkit.org/show_bug.cgi?id=23663
   45596         Add a void toRenderBox() method which catches unnecessary casts at compile
   45597         time and also fix the four cases where this was happening.
   45598 
   45599         * rendering/RenderBlock.cpp:
   45600         (WebCore::RenderBlock::determineHorizontalPosition):
   45601         * rendering/RenderBox.h:
   45602         * rendering/RenderFlexibleBox.cpp:
   45603         (WebCore::RenderFlexibleBox::layoutHorizontalBox):
   45604         * rendering/RenderInline.cpp:
   45605         (WebCore::RenderInline::updateHitTestResult):
   45606         * rendering/RenderLayer.cpp:
   45607         (WebCore::RenderLayer::updateLayerPosition):
   45608 
   45609 2009-01-30  Adam Barth  <abarth (a] webkit.org>
   45610 
   45611         Reviewed by Sam Weinig.
   45612 
   45613         Add a pref to disable web security.
   45614 
   45615         * WebCore.base.exp:
   45616         * dom/Document.cpp:
   45617         (WebCore::Document::initSecurityContext):
   45618         * page/SecurityOrigin.cpp:
   45619         (WebCore::SecurityOrigin::SecurityOrigin):
   45620         (WebCore::SecurityOrigin::canAccess):
   45621         (WebCore::SecurityOrigin::canRequest):
   45622         (WebCore::SecurityOrigin::grantUniversalAccess):
   45623         * page/SecurityOrigin.h:
   45624         * page/Settings.cpp:
   45625         (WebCore::Settings::Settings):
   45626         (WebCore::Settings::setWebSecurityEnabled):
   45627         * page/Settings.h:
   45628         (WebCore::Settings::isWebSecurityEnabled):
   45629 
   45630 2009-01-30  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   45631 
   45632         Build fix.
   45633 
   45634         Move the inline virtual destructor after a non-inline virtual
   45635         function so that the symbol for the vtable is not marked as a
   45636         weakly exported symbol.
   45637 
   45638         This trick was previously used at revision 36122 in JSObject.h
   45639 
   45640         * loader/FrameLoaderClient.h:
   45641         (WebCore::FrameLoaderClient::~FrameLoaderClient):
   45642 
   45643 2009-01-30  Oliver Hunt  <oliver (a] apple.com>
   45644 
   45645         Reviewed by Stephanie Lewis
   45646 
   45647         Inline SimpleFontData::widthForGlyph for a minor page load improvement.
   45648 
   45649         * platform/graphics/SimpleFontData.cpp:
   45650         * platform/graphics/SimpleFontData.h:
   45651         (WebCore::SimpleFontData::widthForGlyph):
   45652 
   45653 2009-01-30  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   45654 
   45655         Build fix for WX and maybe even Windows.
   45656 
   45657         * WebCore.vcproj/WebCore.vcproj:
   45658         * WebCoreSources.bkl:
   45659 
   45660 2009-01-30  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   45661 
   45662         Reviewed by Darin Adler.
   45663 
   45664         Move Frame::sendResizeEvent and Frame::sendScrollEvent to EventHandler
   45665 
   45666         Carry out the move and catch up in two call sites.
   45667 
   45668         * WebCore.base.exp:
   45669         * page/EventHandler.cpp:
   45670         (WebCore::EventHandler::sendResizeEvent):
   45671         (WebCore::EventHandler::sendScrollEvent):
   45672         * page/EventHandler.h:
   45673         * page/Frame.cpp:
   45674         * page/Frame.h:
   45675         * page/FrameView.cpp:
   45676         (WebCore::FrameView::performPostLayoutTasks):
   45677         (WebCore::FrameView::valueChanged):
   45678 
   45679 2009-01-30  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   45680 
   45681         Reviewed by Darin Adler.
   45682 
   45683         Move Frame::isFrameSet to Document::isFrameSet
   45684 
   45685         Changed the FrameLoader callsite. I assume that as this
   45686         point m_frame.document() might return a null pointer. Change
   45687         the condition to either not having a document or not having a
   45688         frame set. This should be semantically equivalent to the
   45689         old code.
   45690 
   45691         Make Document::body() const to be able to call it from within
   45692         Document::isFrameSet. Leave the isHTMLDocument() check as this
   45693         is a stronger condition than simply having a HTMLElement in the
   45694         DOM.
   45695 
   45696         * WebCore.base.exp:
   45697         * dom/Document.cpp:
   45698         (WebCore::Document::isFrameSet):
   45699         (WebCore::Document::body):
   45700         * dom/Document.h:
   45701         * loader/FrameLoader.cpp:
   45702         (WebCore::FrameLoader::shouldScrollToAnchor):
   45703         * loader/archive/cf/LegacyWebArchive.cpp:
   45704         (WebCore::LegacyWebArchive::createFromSelection):
   45705         * page/Frame.cpp:
   45706         * page/Frame.h:
   45707 
   45708 2009-01-30  Aurelian Maga  <aurelianmaga (a] yahoo.com>
   45709 
   45710         Reviewed by Holger Freyther.
   45711 
   45712         [GTK] Logic fixes and build fixes
   45713 
   45714         https://bugs.webkit.org/show_bug.cgi?id=22022
   45715 
   45716         Catch up with the internal GeoLocation API and fix the logic of
   45717         the previous version.
   45718 
   45719         * platform/gtk/GeolocationServiceGtk.cpp:
   45720         (WebCore::GeolocationServiceGtk::startUpdating):
   45721         (WebCore::GeolocationServiceGtk::updateLocationInformation):
   45722         (WebCore::GeolocationServiceGtk::position_changed):
   45723 
   45724 2009-01-30  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   45725 
   45726         Reviewed by Nikolas Zimmermann.
   45727 
   45728         [GTK] Implement GeolocationService using the Geoclue library
   45729 
   45730         https://bugs.webkit.org/show_bug.cgi?id=22022
   45731 
   45732         Untested implementation of the GeolocationService using the geoclue
   45733         library. Velocity handling is completely missing and the accuracy
   45734         handling might be wrong.
   45735 
   45736         * platform/gtk/GeolocationServiceGtk.cpp:
   45737         (WTF::GeoclueAccuracy):
   45738         (WebCore::GeolocationServiceGtk::GeolocationServiceGtk):
   45739         (WebCore::GeolocationServiceGtk::~GeolocationServiceGtk):
   45740         (WebCore::GeolocationServiceGtk::startUpdating):
   45741         (WebCore::GeolocationServiceGtk::stopUpdating):
   45742         (WebCore::GeolocationServiceGtk::suspend):
   45743         (WebCore::GeolocationServiceGtk::resume):
   45744         (WebCore::GeolocationServiceGtk::lastPosition):
   45745         (WebCore::GeolocationServiceGtk::lastError):
   45746         (WebCore::GeolocationServiceGtk::updateLocationInformation):
   45747         (WebCore::GeolocationServiceGtk::updatePosition):
   45748         (WebCore::GeolocationServiceGtk::position_changed):
   45749         (WebCore::GeolocationServiceGtk::setError):
   45750         * platform/gtk/GeolocationServiceGtk.h:
   45751 
   45752 2009-01-30  Mark Rowe  <mrowe (a] apple.com>
   45753 
   45754         Build fix.  Declare preferredSize as static.
   45755 
   45756         * platform/text/cf/StringImplCF.cpp:
   45757         (WebCore::StringWrapperCFAllocator::preferredSize):
   45758 
   45759 2009-01-30  Darin Adler  <darin (a] apple.com>
   45760 
   45761         Reviewed by Mark Rowe.
   45762 
   45763         Bug 23622: create CFString and NSString objects from WebCore::String without copying the characters
   45764         https://bugs.webkit.org/show_bug.cgi?id=23622
   45765 
   45766         * platform/text/cf/StringImplCF.cpp:
   45767         (WebCore::StringWrapperCFAllocator::allocator): Added. Returns the allocator.
   45768         (WebCore::StringWrapperCFAllocator::retain): Added. Callback for allocator.
   45769         (WebCore::StringWrapperCFAllocator::release): Ditto.
   45770         (WebCore::StringWrapperCFAllocator::copyDescription): Ditto.
   45771         (WebCore::StringWrapperCFAllocator::allocate): Ditto.
   45772         (WebCore::StringWrapperCFAllocator::reallocate): Ditto.
   45773         (WebCore::StringWrapperCFAllocator::deallocate): Ditto.
   45774         (WebCore::StringWrapperCFAllocator::preferredSize): Ditto.
   45775         (WebCore::StringWrapperCFAllocator::create): Added. Creates the allocator, but
   45776         returns 0 if garbage collection is enabled.
   45777         (WebCore::StringImpl::createCFString): Use StringWrapperCFAllocator if possible.
   45778 
   45779         * platform/text/mac/StringImplMac.mm:
   45780         (WebCore::StringImpl::operator NSString *): Use CFString and toll-free bridging,
   45781         rather than using NSString directly. This lets NSString benefit from the above.
   45782 
   45783 2009-01-30  Darin Adler  <darin (a] apple.com>
   45784 
   45785         * page/Frame.cpp:
   45786         (WebCore::Frame::createView): Fix debug build by removing get() from assert.
   45787 
   45788 2009-01-30  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   45789 
   45790         Reviewed by Simon Hausmann.
   45791 
   45792         https://bugs.webkit.org/show_bug.cgi?id=22056
   45793 
   45794         Kill FrameLoaderClient.cpp, move the code over to Frame::createView
   45795 
   45796         FrameLoaderClient is supposed to be an interface, move the
   45797         to be shared code to Frame which is a controller and is
   45798         allowed to create a FrameView.
   45799 
   45800         * GNUmakefile.am:
   45801         * WebCore.base.exp:
   45802         * WebCore.pro:
   45803         * WebCore.xcodeproj/project.pbxproj:
   45804         * loader/FrameLoaderClient.cpp: Removed.
   45805         * loader/FrameLoaderClient.h:
   45806         (WebCore::FrameLoaderClient::~FrameLoaderClient):
   45807         * page/Frame.cpp:
   45808         (WebCore::Frame::createView):
   45809         * page/Frame.h:
   45810 
   45811 2009-01-30  Simon Fraser  <simon.fraser (a] apple.com>
   45812 
   45813         Reviewed by Dave Hyatt
   45814 
   45815         https://bugs.webkit.org/show_bug.cgi?id=23357
   45816 
   45817         New files to support accelerated compositing at the RenderLayer
   45818         level.
   45819 
   45820         * WebCore.xcodeproj/project.pbxproj:
   45821         New files added to project, and run through the sort script.
   45822 
   45823         * rendering/RenderLayerBacking.cpp: Added.
   45824         * rendering/RenderLayerBacking.h: Added.
   45825         New object to store compositing-related data for a single
   45826         RenderLayer.
   45827 
   45828         * rendering/RenderLayerCompositor.cpp: Added.
   45829         * rendering/RenderLayerCompositor.h: Added.
   45830         Per-RenderView controller object for compositing hierarchy
   45831         maintenance.
   45832 
   45833 2009-01-30  Simon Fraser  <simon.fraser (a] apple.com>
   45834 
   45835         Reviewed by Dave Hyatt
   45836 
   45837         https://bugs.webkit.org/show_bug.cgi?id=23356
   45838 
   45839         Add new files related to accelerated compositing:
   45840 
   45841         * WebCore.xcodeproj/project.pbxproj:
   45842         Add the files to the project. Also add ColorCG.cpp, for the
   45843         Color(CGColorRef) constructor.
   45844 
   45845         * platform/graphics/GraphicsLayer.cpp: Added.
   45846         * platform/graphics/GraphicsLayer.h: Added.
   45847         GraphicsLayer is a platform abstraction for a hardware-backed
   45848         layer.
   45849 
   45850         * platform/graphics/GraphicsLayerClient.h: Added.
   45851         Client of GraphicsLayer, allowing GraphicsLayer to call out
   45852         to WebCore code.
   45853 
   45854         * platform/graphics/mac/GraphicsLayerCA.h: Added.
   45855         * platform/graphics/mac/GraphicsLayerCA.mm: Added.
   45856         Mac Core Animation implementation of GraphicsLayer.
   45857 
   45858         * platform/graphics/mac/WebLayer.h: Added.
   45859         * platform/graphics/mac/WebLayer.mm: Added.
   45860         * platform/graphics/mac/WebTiledLayer.h: Added.
   45861         * platform/graphics/mac/WebTiledLayer.mm: Added.
   45862         Subclasses of CALayer and CATiledLayer -- helpers for the
   45863         GraphicsLayerCA implementation.
   45864 
   45865 2009-01-30  Geoffrey Garen  <ggaren (a] apple.com>
   45866 
   45867         Reviewed by Sam Weinig.
   45868 
   45869         Split "lockHistory" into "lockHistory" and "lockBackForwardList" in
   45870         preparation for setting them differently during a redirect.
   45871 
   45872         * WebCore.base.exp:
   45873         * bindings/js/JSHTMLFormElementCustom.cpp:
   45874         (WebCore::JSHTMLFormElement::submit):
   45875         * bindings/js/JSLocationCustom.cpp:
   45876         (WebCore::navigateIfAllowed):
   45877         (WebCore::JSLocation::setHref):
   45878         (WebCore::JSLocation::setProtocol):
   45879         (WebCore::JSLocation::setHost):
   45880         (WebCore::JSLocation::setHostname):
   45881         (WebCore::JSLocation::setPort):
   45882         (WebCore::JSLocation::setPathname):
   45883         (WebCore::JSLocation::setSearch):
   45884         (WebCore::JSLocation::setHash):
   45885         (WebCore::JSLocation::replace):
   45886         (WebCore::JSLocation::assign):
   45887         * html/HTMLAnchorElement.cpp:
   45888         (WebCore::HTMLAnchorElement::defaultEventHandler):
   45889         * html/HTMLFormElement.cpp:
   45890         (WebCore::HTMLFormElement::submit):
   45891         * html/HTMLFormElement.h:
   45892         * loader/FrameLoader.cpp:
   45893         (WebCore::FormSubmission::FormSubmission):
   45894         (WebCore::ScheduledRedirection::ScheduledRedirection):
   45895         (WebCore::isBackForwardLoadType):
   45896         (WebCore::FrameLoader::createWindow):
   45897         (WebCore::FrameLoader::changeLocation):
   45898         (WebCore::FrameLoader::urlSelected):
   45899         (WebCore::FrameLoader::submitFormAgain):
   45900         (WebCore::FrameLoader::submitForm):
   45901         (WebCore::FrameLoader::restoreDocumentState):
   45902         (WebCore::FrameLoader::scheduleHTTPRedirection):
   45903         (WebCore::FrameLoader::scheduleLocationChange):
   45904         (WebCore::FrameLoader::scheduleRefresh):
   45905         (WebCore::FrameLoader::redirectionTimerFired):
   45906         (WebCore::FrameLoader::loadURLIntoChildFrame):
   45907         (WebCore::FrameLoader::startRedirectionTimer):
   45908         (WebCore::FrameLoader::loadFrameRequestWithFormAndValues):
   45909         (WebCore::FrameLoader::transitionToCommitted):
   45910         (WebCore::FrameLoader::clientRedirected):
   45911         (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy):
   45912         (WebCore::FrameLoader::loadItem):
   45913         * loader/FrameLoader.h:
   45914         * loader/FrameLoaderTypes.h:
   45915         (WebCore::):
   45916         * page/ContextMenuController.cpp:
   45917         (WebCore::ContextMenuController::contextMenuItemSelected):
   45918         * svg/SVGAElement.cpp:
   45919         (WebCore::SVGAElement::defaultEventHandler):
   45920 
   45921 2009-01-30  Sam Weinig  <sam (a] webkit.org>
   45922 
   45923         Reviewed by Dan Bernstein.
   45924 
   45925         Fix for <rdar://problem/6545095>
   45926         ASSERTION FAILED: RenderBlock.h:519: !o || o->isRenderBlock()
   45927 
   45928         Test: fast/block/float/crash-replaced-display-block.html
   45929 
   45930         * rendering/RenderBlock.cpp:
   45931         (WebCore::RenderBlock::layoutBlockChildren): Move RenderBlock only code into
   45932         isRenderBlock if-statement.
   45933 
   45934 2009-01-30  Chris Fleizach  <cfleizach (a] apple.com>
   45935 
   45936         Reviewed by Oliver Hunt.
   45937 
   45938         Bug 23656: AX hierarchy for iFrames is incorrect
   45939         https://bugs.webkit.org/show_bug.cgi?id=23656
   45940 
   45941         The AX hierarchy when an iFrame was present was incorrect. A different scroll area was
   45942         returned when going down compared to when going up.
   45943 
   45944         * page/mac/AccessibilityObjectWrapper.mm:
   45945         (convertToNSArray):
   45946 
   45947 2009-01-30  Adam Treat  <adam.treat (a] torchmobile.com>
   45948 
   45949         Fix Qt build to include new class IdentifierRep introduced in revision 40412.
   45950 
   45951         * WebCore.pro:
   45952 
   45953 2009-01-30  Anders Carlsson  <andersca (a] apple.com>
   45954 
   45955         Reviewed by Sam Weinig.
   45956 
   45957         Make IdentifierRep.h a private header, and add symbols needed by WebKit to WebCore.LP64.exp.
   45958 
   45959         * WebCore.LP64.exp:
   45960         * WebCore.xcodeproj/project.pbxproj:
   45961 
   45962 2009-01-30  Sam Weinig  <sam (a] webkit.org>
   45963 
   45964         Commit files I forgot to in the previous commit.
   45965 
   45966         * page/AccessibilityRenderObject.cpp:
   45967         (WebCore::AccessibilityRenderObject::layoutCount):
   45968         * page/Frame.cpp:
   45969         (WebCore::Frame::contentRenderer):
   45970         (WebCore::Frame::forceLayoutWithPageWidthRange):
   45971         * page/FrameView.cpp:
   45972         (WebCore::FrameView::layout):
   45973         * rendering/RenderBlock.cpp:
   45974         (WebCore::RenderBlock::nodeAtPoint):
   45975         * rendering/RenderObject.cpp:
   45976         (WebCore::RenderObject::repaintUsingContainer):
   45977         (WebCore::RenderObject::repaint):
   45978         (WebCore::RenderObject::repaintRectangle):
   45979         (WebCore::RenderObject::view):
   45980         (WebCore::RenderObject::scheduleRelayout):
   45981         (WebCore::RenderObject::maximalOutlineSize):
   45982         * rendering/SVGRenderSupport.cpp:
   45983         (WebCore::clampImageBufferSizeToViewport):
   45984         * svg/SVGLength.cpp:
   45985         (WebCore::SVGLength::PercentageOfViewport):
   45986 
   45987 2009-01-30  Geoffrey Garen  <ggaren (a] apple.com>
   45988 
   45989         Reviewed by Darin Adler.
   45990 
   45991         More scaffolding for redirect tracking. No behavior change yet.
   45992 
   45993         * bindings/js/JSHTMLFormElementCustom.cpp:
   45994         (WebCore::JSHTMLFormElement::submit): Added scaffolding necessary for
   45995         redirect checking in a form submission through JS. (Currently, we
   45996         just specify "no redirect.")
   45997 
   45998         * bindings/js/ScriptController.h:
   45999         * bindings/js/ScriptController.cpp:
   46000         (WebCore::ScriptController::processingUserGesture):
   46001         (WebCore::ScriptController::processingUserGestureEvent):
   46002         (WebCore::ScriptController::isJavaScriptAnchorNavigation): Refactored
   46003         user gesture check to make it more clear.
   46004 
   46005         (WebCore::ScriptController::pageIsProcessingUserGesture): Added a helper
   46006         for checking if there's a user gesture in any frame on the page (a more
   46007         relaxed rule than our popup blocking rule, which requires the user
   46008         gesture to occur in the frame that's executing JavaScript.)
   46009 
   46010         * html/HTMLFormElement.h:
   46011         * html/HTMLFormElement.cpp:
   46012         (WebCore::HTMLFormElement::submit): Added scaffolding necessary for
   46013         redirect checking in a form submission through the DOM. (Currently, we
   46014         just specify "no redirect.")
   46015 
   46016         * html/HTMLFormElement.idl: Made submit custom so it can participate
   46017         in redirect checking.
   46018 
   46019         * loader/FrameLoader.h:
   46020         * loader/FrameLoader.cpp:
   46021         (WebCore::FormSubmission::FormSubmission): Clarified some names, and
   46022         added a "lockHistory" parameter to form submissions, to match other
   46023         navigations.
   46024 
   46025         (WebCore::FrameLoader::submitFormAgain):
   46026         (WebCore::FrameLoader::submitForm): Use the lockHistory parameter.
   46027 
   46028         (WebCore::FrameLoader::userGestureHint): Refactored this function for
   46029         clarity, and added a FIXME for a change I was too scared to make myself.
   46030         (Really, we should just get rid of this function.)
   46031 
   46032         (WebCore::FrameLoader::loadFrameRequestWithFormAndValues): Refactored
   46033         to pass a FrameLoadType to form posts, too, so they can participate in
   46034         redirect tracking.
   46035 
   46036         (WebCore::FrameLoader::loadPostRequest):
   46037         (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy):
   46038         (WebCore::FrameLoader::loadItem): Use the lockHistory parameter.
   46039 
   46040 2009-01-30  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   46041 
   46042         Reviewed by Mark Rowe.
   46043 
   46044         [Gtk+] Use AccessibilityObject::stringValue for the AtkObject name
   46045 
   46046         https://bugs.webkit.org/show_bug.cgi?id=21546
   46047 
   46048         The API documentation at http://library.gnome.org/devel/atk/stable/AtkText.html
   46049         states that: "AtkObjects whose text content is simple, unattributed, and very
   46050         brief may expose that content via atk_object_get_name instead"
   46051 
   46052         As we are currently not able to always provide a AtkTextInterface
   46053         implementation this will make the whole content available to accerciser,
   46054         and other tools.
   46055 
   46056         * page/gtk/AccessibilityObjectWrapperAtk.cpp:
   46057 
   46058 2009-01-30  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   46059 
   46060         Unreviewed build fix.
   46061 
   46062         Include string.h for strdup.
   46063 
   46064         * bridge/IdentifierRep.h:
   46065 
   46066 2009-01-30  Sam Weinig  <sam (a] webkit.org>
   46067 
   46068         Reviewed by Dan Bernstein.
   46069 
   46070         Add toRenderView methods for casting RenderObjects to RenderViews.  The methods will assert if the object
   46071         is not a RenderView.
   46072 
   46073         * dom/Document.cpp:
   46074         (WebCore::Document::renderView):
   46075         * editing/SelectionController.cpp:
   46076         (WebCore::SelectionController::nodeWillBeRemoved):
   46077         (WebCore::SelectionController::recomputeCaretRect):
   46078         (WebCore::SelectionController::invalidateCaretRect):
   46079         (WebCore::SelectionController::focusedOrActiveStateChanged):
   46080         * editing/mac/SelectionControllerMac.mm:
   46081         (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
   46082         * rendering/RenderBox.cpp:
   46083         (WebCore::RenderBox::styleDidChange):
   46084         (WebCore::RenderBox::repaintLayerRectsForImage):
   46085         (WebCore::RenderBox::availableHeightUsing):
   46086         * rendering/RenderView.h:
   46087         (WebCore::toRenderView):
   46088 
   46089 2009-01-30  Simon Fraser  <simon.fraser (a] apple.com>
   46090 
   46091         Reviewed by Dave Hyatt
   46092 
   46093         https://bugs.webkit.org/show_bug.cgi?id=23360
   46094 
   46095         Really use the container-relative repaint rect methods
   46096         for repaint during layout
   46097 
   46098         * rendering/RenderObject.h:
   46099         (WebCore::RenderObject::LayoutRepainter::LayoutRepainter):
   46100 
   46101 2009-01-30  Anders Carlsson  <andersca (a] apple.com>
   46102 
   46103         Reviewed by Darin Adler.
   46104 
   46105         Get rid of PrivateIdentifier and use IdentifierRep instead.
   46106 
   46107         * bridge/NP_jsobject.cpp:
   46108         (_NPN_Invoke):
   46109         (_NPN_GetProperty):
   46110         (_NPN_SetProperty):
   46111         (_NPN_RemoveProperty):
   46112         (_NPN_HasProperty):
   46113         (_NPN_HasMethod):
   46114         * bridge/c/c_instance.cpp:
   46115         (JSC::Bindings::CInstance::getPropertyNames):
   46116         * bridge/c/c_utility.cpp:
   46117         (JSC::Bindings::convertNPStringToUTF16):
   46118         * bridge/c/c_utility.h:
   46119         * bridge/npruntime.cpp:
   46120         (_NPN_GetStringIdentifier):
   46121         (_NPN_GetStringIdentifiers):
   46122         (_NPN_GetIntIdentifier):
   46123         (_NPN_IdentifierIsString):
   46124         (_NPN_UTF8FromIdentifier):
   46125         (_NPN_IntFromIdentifier):
   46126 
   46127 2009-01-30  Anders Carlsson  <andersca (a] apple.com>
   46128 
   46129         Reviewed by Sam Weinig and Darin Adler.
   46130 
   46131         Make IdentifierRep a real class, add necessary class methods.
   46132 
   46133         * bridge/IdentifierRep.cpp:
   46134         (WebCore::identifierSet):
   46135         Returns a set of all identifiers.
   46136 
   46137         (WebCore::IdentifierRep::isValid):
   46138         Return whether an identifier is valid, meaning that it's present in the
   46139         set of identifiers.
   46140 
   46141         * bridge/IdentifierRep.h:
   46142         (WebCore::IdentifierRep::isString):
   46143         (WebCore::IdentifierRep::number):
   46144         (WebCore::IdentifierRep::string):
   46145         (WebCore::IdentifierRep::IdentifierRep):
   46146         (WebCore::IdentifierRep::):
   46147 
   46148 2009-01-30  Anders Carlsson  <andersca (a] apple.com>
   46149 
   46150         Reviewed by Sam Weinig.
   46151 
   46152         Add IdentifierRep which will be used by both plug-in implementations.
   46153 
   46154         * GNUmakefile.am:
   46155         * WebCore.vcproj/WebCore.vcproj:
   46156         * WebCore.xcodeproj/project.pbxproj:
   46157         * bridge/IdentifierRep.cpp: Added.
   46158         (WebCore::IdentifierRep::IdentifierRep):
   46159         (WebCore::IdentifierRep::):
   46160         (WebCore::intIdentifierMap):
   46161         (WebCore::identifierRep):
   46162         (WebCore::stringIdentifierMap):
   46163         * bridge/IdentifierRep.h: Added.
   46164         * bridge/c/c_utility.h:
   46165         * platform/text/PlatformString.h:
   46166         * platform/text/String.cpp:
   46167         (WebCore::String::fromUTF8WithLatin1Fallback):
   46168 
   46169 2009-01-30  Sam Weinig  <sam (a] webkit.org>
   46170 
   46171         Reviewed by David Hyatt.
   46172 
   46173         Add toRenderInline methods for casting RenderObjects to RenderInlines.  The methods will assert if the object
   46174         is not a RenderInline.
   46175 
   46176         * rendering/InlineFlowBox.cpp:
   46177         (WebCore::InlineFlowBox::removeLineBoxFromRenderObject):
   46178         (WebCore::InlineFlowBox::extractLineBoxFromRenderObject):
   46179         (WebCore::InlineFlowBox::attachLineBoxToRenderObject):
   46180         (WebCore::InlineFlowBox::rendererLineBoxes):
   46181         (WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
   46182         (WebCore::InlineFlowBox::paint):
   46183         * rendering/LayoutState.cpp:
   46184         (WebCore::LayoutState::LayoutState):
   46185         * rendering/RenderBlock.cpp:
   46186         (WebCore::RenderBlock::paintObject):
   46187         (WebCore::RenderBlock::addFocusRingRects):
   46188         * rendering/RenderBox.cpp:
   46189         (WebCore::RenderBox::offsetFromContainer):
   46190         (WebCore::RenderBox::computeRectForRepaint):
   46191         (WebCore::RenderBox::containingBlockWidthForPositioned):
   46192         (WebCore::RenderBox::containingBlockHeightForPositioned):
   46193         (WebCore::RenderBox::calcAbsoluteHorizontalValues):
   46194         (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
   46195         * rendering/RenderContainer.cpp:
   46196         (WebCore::RenderContainer::updateBeforeAfterContentForContainer):
   46197         * rendering/RenderInline.cpp:
   46198         (WebCore::RenderInline::inlineContinuation):
   46199         (WebCore::nextContinuation):
   46200         (WebCore::RenderInline::splitInlines):
   46201         * rendering/RenderInline.h:
   46202         (WebCore::toRenderInline):
   46203         * rendering/RenderLayer.cpp:
   46204         (WebCore::RenderLayer::updateLayerPosition):
   46205         (WebCore::RenderLayer::boundingBox):
   46206         * rendering/RenderLineBoxList.cpp:
   46207         (WebCore::RenderLineBoxList::dirtyLinesFromChangedChild):
   46208         * rendering/RenderText.h:
   46209         * rendering/RenderTreeAsText.cpp:
   46210         (WebCore::operator<<):
   46211         * rendering/bidi.cpp:
   46212         (WebCore::RenderBlock::createLineBoxes):
   46213         (WebCore::RenderBlock::layoutInlineChildren):
   46214 
   46215 2009-01-30  Darin Fisher  <darin (a] chromium.org>
   46216 
   46217         Reviewed by Eric Seidel.
   46218 
   46219         https://bugs.webkit.org/show_bug.cgi?id=23647
   46220         Fix PLATFORM(SKIA)'s ImageSource::clear method to match other ports
   46221 
   46222         * platform/graphics/skia/ImageSourceSkia.cpp:
   46223         (WebCore::ImageSource::clear):
   46224 
   46225 2009-01-30  David Hyatt  <hyatt (a] apple.com>
   46226 
   46227         Add toRenderBlock methods for casting RenderObjects to RenderBlocks.  The methods will assert if the object
   46228         is not a RenderBlock.  Also add a toRenderBlock method that takes a RenderBlock but returns void and that
   46229         is unimplemented.  This method will catch anyone trying to do a cast when the object is already a RenderBlock.
   46230 
   46231         Making this change caught a bad cast in RenderBlock::layoutBlockChildren, so that is also fixed by this
   46232         patch with a containsFloats() check.
   46233 
   46234         Reviewed by Darin Adler
   46235 
   46236         * dom/PositionIterator.cpp:
   46237         (WebCore::PositionIterator::isCandidate):
   46238         * editing/CompositeEditCommand.cpp:
   46239         (WebCore::CompositeEditCommand::addBlockPlaceholderIfNeeded):
   46240         * editing/Editor.cpp:
   46241         (WebCore::Editor::hasBidiSelection):
   46242         * page/AccessibilityRenderObject.cpp:
   46243         (WebCore::AccessibilityRenderObject::anchorElement):
   46244         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
   46245         * rendering/RenderBlock.cpp:
   46246         (WebCore::RenderBlock::styleWillChange):
   46247         (WebCore::RenderBlock::removeChild):
   46248         (WebCore::RenderBlock::layoutBlock):
   46249         (WebCore::RenderBlock::collapseMargins):
   46250         (WebCore::RenderBlock::clearFloatsIfNeeded):
   46251         (WebCore::RenderBlock::layoutBlockChildren):
   46252         (WebCore::RenderBlock::fillBlockSelectionGaps):
   46253         (WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout):
   46254         (WebCore::RenderBlock::firstLineBlock):
   46255         (WebCore::getLineAtIndex):
   46256         (WebCore::getHeightForLineCount):
   46257         (WebCore::RenderBlock::lineCount):
   46258         (WebCore::RenderBlock::adjustForBorderFit):
   46259         (WebCore::RenderBlock::clearTruncation):
   46260         * rendering/RenderBlock.h:
   46261         (WebCore::toRenderBlock):
   46262         * rendering/RenderBox.cpp:
   46263         (WebCore::RenderBox::offsetFromContainer):
   46264         (WebCore::RenderBox::computeRectForRepaint):
   46265         (WebCore::RenderBox::calcReplacedHeightUsing):
   46266         * rendering/RenderFlexibleBox.cpp:
   46267         (WebCore::RenderFlexibleBox::layoutHorizontalBox):
   46268         (WebCore::RenderFlexibleBox::layoutVerticalBox):
   46269         * rendering/RenderInline.cpp:
   46270         (WebCore::RenderInline::inlineContinuation):
   46271         (WebCore::nextContinuation):
   46272         (WebCore::RenderInline::positionForCoordinates):
   46273         * rendering/RenderLayer.cpp:
   46274         (WebCore::RenderLayer::updateScrollInfoAfterLayout):
   46275         * rendering/RenderListItem.cpp:
   46276         (WebCore::getParentOfFirstLineBox):
   46277         (WebCore::RenderListItem::positionListMarker):
   46278         * rendering/RenderObject.cpp:
   46279         (WebCore::RenderObject::containingBlock):
   46280         (WebCore::RenderObject::computeRectForRepaint):
   46281         (WebCore::RenderObject::removeFromObjectLists):
   46282         (WebCore::RenderObject::getTextDecorationColors):
   46283         * rendering/RenderTable.cpp:
   46284         (WebCore::RenderTable::addChild):
   46285         (WebCore::RenderTable::recalcSections):
   46286         * rendering/RenderTextControl.cpp:
   46287         (WebCore::RenderTextControl::styleDidChange):
   46288         * rendering/RenderTextControlSingleLine.cpp:
   46289         (WebCore::RenderTextControlSingleLine::adjustControlHeightBasedOnLineHeight):
   46290         * rendering/RootInlineBox.cpp:
   46291         (WebCore::RootInlineBox::block):
   46292         * rendering/bidi.cpp:
   46293         (WebCore::RenderBlock::createLineBoxes):
   46294 
   46295 2009-01-30  Brady Eidson  <beidson (a] apple.com>
   46296 
   46297         Reviewed by Sam Weinig
   46298 
   46299         - Let CachedFrame handle the suspending/resuming of active DOM objects itself instead of
   46300           relying on some outside force.
   46301         - Clear the previous history item inside FrameLoader instead of relying on multiple
   46302           FrameLoaderClients to do it.
   46303 
   46304         * history/CachedFrame.cpp:
   46305         (WebCore::CachedFrame::CachedFrame): Suspend active DOM objects here.
   46306         (WebCore::CachedFrame::restore): Resume those DOM objects here.
   46307         * history/CachedFrame.h:
   46308         (WebCore::CachedFrame::domWindow):
   46309 
   46310         * loader/FrameLoader.cpp:
   46311         (WebCore::FrameLoader::commitProvisionalLoad): Let CachedFrame  creation handle the
   46312           suspending of active DOM objects.
   46313         (WebCore::FrameLoader::open): Let CachedFrame::restore() handle resuming those DOM objects.
   46314         (WebCore::FrameLoader::checkLoadCompleteForThisFrame): Call frameLoadCompleted() instead
   46315           of performing a client call by itself.
   46316         (WebCore::FrameLoader::frameLoadCompleted):
   46317 
   46318 2009-01-30  Alexey Proskuryakov  <ap (a] webkit.org>
   46319 
   46320         Reviewed by Darin Adler.
   46321 
   46322         <rdar://problem/6448823> Application Cache is kept after a private browsing session
   46323 
   46324         * loader/appcache/ApplicationCacheGroup.cpp:
   46325         (WebCore::ApplicationCacheGroup::selectCache):
   46326         (WebCore::ApplicationCacheGroup::update):
   46327         Cache update will not be started if private browsing is enabled. Existing cache version
   46328         from disk database will be used.
   46329 
   46330         * loader/appcache/ApplicationCacheGroup.h: Made postListenerTask() static, in order to call
   46331         it when refusing to update from selectCache().
   46332 
   46333         * loader/appcache/ApplicationCache.cpp:
   46334         (WebCore::ApplicationCache::addDynamicEntry):
   46335         (WebCore::ApplicationCache::removeDynamicEntry):
   46336         Added reminders about private browsing to unimplemented methods.
   46337 
   46338 2009-01-30  Laszlo Gombos  <laszlo.1.gombos (a] nokia.com>
   46339 
   46340         Reviewed by Simon Hausmann.
   46341 
   46342         Bug 23580: GNU mode RVCT compilation support
   46343         <https://bugs.webkit.org/show_bug.cgi?id=23580>
   46344 
   46345         * html/PreloadScanner.cpp: Use COMPILER(GCC) instead of __GNUC__.
   46346 
   46347 2009-01-30  David Levin  <levin (a] chromium.org>
   46348 
   46349         Reviewed by Alexey Proskuryakov.
   46350 
   46351         Bug 23616: Various "template helpers" should be consolidated from isolated files in JavaScriptCore.
   46352         <https://bugs.webkit.org/show_bug.cgi?id=23616>
   46353 
   46354         Added forwarding header.
   46355 
   46356         * ForwardingHeaders/wtf/TypeTraits.h: Added.
   46357 
   46358 2009-01-30  David Levin  <levin (a] chromium.org>
   46359 
   46360         Reviewed by Alexey Proskuryakov.
   46361 
   46362         Bug 23599: ResourceError needs to be copyable for use in another thread.
   46363         <https://bugs.webkit.org/show_bug.cgi?id=23599>
   46364 
   46365         Add ResourceErrorBase::copy method.  (Not yet used.)
   46366 
   46367         * platform/network/ResourceErrorBase.cpp:
   46368         (WebCore::ResourceErrorBase::copy):
   46369         * platform/network/ResourceErrorBase.h:
   46370 
   46371 2009-01-29  Stephanie Lewis <slewis (a] apple.com>
   46372 
   46373         RS by Oliver Hunt.
   46374 
   46375         Update the order files.
   46376 
   46377         * WebCore.order:
   46378 
   46379 2009-01-29  Dmitry Titov  <dimich (a] chromium.org>
   46380 
   46381         Reviewed by Darin Adler.
   46382 
   46383         https://bugs.webkit.org/show_bug.cgi?id=23488
   46384 
   46385         Make TimerBase thread-aware (for Workers).
   46386         Added new class ThreadTimers - it keeps a heap of all timers for a thread (previously kept in a static global).
   46387         Pointer to instance of ThreadTimers is stored in GlobalThreadData.
   46388         Most static methods of TimerBase went to ThreadTimers.
   46389 
   46390         The TimerBase functionality did not change (it maintains the timer heap which computes the nearest firing).
   46391 
   46392         Added new abstract class SharedTimer, so worker threads can provide their own implementation (will be implemented on WorkerRunLoop).
   46393 
   46394         * GNUmakefile.am:
   46395         * WebCore.pro:
   46396         * WebCore.scons:
   46397         * WebCore.vcproj/WebCore.vcproj:
   46398         * WebCore.xcodeproj/project.pbxproj:
   46399         * WebCoreSources.bkl:
   46400         Added new ThreadTimers.cpp to build files.
   46401 
   46402         * platform/SharedTimer.h:
   46403         (WebCore::SharedTimer::~SharedTimer):
   46404         (WebCore::MainThreadSharedTimer::setFiredFunction):
   46405         (WebCore::MainThreadSharedTimer::setFireTime):
   46406         (WebCore::MainThreadSharedTimer::stop):
   46407         Added abstract SharedTimer and MainThreadSharedTimer which redirects to the existing port-supplied functions.
   46408 
   46409         * platform/ThreadGlobalData.cpp:
   46410         (WebCore::ThreadGlobalData::ThreadGlobalData):
   46411         (WebCore::ThreadGlobalData::~ThreadGlobalData):
   46412         * platform/ThreadGlobalData.h:
   46413         (WebCore::ThreadGlobalData::threadTimers):
   46414         Added ThreadTimers to ThreadGlobalData.
   46415 
   46416         * platform/ThreadTimers.cpp: Added.
   46417         (WebCore::mainThreadSharedTimer):
   46418         Static getter for a MainThreadSharedTimer singleton.
   46419 
   46420         (WebCore::ThreadTimers::ThreadTimers):
   46421         (WebCore::ThreadTimers::setSharedTimer):
   46422         (WebCore::ThreadTimers::updateSharedTimer):
   46423         (WebCore::ThreadTimers::collectFiringTimers):
   46424         (WebCore::ThreadTimers::fireTimers):
   46425         (WebCore::ThreadTimers::sharedTimerFired):
   46426         (WebCore::ThreadTimers::sharedTimerFiredInternal):
   46427         (WebCore::ThreadTimers::fireTimersInNestedEventLoop):
   46428         ThreadTimers implementation. Most of the code is moved from previous static functions on TimerBase.
   46429         Need a new class so each thread may get ts own copy of the timer heap.
   46430 
   46431         * platform/ThreadTimers.h: Added.
   46432         (WebCore::ThreadTimers::timerHeap):
   46433         (WebCore::ThreadTimers::timersReadyToFire):
   46434 
   46435         * platform/Timer.cpp:
   46436         (WebCore::timerHeap):
   46437         (WebCore::timersReadyToFire):
   46438         (WebCore::TimerHeapElement::TimerHeapElement):
   46439         (WebCore::TimerHeapElement::checkConsistency):
   46440         (WebCore::TimerHeapElement::operator=):
   46441         (WebCore::TimerHeapIterator::checkConsistency):
   46442         (WebCore::TimerBase::TimerBase):
   46443         (WebCore::TimerBase::~TimerBase):
   46444         (WebCore::TimerBase::isActive):
   46445         (WebCore::TimerBase::checkHeapIndex):
   46446         (WebCore::TimerBase::heapDelete):
   46447         (WebCore::TimerBase::heapDeleteMin):
   46448         (WebCore::TimerBase::heapInsert):
   46449         (WebCore::TimerBase::heapPopMin):
   46450         (WebCore::TimerBase::setNextFireTime):
   46451         (WebCore::TimerBase::fireTimersInNestedEventLoop):
   46452         Now instead of static timer heap these use accessor functions that pull thread-specific heap instance.
   46453 
   46454         * platform/Timer.h:
   46455         static methods moved to ThreadTimers.
   46456 
   46457 2009-01-29  David Hyatt  <hyatt (a] apple.com>
   46458 
   46459         Beginning of work to eliminate RenderContainer and make containership "pluggable" into any spot in the render tree.  The first step is to create
   46460         the new object that will handle children: RenderObjectChildList and move RenderContainer's member variables into it.  Subsequent patches will begin
   46461         moving RenderContainer's functionality into RenderObjectChildList.
   46462 
   46463         Reviewed by Eric Seidel
   46464 
   46465         * WebCore.xcodeproj/project.pbxproj:
   46466         * rendering/RenderContainer.cpp:
   46467         (WebCore::RenderContainer::RenderContainer):
   46468         (WebCore::RenderContainer::destroyLeftoverChildren):
   46469         (WebCore::RenderContainer::addChild):
   46470         (WebCore::RenderContainer::removeChildNode):
   46471         (WebCore::RenderContainer::updateBeforeAfterContentForContainer):
   46472         (WebCore::RenderContainer::appendChildNode):
   46473         (WebCore::RenderContainer::insertChildNode):
   46474         (WebCore::RenderContainer::layout):
   46475         (WebCore::RenderContainer::removeLeftoverAnonymousBlock):
   46476         (WebCore::RenderContainer::positionForCoordinates):
   46477         (WebCore::RenderContainer::addLineBoxRects):
   46478         (WebCore::RenderContainer::collectAbsoluteLineBoxQuads):
   46479         * rendering/RenderContainer.h:
   46480         (WebCore::RenderContainer::firstChild):
   46481         (WebCore::RenderContainer::lastChild):
   46482         (WebCore::RenderContainer::firstChildBox):
   46483         (WebCore::RenderContainer::lastChildBox):
   46484         * rendering/RenderObjectChildList.h: Added.
   46485         (WebCore::RenderObjectChildList::RenderObjectChildList):
   46486         (WebCore::RenderObjectChildList::firstChild):
   46487         (WebCore::RenderObjectChildList::lastChild):
   46488         (WebCore::RenderObjectChildList::setFirstChild):
   46489         (WebCore::RenderObjectChildList::setLastChild):
   46490 
   46491 2009-01-29  Jungshik Shin  <jshin (a] chromium.org>
   46492 
   46493         Reviewed by Alexey Proskuryakov.
   46494 
   46495         http://bugs.webkit.org/show_bug.cgi?id=23598
   46496         Replace smart-quotes in UTF-8 with ASCII double-quotes to avoid
   46497         the compilation error on CJK Windows
   46498 
   46499         * wml/WMLTableElement.cpp:
   46500         (WebCore::WMLTableElement::parseMappedAttribute):
   46501 
   46502 2009-01-29  Darin Fisher  <darin (a] chromium.org>
   46503 
   46504         Reviewed by Eric Seidel.
   46505 
   46506         https://bugs.webkit.org/show_bug.cgi?id=23627
   46507         Fix the PLATFORM(SKIA) build.
   46508 
   46509         * svg/graphics/SVGPaintServer.cpp:
   46510         (WebCore::SVGPaintServer::teardown):
   46511 
   46512 2009-01-29  Scott Violet  <sky (a] google.com>
   46513 
   46514         Reviewed by Eric Seidel.
   46515 
   46516         https://bugs.webkit.org/show_bug.cgi?id=23625
   46517         Skia platform doesn't render text to a canvas or support clipping to an image buffer
   46518 
   46519         Fixes two bugs in Skia rendering to a canvas:
   46520         . Text was not rendered at all. This is because we never properly
   46521           fixed up the alpha values. The fix is to create a layer when
   46522           rendering text to a layer.
   46523         . We were not honoring clipping to an image buffer.
   46524 
   46525         * platform/graphics/chromium/FontChromiumWin.cpp:
   46526         (WebCore::Font::drawGlyphs):
   46527         * platform/graphics/skia/GraphicsContextSkia.cpp:
   46528         (WebCore::GraphicsContext::clipToImageBuffer):
   46529         * platform/graphics/skia/ImageBufferSkia.cpp:
   46530         (WebCore::ImageBuffer::ImageBuffer):
   46531         * platform/graphics/skia/PlatformContextSkia.cpp:
   46532         (PlatformContextSkia::PlatformContextSkia):
   46533         (PlatformContextSkia::setDrawingToImageBuffer):
   46534         (PlatformContextSkia::isDrawingToImageBuffer):
   46535         (PlatformContextSkia::beginLayerClippedToImage):
   46536         (PlatformContextSkia::restore):
   46537         (PlatformContextSkia::applyClipFromImage):
   46538         * platform/graphics/skia/PlatformContextSkia.h:
   46539 
   46540 2009-01-29  Sam Weinig  <sam (a] webkit.org>
   46541 
   46542         Reviewed by Mark Rowe.
   46543 
   46544         First step in tracking the urls a HistoryItem was redirected through.
   46545 
   46546         * WebCore.base.exp:
   46547         * history/HistoryItem.cpp:
   46548         (WebCore::HistoryItem::HistoryItem):
   46549         (WebCore::HistoryItem::addRedirectURL):
   46550         (WebCore::HistoryItem::redirectURLs):
   46551         (WebCore::HistoryItem::setRedirectURLs):
   46552         * history/HistoryItem.h:
   46553 
   46554 2009-01-29  Dirk Schulze  <krit (a] webkit.org>
   46555 
   46556         Reviewed by Nikolas Zimmermann, Eric Seidel.
   46557 
   46558         Just transform the pattern directly instead of transforming the context fixes this
   46559         problem. Texts or strokes are no longer affected by transformations.
   46560 
   46561         SVG pattern transformation/BoundingBox can cause ugly stroke thickness or text positions
   46562         https://bugs.webkit.org/show_bug.cgi?id=23472
   46563 
   46564         Test: svg/custom/pattern-with-transformation.svg
   46565 
   46566         * platform/graphics/Pattern.h:
   46567         (WebCore::Pattern::setPatternSpaceTransform):
   46568         * platform/graphics/cairo/PatternCairo.cpp:
   46569         (WebCore::Pattern::createPlatformPattern):
   46570         * platform/graphics/cg/PatternCG.cpp:
   46571         (WebCore::Pattern::createPlatformPattern):
   46572         * platform/graphics/qt/PatternQt.cpp:
   46573         (WebCore::Pattern::createPlatformPattern):
   46574         * svg/graphics/SVGPaintServerPattern.cpp:
   46575         (WebCore::SVGPaintServerPattern::setup):
   46576 
   46577 2009-01-29  David Hyatt  <hyatt (a] apple.com>
   46578 
   46579         Move the line box list member out of RenderFlow and down into RenderBlock and RenderInline.  Eliminate RenderFlow from the tree.
   46580 
   46581         Reviewed by Sam Weinig
   46582 
   46583         * GNUmakefile.am:
   46584         * WebCore.pro:
   46585         * WebCore.vcproj/WebCore.vcproj:
   46586         * WebCore.xcodeproj/project.pbxproj:
   46587         * WebCoreSources.bkl:
   46588         * html/HTMLAnchorElement.cpp:
   46589         * rendering/InlineFlowBox.cpp:
   46590         (WebCore::InlineFlowBox::rendererLineBoxes):
   46591         (WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
   46592         * rendering/InlineFlowBox.h:
   46593         * rendering/LayoutState.cpp:
   46594         (WebCore::LayoutState::LayoutState):
   46595         * rendering/RenderBlock.cpp:
   46596         (WebCore::RenderBlock::RenderBlock):
   46597         (WebCore::RenderBlock::destroy):
   46598         (WebCore::RenderBlock::styleWillChange):
   46599         (WebCore::RenderBlock::styleDidChange):
   46600         (WebCore::RenderBlock::dirtyLineBoxes):
   46601         (WebCore::RenderBlock::removeChild):
   46602         (WebCore::RenderBlock::setSelectionState):
   46603         (WebCore::RenderBlock::avoidsFloats):
   46604         (WebCore::RenderBlock::positionForCoordinates):
   46605         (WebCore::RenderBlock::calcInlinePrefWidths):
   46606         (WebCore::RenderBlock::baselinePosition):
   46607         (WebCore::RenderBlock::getBaselineOfFirstLineBox):
   46608         (WebCore::RenderBlock::getBaselineOfLastLineBox):
   46609         (WebCore::RenderBlock::rectWithOutlineForRepaint):
   46610         (WebCore::RenderBlock::hoverAncestor):
   46611         (WebCore::RenderBlock::updateDragState):
   46612         * rendering/RenderBlock.h:
   46613         (WebCore::RenderBlock::lineBoxes):
   46614         (WebCore::RenderBlock::firstLineBox):
   46615         (WebCore::RenderBlock::lastLineBox):
   46616         * rendering/RenderBox.cpp:
   46617         (WebCore::RenderBox::offsetFromContainer):
   46618         (WebCore::RenderBox::computeRectForRepaint):
   46619         (WebCore::RenderBox::containingBlockWidthForPositioned):
   46620         (WebCore::RenderBox::calcAbsoluteHorizontalValues):
   46621         (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
   46622         * rendering/RenderBox.h:
   46623         * rendering/RenderFlow.cpp: Removed.
   46624         * rendering/RenderFlow.h: Removed.
   46625         * rendering/RenderInline.cpp:
   46626         (WebCore::RenderInline::RenderInline):
   46627         (WebCore::RenderInline::destroy):
   46628         (WebCore::RenderInline::styleDidChange):
   46629         (WebCore::RenderInline::addChildIgnoringContinuation):
   46630         (WebCore::RenderInline::cloneInline):
   46631         (WebCore::RenderInline::splitInlines):
   46632         (WebCore::RenderInline::offsetLeft):
   46633         (WebCore::RenderInline::offsetTop):
   46634         (WebCore::RenderInline::positionForCoordinates):
   46635         (WebCore::RenderInline::rectWithOutlineForRepaint):
   46636         (WebCore::RenderInline::updateDragState):
   46637         (WebCore::RenderInline::relativePositionedInlineOffset):
   46638         * rendering/RenderInline.h:
   46639         (WebCore::RenderInline::lineBoxes):
   46640         (WebCore::RenderInline::firstLineBox):
   46641         (WebCore::RenderInline::lastLineBox):
   46642         * rendering/RenderLayer.cpp:
   46643         (WebCore::RenderLayer::updateLayerPosition):
   46644         * rendering/RenderLineBoxList.cpp:
   46645         (WebCore::RenderLineBoxList::dirtyLinesFromChangedChild):
   46646         * rendering/RootInlineBox.cpp:
   46647         (WebCore::RootInlineBox::rendererLineBoxes):
   46648         * rendering/RootInlineBox.h:
   46649         * rendering/bidi.cpp:
   46650         (WebCore::RenderBlock::createLineBoxes):
   46651         * wml/WMLAElement.cpp:
   46652 
   46653 2009-01-29  Geoffrey Garen  <ggaren (a] apple.com>
   46654 
   46655         Reviewed by Oliver Hunt.
   46656 
   46657         Cleaned up some naming in ScheduledRedirection.
   46658 
   46659         * loader/FrameLoader.cpp:
   46660         (WebCore::ScheduledRedirection::ScheduledRedirection):
   46661 
   46662 2009-01-29  Anders Carlsson  <andersca (a] apple.com>
   46663 
   46664         Reviewed by Dan Bernstein.
   46665 
   46666         Update to use new API.
   46667 
   46668         * platform/graphics/mac/FontCustomPlatformData.cpp:
   46669         (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
   46670         (WebCore::createFontCustomPlatformData):
   46671 
   46672 2009-01-29  Alexey Proskuryakov  <ap (a] webkit.org>
   46673 
   46674         Reviewed by Nikolas Zimmermann.
   46675 
   46676         https://bugs.webkit.org/show_bug.cgi?id=23619
   46677         ASSERT(!error.isNull()) in DocumentLoader::mainReceivedError() when an SVG image load
   46678         is cancelled
   46679 
   46680         Covered by existing tests (as a random crash).
   46681 
   46682         * loader/EmptyClients.h:
   46683         (WebCore::EmptyFrameLoaderClient::cancelledError):
   46684         (WebCore::EmptyFrameLoaderClient::blockedError):
   46685         (WebCore::EmptyFrameLoaderClient::cannotShowURLError):
   46686         (WebCore::EmptyFrameLoaderClient::interruptForPolicyChangeError):
   46687         (WebCore::EmptyFrameLoaderClient::cannotShowMIMETypeError):
   46688         (WebCore::EmptyFrameLoaderClient::fileDoesNotExistError):
   46689         (WebCore::EmptyFrameLoaderClient::pluginWillHandleLoadError):
   46690         Create non-null errors.
   46691 
   46692 2009-01-29  Geoffrey Garen  <ggaren (a] apple.com>
   46693 
   46694         Reviewed by Oliver Hunt.
   46695 
   46696         Removed an unused case of "lockHistory" to help make the other cases
   46697         clearer.
   46698 
   46699         * page/FrameLoadRequest.h:
   46700         (WebCore::FrameLoadRequest::FrameLoadRequest):
   46701 
   46702 2009-01-29  David Hyatt  <hyatt (a] apple.com>
   46703 
   46704         Move all of the contination insertion code from RenderFlow to RenderInline.  addChildToFlow is renamed to addChildIgnoringContinuation, and it has been moved to
   46705         RenderContainer so that it can still be called on either blocks or inlines.  The base class implementation in RenderContainer is what RenderBlock uses.  RenderInline
   46706         subclasses it to do all the work it used to do in addChildToFlow.
   46707 
   46708         RenderBlock's old addChildToFlow can just become addChild.  This simplification is possible because addChild was actually never being called on anonymous
   46709         block continuations.
   46710 
   46711         The code dealing with anonymous table parts in the old addChildWithContinuation method can now be removed as a result with no harmful side effects.  Falling through to the
   46712         base class and ignoring a block continuation makes the right thing happen.
   46713 
   46714         addChildWithContinuation moved to RenderInline and has been renamed to addChildToContinuation.
   46715 
   46716         Reviewed by Eric Seidel
   46717 
   46718         * rendering/RenderBlock.cpp:
   46719         (WebCore::RenderBlock::addChild):
   46720         * rendering/RenderBlock.h:
   46721         * rendering/RenderContainer.h:
   46722         (WebCore::RenderContainer::addChildIgnoringContinuation):
   46723         * rendering/RenderFlow.cpp:
   46724         * rendering/RenderFlow.h:
   46725         * rendering/RenderInline.cpp:
   46726         (WebCore::RenderInline::styleDidChange):
   46727         (WebCore::RenderInline::addChild):
   46728         (WebCore::nextContinuation):
   46729         (WebCore::RenderInline::continuationBefore):
   46730         (WebCore::RenderInline::addChildIgnoringContinuation):
   46731         (WebCore::RenderInline::splitInlines):
   46732         (WebCore::RenderInline::splitFlow):
   46733         (WebCore::RenderInline::addChildToContinuation):
   46734         (WebCore::RenderInline::childBecameNonInline):
   46735         * rendering/RenderInline.h:
   46736         (WebCore::RenderInline::continuation):
   46737         (WebCore::RenderInline::setContinuation):
   46738 
   46739 2009-01-29  Brady Eidson  <beidson (a] apple.com>
   46740 
   46741         Reviewed by Oliver Hunt
   46742 
   46743         <rdar://problem/6337157> hyundaiusa.com closes window or tab during load
   46744 
   46745         Test: fast/loader/subframe-self-close.html
   46746 
   46747         * page/DOMWindow.cpp:
   46748         (WebCore::DOMWindow::close): Only allow mainframes to close the window.
   46749 
   46750 2009-01-29  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   46751 
   46752         Reviewed by David Hyatt.
   46753 
   46754         Fixes: https://bugs.webkit.org/show_bug.cgi?id=23539
   46755 
   46756         Remove several virtual functions from Node & Element related to form control / input elements,
   46757         that shouldn't reside there, but move to approriate locations, in the new form control /
   46758         input element abstract base classes.
   46759 
   46760         Remove the isControl() method from Node, as it's redundant - isFormControlElement() provides the same information.
   46761         Move isEnabled( / isReadOnlyControl() / isTextControl() from Node to FormControlElement.
   46762         Move isAutofilled() / isChecked() / isIndeterminate() from Node to InputElement.
   46763         Move isInputTypeHidden() / isPasswordField() from Element to InputElement.
   46764 
   46765         Querying these methods requires using the toInputElement/toFormControlElement casting helper functions
   46766         to cast Element pointers to InputElement/FormControlElement pointers.
   46767 
   46768         * css/CSSStyleSelector.cpp:
   46769         (WebCore::CSSStyleSelector::canShareStyleWithElement):
   46770         (WebCore::CSSStyleSelector::adjustRenderStyle):
   46771         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
   46772         * dom/Element.h:
   46773         (WebCore::Element::isFormControlElementWithState):
   46774         * dom/FormControlElement.h:
   46775         * dom/InputElement.h:
   46776         * dom/Node.h:
   46777         * editing/TextIterator.cpp:
   46778         (WebCore::TextIterator::advance):
   46779         * html/HTMLFormControlElement.cpp:
   46780         (WebCore::HTMLFormControlElement::attach):
   46781         * html/HTMLFormControlElement.h:
   46782         (WebCore::HTMLFormControlElement::isTextControl):
   46783         * html/HTMLFormElement.cpp:
   46784         (WebCore::HTMLFormElement::CheckedRadioButtons::removeButton):
   46785         * html/HTMLInputElement.h:
   46786         (WebCore::HTMLInputElement::isAutofilled):
   46787         * page/AccessibilityRenderObject.cpp:
   46788         (WebCore::AccessibilityRenderObject::isPasswordField):
   46789         (WebCore::AccessibilityRenderObject::isIndeterminate):
   46790         (WebCore::AccessibilityRenderObject::isChecked):
   46791         (WebCore::AccessibilityRenderObject::isControl):
   46792         (WebCore::AccessibilityRenderObject::isEnabled):
   46793         (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
   46794         * page/mac/AccessibilityObjectWrapper.mm:
   46795         (textMarkerForVisiblePosition):
   46796         * platform/ContextMenu.cpp:
   46797         (WebCore::ContextMenu::populate):
   46798         * rendering/RenderLayer.cpp:
   46799         (WebCore::RenderLayer::resize):
   46800         * rendering/RenderMenuList.cpp:
   46801         (WebCore::RenderMenuList::itemIsEnabled):
   46802         * rendering/RenderTextControl.cpp:
   46803         (WebCore::updateUserModifyProperty):
   46804         (WebCore::RenderTextControl::adjustInnerTextStyle):
   46805         (WebCore::RenderTextControl::updateFromElement):
   46806         * rendering/RenderTheme.cpp:
   46807         (WebCore::RenderTheme::isChecked):
   46808         (WebCore::RenderTheme::isIndeterminate):
   46809         (WebCore::RenderTheme::isEnabled):
   46810         (WebCore::RenderTheme::isReadOnlyControl):
   46811         * rendering/RenderThemeMac.mm:
   46812         (WebCore::RenderThemeMac::adjustMenuListStyle):
   46813         * wml/WMLFormControlElement.cpp:
   46814         (WebCore::WMLFormControlElement::isFocusable):
   46815         * wml/WMLFormControlElement.h:
   46816         (WebCore::WMLFormControlElement::isEnabled):
   46817         (WebCore::WMLFormControlElement::isReadOnlyControl):
   46818         (WebCore::WMLFormControlElement::isTextControl):
   46819         * wml/WMLInputElement.cpp:
   46820         (WebCore::WMLInputElement::isKeyboardFocusable):
   46821         (WebCore::WMLInputElement::isMouseFocusable):
   46822         * wml/WMLInputElement.h:
   46823         (WebCore::WMLInputElement::isAutofilled):
   46824 
   46825 2009-01-29  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   46826 
   46827         Not reviewed. Fix WML build - apply same fix as HTMLAnchorElement received.
   46828 
   46829         * wml/WMLAElement.cpp:
   46830         (WebCore::WMLAElement::isKeyboardFocusable):
   46831 
   46832 2009-01-29  Alexey Proskuryakov  <ap (a] webkit.org>
   46833 
   46834         Reviewed by Anders Carlsson.
   46835 
   46836         https://bugs.webkit.org/show_bug.cgi?id=23620
   46837         Crash in appcache/resource-redirect.html on Tiger
   46838 
   46839         There was a bug in the test case - it didn't send a Location header, and on Tiger, this
   46840         resulted in a failure callback being sent. It turned out that proper redirects weren't
   46841         caught at all.
   46842 
   46843         Tests: http/tests/appcache/manifest-redirect-2.html
   46844                http/tests/appcache/resource-redirect-2.html
   46845 
   46846         * loader/appcache/ApplicationCacheGroup.cpp:
   46847         (WebCore::ApplicationCacheGroup::didFail): Fixed this function to not crash if
   46848         didReceiveResponse() wasn't called for this request.
   46849         (WebCore::ApplicationCacheGroup::didReceiveResponse): Fixed to check for redirects correctly.
   46850         (WebCore::ApplicationCacheGroup::didReceiveManifestResponse): Ditto.
   46851 
   46852 2009-01-29  David Hyatt  <hyatt (a] apple.com>
   46853 
   46854         Move dirtyLinesFromChangedChild into RenderLineBoxList so that it can be shared by RenderBlock and RenderInline.
   46855 
   46856         Reviewed by Sam Weinig
   46857 
   46858         * rendering/RenderBlock.h:
   46859         (WebCore::RenderBlock::dirtyLinesFromChangedChild):
   46860         * rendering/RenderFlow.cpp:
   46861         * rendering/RenderFlow.h:
   46862         * rendering/RenderInline.h:
   46863         (WebCore::RenderInline::dirtyLinesFromChangedChild):
   46864         * rendering/RenderLineBoxList.cpp:
   46865         (WebCore::RenderLineBoxList::dirtyLinesFromChangedChild):
   46866         * rendering/RenderLineBoxList.h:
   46867 
   46868 2009-01-29  Adam Roben  <aroben (a] apple.com>
   46869 
   46870         Fix Bug 23623: Windowed Flash instances aren't captured when a WebView
   46871         receives a WM_PRINTCLIENT message
   46872 
   46873         <https://bugs.webkit.org/show_bug.cgi?id=23623>
   46874         <rdar://problem/6513921>
   46875         <rdar://problem/6536874>
   46876 
   46877         Flash doesn't seem to respond to WM_PRINTCLIENT, so we change
   46878         WM_PRINTCLIENT messages into WM_PAINT messages and hook into the
   46879         BeginPaint/EndPaint APIs to return the HDC we received from
   46880         WM_PRINTCLIENT. This causes the plugin to paint into the
   46881         WM_PRINTCLIENT HDC via its normal WM_PAINT handler. This technique
   46882         came from <http://www.fengyuan.com/article/wmprint.html>.
   46883 
   46884         No test possible.
   46885 
   46886         Reviewed by Darin Adler.
   46887 
   46888         * platform/graphics/GraphicsContext.h: Added
   46889         [set]ShouldIncludeChildWindows on Windows.
   46890 
   46891         * platform/graphics/cg/GraphicsContextPlatformPrivateCG.h: Added
   46892         m_shouldIncludeChildWindows.
   46893         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
   46894         Initialize the new member.
   46895 
   46896         * platform/graphics/win/GraphicsContextCGWin.cpp:
   46897         (WebCore::GraphicsContext::setShouldIncludeChildWindows):
   46898         (WebCore::GraphicsContext::shouldIncludeChildWindows):
   46899         Added simple setter and getter.
   46900 
   46901         * plugins/PluginView.cpp:
   46902         (WebCore::PluginView::PluginView): Initialize the new member.
   46903 
   46904         * plugins/PluginView.h: Added m_wmPrintHDC and various functions
   46905         required for making WM_PRINTCLIENT work.
   46906 
   46907         * plugins/win/PluginViewWin.cpp:
   46908         (WebCore::PluginView::hookedBeginPaint):
   46909         (WebCore::PluginView::hookedEndPaint):
   46910         (WebCore::hook):
   46911         (WebCore::setUpOffscreenPaintingHooks):
   46912         Added. Code was modified from code available on fengyuan.com.
   46913 
   46914         (WebCore::PluginView::wndProc): Turn WM_PRINTCLIENT messages into
   46915         WM_PAINT messages and save off the HDC that we're supposed to paint
   46916         into.
   46917 
   46918         (WebCore::PluginView::paintWindowedPluginIntoContext): Added. Gets an
   46919         HDC from the GraphicsContext, translates it into client coordinates,
   46920         gets the plugin to draw into the HDC by sending a WM_PRINTCLIENT
   46921         message, and returns the HDC to the GraphicsContext.
   46922 
   46923         (WebCore::PluginView::paint): If we're trying to paint a windowed
   46924         plugin into the GraphicsContext, call paintWindowedPluginIntoContext.
   46925 
   46926         (WebCore::PluginView::init): Call setUpOffscreenPaintingHooks to make
   46927         our WM_PRINTCLIENT trick work.
   46928 
   46929 2009-01-29  David Hyatt  <hyatt (a] apple.com>
   46930 
   46931         Move RenderFlow::destroy down into RenderBlock and RenderInline.
   46932 
   46933         Reviewed by Anders Carlsson
   46934 
   46935         * rendering/RenderBlock.cpp:
   46936         (WebCore::RenderBlock::destroy):
   46937         * rendering/RenderFlow.cpp:
   46938         * rendering/RenderFlow.h:
   46939         * rendering/RenderInline.cpp:
   46940         (WebCore::RenderInline::destroy):
   46941 
   46942 2009-01-29  David Kilzer  <ddkilzer (a] apple.com>
   46943 
   46944         Remove semi-colons from the end of ObjC method implementations
   46945 
   46946         Rubber-stamped by Adam Roben.
   46947 
   46948         $ find WebCore -name \*.m -o -name \*.mm -exec perl -e 'undef $/; $s = <>; while ($s =~ m/[\n\r][-+].*;[\s\r\n]+\{/g) { print "$ARGV: $&\n"; }' {} \;
   46949 
   46950         * bridge/testbindings.mm:
   46951 
   46952 2009-01-29  Adam Treat  <adam.treat (a] torchmobile.com>
   46953 
   46954         Reviewed by Alexey Proskuryakov.
   46955 
   46956         https://bugs.webkit.org/show_bug.cgi?id=23609
   46957         Use the two-arg constructor for implicit QUrl->KURL conversion as the
   46958         single argument ctors assume that KURL::parse has already been called
   46959         and assert if the parse results in a different string.  This was causing
   46960         an assert for QUrl's with no path and without a trailing slash.
   46961 
   46962         * platform/qt/KURLQt.cpp:
   46963         (WebCore::KURL::KURL):
   46964 
   46965 2009-01-29  Alexey Proskuryakov  <ap (a] webkit.org>
   46966 
   46967         Rubber-stamped by Darin Adler.
   46968 
   46969         Renamed ApplicationCacheResource::Implicit to Master, because that's the word HTML5 uses,
   46970         and it describes the meaning better.
   46971 
   46972         * loader/appcache/ApplicationCache.cpp:
   46973         * loader/appcache/ApplicationCacheGroup.cpp:
   46974         * loader/appcache/ApplicationCacheResource.cpp:
   46975         * loader/appcache/ApplicationCacheResource.h:
   46976 
   46977 2009-01-29  Alexey Proskuryakov  <ap (a] webkit.org>
   46978 
   46979         Release build fix.
   46980 
   46981         * loader/appcache/ApplicationCacheGroup.cpp: (WebCore::ApplicationCacheGroup::selectCache):
   46982         Got rid of a variable that wasn't used in release builds.
   46983 
   46984 2009-01-29  David Hyatt  <hyatt (a] apple.com>
   46985 
   46986         Get rid of createAnonymousFlow.  It was only called in one spot, so just inline the code.
   46987 
   46988         Reviewed by Oliver Hunt
   46989 
   46990         * rendering/RenderBlock.cpp:
   46991         (WebCore::RenderBlock::updateFirstLetter):
   46992         * rendering/RenderFlow.cpp:
   46993         * rendering/RenderFlow.h:
   46994 
   46995 2009-01-29  Alexey Proskuryakov  <ap (a] webkit.org>
   46996 
   46997         Reviewed by Anders Carlsson.
   46998 
   46999         https://bugs.webkit.org/show_bug.cgi?id=23476
   47000         HTTP redirect should make application cache updating fail
   47001 
   47002         Tests: http/tests/appcache/manifest-redirect.html
   47003                http/tests/appcache/resource-redirect.html
   47004 
   47005         * loader/appcache/ApplicationCacheGroup.cpp:
   47006         (WebCore::ApplicationCacheGroup::didReceiveResponse):
   47007         (WebCore::ApplicationCacheGroup::didReceiveManifestResponse):
   47008         Fail if response code isn't 2xx.
   47009 
   47010 2009-01-29  Alexey Proskuryakov  <ap (a] webkit.org>
   47011 
   47012         Reviewed by Anders Carlsson.
   47013 
   47014         https://bugs.webkit.org/show_bug.cgi?id=23592
   47015         Update appcache manifest signature parsing
   47016 
   47017         Test: http/tests/appcache/wrong-signature-2.html
   47018 
   47019         * loader/appcache/ManifestParser.cpp: (WebCore::parseManifest): Allow comments on signature
   47020         line. Removed code that replaced nulls with 0xFFFD characters, because there is no such
   47021         requirement in the spec.
   47022 
   47023 2009-01-28  Alexey Proskuryakov  <ap (a] webkit.org>
   47024 
   47025         Reviewed by Anders Carlsson.
   47026 
   47027         https://bugs.webkit.org/show_bug.cgi?id=23584
   47028         Update application cache code for the latest round of spec changes
   47029 
   47030         The changes mostly affect the update process - events are sent at a different
   47031         time, and caches are associated with documents earlier.
   47032 
   47033         * loader/DocumentLoader.cpp:
   47034         (WebCore::DocumentLoader::mainReceivedError): Changed an always passing test to an assertion.
   47035         (WebCore::DocumentLoader::shouldLoadResourceFromApplicationCache): Caches are now associated
   47036         with DocumentLoader before being complete, but they only affect loading after being completed.
   47037         (WebCore::DocumentLoader::getApplicationCacheFallbackResource): Ditto.
   47038 
   47039         * loader/appcache/ApplicationCache.cpp:
   47040         (WebCore::ApplicationCache::setGroup): Allow setting the group to the same one, to simplify
   47041         ApplicationCacheGroup code.
   47042         (WebCore::ApplicationCache::isComplete): A new method that tells whether the cache is
   47043         complete, as defined in HTML5.
   47044         * loader/appcache/ApplicationCache.h: Added isComplete().
   47045 
   47046         * loader/appcache/ApplicationCacheGroup.h:
   47047         (WebCore::ApplicationCacheUpdateOption): Per HTML5, cache updating should work differently
   47048         when invoked with or without a browsing context (Frame). A Frame is currently always needed
   47049         for updating in WebKit, so a new argument to update() tells whether we should pretend that
   47050         there isn't one.
   47051         (WebCore::ApplicationCacheGroup::cacheIsBeingUpdated): A helper for ApplicationCache::isComplete().
   47052         (WebCore::ApplicationCacheGroup::CompletionType): Cache update algorithm now waits for
   47053         ne main resources to finish loading in more cases. A member variable of this type is used to
   47054         distinguish between different cases when waiting.
   47055         (WebCore::ApplicationCacheGroup::m_cacheCandidates): The new algorithm doesn't track cache
   47056         candidates. Caches are associated with documents much earlier, but the ones whose main resources
   47057         have not been loaded from a cache are being tracked in a pending master entry list.
   47058 
   47059         * loader/appcache/DOMApplicationCache.cpp: (WebCore::DOMApplicationCache::update):
   47060         An explicit call to update() invokes the algorithm without a browsing context.
   47061 
   47062         * loader/appcache/ApplicationCacheGroup.cpp:
   47063         (WebCore::ApplicationCacheGroup::ApplicationCacheGroup):
   47064         (WebCore::ApplicationCacheGroup::~ApplicationCacheGroup):
   47065         (WebCore::ApplicationCacheGroup::selectCache):
   47066         (WebCore::ApplicationCacheGroup::selectCacheWithoutManifestURL):
   47067         (WebCore::ApplicationCacheGroup::finishedLoadingMainResource):
   47068         (WebCore::ApplicationCacheGroup::failedLoadingMainResource):
   47069         (WebCore::ApplicationCacheGroup::stopLoading):
   47070         (WebCore::ApplicationCacheGroup::disassociateDocumentLoader):
   47071         (WebCore::ApplicationCacheGroup::cacheDestroyed):
   47072         (WebCore::ApplicationCacheGroup::setNewestCache):
   47073         (WebCore::ApplicationCacheGroup::update):
   47074         (WebCore::ApplicationCacheGroup::didReceiveResponse):
   47075         (WebCore::ApplicationCacheGroup::didFinishLoading):
   47076         (WebCore::ApplicationCacheGroup::didFail):
   47077         (WebCore::ApplicationCacheGroup::didFinishLoadingManifest):
   47078         (WebCore::ApplicationCacheGroup::cacheUpdateFailed):
   47079         (WebCore::ApplicationCacheGroup::manifestNotFound):
   47080         (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete):
   47081         (WebCore::ApplicationCacheGroup::startLoadingEntry):
   47082         (WebCore::ApplicationCacheGroup::deliverDelayedMainResources):
   47083         (WebCore::ApplicationCacheGroup::addEntry):
   47084         (WebCore::ApplicationCacheGroup::associateDocumentLoaderWithCache):
   47085         (WebCore::CallCacheListenerTask::create):
   47086         (WebCore::CallCacheListenerTask::performTask):
   47087         (WebCore::CallCacheListenerTask::CallCacheListenerTask):
   47088         (WebCore::ApplicationCacheGroup::postListenerTask):
   47089         Rewrote the update algorithm.
   47090 
   47091 2009-01-28  Geoffrey Garen  <ggaren (a] apple.com>
   47092 
   47093         Reviewed by Sam Weinig.
   47094 
   47095         Merged FrameLoadTypeReloadAllowingStaleData with FrameLoadTypeReload.
   47096 
   47097         Technically, selecting View->Text Encoding->[Non-Default Encoding] on
   47098         a page with frames may now be slightly slower than it used to be. Oh well.
   47099 
   47100         * loader/FrameLoader.cpp:
   47101         (WebCore::isBackForwardLoadType):
   47102         (WebCore::FrameLoader::restoreDocumentState): Subbed in FrameLoadTypeReload.
   47103 
   47104         (WebCore::FrameLoader::loadURLIntoChildFrame): No need to account for
   47105         non-back-forward navigations anymore.
   47106 
   47107         (WebCore::FrameLoader::canCachePage):
   47108         (WebCore::FrameLoader::logCanCachePageDecision):
   47109         (WebCore::FrameLoader::reloadWithOverrideEncoding):
   47110         (WebCore::FrameLoader::transitionToCommitted):
   47111         (WebCore::FrameLoader::loadItem): Subbed in FrameLoadTypeReload.
   47112 
   47113         * loader/FrameLoader.h: Renamed reloadAllowingStaleData => reloadWithOverrideEncoding,
   47114         since that's what it actually does.
   47115 
   47116 2009-01-28  David Hyatt  <hyatt (a] apple.com>
   47117 
   47118         Move hit testing and painting of lines from RenderFlow into RenderLineBoxList.
   47119 
   47120         Reviewed by Oliver Hunt
   47121 
   47122         * rendering/RenderBlock.cpp:
   47123         (WebCore::RenderBlock::paintContents):
   47124         (WebCore::RenderBlock::hitTestContents):
   47125         * rendering/RenderFlow.cpp:
   47126         * rendering/RenderFlow.h:
   47127         * rendering/RenderInline.cpp:
   47128         (WebCore::RenderInline::paint):
   47129         (WebCore::RenderInline::nodeAtPoint):
   47130         * rendering/RenderLineBoxList.cpp:
   47131         (WebCore::RenderLineBoxList::paint):
   47132         (WebCore::RenderLineBoxList::hitTest):
   47133         * rendering/RenderLineBoxList.h:
   47134 
   47135 2009-01-28  David Hyatt  <hyatt (a] apple.com>
   47136 
   47137         Fix SVG pixel test regressions.  I wish I could say that I understand this fix, but I don't.  For
   47138         some reason the original code returned 0 for RenderSVGInlineText::yPos() and somehow my literal
   47139         replacement of yPos() with the body of that method changed the results.  I am completely baffled,
   47140         but all SVG pixel tests pass again when I just take the code out.
   47141 
   47142         Reviewed by Oliver Hunt
   47143 
   47144         * rendering/RenderSVGInlineText.cpp:
   47145         (WebCore::RenderSVGInlineText::computeAbsoluteRectForRange):
   47146 
   47147 2009-01-28  David Hyatt  <hyatt (a] apple.com>
   47148 
   47149         Move dirtyLineBoxes from RenderFlow to RenderInline and RenderBlock.
   47150 
   47151         Reviewed by Oliver Hunt
   47152 
   47153         * rendering/RenderBlock.cpp:
   47154         (WebCore::RenderBlock::dirtyLineBoxes):
   47155         * rendering/RenderBlock.h:
   47156         * rendering/RenderFlow.cpp:
   47157         * rendering/RenderFlow.h:
   47158         * rendering/RenderInline.cpp:
   47159         (WebCore::RenderInline::dirtyLineBoxes):
   47160         * rendering/RenderInline.h:
   47161         * rendering/RenderLineBoxList.cpp:
   47162         (WebCore::RenderLineBoxList::dirtyLineBoxes):
   47163         * rendering/RenderLineBoxList.h:
   47164 
   47165 2009-01-28  David Hyatt  <hyatt (a] apple.com>
   47166 
   47167         Back out my change to scrollWidth/Height from an earlier checkin since it broke stuff.  The current
   47168         behavior is not correct, but this will need to be investigated before being changed again.
   47169 
   47170         * rendering/RenderBox.cpp:
   47171         (WebCore::RenderBox::scrollWidth):
   47172         (WebCore::RenderBox::scrollHeight):
   47173 
   47174 2009-01-28  David Hyatt  <hyatt (a] apple.com>
   47175 
   47176         Move paintOutline and paintOutlineWithLine from RenderFlow to RenderInline, since they only apply to inlines.  Tighten up all of the code that
   47177         called paintOutline to use RenderInline as the type instead of RenderFlow.
   47178 
   47179         Reviewed by cpst
   47180 
   47181         * rendering/InlineFlowBox.cpp:
   47182         (WebCore::InlineFlowBox::paint):
   47183         * rendering/RenderBlock.cpp:
   47184         (WebCore::RenderBlock::paintObject):
   47185         (WebCore::RenderBlock::addContinuationWithOutline):
   47186         (WebCore::RenderBlock::paintContinuationOutlines):
   47187         * rendering/RenderFlow.cpp:
   47188         (WebCore::RenderFlow::paintLines):
   47189         * rendering/RenderFlow.h:
   47190         * rendering/RenderInline.cpp:
   47191         (WebCore::RenderInline::paintOutline):
   47192         (WebCore::RenderInline::paintOutlineForLine):
   47193         * rendering/RenderInline.h:
   47194         * rendering/RenderObject.cpp:
   47195         (WebCore::RenderObject::paintOutline):
   47196         * rendering/RenderObject.h:
   47197         (WebCore::RenderObject::PaintInfo::PaintInfo):
   47198 
   47199 2009-01-28  Darin Fisher  <darin (a] chromium.org>
   47200 
   47201         Reviewed by Eric Seidel.
   47202 
   47203         https://bugs.webkit.org/show_bug.cgi?id=23596
   47204         XMLHttpRequest.cpp no longer compiles without USE(JSC)
   47205 
   47206         * xml/XMLHttpRequest.cpp:
   47207 
   47208 2009-01-28  Darin Fisher  <darin (a] chromium.org>
   47209 
   47210         Reviewed by Darin Adler.
   47211 
   47212         https://bugs.webkit.org/show_bug.cgi?id=23597
   47213         Make it possible to compile Database.cpp when USE(JSC) is not defined
   47214 
   47215         * storage/Database.cpp:
   47216         (WebCore::Database::Database):
   47217 
   47218 2009-01-28  Dan Bernstein  <mitz (a] apple.com>
   47219 
   47220         Reviewed by Darin Adler.
   47221 
   47222         - fix <rdar://problem/6077047> REGRESSION (r34544): Custom icon does not
   47223           appear in address field on first visit to any site
   47224 
   47225         * loader/icon/IconLoader.cpp:
   47226         (WebCore::IconLoader::finishLoading): Changed to set the icon data only
   47227         after establishing a mapping from the page URL(s) to the icon. Doing
   47228         things the other way around resulted in the data not being cached
   47229         in the icon-URL to IconRecord map (because there was no interested page
   47230         at the time) and subsequently having to be fetched asynchronously from
   47231         the database when the page-to-icon mapping was established.
   47232 
   47233 2009-01-28  David Hyatt  <hyatt (a] apple.com>
   47234 
   47235         Move addFocusRingRects from RenderFlow down into RenderBlock and RenderInline.
   47236 
   47237         Reviewed by Oliver Hunt
   47238 
   47239         * rendering/RenderBlock.cpp:
   47240         (WebCore::RenderBlock::addFocusRingRects):
   47241         * rendering/RenderBlock.h:
   47242         * rendering/RenderFlow.cpp:
   47243         * rendering/RenderFlow.h:
   47244         * rendering/RenderInline.cpp:
   47245         (WebCore::RenderInline::addFocusRingRects):
   47246         * rendering/RenderInline.h:
   47247 
   47248 2009-01-28  David Hyatt  <hyatt (a] apple.com>
   47249 
   47250         Move localCaretRect from RenderFlow into RenderBlock, since it only applied to blocks anyway and
   47251         was misplaced from the start.
   47252 
   47253         Reviewed by Antti Koivisto.
   47254 
   47255         * rendering/RenderBlock.cpp:
   47256         (WebCore::RenderBlock::localCaretRect):
   47257         * rendering/RenderBlock.h:
   47258         * rendering/RenderFlow.cpp:
   47259         * rendering/RenderFlow.h:
   47260 
   47261 2009-01-28  Sam Weinig  <sam (a] webkit.org>
   47262 
   47263         Reviewed by Geoff Garen.
   47264 
   47265         Add forwarding header.
   47266 
   47267         * ForwardingHeaders/debugger/DebuggerActivation.h: Added.
   47268 
   47269 2009-01-28  David Hyatt  <hyatt (a] apple.com>
   47270 
   47271         Move createInlineBox out of RenderFlow and down into RenderInline and RenderBlock.
   47272 
   47273         Reviewed by Beth Dakin
   47274 
   47275         * rendering/RenderBlock.cpp:
   47276         (WebCore::RenderBlock::createInlineBox):
   47277         * rendering/RenderBlock.h:
   47278         * rendering/RenderFlow.cpp:
   47279         * rendering/RenderFlow.h:
   47280         * rendering/RenderInline.cpp:
   47281         (WebCore::RenderInline::createInlineBox):
   47282         * rendering/RenderInline.h:
   47283         * rendering/bidi.cpp:
   47284 
   47285 2009-01-28  David Hyatt  <hyatt (a] apple.com>
   47286 
   47287         Move calcMargins from RenderFlow to RenderInline, since it was only ever called on RenderInlines.
   47288 
   47289         Reviewed by Oliver Hunt
   47290 
   47291         * rendering/RenderFlow.cpp:
   47292         * rendering/RenderFlow.h:
   47293         * rendering/RenderInline.h:
   47294         (WebCore::RenderInline::calcMargins):
   47295         * rendering/bidi.cpp:
   47296         (WebCore::RenderBlock::layoutInlineChildren):
   47297 
   47298 2009-01-28  David Hyatt  <hyatt (a] apple.com>
   47299 
   47300         Refactor the first and last line box member variables from RenderFlow.  Encapsulate them into a new class called RenderLineBoxList that manages all modifications to
   47301         the list.  This change will make it easier to give RenderInline and RenderBlock separate versions of the line box list without having to duplicate very much code.
   47302 
   47303         Reviewed by Oliver Hunt
   47304 
   47305         * GNUmakefile.am:
   47306         * WebCore.pro:
   47307         * WebCore.vcproj/WebCore.vcproj:
   47308         * WebCore.xcodeproj/project.pbxproj:
   47309         * WebCoreSources.bkl:
   47310         * rendering/InlineFlowBox.cpp:
   47311         (WebCore::InlineFlowBox::deleteLine):
   47312         (WebCore::InlineFlowBox::removeLineBoxFromRenderObject):
   47313         (WebCore::InlineFlowBox::extractLine):
   47314         (WebCore::InlineFlowBox::extractLineBoxFromRenderObject):
   47315         (WebCore::InlineFlowBox::attachLine):
   47316         (WebCore::InlineFlowBox::attachLineBoxToRenderObject):
   47317         * rendering/InlineFlowBox.h:
   47318         * rendering/RenderBlock.cpp:
   47319         (WebCore::RenderBlock::deleteLineBoxTree):
   47320         * rendering/RenderFlow.cpp:
   47321         (WebCore::RenderFlow::destroy):
   47322         (WebCore::RenderFlow::dirtyLineBoxes):
   47323         (WebCore::RenderFlow::createInlineBox):
   47324         * rendering/RenderFlow.h:
   47325         (WebCore::RenderFlow::RenderFlow):
   47326         (WebCore::RenderFlow::lineBoxes):
   47327         (WebCore::RenderFlow::firstLineBox):
   47328         (WebCore::RenderFlow::lastLineBox):
   47329         * rendering/RenderLineBoxList.cpp: Added.
   47330         (WebCore::RenderLineBoxList::~RenderLineBoxList):
   47331         (WebCore::RenderLineBoxList::appendLineBox):
   47332         (WebCore::RenderLineBoxList::deleteLineBoxTree):
   47333         (WebCore::RenderLineBoxList::extractLineBox):
   47334         (WebCore::RenderLineBoxList::attachLineBox):
   47335         (WebCore::RenderLineBoxList::removeLineBox):
   47336         (WebCore::RenderLineBoxList::deleteLineBoxes):
   47337         (WebCore::RenderLineBoxList::checkConsistency):
   47338         * rendering/RenderLineBoxList.h: Added.
   47339         (WebCore::RenderLineBoxList::RenderLineBoxList):
   47340         (WebCore::RenderLineBoxList::firstLineBox):
   47341         (WebCore::RenderLineBoxList::lastLineBox):
   47342         (WebCore::RenderLineBoxList::checkConsistency):
   47343         * rendering/RenderSVGInline.cpp:
   47344         (WebCore::RenderSVGInline::createInlineBox):
   47345         * rendering/RenderSVGText.cpp:
   47346         (WebCore::RenderSVGText::createInlineBox):
   47347         * rendering/RootInlineBox.cpp:
   47348         (WebCore::RootInlineBox::removeLineBoxFromRenderObject):
   47349         (WebCore::RootInlineBox::extractLineBoxFromRenderObject):
   47350         (WebCore::RootInlineBox::attachLineBoxToRenderObject):
   47351         * rendering/RootInlineBox.h:
   47352         * rendering/bidi.cpp:
   47353         (WebCore::RenderBlock::layoutInlineChildren):
   47354 
   47355 2009-01-28  David Kilzer  <ddkilzer (a] apple.com>
   47356 
   47357         Clean up FontPlatformData constructor
   47358 
   47359         Reviewed by David Hyatt.
   47360 
   47361         * platform/graphics/mac/FontPlatformData.h: Updated copyright.
   47362         (WebCore::FontPlatformData::FontPlatformData): Provide readable
   47363         names for constructor arguments and reformat member variables.
   47364         * platform/graphics/mac/FontPlatformDataMac.mm: Updated copyright.
   47365         (WebCore::FontPlatformData::FontPlatformData): Provide readable
   47366         names for constructor arguments and reformat member variables.
   47367 
   47368 2009-01-28  Tony Chang  <tony (a] chromium.org>
   47369 
   47370         Reviewed by David Hyatt.
   47371 
   47372         https://bugs.webkit.org/show_bug.cgi?id=23593
   47373         Compile fixes for RenderThemeChromiumMac and RenderThemeChromiumWin.
   47374         This is a follow up for hyatt's RenderBox changes.
   47375 
   47376         * rendering/RenderThemeChromiumMac.mm:
   47377         (WebCore::RenderThemeChromiumMac::baselinePosition):
   47378         * rendering/RenderThemeChromiumWin.cpp:
   47379         (WebCore::RenderThemeChromiumWin::paintMenuList):
   47380 
   47381 2009-01-28  Simon Fraser  <simon.fraser (a] apple.com>
   47382 
   47383         Reviewed by Dave Hyatt
   47384 
   47385         https://bugs.webkit.org/show_bug.cgi?id=23582
   47386 
   47387         Fix assertions when inline elements have both opacity (or something
   47388         else that creates a RenderLayer), and transform by ensuring that
   47389         setHasTransform() is only called for non-inline or replaced elements.
   47390         We also have to ensure that RenderReplicas will get transforms applied
   47391         to them by lying about them being replaced.
   47392 
   47393         Tests: fast/transforms/transform-on-inline.html
   47394                fast/transforms/transform-table-row.html
   47395 
   47396         * rendering/RenderBox.cpp:
   47397         (WebCore::RenderBox::styleDidChange):
   47398         * rendering/RenderReplica.cpp:
   47399         (WebCore::RenderReplica::RenderReplica):
   47400         * rendering/RenderTableRow.h:
   47401         (WebCore::RenderTableRow::requiresLayer):
   47402 
   47403 2009-01-28  Hironori Bono  <hbono (a] chromium.org>
   47404 
   47405         Reviewed by Justin Garcia.
   47406 
   47407         https://bugs.webkit.org/show_bug.cgi?id=18835
   47408         Spelling underlines disappear when they shouldn't
   47409 
   47410         The WebCore::InsertLineBreakCommand::doApply() function splits a text node
   47411         without copying existing markers. To fix this bug, change code which
   47412         manually splits a text node into a CompositeEditCommand::splitTextNode() call.
   47413 
   47414         Test: editing/spelling/spelling-linebreak.html
   47415 
   47416         * editing/InsertLineBreakCommand.cpp:
   47417         (WebCore::InsertLineBreakCommand::doApply):
   47418 
   47419 2009-01-28  David Hyatt  <hyatt (a] apple.com>
   47420 
   47421         Move the m_lineHeight member variable out of RenderFlow and down into RenderBlock and RenderInline.  Shift the line height computation into RenderStyle so
   47422         that it isn't repeated in three places.
   47423 
   47424         Reviewed by Sam Weinig
   47425 
   47426         * rendering/RenderBlock.cpp:
   47427         (WebCore::RenderBlock::RenderBlock):
   47428         (WebCore::RenderBlock::lineHeight):
   47429         * rendering/RenderBlock.h:
   47430         * rendering/RenderFlow.cpp:
   47431         * rendering/RenderFlow.h:
   47432         (WebCore::RenderFlow::RenderFlow):
   47433         * rendering/RenderInline.cpp:
   47434         (WebCore::RenderInline::RenderInline):
   47435         (WebCore::RenderInline::lineHeight):
   47436         * rendering/RenderInline.h:
   47437         * rendering/RenderObject.cpp:
   47438         (WebCore::RenderObject::lineHeight):
   47439         * rendering/style/RenderStyle.h:
   47440         (WebCore::InheritedFlags::computedLineHeight):
   47441 
   47442 2009-01-28  Zachary Kuznia  <zork (a] chromiuum.org>
   47443 
   47444         Reviewed by Sam Weinig.
   47445 
   47446         https://bugs.webkit.org/show_bug.cgi?id=22070
   47447         Add an option to allow scripts to close windows.
   47448 
   47449         * page/Settings.cpp:
   47450         (WebCore::Settings::Settings):
   47451         (WebCore::Settings::setAllowScriptsToCloseWindows):
   47452         * page/Settings.h:
   47453         (WebCore::Settings::allowScriptsToCloseWindows):
   47454 
   47455 2009-01-28  Adam Langley  <agl (a] google.com>
   47456 
   47457         Reviewed by Sam Weinig.
   47458 
   47459         https://bugs.webkit.org/show_bug.cgi?id=23573
   47460         Make PlatformWidget on chromium an intptr_t to match changes made in Chromium
   47461 
   47462         * platform/chromium/PlatformWidget.h:
   47463 
   47464 2009-01-28  David Hyatt  <hyatt (a] apple.com>
   47465 
   47466         Fix for
   47467 
   47468         <rdar://problem/6531287> REGRESSION: CrashTracer: [USER] 12 crashes in Safari at com.apple.WebCore  WebCore::RenderBlock::removeFloatingObject + 59
   47469 
   47470         My tightening up of markAllDescendantsWithFloatsForLayout exposed a buggy check in that code that could
   47471         lead to a bad cast.
   47472 
   47473         * rendering/RenderBlock.cpp:
   47474         (WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout):
   47475 
   47476 2009-01-27  David Hyatt  <hyatt (a] apple.com>
   47477 
   47478         https://bugs.webkit.org/show_bug.cgi?id=23576
   47479 
   47480         Work towards eliminating RenderFlow from the tree.
   47481 
   47482         Move the m_continuation variable down from RenderFlow into RenderInline and RenderBlock.  Since a block can only have an inline continuation following it, the type
   47483         of the member and methods reflect this (inlineContinuation() and m_inlineContinuation).  Since an inline can have either a block or an inline continuation following it,
   47484         a base class of RenderBox* is used for the type of object returned (in anticipation of the removal of RenderFlow).
   47485 
   47486         Since moving the continuation variable down into the subclasses increased the size of RenderInline and RenderBlock by 4 bytes, this patch also moves all of the bitfield
   47487         members of RenderFlow up to RenderObject.  Since they fit within the available bits on RenderObject, this patch actually results in a net savings of 4 bytes on RenderInlines
   47488         and RenderBlocks!
   47489 
   47490         One bitfield member was eliminated rather than moved: m_firstLine.  This was really more of a state variable used during line layout only, so I removed it as a member
   47491         and just passed firstLine down to various methods as needed.  Doing so uncovered some potential bugs where the first line state was not being respected when querying for
   47492         line offsets.
   47493 
   47494         Continuations have been completely hidden from all files except for RenderFlow, RenderBlock and RenderInline.  All of the code that referenced continuations directly
   47495         from base classes has been refactored to use virtual methods on RenderBlock and RenderInline instead.
   47496 
   47497         RenderFlow still has a common addChildWithContinuation method that is used by both blocks and inlines.  Since refactoring that method will be pretty tricky, I've held
   47498         off on that for a later patch.
   47499 
   47500         Reviewed by Oliver Hunt
   47501 
   47502         * html/HTMLAnchorElement.cpp:
   47503         (WebCore::HTMLAnchorElement::isKeyboardFocusable):
   47504         * page/AccessibilityRenderObject.cpp:
   47505         (WebCore::AccessibilityRenderObject::anchorElement):
   47506         (WebCore::AccessibilityRenderObject::boundingBoxRect):
   47507         * rendering/InlineFlowBox.cpp:
   47508         (WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
   47509         (WebCore::InlineFlowBox::paint):
   47510         * rendering/RenderBlock.cpp:
   47511         (WebCore::RenderBlock::RenderBlock):
   47512         (WebCore::RenderBlock::~RenderBlock):
   47513         (WebCore::RenderBlock::destroy):
   47514         (WebCore::RenderBlock::addChildToFlow):
   47515         (WebCore::RenderBlock::makeChildrenNonInline):
   47516         (WebCore::RenderBlock::removeChild):
   47517         (WebCore::RenderBlock::layoutBlock):
   47518         (WebCore::RenderBlock::expandsToEncloseOverhangingFloats):
   47519         (WebCore::RenderBlock::collapseMargins):
   47520         (WebCore::RenderBlock::determineHorizontalPosition):
   47521         (WebCore::RenderBlock::setCollapsedBottomMargin):
   47522         (WebCore::RenderBlock::layoutOnlyPositionedObjects):
   47523         (WebCore::RenderBlock::paintObject):
   47524         (WebCore::RenderBlock::addContinuationWithOutline):
   47525         (WebCore::RenderBlock::setSelectionState):
   47526         (WebCore::RenderBlock::shouldPaintSelectionGaps):
   47527         (WebCore::RenderBlock::fillSelectionGaps):
   47528         (WebCore::RenderBlock::leftSelectionOffset):
   47529         (WebCore::RenderBlock::rightSelectionOffset):
   47530         (WebCore::RenderBlock::leftOffset):
   47531         (WebCore::RenderBlock::leftRelOffset):
   47532         (WebCore::RenderBlock::rightOffset):
   47533         (WebCore::RenderBlock::rightRelOffset):
   47534         (WebCore::RenderBlock::lineWidth):
   47535         (WebCore::RenderBlock::lowestPosition):
   47536         (WebCore::RenderBlock::rightmostPosition):
   47537         (WebCore::RenderBlock::leftmostPosition):
   47538         (WebCore::RenderBlock::getClearDelta):
   47539         (WebCore::RenderBlock::nodeAtPoint):
   47540         (WebCore::RenderBlock::offsetForContents):
   47541         (WebCore::RenderBlock::availableWidth):
   47542         (WebCore::RenderBlock::setDesiredColumnCountAndWidth):
   47543         (WebCore::RenderBlock::desiredColumnWidth):
   47544         (WebCore::RenderBlock::desiredColumnCount):
   47545         (WebCore::RenderBlock::columnRects):
   47546         (WebCore::RenderBlock::layoutColumns):
   47547         (WebCore::RenderBlock::adjustPointToColumnContents):
   47548         (WebCore::RenderBlock::adjustRectForColumns):
   47549         (WebCore::RenderBlock::absoluteRects):
   47550         (WebCore::RenderBlock::absoluteQuads):
   47551         (WebCore::RenderBlock::rectWithOutlineForRepaint):
   47552         (WebCore::RenderBlock::hoverAncestor):
   47553         (WebCore::RenderBlock::updateDragState):
   47554         (WebCore::RenderBlock::outlineStyleForRepaint):
   47555         (WebCore::RenderBlock::childBecameNonInline):
   47556         (WebCore::RenderBlock::updateHitTestResult):
   47557         * rendering/RenderBlock.h:
   47558         (WebCore::RenderBlock::rightOffset):
   47559         (WebCore::RenderBlock::leftOffset):
   47560         (WebCore::RenderBlock::inlineContinuation):
   47561         (WebCore::RenderBlock::setInlineContinuation):
   47562         * rendering/RenderBox.cpp:
   47563         (WebCore::RenderBox::absoluteRects):
   47564         (WebCore::RenderBox::absoluteQuads):
   47565         (WebCore::RenderBox::addFocusRingRects):
   47566         (WebCore::RenderBox::containingBlockWidth):
   47567         * rendering/RenderBox.h:
   47568         (WebCore::RenderBox::collapsedMarginBottom):
   47569         (WebCore::RenderBox::childBecameNonInline):
   47570         * rendering/RenderContainer.cpp:
   47571         (WebCore::RenderContainer::updateBeforeAfterContentForContainer):
   47572         (WebCore::RenderContainer::removeLeftoverAnonymousBlock):
   47573         * rendering/RenderFlexibleBox.cpp:
   47574         (WebCore::RenderFlexibleBox::layoutVerticalBox):
   47575         * rendering/RenderFlow.cpp:
   47576         (WebCore::nextContinuation):
   47577         (WebCore::RenderFlow::continuationBefore):
   47578         (WebCore::RenderFlow::addChildWithContinuation):
   47579         (WebCore::RenderFlow::addChild):
   47580         (WebCore::RenderFlow::destroy):
   47581         (WebCore::RenderFlow::addFocusRingRects):
   47582         * rendering/RenderFlow.h:
   47583         (WebCore::RenderFlow::RenderFlow):
   47584         * rendering/RenderInline.cpp:
   47585         (WebCore::RenderInline::RenderInline):
   47586         (WebCore::RenderInline::destroy):
   47587         (WebCore::RenderInline::inlineContinuation):
   47588         (WebCore::RenderInline::styleDidChange):
   47589         (WebCore::RenderInline::addChildToFlow):
   47590         (WebCore::RenderInline::cloneInline):
   47591         (WebCore::RenderInline::splitInlines):
   47592         (WebCore::RenderInline::splitFlow):
   47593         (WebCore::RenderInline::positionForCoordinates):
   47594         (WebCore::RenderInline::rectWithOutlineForRepaint):
   47595         (WebCore::RenderInline::updateDragState):
   47596         (WebCore::RenderInline::childBecameNonInline):
   47597         (WebCore::RenderInline::updateHitTestResult):
   47598         * rendering/RenderInline.h:
   47599         (WebCore::RenderInline::isRenderInline):
   47600         (WebCore::RenderInline::continuation):
   47601         (WebCore::RenderInline::setContinuation):
   47602         * rendering/RenderListItem.cpp:
   47603         (WebCore::RenderListItem::positionListMarker):
   47604         * rendering/RenderListMarker.cpp:
   47605         (WebCore::RenderListMarker::RenderListMarker):
   47606         (WebCore::RenderListMarker::setSelectionState):
   47607         * rendering/RenderListMarker.h:
   47608         * rendering/RenderObject.cpp:
   47609         (WebCore::RenderObject::RenderObject):
   47610         (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
   47611         (WebCore::RenderObject::rectWithOutlineForRepaint):
   47612         (WebCore::RenderObject::handleDynamicFloatPositionChange):
   47613         (WebCore::RenderObject::updateDragState):
   47614         (WebCore::RenderObject::updateHitTestResult):
   47615         (WebCore::RenderObject::getTextDecorationColors):
   47616         (WebCore::RenderObject::adjustRectForOutlineAndShadow):
   47617         * rendering/RenderObject.h:
   47618         (WebCore::RenderObject::isInlineBlockOrInlineTable):
   47619         (WebCore::RenderObject::childrenInline):
   47620         (WebCore::RenderObject::setChildrenInline):
   47621         (WebCore::RenderObject::hasColumns):
   47622         (WebCore::RenderObject::setHasColumns):
   47623         (WebCore::RenderObject::cellWidthChanged):
   47624         (WebCore::RenderObject::setCellWidthChanged):
   47625         (WebCore::RenderObject::isInlineContinuation):
   47626         (WebCore::RenderObject::hoverAncestor):
   47627         (WebCore::RenderObject::outlineStyleForRepaint):
   47628         (WebCore::RenderObject::setHasMarkupTruncation):
   47629         (WebCore::RenderObject::hasMarkupTruncation):
   47630         (WebCore::RenderObject::selectionState):
   47631         (WebCore::RenderObject::setSelectionState):
   47632         (WebCore::RenderObject::hasSelectedChildren):
   47633         (WebCore::RenderObject::isTopMarginQuirk):
   47634         (WebCore::RenderObject::isBottomMarginQuirk):
   47635         (WebCore::RenderObject::setTopMarginQuirk):
   47636         (WebCore::RenderObject::setBottomMarginQuirk):
   47637         * rendering/RenderReplaced.cpp:
   47638         (WebCore::RenderReplaced::RenderReplaced):
   47639         (WebCore::RenderReplaced::setSelectionState):
   47640         * rendering/RenderReplaced.h:
   47641         (WebCore::RenderReplaced::canBeSelectionLeaf):
   47642         * rendering/RenderTable.cpp:
   47643         (WebCore::RenderTable::calcWidth):
   47644         * rendering/RenderTableCell.cpp:
   47645         (WebCore::RenderTableCell::updateWidth):
   47646         (WebCore::RenderTableCell::layout):
   47647         * rendering/RenderText.cpp:
   47648         (WebCore::RenderText::RenderText):
   47649         (WebCore::RenderText::localCaretRect):
   47650         (WebCore::RenderText::setSelectionState):
   47651         * rendering/RenderText.h:
   47652         (WebCore::RenderText::canBeSelectionLeaf):
   47653         * rendering/RenderView.cpp:
   47654         (WebCore::RenderView::updateHitTestResult):
   47655         * rendering/RenderView.h:
   47656         * rendering/RootInlineBox.cpp:
   47657         (WebCore::RootInlineBox::selectionTop):
   47658         * rendering/bidi.cpp:
   47659         (WebCore::RenderBlock::createLineBoxes):
   47660         (WebCore::RenderBlock::constructLine):
   47661         (WebCore::RenderBlock::computeHorizontalPositionsForLine):
   47662         (WebCore::RenderBlock::layoutInlineChildren):
   47663         (WebCore::RenderBlock::determineStartPosition):
   47664         (WebCore::RenderBlock::skipTrailingWhitespace):
   47665         (WebCore::RenderBlock::skipLeadingWhitespace):
   47666         (WebCore::RenderBlock::fitBelowFloats):
   47667         (WebCore::RenderBlock::findNextLineBreak):
   47668         (WebCore::RenderBlock::checkLinesForTextOverflow):
   47669 
   47670 2009-01-28  Adam Treat  <adam.treat (a] torchmobile.com>
   47671 
   47672         Reviewed by Nikolas Zimmermann and George Staikos.
   47673 
   47674         https://bugs.webkit.org/show_bug.cgi?id=23557
   47675         Allow option of hit testing frame content without clipping to the visible
   47676         viewport.
   47677 
   47678         * WebCore.base.exp:
   47679         * page/EventHandler.cpp:
   47680         (WebCore::EventHandler::hitTestResultAtPoint):
   47681         * page/EventHandler.h:
   47682         * rendering/HitTestRequest.h:
   47683         (WebCore::HitTestRequest::HitTestRequest):
   47684         * rendering/RenderLayer.cpp:
   47685         (WebCore::RenderLayer::hitTest):
   47686 
   47687 2009-01-28  Simon Hausmann  <simon.hausmann (a] nokia.com>
   47688 
   47689         Reviewed by Holger Freyther.
   47690 
   47691         Fix the build with Qt on Windows.
   47692 
   47693         Make sure that the QTWEBKIT_EXPORT macro becomes the Q_DECL_EXPORT macro
   47694         instead of the import macro when building the dll, by defining
   47695         QT_MAKEDLL.
   47696 
   47697         SystemTimeWin.cpp is needed on Windows for userIdleTime(), which for the
   47698         other Qt platforms comes from TemporaryLinkStubs.cpp.
   47699 
   47700         * WebCore.pro:
   47701 
   47702 2009-01-28  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   47703 
   47704         Reviewed by Simon Hausmann.
   47705 
   47706         [Qt] Speed-up clipping: avoid calling expensive QPainter::clipRegion().
   47707         Beside, the check is not necessary since QPainter::setClipRect() will
   47708         work just fine if there is no clip region yet.
   47709 
   47710         * platform/graphics/qt/GraphicsContextQt.cpp:
   47711         (WebCore::GraphicsContext::clip):
   47712 
   47713 2009-01-28  Darin Fisher  <darin (a] chromium.org>
   47714 
   47715         Reviewed by Darin Adler.
   47716 
   47717         https://bugs.webkit.org/show_bug.cgi?id=23546
   47718         Upstream GoogleURL implementation of KURL
   47719 
   47720         * platform/KURL.h:
   47721         * platform/KURLGoogle.cpp: Added.
   47722         * platform/KURLGooglePrivate.h: Added.
   47723 
   47724 2009-01-27  Darin Adler  <darin (a] apple.com>
   47725 
   47726         Reviewed by Sam Weinig.
   47727 
   47728         REGRESSION (r40234): Launching iTunes from a link displays a
   47729         "Safari can't find the Internet plug-in" sheet in Safari
   47730         rdar://problem/6533678
   47731 
   47732         * rendering/RenderPartObject.cpp:
   47733         (WebCore::havePlugin): Put the check for empty string in here.
   47734         (WebCore::serviceTypeForClassId): Only return activeXType() if
   47735         we have a plug-in that can handle that type. While it might be logical
   47736         to return an Active X type for any <object> with a classId in it,
   47737         even if we don't have a plug-in that implements Active X, existing
   47738         clients, such as Safari, don't expect that.
   47739 
   47740 2009-01-27  Dan Bernstein  <mitz (a] apple.com>
   47741 
   47742         Reviewed by Steve Falkenburg.
   47743 
   47744         - fix <rdar://problem/6524351> Text looks bad when font smoothing is
   47745           forced off
   47746 
   47747         * platform/graphics/win/FontCGWin.cpp:
   47748         (WebCore::Font::drawGlyphs): Changed to use GDI rather than Core
   47749         Graphics if the client has turned font smoothing off.
   47750 
   47751 2009-01-27  Simon Fraser  <simon.fraser (a] apple.com>
   47752 
   47753         Reviewed by Dave Hyatt
   47754 
   47755         https://bugs.webkit.org/show_bug.cgi?id=23360
   47756 
   47757         Use the new container-relative repaint methods to compute
   47758         post-layout repaints, and repaints using RenderLayer's
   47759         cached repaintRect() relative to that container, rather than
   47760         using absolute coords.
   47761 
   47762         Replaced lots of boilerplate old/new rect code in various
   47763         layout methods with a stack-based LayoutRepainter class, and
   47764         fixed a bug in RenderTable which set didFullRepaint to
   47765         'true' every time.
   47766 
   47767         * rendering/RenderBlock.cpp:
   47768         (WebCore::RenderBlock::layoutBlock):
   47769         * rendering/RenderFlexibleBox.cpp:
   47770         (WebCore::RenderFlexibleBox::layoutBlock):
   47771         * rendering/RenderForeignObject.cpp:
   47772         (WebCore::RenderForeignObject::layout):
   47773         * rendering/RenderLayer.cpp:
   47774         (WebCore::RenderLayer::updateLayerPositions):
   47775         (WebCore::RenderLayer::setHasVisibleContent):
   47776         * rendering/RenderLayer.h:
   47777         * rendering/RenderObject.cpp:
   47778         (WebCore::RenderObject::repaintUsingContainer):
   47779         (WebCore::RenderObject::repaint):
   47780         (WebCore::RenderObject::repaintRectangle):
   47781         (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
   47782         * rendering/RenderObject.h:
   47783         (WebCore::RenderObject::LayoutRepainter::LayoutRepainter):
   47784         (WebCore::RenderObject::LayoutRepainter::repaintAfterLayout):
   47785         (WebCore::RenderObject::LayoutRepainter::checkForRepaint):
   47786         * rendering/RenderPath.cpp:
   47787         (WebCore::RenderPath::layout):
   47788         * rendering/RenderReplaced.cpp:
   47789         (WebCore::RenderReplaced::layout):
   47790         * rendering/RenderSVGContainer.cpp:
   47791         (WebCore::RenderSVGContainer::layout):
   47792         * rendering/RenderSVGImage.cpp:
   47793         (WebCore::RenderSVGImage::layout):
   47794         * rendering/RenderSVGRoot.cpp:
   47795         (WebCore::RenderSVGRoot::layout):
   47796         * rendering/RenderSVGText.cpp:
   47797         (WebCore::RenderSVGText::layout):
   47798         * rendering/RenderSVGViewportContainer.cpp:
   47799         (WebCore::RenderSVGViewportContainer::layout):
   47800         * rendering/RenderTable.cpp:
   47801         (WebCore::RenderTable::layout):
   47802         * rendering/bidi.cpp:
   47803         (WebCore::RenderBlock::layoutInlineChildren):
   47804 
   47805 2009-01-27  Brady Eidson  <beidson (a] apple.com>
   47806 
   47807         Reviewed by Darin Adler
   47808 
   47809         <rdar://problem/3541409> - More groundwork and cleanup for CachedFrames
   47810 
   47811         * history/CachedFrame.cpp:
   47812         (WebCore::CachedFrame::CachedFrame): Make the savePlatformDataToCachedFrame() client call here,
   47813           and add the code for caching subframes.
   47814         (WebCore::CachedFrame::clear):
   47815         * history/CachedFrame.h: Change to be RefCounted
   47816         (WebCore::CachedFrame::create):
   47817         (WebCore::CachedFrame::url):
   47818 
   47819         * history/CachedPage.cpp:
   47820         (WebCore::CachedPage::CachedPage):
   47821         (WebCore::CachedPage::restore):
   47822         * history/CachedPage.h:
   47823         (WebCore::CachedPage::document):
   47824         (WebCore::CachedPage::documentLoader):
   47825         (WebCore::CachedPage::view):
   47826         (WebCore::CachedPage::url):
   47827         (WebCore::CachedPage::domWindow):
   47828         (WebCore::CachedPage::cachedMainFrame):
   47829 
   47830         * loader/FrameLoader.cpp:
   47831         (WebCore::FrameLoader::cachePageForHistoryItem): Move the platform data saving into the
   47832           CachedFrame itself.
   47833 
   47834 2009-01-27  Simon Fraser  <simon.fraser (a] apple.com>
   47835 
   47836         Reviewed by Dave Hyatt
   47837 
   47838         Flip the arguments of computeRectForRepaint() from
   47839             computeRectForRepaint(IntRect&, RenderBox* repaintContainer, bool)
   47840         to
   47841             computeRectForRepaint(RenderBox* repaintContainer, IntRect&, bool)
   47842 
   47843         * rendering/RenderBox.cpp:
   47844         (WebCore::RenderBox::clippedOverflowRectForRepaint):
   47845         (WebCore::RenderBox::computeRectForRepaint):
   47846         * rendering/RenderBox.h:
   47847         * rendering/RenderForeignObject.cpp:
   47848         (WebCore::RenderForeignObject::computeRectForRepaint):
   47849         * rendering/RenderForeignObject.h:
   47850         * rendering/RenderInline.cpp:
   47851         (WebCore::RenderInline::clippedOverflowRectForRepaint):
   47852         * rendering/RenderObject.cpp:
   47853         (WebCore::RenderObject::computeRectForRepaint):
   47854         * rendering/RenderObject.h:
   47855         (WebCore::RenderObject::computeAbsoluteRepaintRect):
   47856         * rendering/RenderReplaced.cpp:
   47857         (WebCore::RenderReplaced::clippedOverflowRectForRepaint):
   47858         * rendering/RenderTableCell.cpp:
   47859         (WebCore::RenderTableCell::clippedOverflowRectForRepaint):
   47860         (WebCore::RenderTableCell::computeRectForRepaint):
   47861         * rendering/RenderTableCell.h:
   47862         * rendering/RenderView.cpp:
   47863         (WebCore::RenderView::computeRectForRepaint):
   47864         * rendering/RenderView.h:
   47865 
   47866 2009-01-27  David Kilzer  <ddkilzer (a] apple.com>
   47867 
   47868         Add missing header guards to AccessibilityObjectWrapper.h
   47869 
   47870         Reviewed by Anders Carlsson.
   47871 
   47872         * page/mac/AccessibilityObjectWrapper.h: Added missing header guards.
   47873 
   47874 2009-01-27  Simon Fraser  <simon.fraser (a] apple.com>
   47875 
   47876         Reviewed by Dave Hyatt
   47877 
   47878         https://bugs.webkit.org/show_bug.cgi?id=23567
   47879 
   47880         Fix crash of svg/custom/stop-crash.svg testcase because of
   47881         infinite recursion, as I missed replacing absoluteClippedOverflowRect()
   47882         with clippedOverflowRectForRepaint() in RenderSVGGradientStop.
   47883 
   47884         Also fix a missed conversion in RenderTableCol, and add a couple
   47885         of comments.
   47886 
   47887         * rendering/RenderSVGGradientStop.h:
   47888         (WebCore::RenderSVGGradientStop::clippedOverflowRectForRepaint):
   47889         * rendering/RenderSVGImage.cpp:
   47890         (WebCore::RenderSVGImage::imageChanged):
   47891         * rendering/RenderTableCol.cpp:
   47892         (WebCore::RenderTableCol::clippedOverflowRectForRepaint):
   47893         * rendering/RenderTableRow.cpp:
   47894         (WebCore::RenderTableRow::layout):
   47895 
   47896 2009-01-27  Adele Peterson  <adele (a] apple.com>
   47897 
   47898         RS by Dave Hyatt
   47899 
   47900         Use the textfield appearance for search fields in themeWin.css so the border/background
   47901         styling will work correctly on these fields.
   47902 
   47903         * css/themeWin.css:
   47904 
   47905 2009-01-27  Dan Bernstein  <mitz (a] apple.com>
   47906 
   47907         - build fix
   47908 
   47909         * bindings/js/JSHTMLInputElementCustom.cpp:
   47910         (WebCore::JSHTMLInputElement::setSelectionStart):
   47911         (WebCore::JSHTMLInputElement::setSelectionEnd):
   47912         (WebCore::JSHTMLInputElement::setSelectionRange):
   47913 
   47914 2009-01-27  Dan Bernstein  <mitz (a] apple.com>
   47915 
   47916         - build fix
   47917 
   47918         * platform/graphics/Gradient.cpp:
   47919         (WebCore::Gradient::setSpreadMethod):
   47920 
   47921 2009-01-27  Paul Godavari  <paul (a] chromium.org>
   47922 
   47923         Reviewed by Eric Seidel.
   47924 
   47925         https://bugs.webkit.org/show_bug.cgi?id=23561
   47926         Explicitly send the MIME type from an image dragged from a web
   47927         page to the desktop, to Chromium so that it can properly generate
   47928         a file name.
   47929 
   47930         * platform/chromium/ChromiumDataObject.cpp:
   47931         (WebCore::ChromiumDataObject::clear):
   47932         (WebCore::ChromiumDataObject::hasData):
   47933         * platform/chromium/ChromiumDataObject.h:
   47934         * platform/chromium/ClipboardChromium.cpp:
   47935         (WebCore::writeImageToDataObject):
   47936 
   47937 2009-01-27  Mads Ager  <ager (a] chromium.org>
   47938 
   47939         Reviewed by Darin Adler.
   47940 
   47941         https://bugs.webkit.org/show_bug.cgi?id=23300
   47942         Follow Firefox in throwing exceptions when using selection
   47943         functions on HTMLInputElements that cannot have selection.
   47944 
   47945         This requires custom setSelectionRange, setSelectionStart and
   47946         setSelectionEnd implementations, but it gets rid of the custom
   47947         getOwnPropertySlot.
   47948 
   47949         * bindings/js/JSHTMLInputElementCustom.cpp:
   47950         (WebCore::JSHTMLInputElement::selectionStart):
   47951         (WebCore::JSHTMLInputElement::selectionEnd):
   47952         (WebCore::JSHTMLInputElement::setSelectionRange):
   47953         * html/HTMLInputElement.idl:
   47954 
   47955 2009-01-27  Evan Stade  <estade (a] chromium.org>
   47956 
   47957         Reviewed by Nikolas Zimmermann.
   47958 
   47959         https://bugs.webkit.org/show_bug.cgi?id=23435
   47960         Make spreadMethod a member of Gradient rather than GraphicsContext.
   47961         Implement spreadMethod for Skia.
   47962 
   47963         * platform/graphics/Gradient.cpp:
   47964         (WebCore::Gradient::Gradient):
   47965         * platform/graphics/Gradient.h:
   47966         (WebCore::Gradient::setSpreadMethod):
   47967         (WebCore::Gradient::spreadMethod):
   47968         * platform/graphics/GraphicsContext.cpp:
   47969         * platform/graphics/GraphicsContext.h:
   47970         * platform/graphics/GraphicsContextPrivate.h:
   47971         * platform/graphics/GraphicsTypes.h:
   47972         (WebCore::):
   47973         * platform/graphics/cairo/GradientCairo.cpp:
   47974         (WebCore::Gradient::platformGradient):
   47975         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   47976         (WebCore::GraphicsContext::fillPath):
   47977         (WebCore::GraphicsContext::strokePath):
   47978         * platform/graphics/qt/GradientQt.cpp:
   47979         (WebCore::Gradient::platformGradient):
   47980         * platform/graphics/qt/GraphicsContextQt.cpp:
   47981         (WebCore::GraphicsContext::fillPath):
   47982         (WebCore::GraphicsContext::strokePath):
   47983         * platform/graphics/skia/GradientSkia.cpp:
   47984         (WebCore::Gradient::platformGradient):
   47985         * svg/SVGLinearGradientElement.cpp:
   47986         (WebCore::SVGLinearGradientElement::buildGradient):
   47987         * svg/SVGRadialGradientElement.cpp:
   47988         (WebCore::SVGRadialGradientElement::buildGradient):
   47989         * svg/graphics/SVGPaintServerGradient.cpp:
   47990         (WebCore::SVGPaintServerGradient::SVGPaintServerGradient):
   47991         (WebCore::SVGPaintServerGradient::setup):
   47992         (WebCore::SVGPaintServerGradient::externalRepresentation):
   47993         * svg/graphics/SVGPaintServerGradient.h:
   47994 
   47995 2009-01-27  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   47996 
   47997         Rubber-stamped by Simon Hausmann.
   47998 
   47999         http://qt.nokia.com/developer/task-tracker/index_html?id=238662&method=entry
   48000 
   48001         [Qt] Map function keys F1 to F24.
   48002 
   48003         * platform/qt/PlatformKeyboardEventQt.cpp:
   48004         (WebCore::windowsKeyCodeForKeyEvent):
   48005 
   48006 2009-01-27  Brady Eidson  <beidson (a] apple.com>
   48007 
   48008         Reviewed by Dan Bernstein
   48009 
   48010         Rework FrameLoaderClient to work on a CachedFrame basis instead of CachedPage
   48011 
   48012         * WebCore.base.exp:
   48013         * history/CachedPage.cpp:
   48014         * history/CachedPage.h:
   48015         (WebCore::CachedPage::cachedMainFrame):
   48016 
   48017         * loader/EmptyClients.h:
   48018         (WebCore::EmptyFrameLoaderClient::savePlatformDataToCachedFrame):
   48019         (WebCore::EmptyFrameLoaderClient::transitionToCommittedFromCachedFrame):
   48020 
   48021         * loader/FrameLoader.cpp:
   48022         (WebCore::FrameLoader::restoreDocumentState):
   48023         (WebCore::FrameLoader::commitProvisionalLoad):
   48024         (WebCore::FrameLoader::transitionToCommitted):
   48025         (WebCore::FrameLoader::cachePageForHistoryItem):
   48026         * loader/FrameLoaderClient.h:
   48027 
   48028 2009-01-26  Simon Fraser  <simon.fraser (a] apple.com>
   48029 
   48030         Reviewed by Dave Hyatt
   48031 
   48032         https://bugs.webkit.org/show_bug.cgi?id=23360
   48033 
   48034         Add variants of all the methods that compute dirty rects for repainting
   48035         with versions that compute those rects relative to some container
   48036         RenderBox that acts as a painting root.
   48037 
   48038         * rendering/RenderBox.cpp:
   48039         (WebCore::RenderBox::styleDidChange):
   48040         (WebCore::RenderBox::outlineBoundsForRepaint):
   48041         (WebCore::RenderBox::localToContainerQuad):
   48042         (WebCore::RenderBox::clippedOverflowRectForRepaint):
   48043         (WebCore::RenderBox::computeRectForRepaint):
   48044         * rendering/RenderBox.h:
   48045         * rendering/RenderForeignObject.cpp:
   48046         (WebCore::RenderForeignObject::computeRectForRepaint):
   48047         * rendering/RenderForeignObject.h:
   48048         * rendering/RenderInline.cpp:
   48049         (WebCore::RenderInline::clippedOverflowRectForRepaint):
   48050         * rendering/RenderInline.h:
   48051         * rendering/RenderObject.cpp:
   48052         (WebCore::RenderObject::containerForRepaint):
   48053         (WebCore::RenderObject::repaint):
   48054         (WebCore::RenderObject::repaintRectangle):
   48055         (WebCore::RenderObject::rectWithOutlineForRepaint):
   48056         (WebCore::RenderObject::clippedOverflowRectForRepaint):
   48057         (WebCore::RenderObject::computeRectForRepaint):
   48058         (WebCore::RenderObject::localToContainerQuad):
   48059         * rendering/RenderObject.h:
   48060         (WebCore::RenderObject::localToAbsoluteQuad):
   48061         (WebCore::RenderObject::absoluteClippedOverflowRect):
   48062         (WebCore::RenderObject::computeAbsoluteRepaintRect):
   48063         (WebCore::RenderObject::absoluteOutlineBounds):
   48064         (WebCore::RenderObject::outlineBoundsForRepaint):
   48065         * rendering/RenderPath.cpp:
   48066         (WebCore::RenderPath::clippedOverflowRectForRepaint):
   48067         (WebCore::RenderPath::outlineBoundsForRepaint):
   48068         * rendering/RenderPath.h:
   48069         * rendering/RenderReplaced.cpp:
   48070         (WebCore::RenderReplaced::clippedOverflowRectForRepaint):
   48071         * rendering/RenderReplaced.h:
   48072         * rendering/RenderSVGContainer.cpp:
   48073         (WebCore::RenderSVGContainer::clippedOverflowRectForRepaint):
   48074         (WebCore::RenderSVGContainer::outlineBoundsForRepaint):
   48075         * rendering/RenderSVGContainer.h:
   48076         * rendering/RenderSVGHiddenContainer.cpp:
   48077         (WebCore::RenderSVGHiddenContainer::clippedOverflowRectForRepaint):
   48078         * rendering/RenderSVGHiddenContainer.h:
   48079         * rendering/RenderSVGImage.cpp:
   48080         (WebCore::RenderSVGImage::clippedOverflowRectForRepaint):
   48081         * rendering/RenderSVGImage.h:
   48082         * rendering/RenderSVGRoot.cpp:
   48083         (WebCore::RenderSVGRoot::clippedOverflowRectForRepaint):
   48084         * rendering/RenderSVGRoot.h:
   48085         * rendering/RenderSVGText.cpp:
   48086         (WebCore::RenderSVGText::clippedOverflowRectForRepaint):
   48087         * rendering/RenderSVGText.h:
   48088         * rendering/RenderTableCell.cpp:
   48089         (WebCore::RenderTableCell::clippedOverflowRectForRepaint):
   48090         (WebCore::RenderTableCell::computeRectForRepaint):
   48091         (WebCore::RenderTableCell::localToContainerQuad):
   48092         * rendering/RenderTableCell.h:
   48093         * rendering/RenderTableCol.cpp:
   48094         (WebCore::RenderTableCol::clippedOverflowRectForRepaint):
   48095         * rendering/RenderTableCol.h:
   48096         * rendering/RenderTableRow.cpp:
   48097         (WebCore::RenderTableRow::clippedOverflowRectForRepaint):
   48098         * rendering/RenderTableRow.h:
   48099         * rendering/RenderText.cpp:
   48100         (WebCore::RenderText::clippedOverflowRectForRepaint):
   48101         * rendering/RenderText.h:
   48102         * rendering/RenderView.cpp:
   48103         (WebCore::RenderView::localToContainerQuad):
   48104         (WebCore::RenderView::computeRectForRepaint):
   48105         * rendering/RenderView.h:
   48106 
   48107 2009-01-26  Simon Fraser  <simon.fraser (a] apple.com>
   48108 
   48109         Reviewed by David Hyatt
   48110 
   48111         Back out r40285, because it was checked in with no bug number, no
   48112         testcase, is rendering change that did not get thorough review,
   48113         and broke the Mac build.
   48114 
   48115         * page/EventHandler.cpp:
   48116         (WebCore::EventHandler::hitTestResultAtPoint):
   48117         * page/EventHandler.h:
   48118         * rendering/HitTestRequest.h:
   48119         (WebCore::HitTestRequest::HitTestRequest):
   48120         * rendering/RenderLayer.cpp:
   48121         (WebCore::RenderLayer::hitTest):
   48122 
   48123 2009-01-26  Brady Eidson  <beidson (a] apple.com>
   48124 
   48125         Reviewed by Darin Adler
   48126 
   48127         -Make the recently added back/forward cache logging much better by actually
   48128          walking the entire frame tree and indenting the resulting output.
   48129         -Fix a null-termination bug in HistoryItem tree logging
   48130 
   48131         * history/HistoryItem.cpp:
   48132         (WebCore::HistoryItem::showTreeWithIndent):
   48133 
   48134         * loader/FrameLoader.cpp:
   48135         (WebCore::pageCacheLogPrefix):
   48136         (WebCore::pageCacheLog):
   48137         (WebCore::FrameLoader::logCanCachePageDecision):
   48138         (WebCore::FrameLoader::logCanCacheFrameDecision):
   48139         * loader/FrameLoader.h:
   48140 
   48141 2009-01-26  Adam Treat  <adam.treat (a] torchmobile.com>
   48142 
   48143         Reviewed by Nikolas Zimmermann.
   48144 
   48145         Allow option of hit testing frame content without clipping to the visible
   48146         viewport.
   48147 
   48148         * page/EventHandler.cpp:
   48149         (WebCore::EventHandler::hitTestResultAtPoint):
   48150         * page/EventHandler.h:
   48151         * rendering/HitTestRequest.h:
   48152         (WebCore::HitTestRequest::HitTestRequest):
   48153         * rendering/RenderLayer.cpp:
   48154         (WebCore::RenderLayer::hitTest):
   48155 
   48156 2009-01-26  Sam Weinig  <sam (a] webkit.org>
   48157 
   48158         Reviewed by Dan Bernstein.
   48159 
   48160         Fix for https://bugs.webkit.org/show_bug.cgi?id=18141
   48161         Acid3 tests 77 and 78 fail on reload due to SVG font race
   48162         <rdar://problem/6504899>
   48163 
   48164         Match Opera's behavior of loading SVGFonts as soon as <font-face-uri>
   48165         tag is inserted into the document and not at the first use of the font
   48166         as is done for CSS web fonts.
   48167 
   48168         This fixes a race condition noticeable by some in the Acid3 test that
   48169         happened because the onload event handler for an iframe containing a
   48170         <font-face-uri> with an external reference was not delayed by the pending
   48171         load of the font.
   48172 
   48173         Test: http/tests/misc/SVGFont-delayed-load.html
   48174 
   48175         * svg/SVGFontFaceUriElement.cpp:
   48176         (WebCore::SVGFontFaceUriElement::~SVGFontFaceUriElement):
   48177         (WebCore::SVGFontFaceUriElement::parseMappedAttribute): Call loadFont if
   48178         the href attribute changes.
   48179         (WebCore::SVGFontFaceUriElement::insertedIntoDocument): Call loadFont.
   48180         (WebCore::SVGFontFaceUriElement::loadFont): Force a load of the
   48181         font specified in href attribute.
   48182         * svg/SVGFontFaceUriElement.h:
   48183 
   48184 2009-01-26  Timothy Hatcher  <timothy (a] apple.com>
   48185 
   48186         Change Web Archive serialization back to the binary property list format.
   48187 
   48188         <rdar://problem/6127865> Web archives saved with Safari 4 cannot be read by Safari 3
   48189 
   48190         Reviewed by Brady Eidson.
   48191 
   48192         * loader/archive/cf/LegacyWebArchive.cpp:
   48193         (WebCore::LegacyWebArchive::rawDataRepresentation):
   48194 
   48195 2009-01-26  Anders Carlsson  <andersca (a] apple.com>
   48196 
   48197         Fix 64-bit build.
   48198 
   48199         * WebCore.LP64.exp:
   48200 
   48201 2009-01-26  Dmitry Titov  <dimich (a] chromium.org>
   48202 
   48203         Reviewed by Alexey Proskuryakov.
   48204 
   48205         https://bugs.webkit.org/show_bug.cgi?id=23511
   48206         Move DOMTimer from bindings/js to page/.
   48207         This was prepared by moving all JSC dependencies from DOMTimer
   48208         to ScheduledAction earlier, and helps unfork the Chromuim version
   48209         of the DOMTimer.
   48210 
   48211         * GNUmakefile.am:
   48212         * WebCore.pro:
   48213         * WebCore.scons:
   48214         * WebCore.vcproj/WebCore.vcproj:
   48215         * WebCore.xcodeproj/project.pbxproj:
   48216         * WebCoreSources.bkl:
   48217         * bindings/js/DOMTimer.cpp: Removed.
   48218         * bindings/js/DOMTimer.h: Removed.
   48219         * page/DOMTimer.cpp: Copied from WebCore/bindings/js/DOMTimer.cpp.
   48220         * page/DOMTimer.h: Copied from WebCore/bindings/js/DOMTimer.h.
   48221 
   48222 2009-01-26  David Hyatt  <hyatt (a] apple.com>
   48223 
   48224         Eliminate rightmostPosition, lowestPosition and leftmostPosition from RenderFlow.  Move the code into
   48225         RenderBlock's methods.
   48226 
   48227         Reviewed by Eric Seidel
   48228 
   48229         * rendering/RenderBlock.cpp:
   48230         (WebCore::RenderBlock::lowestPosition):
   48231         (WebCore::RenderBlock::rightmostPosition):
   48232         (WebCore::RenderBlock::leftmostPosition):
   48233         * rendering/RenderFlow.cpp:
   48234         * rendering/RenderFlow.h:
   48235 
   48236 2009-01-26  Darin Fisher  <darin (a] chromium.org>
   48237 
   48238         Reviewed by Eric Seidel.
   48239 
   48240         https://bugs.webkit.org/show_bug.cgi?id=23553
   48241         Upstream changes from jcampan to fix chromium bugs 6692 and 6694.
   48242 
   48243         * platform/chromium/PopupMenuChromium.cpp:
   48244         (WebCore::PopupListBox::setLoopSelectionNavigation):
   48245         (WebCore::PopupListBox::PopupListBox):
   48246         (WebCore::PopupContainer::setLoopSelectionNavigation):
   48247         (WebCore::PopupListBox::handleKeyEvent):
   48248         (WebCore::PopupListBox::paintRow):
   48249         (WebCore::PopupListBox::clearSelection):
   48250         (WebCore::PopupListBox::selectNextRow):
   48251         (WebCore::PopupListBox::selectPreviousRow):
   48252         * platform/chromium/PopupMenuChromium.h:
   48253 
   48254 2009-01-26  Brady Eidson  <beidson (a] apple.com>
   48255 
   48256         Reviewed by Sam Weinig
   48257 
   48258         Remove some historical CachedPage time stamp fluff.
   48259 
   48260         * history/CachedPage.cpp:
   48261         (WebCore::CachedPage::CachedPage):
   48262         * history/CachedPage.h:
   48263         (WebCore::CachedPage::timeStamp):
   48264 
   48265         * loader/FrameLoader.cpp:
   48266         (WebCore::FrameLoader::cachePageForHistoryItem):
   48267 
   48268 2009-01-26  David Hyatt  <hyatt (a] apple.com>
   48269 
   48270         Move absoluteClippedOverflowRect, linesBoundingBox and borderBoundingBox from RenderFlow to RenderInline.
   48271 
   48272         Reviewed by Eric Seidel
   48273 
   48274         * rendering/RenderBox.cpp:
   48275         (WebCore::RenderBox::containingBlockHeightForPositioned):
   48276         * rendering/RenderFlow.cpp:
   48277         * rendering/RenderFlow.h:
   48278         * rendering/RenderInline.cpp:
   48279         (WebCore::RenderInline::linesBoundingBox):
   48280         (WebCore::RenderInline::absoluteClippedOverflowRect):
   48281         * rendering/RenderInline.h:
   48282         (WebCore::RenderInline::borderBoundingBox):
   48283         * rendering/RenderLayer.cpp:
   48284         (WebCore::RenderLayer::updateLayerPosition):
   48285         * rendering/RenderTreeAsText.cpp:
   48286         (WebCore::operator<<):
   48287 
   48288 2009-01-26  Dimitri Glazkov  <dglazkov (a] chromium.org>
   48289 
   48290         Reviewed by Eric Seidel.
   48291 
   48292         https://bugs.webkit.org/show_bug.cgi?id=22650
   48293         Implement support for "Immutable" attribute to CodeGeneratorJS.pm, thus
   48294         allowing to explicitly mark methods as immutable (i.e. returning a new
   48295         instance rather than a reference to an existing instance).
   48296 
   48297         * bindings/js/JSSVGMatrixCustom.cpp: Removed custom methods.
   48298         * bindings/scripts/CodeGeneratorJS.pm: Added check for Immutable
   48299             attribute when generating function call.
   48300         * svg/SVGMatrix.idl: Replaced Custom attribute with Immutable on
   48301             methods.
   48302 
   48303 2009-01-26  David Hyatt  <hyatt (a] apple.com>
   48304 
   48305         Eliminate isInlineFlow() now that a RenderBlock can never be an inline flow.  isInlineFlow() is now
   48306         equivalent to isRenderInline(), so all calls to isInlineFlow() have been replaced with isRenderInline().
   48307 
   48308         Reviewed by Eric Seidel
   48309 
   48310         * dom/Text.cpp:
   48311         (WebCore::Text::rendererIsNeeded):
   48312         * rendering/InlineFlowBox.cpp:
   48313         (WebCore::InlineFlowBox::placeBoxesHorizontally):
   48314         (WebCore::shouldDrawTextDecoration):
   48315         * rendering/RenderBlock.cpp:
   48316         (WebCore::RenderBlock::hitTestContents):
   48317         (WebCore::InlineMinMaxIterator::next):
   48318         (WebCore::RenderBlock::calcInlinePrefWidths):
   48319         * rendering/RenderBlock.h:
   48320         (WebCore::RenderBlock::isBlockFlow):
   48321         * rendering/RenderBox.cpp:
   48322         (WebCore::RenderBox::clientWidth):
   48323         (WebCore::RenderBox::clientHeight):
   48324         (WebCore::RenderBox::nodeAtPoint):
   48325         (WebCore::RenderBox::imageChanged):
   48326         (WebCore::RenderBox::offsetForPositionedInContainer):
   48327         (WebCore::RenderBox::containingBlockWidthForPositioned):
   48328         (WebCore::RenderBox::containingBlockHeightForPositioned):
   48329         * rendering/RenderBox.h:
   48330         (WebCore::RenderBox::width):
   48331         (WebCore::RenderBox::height):
   48332         (WebCore::RenderBox::size):
   48333         (WebCore::RenderBox::frameRect):
   48334         * rendering/RenderContainer.cpp:
   48335         (WebCore::RenderContainer::updateBeforeAfterContentForContainer):
   48336         * rendering/RenderFlow.cpp:
   48337         (WebCore::RenderFlow::dirtyLinesFromChangedChild):
   48338         (WebCore::RenderFlow::createInlineBox):
   48339         (WebCore::RenderFlow::paintLines):
   48340         (WebCore::RenderFlow::hitTestLines):
   48341         (WebCore::RenderFlow::absoluteClippedOverflowRect):
   48342         (WebCore::RenderFlow::lowestPosition):
   48343         (WebCore::RenderFlow::rightmostPosition):
   48344         (WebCore::RenderFlow::leftmostPosition):
   48345         * rendering/RenderFlow.h:
   48346         (WebCore::RenderFlow::borderBoundingBox):
   48347         * rendering/RenderInline.h:
   48348         (WebCore::RenderInline::isRenderInline):
   48349         * rendering/RenderLayer.cpp:
   48350         (WebCore::RenderLayer::updateLayerPosition):
   48351         (WebCore::RenderLayer::intersectsDamageRect):
   48352         (WebCore::RenderLayer::boundingBox):
   48353         * rendering/RenderListItem.cpp:
   48354         (WebCore::getParentOfFirstLineBox):
   48355         * rendering/RenderObject.cpp:
   48356         (WebCore::RenderObject::getAbsoluteRepaintRectWithOutline):
   48357         (WebCore::RenderObject::styleWillChange):
   48358         (WebCore::RenderObject::firstLineStyle):
   48359         * rendering/RenderObject.h:
   48360         * rendering/RenderSVGInline.cpp:
   48361         (WebCore::RenderSVGInline::createInlineBox):
   48362         * rendering/RenderSVGText.cpp:
   48363         (WebCore::RenderSVGText::createInlineBox):
   48364         * rendering/RenderTableRow.cpp:
   48365         (WebCore::RenderTableRow::nodeAtPoint):
   48366         * rendering/RenderTableSection.cpp:
   48367         (WebCore::RenderTableSection::nodeAtPoint):
   48368         * rendering/RenderText.cpp:
   48369         (WebCore::isInlineFlowOrEmptyText):
   48370         * rendering/RenderTreeAsText.cpp:
   48371         (WebCore::operator<<):
   48372         * rendering/bidi.cpp:
   48373         (WebCore::bidiNext):
   48374         (WebCore::bidiFirst):
   48375         (WebCore::appendRunsForObject):
   48376         (WebCore::RenderBlock::createLineBoxes):
   48377         (WebCore::RenderBlock::computeHorizontalPositionsForLine):
   48378         (WebCore::RenderBlock::layoutInlineChildren):
   48379         (WebCore::inlineFlowRequiresLineBox):
   48380         (WebCore::requiresLineBox):
   48381         (WebCore::RenderBlock::skipTrailingWhitespace):
   48382         (WebCore::RenderBlock::skipLeadingWhitespace):
   48383         (WebCore::RenderBlock::findNextLineBreak):
   48384 
   48385 2009-01-26  David Hyatt  <hyatt (a] apple.com>
   48386 
   48387         Drop support for display:compact.
   48388 
   48389         (1) display:compact is no longer part of CSS2.1.
   48390         (2) Shipping Safari has completely broken compact support with severely broken rendering
   48391         (all of the compact text just piles on top of the text in the inserted block and on top of itself as well).
   48392         (3) This has been broken in WebKit for years (ever since blocks converted to painting lines directly) without
   48393         anyone even noticing.
   48394 
   48395         Reviewed by Eric Seidel
   48396 
   48397         * rendering/InlineFlowBox.cpp:
   48398         (WebCore::InlineFlowBox::placeBoxesHorizontally):
   48399         * rendering/RenderBlock.cpp:
   48400         (WebCore::RenderBlock::handleSpecialChild):
   48401         (WebCore::RenderBlock::handleRunInChild):
   48402         (WebCore::RenderBlock::layoutBlockChildren):
   48403         (WebCore::RenderBlock::paint):
   48404         (WebCore::RenderBlock::paintObject):
   48405         (WebCore::RenderBlock::nodeAtPoint):
   48406         (WebCore::RenderBlock::positionForCoordinates):
   48407         (WebCore::shouldCheckLines):
   48408         (WebCore::getHeightForLineCount):
   48409         (WebCore::RenderBlock::renderName):
   48410         * rendering/RenderBlock.h:
   48411         * rendering/RenderBox.cpp:
   48412         (WebCore::RenderBox::sizesToIntrinsicWidth):
   48413         * rendering/RenderBox.h:
   48414         (WebCore::RenderBox::width):
   48415         (WebCore::RenderBox::height):
   48416         (WebCore::RenderBox::size):
   48417         (WebCore::RenderBox::frameRect):
   48418         * rendering/RenderFlow.cpp:
   48419         (WebCore::RenderFlow::paintLines):
   48420         (WebCore::RenderFlow::hitTestLines):
   48421         (WebCore::RenderFlow::absoluteClippedOverflowRect):
   48422         (WebCore::RenderFlow::linesBoundingBox):
   48423         * rendering/RenderObject.h:
   48424         (WebCore::RenderObject::isInline):
   48425         * rendering/bidi.cpp:
   48426         (WebCore::RenderBlock::computeHorizontalPositionsForLine):
   48427         (WebCore::RenderBlock::layoutInlineChildren):
   48428         * rendering/bidi.h:
   48429         (WebCore::BidiRun::BidiRun):
   48430 
   48431 2009-01-26  Adam Langley  <agl (a] google.com>
   48432 
   48433         Reviewed by Nikolas Zimmermann.
   48434 
   48435         gtk2drawing: fix compiler warnings
   48436 
   48437         g_object_set_data expects a gpointer as the last argument. Cast the
   48438           TRUE/FALSE values to avoid a warning.
   48439         gtk_tree_view_column_new doesn't return a GtkWidget.
   48440 
   48441         * platform/gtk/gtk2drawing.c:
   48442         (setup_widget_prototype):
   48443         (moz_gtk_get_combo_box_inner_button):
   48444         (moz_gtk_get_combo_box_button_inner_widgets):
   48445         (ensure_combo_box_widgets):
   48446         (moz_gtk_get_combo_box_entry_inner_widgets):
   48447         (moz_gtk_get_combo_box_entry_arrow):
   48448         (ensure_combo_box_entry_widgets):
   48449         (ensure_toolbar_widget):
   48450         (ensure_menu_bar_item_widget):
   48451         (ensure_menu_popup_widget):
   48452         (ensure_menu_item_widget):
   48453         (ensure_image_menu_item_widget):
   48454         (ensure_menu_separator_widget):
   48455         (ensure_check_menu_item_widget):
   48456         (ensure_tree_header_cell_widget):
   48457         (moz_gtk_entry_paint):
   48458 
   48459 2009-01-26  David Hyatt  <hyatt (a] apple.com>
   48460 
   48461         Change display:run-in handling so that we no longer reuse RenderBlock as though it is an inline flow.
   48462         Instead we create a new RenderInline, move the RenderBlock's children underneath it, and then set the
   48463         inline as the new element's renderer.
   48464 
   48465         Reviewed by Dan Bernstein
   48466 
   48467         * rendering/RenderBlock.cpp:
   48468         (WebCore::RenderBlock::handleRunInChild):
   48469         * rendering/RenderInline.cpp:
   48470         (WebCore::RenderInline::renderName):
   48471 
   48472 2009-01-26  Dimitri Glazkov  <dglazkov (a] chromium.org>
   48473 
   48474         Reviewed by Darin Adler.
   48475 
   48476         https://bugs.webkit.org/show_bug.cgi?id=23480
   48477         Add missing method stubs to BackForwardListChromium.
   48478 
   48479         * history/BackForwardListChromium.cpp:
   48480         (WebCore::BackForwardList::backItem):
   48481         (WebCore::BackForwardList::forwardItem):
   48482 
   48483 2009-01-25  Darin Adler  <darin (a] apple.com>
   48484 
   48485         Try to fix Tiger buildbot.
   48486 
   48487         * WebCore.xcodeproj/project.pbxproj: Turn off cast-qual for WebDashboardRegion.m.
   48488         * page/mac/WebDashboardRegion.m:
   48489         (typeName): Added.
   48490         (-[WebDashboardRegion description]): Use typeName.
   48491         (-[WebDashboardRegion isEqual:]): Added comment.
   48492 
   48493 2009-01-25  Alexey Proskuryakov  <ap (a] webkit.org>
   48494 
   48495         Reviewed by Darin Adler.
   48496 
   48497         https://bugs.webkit.org/show_bug.cgi?id=23535
   48498         Strengthen debug checks in KURL
   48499 
   48500         Covered (and prompted) by existing tests.
   48501 
   48502         * platform/KURL.cpp:
   48503         (WebCore::checkEncodedString): Check that the first character of the URL is an allowed
   48504         first scheme character, not just that it isn't a slash.
   48505         (WebCore::KURL::KURL): Assert that parsing didn't affect the string (which must be the case
   48506         because of parsing being idempotent).
   48507 
   48508         * page/SecurityOrigin.cpp:
   48509         (WebCore::SecurityOrigin::create): Added a check for the URL being valid - if it is not, an
   48510         empty security origin is created.
   48511         (WebCore::SecurityOrigin::createFromString): Parse the string as URL, do not just convert
   48512         it - it is not guaranteed to be properly encoded.
   48513 
   48514         * dom/Document.cpp: (WebCore::Document::updateBaseURL): As documentURI is an arbitrary
   48515         string, it needs to be parsed into an URL, not just converted into one.
   48516 
   48517         * html/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::createPattern):
   48518         Create the security origin with createFromString() instead of create(). I do not know where
   48519         the string comes from and whether it might not be properly encoded, but this change can't
   48520         hurt, and makes the code slightly more clear.
   48521 
   48522         * xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::accessControlCheck): Create the security
   48523         origin with createFromString() instead of create(). The string comes from an HTTP response
   48524         header, so it may not be a properly encoded URL.
   48525 
   48526         * loader/DocLoader.cpp: (WebCore::DocLoader::requestResource): Do not try to request using
   48527         invalid URLs.
   48528 
   48529         * page/DOMWindow.cpp: (WebCore::DOMWindow::postMessage): Updated to call
   48530         SecurityOrigin::createFromString() (no change in behavior).
   48531 
   48532 2009-01-25  Mark Rowe  <mrowe (a] apple.com>
   48533 
   48534         Rubber-stamped by Dan Bernstein.
   48535 
   48536         Improve the consistency of settings in our .xcconfig files.
   48537 
   48538         * Configurations/Base.xcconfig: Enable GCC_OBJC_CALL_CXX_CDTORS to match other projects,
   48539         and handle all cases in GCC_GENERATE_DEBUGGING_SYMBOLS.
   48540 
   48541 2009-01-25  David Hyatt  <hyatt (a] apple.com>
   48542 
   48543         Fix for https://bugs.webkit.org/show_bug.cgi?id=23524, lots of missing content in table sections.
   48544 
   48545         The new table code created a bug involving  markAllDescendantsWithFloatsForLayout, namely that it could
   48546         end up marking ancestors of a block as needing layout when that block was still in the process of
   48547         doing a layout.
   48548 
   48549         The fix is to add a parameter to markAllDescendantsWithFloatsForLayout that says whether or not
   48550         we are "mid-layout."  If this flag is set, then the method will make sure to do only local dirtying
   48551         of objects to avoid accidentally marking a clean ancestor as needing layout again.
   48552 
   48553         Ultimately the second parameter to setNeedsLayout and setChildNeedsLayout should just be removed,
   48554         with a check of whether or not we are mid-layout being done by those methods instead.
   48555 
   48556         Reviewed by Oliver Hunt
   48557 
   48558         Added fast/repaint/dynamic-table-vertical-alignment-change.html
   48559 
   48560         * rendering/RenderBlock.cpp:
   48561         (WebCore::RenderBlock::collapseMargins):
   48562         (WebCore::RenderBlock::clearFloatsIfNeeded):
   48563         (WebCore::RenderBlock::layoutBlockChildren):
   48564         (WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout):
   48565         * rendering/RenderBlock.h:
   48566         * rendering/RenderObject.cpp:
   48567         (WebCore::RenderObject::removeFromObjectLists):
   48568         * rendering/RenderObject.h:
   48569         * rendering/RenderTableSection.cpp:
   48570         (WebCore::RenderTableSection::layoutRows):
   48571 
   48572 2009-01-25  Darin Adler  <darin (a] apple.com>
   48573 
   48574         Reviewed by Mark Rowe.
   48575 
   48576         Bug 23352: Turn on more compiler warnings in the Mac build
   48577         https://bugs.webkit.org/show_bug.cgi?id=23352
   48578 
   48579         Turn on the following warnings:
   48580 
   48581             -Wcast-qual
   48582             -Wextra-tokens
   48583             -Wformat=2
   48584             -Winit-self
   48585             -Wmissing-noreturn
   48586             -Wpacked
   48587             -Wrendundant-decls
   48588 
   48589         * Configurations/Base.xcconfig: Added the new warnings. Switched to -Wextra instead of
   48590         -W for clarity since we don't have to support the older versions of gcc that require the
   48591         old -W syntax. Since we now use -Wformat=2, removed -Wformat-security. Also removed
   48592         -Wno-format-y2k since we can have that one on now.
   48593 
   48594 2009-01-25  Dan Bernstein  <mitz (a] apple.com>
   48595 
   48596         Reviewed by Oliver Hunt.
   48597 
   48598         - fix <rdar://problem/6525618> REGRESSION (r39566): NewsFire crashes in
   48599           string hashing code when opening a Digg RSS article
   48600 
   48601         Test: fast/loader/null-request-after-willSendRequest.html
   48602 
   48603         * loader/FrameLoader.cpp:
   48604         (WebCore::FrameLoader::loadItem): Null-check the request returned from
   48605         the client's willSendRequest method.
   48606 
   48607 2009-01-25  David Hyatt  <hyatt (a] apple.com>
   48608 
   48609         Fix for <rdar://problem/6525392> REGRESSION (r40180): Scroll wheel events over text scroll the page
   48610         instead of the ancestor overflow (23525)
   48611 
   48612         Make sure that we always call scroll() on the nearest enclosing RenderBox.  No test case is possible
   48613         here, since wheel scrolling is currently untestable (the offset varies from machine to machine).
   48614 
   48615         Reviewed by Dan Bernstein
   48616 
   48617         * page/EventHandler.cpp:
   48618         (WebCore::scrollAndAcceptEvent):
   48619         (WebCore::EventHandler::scrollOverflow):
   48620         * rendering/RenderObject.cpp:
   48621         (WebCore::RenderObject::enclosingBox):
   48622         * rendering/RenderObject.h:
   48623 
   48624 2009-01-25  Darin Adler  <darin (a] apple.com>
   48625 
   48626         Reviewed by Dan Bernstein.
   48627 
   48628         Bug 23538: REGRESSION (r39969): Garbage text instead of blank content rendered when plug-ins are disabled
   48629         https://bugs.webkit.org/show_bug.cgi?id=23538
   48630         rdar://problem/6523719
   48631 
   48632         I'm not sure how to make a regression test for this, since it depends on plug-ins being disabled.
   48633 
   48634         The main problem here is that when plug-ins were disabled, the code ignored the classId attribute and
   48635         the <embed> element entirely. That resulted in a page treating a Flash document as plain HTML rather
   48636         than doing fallback.
   48637 
   48638         * rendering/RenderPartObject.cpp:
   48639         (WebCore::createClassIdToTypeMap): Added. Broke this out into a separate function so we could get rid of an
   48640         inelegant if statement.
   48641         (WebCore::activeXType): Added. To avoid repeating the MIME type for ActiveX and possibly having a typo.
   48642         (WebCore::havePlugin): Added. Helper function to make sure we don't forget the null check.
   48643         (WebCore::serviceTypeForClassId): Give this function a return value since that's a more natural way to
   48644         return a string than an "out" parameter.  Fixed the logic to only prefer the ActiveX type over the
   48645         type guessed from the classId when there actually is an ActiveX plug-in to use. The old function assumed
   48646         there was one, which I presume right for Chrome on Windows when plug-ins are enabled, but wrong in many
   48647         other cases, and wrong all the time for all clients on Mac. We don't want to assume either way. Use the
   48648         new havePlugin function so we handle the case where pluginData is 0.
   48649         (WebCore::shouldUseEmbedDescendant): Renamed. Simplified the comment. Changed to use serviceTypeForClassId
   48650         instead of the old version that used an out parameter. Always use the <embed> if there isn't a plug-in
   48651         that knows how to handle <object> elements.
   48652         (WebCore::RenderPartObject::updateWidget): Removed null checks of pluginData. The two functions that
   48653         use this data still need to be called; they still do something even if no plug-ins are present. And
   48654         they have now been corrected to handle 0 properly.
   48655 
   48656 2009-01-25  Darin Adler  <darin (a] apple.com>
   48657 
   48658         * rendering/RenderMenuList.cpp: Fix build by adding back needed include.
   48659 
   48660 2009-01-25  Darin Adler  <darin (a] apple.com>
   48661 
   48662         Reviewed by Sam Weinig.
   48663 
   48664         Bug 23352: Turn on more compiler warnings in the Mac build
   48665         https://bugs.webkit.org/show_bug.cgi?id=23352
   48666 
   48667         Fourth patch: Deal with the last few stray warnings.
   48668 
   48669         * rendering/RenderBlock.cpp:
   48670         (WebCore::RenderBlock::firstLineBlock): Handle the const_cast a little better.
   48671         Also make the local variable be a RenderBlock so the cast is closer to the code
   48672         that guarantees it's correct.
   48673 
   48674         * rendering/SVGRenderTreeAsText.cpp:
   48675         (WebCore::writeStyle): Put the enum into a local variable that's a built-in
   48676         type before using it with TextStream, so we don't get a warning due to -Wsign-promo.
   48677 
   48678 2009-01-25  Darin Adler  <darin (a] apple.com>
   48679 
   48680         Reviewed by Sam Weinig.
   48681 
   48682         Bug 23522: use checked casts for render tree
   48683         https://bugs.webkit.org/show_bug.cgi?id=23522
   48684 
   48685         Step one: RenderText.
   48686 
   48687         Also change set of RenderFlow* to be a ListHashSet as the comment in the
   48688         header indicated.
   48689 
   48690         * dom/CharacterData.cpp:
   48691         (WebCore::CharacterData::setData): Use toRenderText.
   48692         (WebCore::CharacterData::appendData): Ditto.
   48693         (WebCore::CharacterData::insertData): Ditto.
   48694         (WebCore::CharacterData::deleteData): Ditto.
   48695         (WebCore::CharacterData::replaceData): Ditto.
   48696         * dom/ContainerNode.cpp:
   48697         (WebCore::ContainerNode::getUpperLeftCorner): Ditto.
   48698         (WebCore::ContainerNode::getLowerRightCorner): Ditto.
   48699         * dom/Position.cpp:
   48700         (WebCore::nextRenderedEditable): Ditto.
   48701         (WebCore::previousRenderedEditable): Ditto.
   48702         (WebCore::Position::renderedOffset): Ditto. Also use function members
   48703         instead of data members of InlineTextBox.
   48704         (WebCore::Position::upstream): Ditto.
   48705         (WebCore::Position::downstream): Ditto.
   48706         (WebCore::Position::hasRenderedNonAnonymousDescendantsWithHeight): Ditto.
   48707         (WebCore::Position::inRenderedText): Ditto.
   48708         (WebCore::Position::isRenderedCharacter): Ditto.
   48709         (WebCore::searchAheadForBetterMatch): Ditto.
   48710         (WebCore::Position::getInlineBoxAndOffset): Ditto.
   48711 
   48712         * dom/Range.cpp: Added include of VisiblePosition.h now that it's no longer
   48713         included in RenderObject.h.
   48714 
   48715         * dom/Text.cpp:
   48716         (WebCore::Text::splitText): Use toRenderText.
   48717         (WebCore::Text::recalcStyle): Ditto.
   48718         * editing/CompositeEditCommand.cpp:
   48719         (WebCore::CompositeEditCommand::deleteInsignificantText): Ditto.
   48720         * editing/SelectionController.cpp:
   48721         (WebCore::SelectionController::debugRenderer): Ditto.
   48722         * editing/TextIterator.cpp:
   48723         (WebCore::TextIterator::handleTextNode): Ditto.
   48724         (WebCore::TextIterator::handleTextBox): Ditto.
   48725         (WebCore::TextIterator::emitText): Ditto.
   48726         (WebCore::SimplifiedBackwardsTextIterator::handleTextNode): Ditto.
   48727 
   48728         * editing/VisiblePosition.cpp: Added include of FloatQuad.h now that it's
   48729         no longer included in RenderObject.h.
   48730         * inspector/InspectorController.cpp: Ditto.
   48731         * page/Frame.cpp: Ditto.
   48732         * rendering/RenderBox.cpp: Ditto.
   48733         * rendering/RenderInline.cpp: Ditto.
   48734         * rendering/RenderPath.cpp: Ditto.
   48735         * rendering/RenderSVGContainer.cpp: Ditto.
   48736         * rendering/RenderSVGImage.cpp: Ditto.
   48737         * rendering/RenderSVGInlineText.cpp: Ditto.
   48738         * rendering/RenderSVGTSpan.cpp: Ditto.
   48739         * rendering/RenderSVGText.cpp: Ditto.
   48740         * rendering/RenderSVGTextPath.cpp: Ditto.
   48741         * rendering/RenderTableCell.cpp: Ditto.
   48742         * rendering/RenderView.cpp: Ditto.
   48743 
   48744         * editing/visible_units.cpp:
   48745         (WebCore::startPositionForLine): Use function members instead of data
   48746         members of InlineTextBox.
   48747         (WebCore::endPositionForLine): Ditto.
   48748         (WebCore::startOfParagraph): Use toRenderText.
   48749         (WebCore::endOfParagraph): Ditto.
   48750 
   48751         * page/AccessibilityRenderObject.cpp:
   48752         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored): Use toRenderText.
   48753         * rendering/InlineFlowBox.cpp:
   48754         (WebCore::InlineFlowBox::placeBoxesHorizontally): Ditto.
   48755         * rendering/InlineTextBox.cpp:
   48756         (WebCore::InlineTextBox::deleteLine): Ditto.
   48757         (WebCore::InlineTextBox::extractLine): Ditto.
   48758         (WebCore::InlineTextBox::attachLine): Ditto.
   48759         (WebCore::InlineTextBox::placeEllipsisBox): Ditto.
   48760         (WebCore::InlineTextBox::paintDecoration): Ditto.
   48761         (WebCore::InlineTextBox::paintCompositionUnderline): Ditto.
   48762         (WebCore::InlineTextBox::offsetForPosition): Ditto.
   48763         (WebCore::InlineTextBox::positionForOffset): Ditto.
   48764 
   48765         * rendering/InlineTextBox.h: Made most members private. Use toRenderText.
   48766 
   48767         * rendering/RenderArena.cpp:
   48768         (WebCore::RenderArena::allocate): Use static_cast instead of C-style cast.
   48769         (WebCore::RenderArena::free): Ditto.
   48770 
   48771         * rendering/RenderBlock.cpp:
   48772         (WebCore::RenderBlock::addContinuationWithOutline): Use ListHashSet<RenderFlow*>
   48773         instead of RenderFlowSequencedSet.
   48774         (WebCore::RenderBlock::paintContinuationOutlines): Ditto.
   48775         (WebCore::stripTrailingSpace): Ditto.
   48776         (WebCore::RenderBlock::calcInlinePrefWidths): Ditto.
   48777         (WebCore::RenderBlock::updateFirstLetter): Ditto.
   48778 
   48779         * rendering/RenderContainer.cpp:
   48780         (WebCore::RenderContainer::addChild): Use toRenderText.
   48781 
   48782         * rendering/RenderFlow.cpp:
   48783         (WebCore::RenderFlow::dirtyLinesFromChangedChild): Use ListHashSet<RenderFlow*>
   48784         instead of RenderFlowSequencedSet.
   48785         (WebCore::RenderFlow::paintLines): Ditto.
   48786 
   48787         * rendering/RenderMenuList.cpp: Removed some unneeded includes.
   48788 
   48789         * rendering/RenderMenuList.h: Added now-needed forward declaration of RenderText.
   48790         Made more members private.
   48791 
   48792         * rendering/RenderObject.cpp: Updated includes.
   48793         (WebCore::RenderObject::isEditable): Use toRenderText.
   48794         (WebCore::RenderObject::positionForPoint): Made non-inline so we wouldn't have to
   48795         include VisiblePosition.h in the header just for this.
   48796 
   48797         * rendering/RenderObject.h: Removed unneeded includes and forward declarations.
   48798         Changed special vertical position values to be constants rather than an enum.
   48799         Eliminated RenderFlowSequencedSet, and changed clients to use ListHashSet<RenderFlow*>.
   48800 
   48801         * rendering/RenderText.cpp:
   48802         (WebCore::RenderText::findNextInlineTextBox): Use function members instead of
   48803         data members of InlineTextBox.
   48804         (WebCore::RenderText::positionForCoordinates): Ditto.
   48805         (WebCore::isInlineFlowOrEmptyText): Use toRenderText.
   48806         (WebCore::RenderText::previousCharacter): Use function members instead of
   48807         data members of InlineTextBox.
   48808         (WebCore::RenderText::position): Ditto.
   48809         (WebCore::RenderText::caretMinOffset): Ditto.
   48810         (WebCore::RenderText::caretMaxOffset): Ditto.
   48811         (WebCore::RenderText::caretMaxRenderedOffset): Ditto.
   48812 
   48813         * rendering/RenderText.h: Added definition of toRenderText.
   48814 
   48815         * rendering/RenderTextControl.cpp:
   48816         (WebCore::RenderTextControl::textWithHardLineBreaks): Use toRenderText.
   48817         * rendering/RenderTreeAsText.cpp:
   48818         (WebCore::operator<<): Use toRenderText and toRenderBox.
   48819         (WebCore::writeTextRun): Ditto.
   48820         (WebCore::write): Ditto.
   48821 
   48822         * rendering/bidi.cpp:
   48823         (WebCore::InlineIterator::increment): Use toRenderText.
   48824         (WebCore::InlineIterator::current): Ditto.
   48825         (WebCore::checkMidpoints): Ditto.
   48826         (WebCore::RenderBlock::computeHorizontalPositionsForLine): Ditto.
   48827         (WebCore::RenderBlock::layoutInlineChildren): Ditto.
   48828         (WebCore::RenderBlock::determineStartPosition): Ditto.
   48829         (WebCore::shouldSkipWhitespaceAfterStartObject): Ditto.
   48830         (WebCore::RenderBlock::findNextLineBreak): Ditto.
   48831 
   48832 2009-01-25  Thiago Macieira  <thiago.macieira (a] nokia.com>
   48833 
   48834         Reviewed by Simon Hausmann.
   48835 
   48836         Fix gcc compiler warning (deprecated conversion from constant string to char*)
   48837 
   48838         "" cannot be stored in a char*
   48839 
   48840         * plugins/PluginStream.cpp:
   48841         (WebCore::PluginStream::destroyStream):
   48842 
   48843 2009-01-24  Alexey Proskuryakov  <ap (a] webkit.org>
   48844 
   48845         Reviewed by Darin Adler.
   48846 
   48847         <rdar://problem/5954398> REGRESSION: 1.1% PLT regression from 33577 and 33578 (encoding fixes)
   48848 
   48849         Changed single argument KURL constructors back to always expect an already encoded string,
   48850         eliminating extra conversions.
   48851 
   48852         This is a rather unstable situation, as it is often unclear whether a given string is safe
   48853         to convert to KURL without resolving. I think that going forward, the solution is to try to
   48854         keep encoded URLs as KURL instances, and not as strings.
   48855 
   48856         * platform/KURL.h: Updated comments.
   48857 
   48858         * platform/KURL.cpp:
   48859         (WebCore::KURL::KURL): In debug builds, verify that the passed string is ASCII-only. The
   48860         intention is to verify that it is already parsed and encoded by KURL or equivalent code, but
   48861         since encoding is scheme-dependent, such a verification would be quite complicated.
   48862         Don't encode the string as UTF-8, as it supposed to be ASCII-only.
   48863         Removed a hack that made strings beginning with "/" turn into "file:" URLs. I didn't find
   48864         any reason for it to exist, but I saw several cases where this code path was taken
   48865         inadvertently (see examples in LayoutTests/ChangeLog).
   48866         (WebCore::KURL::setProtocol): Using a user-provided string without validation or encoding
   48867         is clearly wrong here (e.g., the "protocol" can be set to a full URL, effectively replacing
   48868         the old one), and an already encoded string is expected by parse().
   48869         In debug builds, non-ASCII input will make an assertion in parse() fail. Added a FIXME.
   48870         (WebCore::KURL::setHost): Ditto.
   48871         (WebCore::KURL::setPort): Ditto.
   48872         (WebCore::KURL::setHostAndPort): Ditto.
   48873         (WebCore::KURL::setUser): Ditto.
   48874         (WebCore::KURL::setPass): Ditto.
   48875         (WebCore::KURL::setRef): Ditto.
   48876         (WebCore::KURL::setQuery): Ditto.
   48877         (WebCore::KURL::setPath): Ditto.
   48878         (WebCore::KURL::parse): Verify that the passed string is already encoded.
   48879 
   48880         * html/HTMLLinkElement.cpp:
   48881         (WebCore::HTMLLinkElement::parseMappedAttribute):
   48882         (WebCore::HTMLLinkElement::process):
   48883         * html/HTMLLinkElement.h:
   48884         Changed to avoid using invalid URLs (this was causing problems on DNS prefetch tests, see
   48885         LayoutTests/ChangeLog).
   48886 
   48887         * loader/FrameLoader.cpp:
   48888         (WebCore::FrameLoader::init): Create an empty KURL without indirection for a small speedup.
   48889         (WebCore::FrameLoader::requestFrame): Resolve and encode javascript URLs properly, now that
   48890         String to KURL conversion requires the string to be already encoded.
   48891 
   48892         * page/DOMWindow.cpp: (WebCore::DOMWindow::postMessage): Resolve and encode the origin.
   48893         HTML5 seems a little unclear on how this should work (it talks about "either parsing it as
   48894         a URL, or resolving it", and then somehow compares unaltered targetOrigin string to a
   48895         security origin object), so I just made the code as close to what we already had as possible.
   48896 
   48897 2009-01-24  Darin Adler  <darin (a] apple.com>
   48898 
   48899         Try to fix Qt build.
   48900 
   48901         * WebCore.pro: Added JSTextCustom.cpp.
   48902 
   48903 2009-01-23  Chris Marrin  <cmarrin (a] apple.com>
   48904 
   48905         Reviewed by David Hyatt.
   48906 
   48907         https://bugs.webkit.org/show_bug.cgi?id=23467
   48908 
   48909         Change styleAvailable functionality to be a linked list
   48910         rather than scanning every CompositeAnimation for
   48911         Animations that are waiting for styleAvailable. This has
   48912         potential for large performance improvement in cases where
   48913         there are many animations firing at once. But it will also
   48914         help in my next fix, which is to synchronize software and
   48915         accelerated animations.
   48916 
   48917         I also changed slightly when the beginAnimationUpdate and
   48918         endAnimationUpdate calls are made. But this has no real
   48919         effect on performance or behavior.
   48920 
   48921         * dom/Document.cpp:
   48922         (WebCore::Document::recalcStyle):
   48923         (WebCore::Document::updateRendering):
   48924         * page/animation/AnimationBase.cpp:
   48925         (WebCore::AnimationBase::AnimationBase):
   48926         (WebCore::AnimationBase::~AnimationBase):
   48927         (WebCore::AnimationBase::updateStateMachine):
   48928         * page/animation/AnimationBase.h:
   48929         (WebCore::AnimationBase::next):
   48930         (WebCore::AnimationBase::setNext):
   48931         (WebCore::AnimationBase::styleAvailable):
   48932         * page/animation/AnimationController.cpp:
   48933         (WebCore::AnimationControllerPrivate::AnimationControllerPrivate):
   48934         (WebCore::AnimationControllerPrivate::addToStyleAvailableWaitList):
   48935         (WebCore::AnimationControllerPrivate::removeFromStyleAvailableWaitList):
   48936         (WebCore::AnimationControllerPrivate::styleAvailable):
   48937         (WebCore::AnimationController::AnimationController):
   48938         (WebCore::AnimationController::endAnimationUpdate):
   48939         (WebCore::AnimationController::addToStyleAvailableWaitList):
   48940         (WebCore::AnimationController::removeFromStyleAvailableWaitList):
   48941         * page/animation/AnimationController.h:
   48942         * page/animation/CompositeAnimation.cpp:
   48943         (WebCore::CompositeAnimationPrivate::addToStyleAvailableWaitList):
   48944         (WebCore::CompositeAnimationPrivate::removeFromStyleAvailableWaitList):
   48945         (WebCore::CompositeAnimation::addToStyleAvailableWaitList):
   48946         (WebCore::CompositeAnimation::removeFromStyleAvailableWaitList):
   48947         * page/animation/CompositeAnimation.h:
   48948 
   48949 2009-01-24  Alexey Proskuryakov  <ap (a] webkit.org>
   48950 
   48951         Reviewed by Darin Adler.
   48952 
   48953         <rdar://problem/6368059> REGRESSION: URL encoding problems on http://www.cineman.ch
   48954 
   48955         Test: http/tests/xmlhttprequest/encode-request-url-2.html
   48956 
   48957         * platform/KURL.cpp:
   48958         (WebCore::appendASCII): Added a helper function.
   48959         (WebCore::KURL::KURL): Explicitly encode the URL to call two-argument parse() with better
   48960         specified behavior.
   48961         (WebCore::KURL::init): Ditto. This avoids trying to round-trip an URL encoded into a byte
   48962         stream, but not yet transformed to ASCII-only using percent escapes. Since different parts
   48963         of the byte stream can use different encodings, round-tripping is not possible.
   48964         (WebCore::KURL::parse): Reverted an earlier change that made the single-argument version of
   48965         this function convert the string to utf-8. I think that on the remanining code paths, it is
   48966         correct to assume that the string is all ASCII, but I'm not yet confident enough to drop a
   48967         FIXME warning.
   48968 
   48969 2009-01-24  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   48970 
   48971         Gtk build fix after r40170
   48972 
   48973         * GNUmakefile.am: Removed editing/RemoveNodeAttributeCommand.cpp
   48974         and editing/RemoveNodeAttributeCommand.h
   48975 
   48976 2009-01-23  Adam Treat  <adam.treat (a] torchmobile.com>
   48977 
   48978         Fix the Qt build after r40205.
   48979 
   48980         * WebCore.pro:
   48981 
   48982 2009-01-23  Brady Eidson  <beidson (a] apple.com>
   48983 
   48984         Reviewed by Darin Adler
   48985 
   48986         In CachedPage, break off per-Frame pieces of data into a CachedFrame object.
   48987 
   48988         * GNUmakefile.am:
   48989         * WebCore.base.exp:
   48990         * WebCore.pro:
   48991         * WebCore.scons:
   48992         * WebCore.vcproj/WebCore.vcproj:
   48993         * WebCore.xcodeproj/project.pbxproj:
   48994         * WebCoreSources.bkl:
   48995 
   48996         * history/CachedFrame.cpp: Added.
   48997         (WebCore::cachedFrameCounter):
   48998         (WebCore::CachedFrame::CachedFrame):
   48999         (WebCore::CachedFrame::~CachedFrame):
   49000         (WebCore::CachedFrame::restore):
   49001         (WebCore::CachedFrame::clear):
   49002         (WebCore::CachedFrame::setCachedFramePlatformData):
   49003         (WebCore::CachedFrame::cachedFramePlatformData):
   49004         * history/CachedFrame.h: Added.
   49005         (WebCore::CachedFrame::document):
   49006         (WebCore::CachedFrame::documentLoader):
   49007         (WebCore::CachedFrame::view):
   49008         (WebCore::CachedFrame::mousePressNode):
   49009         (WebCore::CachedFrame::url):
   49010         (WebCore::CachedFrame::domWindow):
   49011 
   49012         * history/CachedPage.cpp:
   49013         (WebCore::CachedPage::CachedPage):
   49014         (WebCore::CachedPage::restore):
   49015         (WebCore::CachedPage::clear):
   49016         (WebCore::CachedPage::setCachedFramePlatformData):
   49017         (WebCore::CachedPage::cachedFramePlatformData):
   49018         * history/CachedPage.h:
   49019         (WebCore::CachedPage::document):
   49020         (WebCore::CachedPage::documentLoader):
   49021         (WebCore::CachedPage::view):
   49022         (WebCore::CachedPage::mousePressNode):
   49023         (WebCore::CachedPage::url):
   49024         (WebCore::CachedPage::domWindow):
   49025 
   49026         * loader/FrameLoader.cpp:
   49027         (WebCore::FrameLoader::cachePageForHistoryItem): Setting the DocumentLoader independently of
   49028           creating a CachedPage was a historical relic.  Take the opportunity to clean that up.
   49029 
   49030 2009-01-23  David Hyatt  <hyatt (a] apple.com>
   49031 
   49032         Add ASSERTs to catch anyone trying to obtain the width/height of an inline flow.  Fix up all the places
   49033         that triggered the ASSERT (since all of these places are effectively regressions from my landing that
   49034         devirtualized width()/height()).
   49035 
   49036         Reviewed by Adele
   49037 
   49038         * dom/Position.cpp:
   49039         (WebCore::Position::hasRenderedNonAnonymousDescendantsWithHeight):
   49040         * editing/DeleteButtonController.cpp:
   49041         (WebCore::isDeletableElement):
   49042         * html/HTMLAnchorElement.cpp:
   49043         (WebCore::HTMLAnchorElement::isKeyboardFocusable):
   49044         * rendering/RenderBox.cpp:
   49045         (WebCore::RenderBox::clientWidth):
   49046         (WebCore::RenderBox::clientHeight):
   49047         (WebCore::RenderBox::scrollWidth):
   49048         (WebCore::RenderBox::scrollHeight):
   49049         (WebCore::RenderBox::absoluteOutlineBounds):
   49050         * rendering/RenderBox.h:
   49051         (WebCore::RenderBox::width):
   49052         (WebCore::RenderBox::height):
   49053         (WebCore::RenderBox::size):
   49054         (WebCore::RenderBox::frameRect):
   49055         (WebCore::RenderBox::borderBoundingBox):
   49056         * rendering/RenderFlow.h:
   49057         (WebCore::RenderFlow::borderBoundingBox):
   49058         * rendering/RenderLayer.cpp:
   49059         (WebCore::RenderLayer::updateLayerPosition):
   49060         * rendering/RenderScrollbarPart.cpp:
   49061         (WebCore::RenderScrollbarPart::styleWillChange):
   49062         * rendering/RenderScrollbarPart.h:
   49063         * wml/WMLAElement.cpp:
   49064         (WebCore::WMLAElement::isKeyboardFocusable):
   49065 
   49066 2009-01-23  Darin Adler  <darin (a] apple.com>
   49067 
   49068         Reviewed by Anders Carlsson.
   49069 
   49070         Bug 23352: Turn on more compiler warnings in the Mac build
   49071         https://bugs.webkit.org/show_bug.cgi?id=23352
   49072 
   49073         Second patch: Slightly less simple cases of various warnings.
   49074 
   49075         * bridge/jni/jni_runtime.h:
   49076         (JSC::Bindings::JavaString::_commonInit): Use reinterpret_cast here and avoid casting
   49077         away const.
   49078 
   49079         * dom/XMLTokenizerLibxml2.cpp:
   49080         (WebCore::PendingCallbacks::appendStartElementNSCallback): Use static_cast instead of
   49081         reinterpret_cast; this is casting the result of malloc, and the idiom is to use
   49082         static_cast, which works because we're casting from void*.
   49083         (WebCore::PendingCallbacks::PendingStartElementNSCallback::call): Use const_cast instead
   49084         C-style casts.
   49085 
   49086         * xml/XSLTUnicodeSort.cpp:
   49087         (inlineXSLTTransformError): Tweak soft linking of xsltTransformError to use a macro
   49088         instead of redefining the function.
   49089 
   49090 2009-01-23  Darin Adler  <darin (a] apple.com>
   49091 
   49092         Reviewed by Anders Carlsson.
   49093 
   49094         Bug 23475: fast/text/find-backwards.html fails with ICU disabled SearchBuffer
   49095         https://bugs.webkit.org/show_bug.cgi?id=23475
   49096 
   49097         * editing/TextIterator.cpp:
   49098         (WebCore::SearchBuffer::search): Set the character start flag to false to
   49099         ensure we won't ever return the same result twice. There are other ways we
   49100         could accomplish this, mentioned in the comment, but this one was the smallest
   49101         and cleanest I could think of.
   49102 
   49103 2009-01-23  Darin Adler  <darin (a] apple.com>
   49104 
   49105         Reviewed by Anders Carlsson.
   49106 
   49107         Bug 23510: REGRESSION (r40171): CDATASection objects not getting proper JavaScript wrappers
   49108         https://bugs.webkit.org/show_bug.cgi?id=23510
   49109 
   49110         That patch fixed the optimization that's supposed to give a faster path for
   49111         allocating the wrappers for DOM Text objects. But CDATASection is the one
   49112         subclass of Text objects.
   49113 
   49114         * GNUmakefile.am: Added JSCDATASectionCustom.cpp.
   49115         * WebCore.scons: Ditto.
   49116         * WebCore.vcproj/WebCore.vcproj: Ditto.
   49117         * WebCore.xcodeproj/project.pbxproj: Ditto.
   49118         * WebCoreSources.bkl: Ditto.
   49119 
   49120         * bindings/js/JSCDATASectionCustom.cpp: Copied from bindings/js/JSTextCustom.cpp.
   49121         (WebCore::toJSNewlyCreated): Changed to do CDATASection, not Text.
   49122 
   49123         * bindings/scripts/CodeGeneratorJS.pm: Added another toJSNewlyCreated function
   49124         for CDATASection. We don't want to have to check when creating a wrapper for a
   49125         Text object whether it's a CDATASection object or not, so we need to do this overload
   49126         at compile time.
   49127 
   49128 2009-01-23  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   49129 
   49130         Reviewed by Eric Seidel.
   49131 
   49132         Add a base class for WML form control elements: WMLFormControlElement (as it's designed in HTML as well).
   49133         WMLFormControlElement inherits from WMLElement and FormControlElement (just like the HTMLFormControlElement equivalent).
   49134 
   49135         WMLInputElement / WMLOptionElement / WMLOptGroupElement are supposed to inherit from the new WMLFormControlElement class.
   49136         Now WMLInputElement & WMLOptGroupElement only inherit from WMLElement and FormControlElement, but WMLOptionElement inherits
   49137         from WMLEventHandlingElement (which in turn inherits from WMLElement) and FormControlElement. In order to introduce a shared
   49138         base class, WMLEventHandlingElement is no longer allowed to inherit from WMLElement directly. Instead it should turn into
   49139         another base class, just like FormControlElement.
   49140 
   49141         Add a base class for form control elements 'with state': FormControlElementWithState, serving as base class for
   49142         HTMLFormControlElementWithState and WMLFormControlElementWithState. -> Make Document operate on FormControlElementWithState
   49143         objects instead of HTMLFormControlElementWithState objects, to support save/restore control state for non HTMLFormControlElements.
   49144 
   49145         Rename isGenericFormElement() to isFormControlElement(), and move it to Element.h
   49146         Add new virtual function isFormControlElementWithState() to Element.h.
   49147 
   49148         * GNUmakefile.am:
   49149         * WebCore.order:
   49150         * WebCore.pro:
   49151         * WebCore.scons:
   49152         * WebCore.vcproj/WebCore.vcproj:
   49153         * WebCore.xcodeproj/project.pbxproj:
   49154         * WebCoreSources.bkl:
   49155         * dom/Document.cpp:
   49156         (WebCore::Document::formElementsState):
   49157         * dom/Document.h:
   49158         (WebCore::Document::registerFormElementWithState):
   49159         (WebCore::Document::unregisterFormElementWithState):
   49160         * dom/Element.h:
   49161         (WebCore::Element::isFormControlElement):
   49162         (WebCore::Element::isFormControlElementWithState):
   49163         * dom/FormControlElement.cpp:
   49164         (WebCore::toFormControlElement):
   49165         * dom/FormControlElement.h:
   49166         * dom/FormControlElementWithState.cpp: Added.
   49167         (WebCore::FormControlElementWithState::registerFormControlElementWithState):
   49168         (WebCore::FormControlElementWithState::unregisterFormControlElementWithState):
   49169         (WebCore::FormControlElementWithState::finishParsingChildren):
   49170         (WebCore::toFormControlElementWithState):
   49171         * dom/FormControlElementWithState.h: Added.
   49172         (WebCore::FormControlElementWithState::~FormControlElementWithState):
   49173         (WebCore::FormControlElementWithState::FormControlElementWithState):
   49174         * html/HTMLElement.h:
   49175         * html/HTMLFormControlElement.cpp:
   49176         (WebCore::HTMLFormControlElementWithState::HTMLFormControlElementWithState):
   49177         (WebCore::HTMLFormControlElementWithState::~HTMLFormControlElementWithState):
   49178         (WebCore::HTMLFormControlElementWithState::willMoveToNewOwnerDocument):
   49179         (WebCore::HTMLFormControlElementWithState::didMoveToNewOwnerDocument):
   49180         * html/HTMLFormControlElement.h:
   49181         (WebCore::HTMLFormControlElement::isFormControlElement):
   49182         (WebCore::HTMLFormControlElementWithState::isFormControlElementWithState):
   49183         (WebCore::HTMLFormControlElementWithState::toFormControlElement):
   49184         * html/HTMLFormElement.cpp:
   49185         (WebCore::HTMLFormElement::formElementIndex):
   49186         * html/HTMLLabelElement.cpp:
   49187         (WebCore::HTMLLabelElement::correspondingControl):
   49188         * html/HTMLLegendElement.cpp:
   49189         (WebCore::HTMLLegendElement::formElement):
   49190         * page/Frame.cpp:
   49191         (WebCore::Frame::searchForLabelsBeforeElement):
   49192         (WebCore::scanForForm):
   49193         (WebCore::Frame::currentForm):
   49194         * page/mac/FrameMac.mm:
   49195         (WebCore::Frame::searchForLabelsBeforeElement):
   49196         * wml/WMLCardElement.cpp:
   49197         (WebCore::WMLCardElement::WMLCardElement):
   49198         (WebCore::WMLCardElement::parseMappedAttribute):
   49199         (WebCore::WMLCardElement::insertedIntoDocument):
   49200         * wml/WMLCardElement.h:
   49201         * wml/WMLDoElement.cpp:
   49202         (WebCore::WMLDoElement::insertedIntoDocument):
   49203         * wml/WMLElement.h:
   49204         (WebCore::WMLElement::isWMLElement):
   49205         * wml/WMLEventHandlingElement.cpp:
   49206         (WebCore::WMLEventHandlingElement::WMLEventHandlingElement):
   49207         (WebCore::WMLEventHandlingElement::registerDoElement):
   49208         (WebCore::toWMLEventHandlingElement):
   49209         * wml/WMLEventHandlingElement.h:
   49210         * wml/WMLFormControlElement.cpp: Added.
   49211         (WebCore::WMLFormControlElement::WMLFormControlElement):
   49212         (WebCore::WMLFormControlElement::~WMLFormControlElement):
   49213         (WebCore::WMLFormControlElementWithState::WMLFormControlElementWithState):
   49214         (WebCore::WMLFormControlElementWithState::~WMLFormControlElementWithState):
   49215         * wml/WMLFormControlElement.h: Added.
   49216         (WebCore::WMLFormControlElement::isFormControlElement):
   49217         (WebCore::WMLFormControlElement::valueMatchesRenderer):
   49218         (WebCore::WMLFormControlElement::setValueMatchesRenderer):
   49219         (WebCore::WMLFormControlElement::name):
   49220         (WebCore::WMLFormControlElementWithState::isFormControlElementWithState):
   49221         (WebCore::WMLFormControlElementWithState::toFormControlElement):
   49222         * wml/WMLInputElement.cpp:
   49223         (WebCore::WMLInputElement::WMLInputElement):
   49224         (WebCore::WMLInputElement::type):
   49225         * wml/WMLInputElement.h:
   49226         * wml/WMLOnEventElement.cpp:
   49227         (WebCore::WMLOnEventElement::registerTask):
   49228         * wml/WMLOptGroupElement.cpp:
   49229         (WebCore::WMLOptGroupElement::WMLOptGroupElement):
   49230         (WebCore::WMLOptGroupElement::type):
   49231         * wml/WMLOptGroupElement.h:
   49232         * wml/WMLOptionElement.cpp:
   49233         (WebCore::WMLOptionElement::WMLOptionElement):
   49234         (WebCore::WMLOptionElement::type):
   49235         * wml/WMLOptionElement.h:
   49236         * wml/WMLTemplateElement.cpp:
   49237         (WebCore::WMLTemplateElement::WMLTemplateElement):
   49238         (WebCore::WMLTemplateElement::parseMappedAttribute):
   49239         * wml/WMLTemplateElement.h:
   49240 
   49241 2009-01-23  Chris Fleizach  <cfleizach (a] apple.com>
   49242 
   49243         Reviewed by Darin Adler.
   49244 
   49245         Bug 23509: Crash at -[WebCoreAXObject doAXNextSentenceEndTextMarkerForTextMarker:]
   49246         https://bugs.webkit.org/show_bug.cgi?id=23509
   49247 
   49248         Add null checking in makeRange instead of AX code
   49249 
   49250         * editing/VisiblePosition.cpp:
   49251         (WebCore::makeRange):
   49252         * page/AccessibilityObject.cpp:
   49253         (WebCore::AccessibilityObject::nextSentenceEndPosition):
   49254         (WebCore::AccessibilityObject::previousSentenceStartPosition):
   49255 
   49256 2009-01-23  Adam Treat  <adam.treat (a] torchmobile.com>
   49257 
   49258         Fix the Gtk build too after removal of RenderBox::toConstRenderBox
   49259 
   49260         * platform/gtk/RenderThemeGtk.cpp:
   49261         (WebCore::RenderThemeGtk::baselinePosition):
   49262 
   49263 2009-01-23  Adam Treat  <adam.treat (a] torchmobile.com>
   49264 
   49265         Fix the Qt build after rename of RenderBox::toConstRenderBox -> toRenderBox
   49266 
   49267         * platform/qt/RenderThemeQt.cpp:
   49268         (WebCore::RenderThemeQt::baselinePosition):
   49269 
   49270 2009-01-23  Adam Treat  <adam.treat (a] torchmobile.com>
   49271 
   49272         Fix the Qt build after r40168.
   49273 
   49274         * WebCore.pro:
   49275 
   49276 2009-01-23  Brady Eidson  <beidson (a] apple.com>
   49277 
   49278         Rubberstamped by Darin Adler
   49279 
   49280         Rename CachedPagePlatformData to CachedFramePlatformData to more accurately reflect its true role.
   49281 
   49282         * GNUmakefile.am:
   49283         * WebCore.base.exp:
   49284         * WebCore.order:
   49285         * WebCore.xcodeproj/project.pbxproj:
   49286 
   49287         * history/CachedFramePlatformData.h: Copied from WebCore/history/CachedPagePlatformData.h.
   49288         (WebCore::CachedFramePlatformData::~CachedFramePlatformData):
   49289         * history/CachedPagePlatformData.h: Removed.
   49290 
   49291         * history/CachedPage.cpp:
   49292         (WebCore::CachedPage::clear):
   49293         (WebCore::CachedPage::setCachedFramePlatformData):
   49294         (WebCore::CachedPage::cachedFramePlatformData):
   49295         * history/CachedPage.h:
   49296 
   49297 2009-01-23  Kevin Watters  <kevinwatters (a] gmail.com>
   49298 
   49299         Reviewed by Kevin Ollivier.
   49300 
   49301         Fix drawing in situations where sub-portions of the bitmap are to be
   49302         drawn to the screen.
   49303 
   49304         * platform/graphics/wx/ImageWx.cpp:
   49305         (WebCore::BitmapImage::draw):
   49306 
   49307 2009-01-23  Kevin Ollivier  <kevino (a] theolliviers.com>
   49308 
   49309         Build fixes for recent changes.
   49310 
   49311         * WebCoreSources.bkl:
   49312         * plugins/PluginView.cpp:
   49313         (WebCore::PluginView::invalidateWindowlessPluginRect):
   49314 
   49315 2009-01-23  Eric Carlson  <eric.carlson (a] apple.com>
   49316 
   49317         Reviewed by Adele Peterson
   49318 
   49319         Fix for https://bugs.webkit.org/show_bug.cgi?id=23407
   49320 
   49321         Implement QTMovieWin::hasVideo so the controller on an audio-only <video> element
   49322         is never hidden (as with an <audio> element).
   49323 
   49324         Test: media/video-controls-visible-audio-only.html
   49325 
   49326         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
   49327         (WebCore::MediaPlayerPrivate::hasVideo):
   49328         * platform/graphics/win/QTMovieWin.cpp:
   49329         (QTMovieWin::hasVideo):
   49330         * platform/graphics/win/QTMovieWin.h:
   49331 
   49332 2009-01-23  David Hyatt  <hyatt (a] apple.com>
   49333 
   49334         Make toRenderBox a non-member function.  Rename toConstRenderBox to just also be called toRenderBox.
   49335 
   49336         Reviewed by Oliver Hunt
   49337 
   49338         * css/CSSComputedStyleDeclaration.cpp:
   49339         (WebCore::sizingBox):
   49340         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   49341         * dom/ContainerNode.cpp:
   49342         (WebCore::ContainerNode::getUpperLeftCorner):
   49343         (WebCore::ContainerNode::getLowerRightCorner):
   49344         * dom/Element.cpp:
   49345         (WebCore::Element::scrollByUnits):
   49346         * dom/Position.cpp:
   49347         (WebCore::endsOfNodeAreVisuallyDistinctPositions):
   49348         (WebCore::Position::hasRenderedNonAnonymousDescendantsWithHeight):
   49349         (WebCore::Position::isCandidate):
   49350         * editing/DeleteButtonController.cpp:
   49351         (WebCore::isDeletableElement):
   49352         * editing/EditorCommand.cpp:
   49353         (WebCore::verticalScrollDistance):
   49354         * editing/TextIterator.cpp:
   49355         (WebCore::shouldEmitExtraNewlineForNode):
   49356         * html/HTMLAnchorElement.cpp:
   49357         (WebCore::HTMLAnchorElement::isKeyboardFocusable):
   49358         * html/HTMLFormControlElement.cpp:
   49359         (WebCore::HTMLFormControlElement::isFocusable):
   49360         * html/HTMLFrameElementBase.cpp:
   49361         (WebCore::HTMLFrameElementBase::width):
   49362         (WebCore::HTMLFrameElementBase::height):
   49363         * page/AccessibilityRenderObject.cpp:
   49364         (WebCore::AccessibilityRenderObject::doAccessibilityHitTest):
   49365         * page/EventHandler.cpp:
   49366         (WebCore::EventHandler::handleMouseDraggedEvent):
   49367         (WebCore::EventHandler::autoscrollTimerFired):
   49368         (WebCore::EventHandler::updateAutoscrollRenderer):
   49369         (WebCore::EventHandler::stopAutoscrollTimer):
   49370         (WebCore::EventHandler::scrollOverflow):
   49371         * page/FrameView.cpp:
   49372         (WebCore::FrameView::layout):
   49373         * page/animation/AnimationBase.cpp:
   49374         (WebCore::blendFunc):
   49375         * rendering/InlineBox.cpp:
   49376         (WebCore::InlineBox::adjustPosition):
   49377         * rendering/InlineBox.h:
   49378         (WebCore::InlineBox::renderBox):
   49379         * rendering/RenderBlock.cpp:
   49380         (WebCore::RenderBlock::clearFloats):
   49381         * rendering/RenderBox.cpp:
   49382         (WebCore::RenderBox::offsetFromContainer):
   49383         (WebCore::RenderBox::computeAbsoluteRepaintRect):
   49384         (WebCore::RenderBox::containingBlockWidthForPositioned):
   49385         (WebCore::RenderBox::containingBlockHeightForPositioned):
   49386         (WebCore::RenderBox::calcAbsoluteHorizontal):
   49387         (WebCore::RenderBox::calcAbsoluteVertical):
   49388         (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
   49389         (WebCore::RenderBox::calcAbsoluteVerticalReplaced):
   49390         * rendering/RenderBox.h:
   49391         (WebCore::toRenderBox):
   49392         (WebCore::RenderBox::previousSiblingBox):
   49393         (WebCore::RenderBox::nextSiblingBox):
   49394         (WebCore::RenderBox::parentBox):
   49395         * rendering/RenderFlow.cpp:
   49396         (WebCore::RenderFlow::absoluteClippedOverflowRect):
   49397         * rendering/RenderLayer.cpp:
   49398         (WebCore::RenderLayer::updateLayerPosition):
   49399         (WebCore::RenderLayer::resize):
   49400         (WebCore::RenderLayer::boundingBox):
   49401         * rendering/RenderObject.cpp:
   49402         (WebCore::addLayers):
   49403         (WebCore::RenderObject::removeLayers):
   49404         (WebCore::RenderObject::moveLayers):
   49405         (WebCore::RenderObject::findNextLayer):
   49406         (WebCore::RenderObject::enclosingLayer):
   49407         (WebCore::RenderObject::setNeedsLayout):
   49408         (WebCore::RenderObject::setNeedsPositionedMovementLayout):
   49409         (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
   49410         (WebCore::RenderObject::getAbsoluteRepaintRectWithOutline):
   49411         (WebCore::RenderObject::computeAbsoluteRepaintRect):
   49412         (WebCore::RenderObject::localToAbsolute):
   49413         (WebCore::RenderObject::absoluteToLocal):
   49414         (WebCore::RenderObject::localToAbsoluteQuad):
   49415         (WebCore::RenderObject::offsetFromContainer):
   49416         (WebCore::RenderObject::removeFromObjectLists):
   49417         (WebCore::RenderObject::destroy):
   49418         (WebCore::RenderObject::updateHitTestResult):
   49419         (WebCore::RenderObject::addDashboardRegions):
   49420         * rendering/RenderTableSection.cpp:
   49421         (WebCore::RenderTableSection::layoutRows):
   49422         * rendering/RenderTheme.cpp:
   49423         (WebCore::RenderTheme::hitTestMediaControlPart):
   49424         (WebCore::RenderTheme::baselinePosition):
   49425         * rendering/RenderThemeMac.mm:
   49426         (WebCore::RenderThemeMac::hitTestMediaControlPart):
   49427         * rendering/RenderTreeAsText.cpp:
   49428         (WebCore::externalRepresentation):
   49429         * rendering/bidi.cpp:
   49430         (WebCore::inlineWidth):
   49431         (WebCore::RenderBlock::computeHorizontalPositionsForLine):
   49432         (WebCore::requiresLineBox):
   49433         (WebCore::RenderBlock::findNextLineBreak):
   49434         * svg/SVGLength.cpp:
   49435         (WebCore::SVGLength::PercentageOfViewport):
   49436         * wml/WMLAElement.cpp:
   49437         (WebCore::WMLAElement::isKeyboardFocusable):
   49438         * wml/WMLInputElement.cpp:
   49439         (WebCore::isInputFocusable):
   49440 
   49441 2009-01-23  Chris Fleizach  <cfleizach (a] apple.com>
   49442 
   49443         Reviewed by Beth Dakin.
   49444 
   49445         Bug 23509: Crash at -[WebCoreAXObject doAXNextSentenceEndTextMarkerForTextMarker:]
   49446         https://bugs.webkit.org/show_bug.cgi?id=23509
   49447 
   49448         Add null checking around next/previous sentence retrieval in AX code
   49449 
   49450         * page/AccessibilityObject.cpp:
   49451         (WebCore::AccessibilityObject::nextSentenceEndPosition):
   49452         (WebCore::AccessibilityObject::previousSentenceStartPosition):
   49453 
   49454 2009-01-23  David Hyatt  <hyatt (a] apple.com>
   49455 
   49456         Fix for <rdar://problem/6518850> REGRESSION: hover feedback not showing on many sites
   49457 
   49458         Inline flow repainting was broken because it relied on width() and height().  Give RenderFlow a linesBoundingBox
   49459         method for obtaining a reasonable bounding box to use for repainting.  Eliminate the methods from RenderInline
   49460         since compacts/run-ins need them too, so putting them on RenderFlow is necessary.
   49461 
   49462         For consistency, change RenderText's version of these methods into the single linesBoundingBox method as
   49463         well.
   49464 
   49465         Reviewed by Oliver Hunt
   49466 
   49467         * WebCore.base.exp:
   49468         * dom/ContainerNode.cpp:
   49469         (WebCore::ContainerNode::getUpperLeftCorner):
   49470         (WebCore::ContainerNode::getLowerRightCorner):
   49471         * dom/Position.cpp:
   49472         (WebCore::Position::hasRenderedNonAnonymousDescendantsWithHeight):
   49473         * rendering/RenderBox.cpp:
   49474         (WebCore::RenderBox::containingBlockHeightForPositioned):
   49475         * rendering/RenderFlow.cpp:
   49476         (WebCore::RenderFlow::absoluteClippedOverflowRect):
   49477         (WebCore::RenderFlow::linesBoundingBox):
   49478         * rendering/RenderFlow.h:
   49479         * rendering/RenderInline.cpp:
   49480         * rendering/RenderInline.h:
   49481         (WebCore::RenderInline::offsetWidth):
   49482         (WebCore::RenderInline::offsetHeight):
   49483         * rendering/RenderLayer.cpp:
   49484         (WebCore::RenderLayer::updateLayerPosition):
   49485         * rendering/RenderText.cpp:
   49486         (WebCore::RenderText::linesBoundingBox):
   49487         * rendering/RenderText.h:
   49488         * rendering/RenderTreeAsText.cpp:
   49489         (WebCore::operator<<):
   49490         * rendering/SVGRenderTreeAsText.cpp:
   49491         (WebCore::write):
   49492 
   49493 2009-01-23  David Hyatt  <hyatt (a] apple.com>
   49494 
   49495         Move layer() into RenderBox and make it non-virtual.  Move all of the scrolling functions from RenderObject
   49496         to RenderBox and devirtualize as many as possible.  Clean up styleWillChange to factor code specific to
   49497         RenderBox and RenderBlock into their appropriate subclasses.  Stubbed out an empty styleWillChange on
   49498         RenderText, since none of the work done in styleWillChange was relevant to text nodes.
   49499 
   49500         Reviewed by Sam Weinig
   49501 
   49502         * dom/Document.cpp:
   49503         (WebCore::Document::elementFromPoint):
   49504         (WebCore::Document::renderView):
   49505         (WebCore::Document::prepareMouseEvent):
   49506         * dom/Document.h:
   49507         * dom/Element.cpp:
   49508         (WebCore::Element::scrollByUnits):
   49509         * editing/SelectionController.cpp:
   49510         (WebCore::SelectionController::contains):
   49511         * html/HTMLMarqueeElement.cpp:
   49512         (WebCore::HTMLMarqueeElement::start):
   49513         (WebCore::HTMLMarqueeElement::stop):
   49514         * page/AccessibilityRenderObject.cpp:
   49515         (WebCore::AccessibilityRenderObject::topRenderer):
   49516         (WebCore::AccessibilityRenderObject::visiblePositionForPoint):
   49517         (WebCore::AccessibilityRenderObject::doAccessibilityHitTest):
   49518         * page/AccessibilityRenderObject.h:
   49519         * page/EventHandler.cpp:
   49520         (WebCore::scrollAndAcceptEvent):
   49521         (WebCore::EventHandler::handleMousePressEvent):
   49522         (WebCore::EventHandler::handleMouseDraggedEvent):
   49523         (WebCore::EventHandler::updateSelectionForMouseDrag):
   49524         (WebCore::EventHandler::autoscrollTimerFired):
   49525         (WebCore::EventHandler::updateAutoscrollRenderer):
   49526         (WebCore::EventHandler::stopAutoscrollTimer):
   49527         (WebCore::EventHandler::scrollOverflow):
   49528         (WebCore::EventHandler::handleWheelEvent):
   49529         (WebCore::EventHandler::hoverTimerFired):
   49530         * page/Frame.cpp:
   49531         (WebCore::Frame::clearTimers):
   49532         * rendering/RenderBlock.cpp:
   49533         (WebCore::RenderBlock::styleWillChange):
   49534         * rendering/RenderBlock.h:
   49535         * rendering/RenderBox.cpp:
   49536         (WebCore::RenderBox::styleWillChange):
   49537         (WebCore::RenderBox::verticalScrollbarWidth):
   49538         (WebCore::RenderBox::horizontalScrollbarHeight):
   49539         (WebCore::RenderBox::scroll):
   49540         (WebCore::RenderBox::canBeProgramaticallyScrolled):
   49541         (WebCore::RenderBox::autoscroll):
   49542         (WebCore::RenderBox::panScroll):
   49543         (WebCore::RenderBox::offsetFromContainer):
   49544         (WebCore::RenderBox::computeAbsoluteRepaintRect):
   49545         * rendering/RenderBox.h:
   49546         (WebCore::RenderBox::layer):
   49547         (WebCore::RenderBox::requiresLayer):
   49548         (WebCore::RenderBox::stopAutoscroll):
   49549         (WebCore::RenderBox::hasAutoVerticalScrollbar):
   49550         (WebCore::RenderBox::hasAutoHorizontalScrollbar):
   49551         (WebCore::RenderBox::scrollsOverflow):
   49552         (WebCore::RenderBox::scrollsOverflowX):
   49553         (WebCore::RenderBox::scrollsOverflowY):
   49554         (WebCore::RenderBox::includeVerticalScrollbarSize):
   49555         (WebCore::RenderBox::includeHorizontalScrollbarSize):
   49556         * rendering/RenderFlow.cpp:
   49557         (WebCore::RenderFlow::absoluteClippedOverflowRect):
   49558         (WebCore::RenderFlow::addFocusRingRects):
   49559         * rendering/RenderForeignObject.cpp:
   49560         * rendering/RenderForeignObject.h:
   49561         (WebCore::RenderForeignObject::requiresLayer):
   49562         * rendering/RenderInline.cpp:
   49563         * rendering/RenderInline.h:
   49564         (WebCore::RenderInline::requiresLayer):
   49565         * rendering/RenderLayer.cpp:
   49566         (WebCore::RenderLayer::childrenClipRect):
   49567         (WebCore::RenderLayer::selfClipRect):
   49568         * rendering/RenderListBox.cpp:
   49569         * rendering/RenderListBox.h:
   49570         * rendering/RenderObject.cpp:
   49571         (WebCore::addLayers):
   49572         (WebCore::RenderObject::removeLayers):
   49573         (WebCore::RenderObject::moveLayers):
   49574         (WebCore::RenderObject::findNextLayer):
   49575         (WebCore::RenderObject::enclosingLayer):
   49576         (WebCore::RenderObject::setNeedsLayout):
   49577         (WebCore::RenderObject::setNeedsPositionedMovementLayout):
   49578         (WebCore::RenderObject::computeAbsoluteRepaintRect):
   49579         (WebCore::RenderObject::styleWillChange):
   49580         (WebCore::RenderObject::localToAbsolute):
   49581         (WebCore::RenderObject::absoluteToLocal):
   49582         (WebCore::RenderObject::localToAbsoluteQuad):
   49583         (WebCore::RenderObject::offsetFromContainer):
   49584         (WebCore::RenderObject::destroy):
   49585         * rendering/RenderObject.h:
   49586         * rendering/RenderPath.cpp:
   49587         * rendering/RenderPath.h:
   49588         (WebCore::RenderPath::requiresLayer):
   49589         * rendering/RenderReplica.h:
   49590         (WebCore::RenderReplica::requiresLayer):
   49591         * rendering/RenderSVGContainer.cpp:
   49592         * rendering/RenderSVGContainer.h:
   49593         (WebCore::RenderSVGContainer::requiresLayer):
   49594         * rendering/RenderSVGHiddenContainer.cpp:
   49595         * rendering/RenderSVGHiddenContainer.h:
   49596         (WebCore::RenderSVGHiddenContainer::requiresLayer):
   49597         * rendering/RenderSVGImage.cpp:
   49598         * rendering/RenderSVGImage.h:
   49599         (WebCore::RenderSVGImage::requiresLayer):
   49600         * rendering/RenderSVGInline.h:
   49601         (WebCore::RenderSVGInline::requiresLayer):
   49602         * rendering/RenderSVGInlineText.h:
   49603         (WebCore::RenderSVGInlineText::requiresLayer):
   49604         * rendering/RenderSVGText.cpp:
   49605         * rendering/RenderSVGText.h:
   49606         (WebCore::RenderSVGText::requiresLayer):
   49607         * rendering/RenderScrollbarPart.h:
   49608         (WebCore::RenderScrollbarPart::requiresLayer):
   49609         * rendering/RenderSlider.cpp:
   49610         (WebCore::RenderSlider::setCurrentPosition):
   49611         * rendering/RenderTableCell.cpp:
   49612         * rendering/RenderTableCell.h:
   49613         (WebCore::RenderTableCell::requiresLayer):
   49614         * rendering/RenderTableCol.h:
   49615         (WebCore::RenderTableCol::requiresLayer):
   49616         * rendering/RenderTableRow.h:
   49617         (WebCore::RenderTableRow::requiresLayer):
   49618         * rendering/RenderTableSection.cpp:
   49619         (WebCore::RenderTableSection::layoutRows):
   49620         * rendering/RenderText.h:
   49621         (WebCore::RenderText::styleWillChange):
   49622         * rendering/RenderTextControl.cpp:
   49623         (WebCore::RenderTextControl::autoscroll):
   49624         (WebCore::RenderTextControl::scroll):
   49625         * rendering/RenderTextControl.h:
   49626         * rendering/RenderTreeAsText.cpp:
   49627         (WebCore::write):
   49628         (WebCore::externalRepresentation):
   49629 
   49630 2009-01-23  Anders Carlsson  <andersca (a] apple.com>
   49631 
   49632         Fix tyop.
   49633 
   49634         * editing/markup.cpp:
   49635         (WebCore::joinMarkups):
   49636 
   49637 2009-01-23  Anders Carlsson  <andersca (a] apple.com>
   49638 
   49639         Reviewed by Darin Adler.
   49640 
   49641         * Configurations/Base.xcconfig:
   49642         Fix GCC 4.0 build.
   49643 
   49644         * editing/markup.cpp:
   49645         (WebCore::joinMarkups):
   49646         Pass a const reference to the vector.
   49647 
   49648         * html/HTMLElement.cpp:
   49649         * platform/text/String.cpp:
   49650         Add comments indicating that these functions are for use in the debugger.
   49651 
   49652 2009-01-23  Anders Carlsson  <andersca (a] apple.com>
   49653 
   49654         Reviewed by Sam Weinig.
   49655 
   49656         Turn on -Wmissing-prototypes and fix the resulting warnings.
   49657 
   49658         * Configurations/Base.xcconfig:
   49659         * bindings/js/JSHistoryCustom.cpp:
   49660         (WebCore::nonCachingStaticBackFunctionGetter):
   49661         (WebCore::nonCachingStaticForwardFunctionGetter):
   49662         (WebCore::nonCachingStaticGoFunctionGetter):
   49663         * bindings/js/JSLocationCustom.cpp:
   49664         (WebCore::nonCachingStaticReplaceFunctionGetter):
   49665         (WebCore::nonCachingStaticReloadFunctionGetter):
   49666         (WebCore::nonCachingStaticAssignFunctionGetter):
   49667         (WebCore::JSLocation::customGetOwnPropertySlot):
   49668         * bindings/objc/DOMRGBColor.mm:
   49669         (WebCore::getWrapperForRGB):
   49670         (WebCore::setWrapperForRGB):
   49671         (WebCore::removeWrapperForRGB):
   49672         * bindings/scripts/CodeGeneratorJS.pm:
   49673         * bridge/c/c_instance.cpp:
   49674         (JSC::Bindings::globalExceptionString):
   49675         * bridge/runtime_object.cpp:
   49676         (JSC::callRuntimeConstructor):
   49677         * css/CSSParser.cpp:
   49678         (WebCore::parseGradientColorStop):
   49679         * css/CSSPrimitiveValue.cpp:
   49680         (WebCore::scaleFactorForConversion):
   49681         * css/CSSStyleSelector.cpp:
   49682         (WebCore::operator >):
   49683         (WebCore::operator <=):
   49684         (WebCore::getTransformOperationType):
   49685         * dom/make_names.pl:
   49686         * editing/DeleteSelectionCommand.cpp:
   49687         (WebCore::updatePositionForTextRemoval):
   49688         * editing/EditorCommand.cpp:
   49689         (WebCore::valueBackColor):
   49690         (WebCore::valueFontName):
   49691         (WebCore::valueFontSize):
   49692         (WebCore::valueFontSizeDelta):
   49693         (WebCore::valueForeColor):
   49694         * editing/VisiblePosition.cpp:
   49695         (WebCore::canonicalizeCandidate):
   49696         * editing/htmlediting.cpp:
   49697         * editing/markup.cpp:
   49698         (WebCore::joinMarkups):
   49699         * html/HTMLElement.cpp:
   49700         (WebCore::inlineTagList):
   49701         (WebCore::blockTagList):
   49702         * html/HTMLMediaElement.cpp:
   49703         (WebCore::serializeTimeOffset):
   49704         (WebCore::parseTimeOffset):
   49705         * page/mac/FrameMac.mm:
   49706         (WebCore::regExpForLabels):
   49707         * platform/Arena.cpp:
   49708         * platform/graphics/Color.cpp:
   49709         (WebCore::colorFloatToRGBAByte):
   49710         * platform/graphics/cg/ImageSourceCG.cpp:
   49711         (WebCore::imageSourceOptions):
   49712         * platform/graphics/cg/PathCG.cpp:
   49713         (WebCore::CGPathApplierToPathApplier):
   49714         * platform/graphics/mac/SimpleFontDataMac.mm:
   49715         (WebCore::initFontData):
   49716         * platform/mac/PlatformMouseEventMac.mm:
   49717         * platform/text/String.cpp:
   49718         * rendering/RenderBlock.cpp:
   49719         (WebCore::continuationOutlineTable):
   49720         (WebCore::getHeightForLineCount):
   49721         * rendering/RenderView.cpp:
   49722         (WebCore::rendererAfterPosition):
   49723         * rendering/RootInlineBox.cpp:
   49724         (WebCore::isEditableLeaf):
   49725         * rendering/SVGRenderTreeAsText.cpp:
   49726         (WebCore::hasFractions):
   49727         * rendering/style/RenderStyle.cpp:
   49728         (WebCore::positionedObjectMoved):
   49729         * svg/SVGFont.cpp:
   49730         (WebCore::floatWidthUsingSVGFontCallback):
   49731         (WebCore::floatWidthMissingGlyphCallback):
   49732         (WebCore::drawTextUsingSVGFontCallback):
   49733         (WebCore::drawTextMissingGlyphCallback):
   49734         * svg/SVGTransformable.cpp:
   49735         (WebCore::parseTransformParamList):
   49736         * svg/graphics/SVGPaintServerGradient.cpp:
   49737         (WebCore::operator<<):
   49738         * xml/XPathGrammar.y:
   49739         * xml/XSLTExtensions.cpp:
   49740 
   49741 2009-01-23  Eric Seidel  <eric (a] webkit.org>
   49742 
   49743         No review, removing an empty file.
   49744 
   49745         Remove RemoveNodeAttributeCommand since it was empty.
   49746 
   49747         * WebCore.pro:
   49748         * WebCore.scons:
   49749         * WebCore.vcproj/WebCore.vcproj:
   49750         * WebCore.xcodeproj/project.pbxproj:
   49751         * editing/RemoveNodeAttributeCommand.cpp: Removed.
   49752         * editing/RemoveNodeAttributeCommand.h: Removed.
   49753 
   49754 2009-01-23  Brady Eidson  <beidson (a] apple.com>
   49755 
   49756         Rubberstamped by Sam Weinig
   49757 
   49758         Rework ScriptCachedPageData to ScriptCachedFrameData to more accurately reflect its true purpose
   49759 
   49760         * GNUmakefile.am:
   49761         * WebCore.vcproj/WebCore.vcproj:
   49762         * WebCore.xcodeproj/project.pbxproj:
   49763         * WebCoreSources.bkl:
   49764 
   49765         * bindings/js/ScriptCachedFrameData.cpp: Copied from bindings/js/ScriptCachedPageData.cpp.
   49766         (WebCore::ScriptCachedFrameData::ScriptCachedFrameData):
   49767         (WebCore::ScriptCachedFrameData::domWindow):
   49768         (WebCore::ScriptCachedFrameData::~ScriptCachedFrameData):
   49769         (WebCore::ScriptCachedFrameData::restore):
   49770         (WebCore::ScriptCachedFrameData::clear):
   49771         * bindings/js/ScriptCachedFrameData.h: Copied from bindings/js/ScriptCachedPageData.h.
   49772         * bindings/js/ScriptCachedPageData.cpp: Removed.
   49773         * bindings/js/ScriptCachedPageData.h: Removed.
   49774 
   49775         * history/CachedPage.cpp:
   49776         (WebCore::CachedPage::CachedPage):
   49777         (WebCore::CachedPage::restore):
   49778         * history/CachedPage.h:
   49779 
   49780 2009-01-23  Steve Falkenburg  <sfalken (a] apple.com>
   49781 
   49782         Fix build.
   49783 
   49784         * rendering/RenderThemeSafari.cpp:
   49785         (WebCore::RenderThemeSafari::baselinePosition):
   49786 
   49787 2009-01-23  Darin Fisher  <darin (a] chromium.org>
   49788 
   49789         Reviewed by Eric Seidel.
   49790 
   49791         https://bugs.webkit.org/show_bug.cgi?id=23506
   49792         Upstream Chromium's image decoders for use with PLATFORM(SKIA)
   49793 
   49794         * platform/image-decoders/skia/BMPImageDecoder.cpp: Added.
   49795         * platform/image-decoders/skia/BMPImageDecoder.h: Added.
   49796         * platform/image-decoders/skia/BMPImageReader.cpp: Added.
   49797         * platform/image-decoders/skia/BMPImageReader.h: Added.
   49798         * platform/image-decoders/skia/GIFImageDecoder.cpp:
   49799         (WebCore::GIFImageDecoderPrivate::GIFImageDecoderPrivate):
   49800         (WebCore::GIFImageDecoderPrivate::decode):
   49801         (WebCore::GIFImageDecoderPrivate::getColorMap):
   49802         (WebCore::GIFImageDecoder::GIFImageDecoder):
   49803         (WebCore::GIFImageDecoder::isSizeAvailable):
   49804         (WebCore::GIFImageDecoder::frameCount):
   49805         (WebCore::GIFImageDecoder::frameBufferAtIndex):
   49806         (WebCore::GIFImageDecoder::clearFrameBufferCache):
   49807         (WebCore::GIFImageDecoder::decode):
   49808         (WebCore::GIFImageDecoder::sizeNowAvailable):
   49809         (WebCore::GIFImageDecoder::initFrameBuffer):
   49810         (WebCore::GIFImageDecoder::prepEmptyFrameBuffer):
   49811         (WebCore::GIFImageDecoder::haveDecodedRow):
   49812         (WebCore::GIFImageDecoder::frameComplete):
   49813         * platform/image-decoders/skia/GIFImageDecoder.h:
   49814         (WebCore::GIFImageDecoder::filenameExtension):
   49815         (WebCore::GIFImageDecoder::frameDurationAtIndex):
   49816         (WebCore::GIFImageDecoder::):
   49817         * platform/image-decoders/skia/GIFImageReader.cpp:
   49818         (GIFImageReader::do_lzw):
   49819         (GIFImageReader::read):
   49820         * platform/image-decoders/skia/GIFImageReader.h:
   49821         * platform/image-decoders/skia/ICOImageDecoder.cpp: Added.
   49822         * platform/image-decoders/skia/ICOImageDecoder.h: Added.
   49823         * platform/image-decoders/skia/ImageDecoder.h:
   49824         (WebCore::RefCountedNativeImageSkia::create):
   49825         (WebCore::RefCountedNativeImageSkia::bitmap):
   49826         (WebCore::RefCountedNativeImageSkia::RefCountedNativeImageSkia):
   49827         (WebCore::RGBA32Buffer::):
   49828         (WebCore::RGBA32Buffer::RGBA32Buffer):
   49829         (WebCore::RGBA32Buffer::~RGBA32Buffer):
   49830         (WebCore::RGBA32Buffer::operator=):
   49831         (WebCore::RGBA32Buffer::clear):
   49832         (WebCore::RGBA32Buffer::copyBitmapData):
   49833         (WebCore::RGBA32Buffer::bitmap):
   49834         (WebCore::RGBA32Buffer::setSize):
   49835         (WebCore::RGBA32Buffer::width):
   49836         (WebCore::RGBA32Buffer::height):
   49837         (WebCore::RGBA32Buffer::rect):
   49838         (WebCore::RGBA32Buffer::status):
   49839         (WebCore::RGBA32Buffer::duration):
   49840         (WebCore::RGBA32Buffer::disposalMethod):
   49841         (WebCore::RGBA32Buffer::hasAlpha):
   49842         (WebCore::RGBA32Buffer::setRect):
   49843         (WebCore::RGBA32Buffer::setStatus):
   49844         (WebCore::RGBA32Buffer::setDuration):
   49845         (WebCore::RGBA32Buffer::setDisposalMethod):
   49846         (WebCore::RGBA32Buffer::setHasAlpha):
   49847         (WebCore::RGBA32Buffer::setRGBA):
   49848         (WebCore::ImageDecoder::ImageDecoder):
   49849         (WebCore::ImageDecoder::~ImageDecoder):
   49850         (WebCore::ImageDecoder::setData):
   49851         (WebCore::ImageDecoder::isSizeAvailable):
   49852         (WebCore::ImageDecoder::size):
   49853         (WebCore::ImageDecoder::frameCount):
   49854         (WebCore::ImageDecoder::repetitionCount):
   49855         (WebCore::ImageDecoder::supportsAlpha):
   49856         (WebCore::ImageDecoder::failed):
   49857         (WebCore::ImageDecoder::setFailed):
   49858         (WebCore::ImageDecoder::clearFrameBufferCache):
   49859         (WebCore::ImageDecoder::setSize):
   49860         (WebCore::ImageDecoder::isOverSize):
   49861         * platform/image-decoders/skia/JPEGImageDecoder.cpp:
   49862         (WebCore::JPEGImageReader::JPEGImageReader):
   49863         (WebCore::JPEGImageReader::decode):
   49864         (WebCore::JPEGImageDecoder::isSizeAvailable):
   49865         (WebCore::JPEGImageDecoder::outputScanlines):
   49866         * platform/image-decoders/skia/JPEGImageDecoder.h:
   49867         (WebCore::JPEGImageDecoder::filenameExtension):
   49868         (WebCore::JPEGImageDecoder::supportsAlpha):
   49869         (WebCore::JPEGImageDecoder::reader):
   49870         * platform/image-decoders/skia/PNGImageDecoder.cpp:
   49871         (WebCore::PNGImageReader::close):
   49872         (WebCore::PNGImageDecoder::PNGImageDecoder):
   49873         (WebCore::PNGImageDecoder::isSizeAvailable):
   49874         (WebCore::PNGImageDecoder::frameBufferAtIndex):
   49875         (WebCore::PNGImageDecoder::decode):
   49876         (WebCore::PNGImageDecoder::decodingFailed):
   49877         (WebCore::PNGImageDecoder::headerAvailable):
   49878         (WebCore::rowAvailable):
   49879         (WebCore::PNGImageDecoder::rowAvailable):
   49880         (WebCore::PNGImageDecoder::pngComplete):
   49881         * platform/image-decoders/skia/PNGImageDecoder.h:
   49882         (WebCore::PNGImageDecoder::filenameExtension):
   49883         (WebCore::PNGImageDecoder::reader):
   49884         * platform/image-decoders/skia/XBMImageDecoder.cpp: Added.
   49885         * platform/image-decoders/skia/XBMImageDecoder.h: Added.
   49886 
   49887 2009-01-23  Darin Fisher  <darin (a] chromium.org>
   49888 
   49889         Reviewed by Eric Seidel.
   49890 
   49891         https://bugs.webkit.org/show_bug.cgi?id=23506
   49892         Copy existing ImageDecoder.h in preparation for landing Skia changes on top.
   49893 
   49894         * platform/image-decoders/skia/ImageDecoder.h: Copied from platform/image-decoders/ImageDecoder.h.
   49895 
   49896 2009-01-23  Darin Fisher  <darin (a] chromium.org>
   49897 
   49898         Reviewed by Eric Seidel.
   49899 
   49900         https://bugs.webkit.org/show_bug.cgi?id=23506
   49901         Copy existing image-decoders in preparation for landing Skia changes on top.
   49902 
   49903         * platform/image-decoders/skia: Added.
   49904         * platform/image-decoders/skia/GIFImageDecoder.cpp: Copied from platform/image-decoders/gif/GIFImageDecoder.cpp.
   49905         * platform/image-decoders/skia/GIFImageDecoder.h: Copied from platform/image-decoders/gif/GIFImageDecoder.h.
   49906         * platform/image-decoders/skia/GIFImageReader.cpp: Copied from platform/image-decoders/gif/GIFImageReader.cpp.
   49907         * platform/image-decoders/skia/GIFImageReader.h: Copied from platform/image-decoders/gif/GIFImageReader.h.
   49908         * platform/image-decoders/skia/JPEGImageDecoder.cpp: Copied from platform/image-decoders/jpeg/JPEGImageDecoder.cpp.
   49909         * platform/image-decoders/skia/JPEGImageDecoder.h: Copied from platform/image-decoders/jpeg/JPEGImageDecoder.h.
   49910         * platform/image-decoders/skia/PNGImageDecoder.cpp: Copied from platform/image-decoders/png/PNGImageDecoder.cpp.
   49911         * platform/image-decoders/skia/PNGImageDecoder.h: Copied from platform/image-decoders/png/PNGImageDecoder.h.
   49912 
   49913 2009-01-23  Holger Freyther  <zecke (a] selfish.org>
   49914 
   49915         Unreviewed build fix.
   49916 
   49917         Based on https://bugs.webkit.org/show_bug.cgi?id=23498
   49918         from craig.schlenter (a] gmail.com
   49919 
   49920         * platform/gtk/RenderThemeGtk.cpp:
   49921         (WebCore::RenderThemeGtk::baselinePosition):
   49922 
   49923 2009-01-23  David Levin  <levin (a] chromium.org>
   49924 
   49925         Reviewed by Alexey Proskuryakov.
   49926 
   49927         Bug 22720: Make XMLHttpRequest work in Workers
   49928         <https://bugs.webkit.org/show_bug.cgi?id=22720>
   49929 
   49930         Add copy/adopt for ResourceResponse(Base)/ResourceRequest(Base) to allow the
   49931         data to be passed across threads.
   49932 
   49933         No observable change in behavior, so no test.
   49934 
   49935         * platform/network/FormData.cpp:
   49936         (WebCore::FormData::deepCopy):
   49937         * platform/network/FormData.h:
   49938         * platform/network/HTTPHeaderMap.cpp:
   49939         (WebCore::HTTPHeaderMap::copyData):
   49940         (WebCore::HTTPHeaderMap::adopt):
   49941         * platform/network/HTTPHeaderMap.h:
   49942         * platform/network/ResourceRequestBase.cpp:
   49943         (WebCore::ResourceRequestBase::adopt):
   49944         (WebCore::ResourceRequestBase::copyData):
   49945         * platform/network/ResourceRequestBase.h:
   49946         * platform/network/ResourceResponseBase.cpp:
   49947         (WebCore::ResourceResponseBase::adopt):
   49948         (WebCore::ResourceResponseBase::copyData):
   49949         * platform/network/ResourceResponseBase.h:
   49950 
   49951 2009-01-23  Dmitry Titov  <dimich (a] chromium.org>
   49952 
   49953         Reviewed by Alexey Proskuryakov.
   49954 
   49955         https://bugs.webkit.org/show_bug.cgi?id=23374
   49956         Add WorkerRunLoop to encapsulate message queue and timer heap.
   49957         This is first half (timer heap is added as separate patch).
   49958 
   49959         * GNUmakefile.am: Added WorkerRunLoop.cpp to the build.
   49960         * WebCore.vcproj/WebCore.vcproj: Same as above.
   49961         * WebCore.xcodeproj/project.pbxproj: Same as above
   49962         * dom/WorkerContext.cpp:
   49963         (WebCore::WorkerContext::postTask):
   49964         * dom/WorkerContext.h:
   49965         * dom/WorkerMessagingProxy.cpp:
   49966         (WebCore::WorkerMessagingProxy::postMessageToWorkerContext):
   49967         (WebCore::WorkerMessagingProxy::workerThreadCreated):
   49968         * dom/WorkerRunLoop.cpp: Added.
   49969         (WebCore::WorkerRunLoop::run): Runs the loop until terminate() is called.
   49970         (WebCore::WorkerRunLoop::terminate): Causes the loop to exit.
   49971         (WebCore::WorkerRunLoop::postTask): Adds a task to the internal queue.
   49972         * dom/WorkerRunLoop.h: Added.
   49973         (WebCore::WorkerRunLoop::WorkerRunLoop):
   49974         * dom/WorkerThread.cpp:
   49975         (WebCore::WorkerThread::workerThread):
   49976         (WebCore::WorkerThread::stop):
   49977         * dom/WorkerThread.h:
   49978         (WebCore::WorkerThread::runLoop):
   49979 
   49980 2009-01-23  Adam Treat  <adam.treat (a] torchmobile.com>
   49981 
   49982         Reviewed by Holger Hans Peter Freyther.
   49983 
   49984         Redo previous patch http://trac.webkit.org/changeset/34260 which fixes a
   49985         huge memory leak by ensuring that the timer is fired one last time on
   49986         application tear down thus triggering the GCController thereby freeing
   49987         JavaScript objects as well as triggering other timer based tear down methods.
   49988 
   49989         * platform/qt/SharedTimerQt.cpp:
   49990         (WebCore::SharedTimerQt::~SharedTimerQt):
   49991 
   49992 2009-01-23  Alexey Proskuryakov  <ap (a] webkit.org>
   49993 
   49994         Reviewed by Oliver Hunt.
   49995 
   49996         https://bugs.webkit.org/show_bug.cgi?id=23459
   49997         Workers are not properly terminated if execution hasn't begun yet
   49998 
   49999         Doesn't affect observable behavior, so test case is not possible.
   50000 
   50001         * dom/WorkerThread.cpp: (WebCore::WorkerThread::workerThread): Call forbidExecution() if
   50002         it couldn't be called earlier.
   50003 
   50004 2009-01-23  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   50005 
   50006         [Qt] Fix the build after RenderBox refactoring in r40153.
   50007 
   50008         * platform/qt/RenderThemeQt.cpp:
   50009         (WebCore::RenderThemeQt::baselinePosition):
   50010 
   50011 2009-01-23  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   50012 
   50013         Rubber-stamped by Alexey Proskuryakov.
   50014 
   50015         Fix the build after RenderBox refactoring in r40153.
   50016 
   50017         * plugins/PluginView.cpp:
   50018         (WebCore::PluginView::invalidateWindowlessPluginRect):
   50019 
   50020 2009-01-23  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   50021 
   50022         Reviewed by Simon Hausmann.
   50023 
   50024         [Qt] Simplify the assertion.
   50025 
   50026         * platform/graphics/qt/GraphicsContextQt.cpp:
   50027         (WebCore::GraphicsContext::getWindowsContext):
   50028         (WebCore::GraphicsContext::releaseWindowsContext):
   50029 
   50030 2009-01-22  David Hyatt  <hyatt (a] apple.com>
   50031 
   50032         Move the border and padding methods from RenderObject to RenderBox.
   50033 
   50034         Reviewed by Oliver Hunt
   50035 
   50036         * css/CSSComputedStyleDeclaration.cpp:
   50037         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   50038         * editing/DeleteButtonController.cpp:
   50039         (WebCore::DeleteButtonController::createDeletionUI):
   50040         * page/EventHandler.cpp:
   50041         (WebCore::EventHandler::hitTestResultAtPoint):
   50042         * rendering/InlineFlowBox.cpp:
   50043         (WebCore::InlineFlowBox::placeBoxesVertically):
   50044         * rendering/InlineFlowBox.h:
   50045         (WebCore::InlineFlowBox::borderLeft):
   50046         (WebCore::InlineFlowBox::borderRight):
   50047         (WebCore::InlineFlowBox::paddingLeft):
   50048         (WebCore::InlineFlowBox::paddingRight):
   50049         * rendering/RenderBlock.cpp:
   50050         (WebCore::RenderBlock::clearFloats):
   50051         * rendering/RenderBox.cpp:
   50052         (WebCore::RenderBox::paddingTop):
   50053         (WebCore::RenderBox::paddingBottom):
   50054         (WebCore::RenderBox::paddingLeft):
   50055         (WebCore::RenderBox::paddingRight):
   50056         (WebCore::RenderBox::calcHeight):
   50057         (WebCore::RenderBox::containingBlockWidthForPositioned):
   50058         (WebCore::RenderBox::containingBlockHeightForPositioned):
   50059         (WebCore::RenderBox::calcAbsoluteHorizontal):
   50060         (WebCore::RenderBox::calcAbsoluteHorizontalValues):
   50061         (WebCore::RenderBox::calcAbsoluteVertical):
   50062         (WebCore::RenderBox::calcAbsoluteVerticalValues):
   50063         (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
   50064         (WebCore::RenderBox::calcAbsoluteVerticalReplaced):
   50065         * rendering/RenderBox.h:
   50066         (WebCore::RenderBox::borderTop):
   50067         (WebCore::RenderBox::borderBottom):
   50068         (WebCore::RenderBox::borderLeft):
   50069         (WebCore::RenderBox::borderRight):
   50070         * rendering/RenderObject.cpp:
   50071         (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
   50072         * rendering/RenderObject.h:
   50073         * rendering/RenderTextControl.cpp:
   50074         (WebCore::RenderTextControl::textBlockWidth):
   50075         (WebCore::RenderTextControl::calcHeight):
   50076         (WebCore::RenderTextControl::calcPrefWidths):
   50077         * rendering/RenderTextControlSingleLine.cpp:
   50078         (WebCore::RenderTextControlSingleLine::preferredContentWidth):
   50079         * rendering/RenderTreeAsText.cpp:
   50080         (WebCore::operator<<):
   50081         * rendering/RenderView.cpp:
   50082         (WebCore::RenderView::repaintViewRectangle):
   50083 
   50084 2009-01-22  David Hyatt  <hyatt (a] apple.com>
   50085 
   50086         Devirtualize the marginTop/Right/Left/Bottom functions and move them to RenderBox (along with some of the
   50087         other margin functions that have to come along for the ride).
   50088 
   50089         Reviewed by Oliver Hunt
   50090 
   50091         * css/CSSComputedStyleDeclaration.cpp:
   50092         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   50093         * editing/TextIterator.cpp:
   50094         (WebCore::shouldEmitExtraNewlineForNode):
   50095         * rendering/InlineBox.cpp:
   50096         * rendering/InlineBox.h:
   50097         (WebCore::InlineBox::renderBox):
   50098         * rendering/InlineFlowBox.cpp:
   50099         (WebCore::InlineFlowBox::marginLeft):
   50100         (WebCore::InlineFlowBox::marginRight):
   50101         (WebCore::InlineFlowBox::placeBoxesHorizontally):
   50102         (WebCore::InlineFlowBox::computeLogicalBoxHeights):
   50103         (WebCore::InlineFlowBox::placeBoxesVertically):
   50104         (WebCore::InlineFlowBox::shrinkBoxesWithNoTextChildren):
   50105         * rendering/RenderBlock.cpp:
   50106         (WebCore::RenderBlock::isSelfCollapsingBlock):
   50107         (WebCore::RenderBlock::adjustPositionedBlock):
   50108         (WebCore::RenderBlock::handleCompactChild):
   50109         (WebCore::RenderBlock::estimateVerticalPosition):
   50110         (WebCore::getBorderPaddingMargin):
   50111         (WebCore::RenderBlock::calcInlinePrefWidths):
   50112         * rendering/RenderBlock.h:
   50113         * rendering/RenderBox.cpp:
   50114         (WebCore::RenderBox::calcHeight):
   50115         * rendering/RenderBox.h:
   50116         (WebCore::RenderBox::hasHorizontalBordersPaddingOrMargin):
   50117         (WebCore::RenderBox::hasHorizontalBordersOrPadding):
   50118         (WebCore::RenderBox::marginTop):
   50119         (WebCore::RenderBox::marginBottom):
   50120         (WebCore::RenderBox::marginLeft):
   50121         (WebCore::RenderBox::marginRight):
   50122         (WebCore::RenderBox::isSelfCollapsingBlock):
   50123         (WebCore::RenderBox::collapsedMarginTop):
   50124         (WebCore::RenderBox::collapsedMarginBottom):
   50125         (WebCore::RenderBox::isTopMarginQuirk):
   50126         (WebCore::RenderBox::isBottomMarginQuirk):
   50127         (WebCore::RenderBox::maxTopMargin):
   50128         (WebCore::RenderBox::maxBottomMargin):
   50129         * rendering/RenderObject.cpp:
   50130         (WebCore::RenderObject::getAbsoluteRepaintRectWithOutline):
   50131         * rendering/RenderObject.h:
   50132         * rendering/RenderSVGContainer.cpp:
   50133         (WebCore::RenderSVGContainer::lineHeight):
   50134         (WebCore::RenderSVGContainer::baselinePosition):
   50135         * rendering/RenderTextControl.cpp:
   50136         (WebCore::RenderTextControl::calcHeight):
   50137         * rendering/RenderTheme.cpp:
   50138         (WebCore::RenderTheme::baselinePosition):
   50139         * rendering/bidi.cpp:
   50140         (WebCore::getBorderPaddingMargin):
   50141         (WebCore::inlineWidth):
   50142         (WebCore::RenderBlock::computeHorizontalPositionsForLine):
   50143         (WebCore::inlineFlowRequiresLineBox):
   50144         (WebCore::requiresLineBox):
   50145         (WebCore::RenderBlock::findNextLineBreak):
   50146 
   50147 2009-01-22  Mark Rowe  <mrowe (a] apple.com>
   50148 
   50149         Rubber-stamped by Anders Carlsson.
   50150 
   50151         Disable GCC_WARN_ABOUT_MISSING_PROTOTYPES temporarily.
   50152 
   50153         Current versions of Xcode only respect it for C and Objective-C files,
   50154         and our code doesn't currently compile if it is applied to C++ and
   50155         Objective-C++ files.
   50156 
   50157         * Configurations/Base.xcconfig:
   50158 
   50159 2009-01-22  David Hyatt  <hyatt (a] apple.com>
   50160 
   50161         Move the m_widthChanged bit on RenderTableCell into RenderFlow's set of bits.  Let intrinsicPaddingTop and
   50162         intrinsicPaddingBottom just be normal non-bitfield values.
   50163 
   50164         Reviewed by Oliver Hunt
   50165 
   50166         * rendering/RenderFlow.h:
   50167         (WebCore::RenderFlow::RenderFlow):
   50168         * rendering/RenderTableCell.cpp:
   50169         (WebCore::RenderTableCell::RenderTableCell):
   50170         (WebCore::RenderTableCell::updateWidth):
   50171         (WebCore::RenderTableCell::layout):
   50172         * rendering/RenderTableCell.h:
   50173 
   50174 2009-01-22  David Hyatt  <hyatt (a] apple.com>
   50175 
   50176         Properly encapsulate m_frameRect.y() behind the RenderBox::y() method now that they are the same thing.
   50177         Make m_frameRect private.
   50178 
   50179         Reviewed by Oliver Hunt
   50180 
   50181         * rendering/RenderBlock.cpp:
   50182         (WebCore::RenderBlock::paint):
   50183         (WebCore::RenderBlock::clearFloats):
   50184         * rendering/RenderBox.cpp:
   50185         (WebCore::RenderBox::offsetTop):
   50186         (WebCore::RenderBox::nodeAtPoint):
   50187         (WebCore::RenderBox::paint):
   50188         (WebCore::RenderBox::paintCustomHighlight):
   50189         (WebCore::RenderBox::containingBlockWidth):
   50190         (WebCore::RenderBox::localToAbsolute):
   50191         (WebCore::RenderBox::offsetFromContainer):
   50192         (WebCore::RenderBox::computeAbsoluteRepaintRect):
   50193         (WebCore::RenderBox::repaintDuringLayoutIfMoved):
   50194         * rendering/RenderContainer.cpp:
   50195         (WebCore::RenderContainer::layout):
   50196         * rendering/RenderFlexibleBox.cpp:
   50197         (WebCore::RenderFlexibleBox::layoutBlock):
   50198         * rendering/RenderFrameSet.cpp:
   50199         (WebCore::RenderFrameSet::paint):
   50200         * rendering/RenderImage.cpp:
   50201         (WebCore::RenderImage::paintReplaced):
   50202         (WebCore::RenderImage::nodeAtPoint):
   50203         * rendering/RenderListMarker.cpp:
   50204         (WebCore::RenderListMarker::paint):
   50205         (WebCore::RenderListMarker::getRelativeMarkerRect):
   50206         * rendering/RenderReplaced.cpp:
   50207         (WebCore::RenderReplaced::paint):
   50208         (WebCore::RenderReplaced::shouldPaint):
   50209         * rendering/RenderReplica.cpp:
   50210         (WebCore::RenderReplica::paint):
   50211         * rendering/RenderSVGRoot.cpp:
   50212         (WebCore::RenderSVGRoot::applyContentTransforms):
   50213         (WebCore::RenderSVGRoot::paint):
   50214         (WebCore::RenderSVGRoot::absoluteTransform):
   50215         (WebCore::RenderSVGRoot::nodeAtPoint):
   50216         * rendering/RenderTable.cpp:
   50217         (WebCore::RenderTable::calcWidth):
   50218         (WebCore::RenderTable::layout):
   50219         * rendering/RenderTableCell.cpp:
   50220         (WebCore::RenderTableCell::paint):
   50221         (WebCore::RenderTableCell::paintBackgroundsBehindCell):
   50222         * rendering/RenderTableSection.cpp:
   50223         (WebCore::RenderTableSection::setCellWidths):
   50224         (WebCore::RenderTableSection::calcRowHeight):
   50225         (WebCore::RenderTableSection::layoutRows):
   50226         (WebCore::RenderTableSection::paint):
   50227         (WebCore::RenderTableSection::nodeAtPoint):
   50228         * rendering/RenderWidget.cpp:
   50229         (WebCore::RenderWidget::paint):
   50230 
   50231 2009-01-22  David Hyatt  <hyatt (a] apple.com>
   50232 
   50233         Fix for https://bugs.webkit.org/show_bug.cgi?id=23487.
   50234 
   50235         This patch completely reworks vertical alignment of table cells.  The current system uses methods called borderTopExtra() and borderBottomExtra() to
   50236         add extra space above and below the content of a cell.  This system was not confined to the table code and spilled out into all the other RenderObjects.
   50237         The y-position of the table cell box was set to the outer edge of the cell, but the y() method of RenderBox lied and added in borderTopExtra().  height()
   50238         also excluded the extra space, so did not accurately reflect the true size of the cell.
   50239 
   50240         With the new system, the table cell box is completely accurate.  The extra space becomes part of the padding of the cell.  Padding has been reworked so that
   50241         additional intrinsic padding can be added on to the specified padding from style.  Only the table code has to deal with the extra cell padding.
   50242 
   50243         localToAbsoluteForContent has now been removed, since there no longer has to be a special hacked content box.
   50244 
   50245         A number of table layout tests progress with this change, since the new layout system actually fixes existing bugs in baseline alignment of cells.
   50246 
   50247         Reviewed by Oliver Hunt
   50248 
   50249         * css/CSSComputedStyleDeclaration.cpp:
   50250         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   50251         Make CSSComputedStyleDeclaration ask for padding values that exclude the built-in intrinsic padding.  This ensures that getComputedStyle continues
   50252         to give the right answer.
   50253 
   50254         * dom/ContainerNode.cpp:
   50255         (WebCore::ContainerNode::getLowerRightCorner):
   50256         * editing/visible_units.cpp:
   50257         (WebCore::previousLinePosition):
   50258         (WebCore::nextLinePosition):
   50259         * rendering/LayoutState.cpp:
   50260         (WebCore::LayoutState::LayoutState):
   50261         Remove borderTopExtra()/borderBottomExtra() hacks and localToAbsoluteForContent calls.
   50262 
   50263         * rendering/RenderBlock.cpp:
   50264         (WebCore::RenderBlock::overflowRect):
   50265         Remove borderTopExtra()/borderBottomExtra() hacks and localToAbsoluteForContent calls.
   50266 
   50267         (WebCore::RenderBlock::layoutBlock):
   50268         (WebCore::RenderBlock::expandsToEncloseOverhangingFloats):
   50269         The expandsToEncloseOverhangingFloats logic has been reworked.  Table cells and fieldsets did not properly handle floats that spilled into the bottom padding.  The
   50270         resulting box needed to not only expand to encompass the float, but also needed to place the full bottom padding after the float.  The switch to make the extra table cell
   50271         space into padding exposed this issue.  No extra layout test is required, since an existing table layout test exposes this issue and progresses to match Firefox with
   50272         this change.
   50273 
   50274         (WebCore::RenderBlock::selectionGapRects):
   50275         (WebCore::RenderBlock::paintSelection):
   50276         (WebCore::RenderBlock::fillSelectionGaps):
   50277         (WebCore::RenderBlock::nodeAtPoint):
   50278         (WebCore::RenderBlock::positionForCoordinates):
   50279         (WebCore::RenderBlock::offsetForContents):
   50280         Remove borderTopExtra()/borderBottomExtra() hacks and localToAbsoluteForContent calls.
   50281 
   50282         * rendering/RenderBlock.h:
   50283         Add the new simplified method for expanding to encompass overhanging floats.  The method has been devirtualized and made to include all of the cases (and not just a subset).
   50284 
   50285         * rendering/RenderBox.cpp:
   50286         (WebCore::RenderBox::absoluteRects):
   50287         (WebCore::RenderBox::absoluteQuads):
   50288         (WebCore::RenderBox::absoluteContentBox):
   50289         (WebCore::RenderBox::paintBoxDecorations):
   50290         (WebCore::RenderBox::paintMask):
   50291         (WebCore::RenderBox::getOverflowClipRect):
   50292         (WebCore::RenderBox::localToAbsolute):
   50293         (WebCore::RenderBox::absoluteToLocal):
   50294         (WebCore::RenderBox::localToAbsoluteQuad):
   50295         Remove borderTopExtra()/borderBottomExtra() hacks and localToAbsoluteForContent calls.
   50296 
   50297         * rendering/RenderBox.h:
   50298         (WebCore::RenderBox::y):
   50299         (WebCore::RenderBox::location):
   50300         (WebCore::RenderBox::borderBoxRect):
   50301         (WebCore::RenderBox::offsetHeight):
   50302         Remove borderTopExtra()/borderBottomExtra() hacks and localToAbsoluteForContent calls.
   50303 
   50304         * rendering/RenderContainer.cpp:
   50305         (WebCore::RenderContainer::addLineBoxRects):
   50306         * rendering/RenderFieldset.cpp:
   50307         (WebCore::RenderFieldset::paintBoxDecorations):
   50308         (WebCore::RenderFieldset::paintMask):
   50309         * rendering/RenderFieldset.h:
   50310         (WebCore::RenderFieldset::avoidsFloats):
   50311         * rendering/RenderFlow.cpp:
   50312         (WebCore::RenderFlow::localCaretRect):
   50313         * rendering/RenderLayer.cpp:
   50314         (WebCore::RenderLayer::updateLayerPosition):
   50315         (WebCore::RenderLayer::paintLayer):
   50316         (WebCore::RenderLayer::hitTestLayer):
   50317         (WebCore::RenderLayer::boundingBox):
   50318         * rendering/RenderListBox.cpp:
   50319         (WebCore::RenderListBox::isPointInOverflowControl):
   50320         * rendering/RenderObject.cpp:
   50321         (WebCore::RenderObject::localToAbsolute):
   50322         (WebCore::RenderObject::absoluteToLocal):
   50323         (WebCore::RenderObject::localToAbsoluteQuad):
   50324         (WebCore::RenderObject::offsetFromContainer):
   50325         (WebCore::RenderObject::paddingTop):
   50326         (WebCore::RenderObject::paddingBottom):
   50327         (WebCore::RenderObject::paddingLeft):
   50328         (WebCore::RenderObject::paddingRight):
   50329         * rendering/RenderObject.h:
   50330         (WebCore::RenderObject::hasOverhangingFloats):
   50331         * rendering/RenderReplaced.cpp:
   50332         (WebCore::RenderReplaced::selectionRect):
   50333         (WebCore::RenderReplaced::localSelectionRect):
   50334         Remove borderTopExtra()/borderBottomExtra() hacks and localToAbsoluteForContent calls.  Also modifed paddingLeft/Top/Right/Bottom to take an argument indicating
   50335         whether or not the intrinsic padding of an object should be included (by default it is).  getComputedStyle needs to exclude it, which is why this argument is
   50336         necessary.
   50337 
   50338         * rendering/RenderTableCell.cpp:
   50339         (WebCore::RenderTableCell::RenderTableCell):
   50340         (WebCore::RenderTableCell::paddingTop):
   50341         (WebCore::RenderTableCell::paddingBottom):
   50342         The new paddingTop() and paddingBottom() methods on table cells include the extra intrinsic padding.
   50343 
   50344         (WebCore::RenderTableCell::setOverrideSize):
   50345         When a table's override size gets altered, the intrinsic padding needs to be cleared.
   50346 
   50347         (WebCore::RenderTableCell::absoluteClippedOverflowRect):
   50348         (WebCore::RenderTableCell::computeAbsoluteRepaintRect):
   50349         (WebCore::RenderTableCell::baselinePosition):
   50350         (WebCore::RenderTableCell::paint):
   50351         (WebCore::RenderTableCell::paintBackgroundsBehindCell):
   50352         (WebCore::RenderTableCell::paintBoxDecorations):
   50353         (WebCore::RenderTableCell::paintMask):
   50354         Remove borderTopExtra()/borderBottomExtra() hacks and localToAbsoluteForContent calls.
   50355 
   50356         * rendering/RenderTableCell.h:
   50357         (WebCore::RenderTableCell::setIntrinsicPaddingTop):
   50358         (WebCore::RenderTableCell::setIntrinsicPaddingBottom):
   50359         (WebCore::RenderTableCell::setIntrinsicPadding):
   50360         (WebCore::RenderTableCell::clearIntrinsicPadding):
   50361         (WebCore::RenderTableCell::intrinsicPaddingTop):
   50362         (WebCore::RenderTableCell::intrinsicPaddingBottom):
   50363         Add new helper methods for getting/setting a cell's intrinsic padding.
   50364 
   50365         * rendering/RenderTableSection.cpp:
   50366         (WebCore::RenderTableSection::calcRowHeight):
   50367         calcRowHeight has been modified to exclude the intrinsic padding when calculating the base height of rows prior to flexing.  Because a cell now includes that
   50368         extra space, it has to be subtracted out in this method.
   50369 
   50370         (WebCore::RenderTableSection::layoutRows):
   50371         Modify the code that sets up the intrinsic padding so that it does a relayout if the intrinsic padding changes.   There was also an error where the baseline
   50372         position mismatched leading to negative intrinsic padding being added in (this error exists in ToT).  The code now properly ignores cells that don't establish
   50373         a baseline.  A number of tests progress with this change.
   50374 
   50375         * rendering/RenderText.cpp:
   50376         (WebCore::RenderText::addLineBoxRects):
   50377         Remove borderTopExtra()/borderBottomExtra() hacks and localToAbsoluteForContent calls.
   50378 
   50379         * rendering/RenderTreeAsText.cpp:
   50380         (WebCore::operator<<):
   50381         (WebCore::writeTextRun):
   50382         Modify the render tree dumping code to continue to produce the same results as before.  This is really a hack, since we're now capable of indicating the correct
   50383         position for the descendants of cells with intrinsic padding (and also indicating what the correct cell box is).  A future patch can remove these hacks so that the
   50384         layout test results can all be regenerated.
   50385 
   50386 2009-01-22  Eric Seidel  <eric (a] webkit.org>
   50387 
   50388         Reviewed by Darin Adler.
   50389 
   50390         Remove <strong>/<em> tags when toggling bold/italic since IE inserts them instead of <b>/<i>
   50391         https://bugs.webkit.org/show_bug.cgi?id=23486
   50392 
   50393         Test: editing/execCommand/toggle-styles.html
   50394 
   50395         * editing/ApplyStyleCommand.cpp:
   50396         (WebCore::ApplyStyleCommand::isHTMLStyleNode):
   50397 
   50398 2009-01-22  Eric Seidel  <eric (a] webkit.org>
   50399 
   50400         Reviewed by Justin Garcia.
   50401 
   50402         Remove <span> turds left by editing commands
   50403         https://bugs.webkit.org/show_bug.cgi?id=23466
   50404 
   50405         Tests:
   50406         * editing/execCommand/empty-span-removal.html
   50407         * editing/execCommand/toggle-styles.html
   50408 
   50409         * editing/ApplyStyleCommand.cpp:
   50410         (WebCore::styleSpanClassString):
   50411         (WebCore::isStyleSpan):
   50412         (WebCore::isUnstyledStyleSpan):
   50413         (WebCore::isSpanWithoutAttributesOrUnstyleStyleSpan):
   50414         (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
   50415         (WebCore::ApplyStyleCommand::removeEmbeddingUpToEnclosingBlock):
   50416         (WebCore::ApplyStyleCommand::removeHTMLBidiEmbeddingStyle):
   50417         (WebCore::ApplyStyleCommand::removeCSSStyle):
   50418 
   50419 2009-01-22  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   50420 
   50421         Reviewed by Eric Seidel.
   50422 
   50423         Rename some of the casting functions in dom/*Element.cpp:
   50424         formControlElementForElement -> toFormControlElement
   50425         inputElementForElement -> toInputElement
   50426         optionElementForElement -> toOptionElement
   50427         optionGroupElementForElement -> toOptionGroupElement
   50428 
   50429         Suggested by Alexey, while refactoring the Element*->ScriptElement* code.
   50430         The Element*->ScriptElement* helper function is already named 'toScriptElement'.
   50431 
   50432         * dom/FormControlElement.cpp:
   50433         (WebCore::toFormControlElement):
   50434         * dom/FormControlElement.h:
   50435         * dom/InputElement.cpp:
   50436         (WebCore::InputElement::setValueFromRenderer):
   50437         (WebCore::toInputElement):
   50438         * dom/InputElement.h:
   50439         * dom/OptionElement.cpp:
   50440         (WebCore::OptionElement::collectOptionTextRespectingGroupLabel):
   50441         (WebCore::toOptionElement):
   50442         * dom/OptionElement.h:
   50443         * dom/OptionGroupElement.cpp:
   50444         (WebCore::toOptionGroupElement):
   50445         * dom/OptionGroupElement.h:
   50446         * rendering/RenderListBox.cpp:
   50447         (WebCore::RenderListBox::updateFromElement):
   50448         (WebCore::RenderListBox::paintItemForeground):
   50449         (WebCore::RenderListBox::paintItemBackground):
   50450         * rendering/RenderMenuList.cpp:
   50451         (WebCore::RenderMenuList::updateOptionsWidth):
   50452         (WebCore::RenderMenuList::setTextFromOption):
   50453         (WebCore::RenderMenuList::itemText):
   50454         (WebCore::RenderMenuList::itemIsSelected):
   50455         * rendering/RenderTextControl.cpp:
   50456         (WebCore::RenderTextControl::formControlElement):
   50457         * rendering/RenderTextControlSingleLine.cpp:
   50458         (WebCore::RenderTextControlSingleLine::inputElement):
   50459 
   50460 2009-01-22  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   50461 
   50462         Rubber-stamped by George Staikos.
   50463 
   50464         Forgot to include in my last commit: Activate code depending on WMLOptionElement/WMLOptGroupElement.
   50465 
   50466         * dom/OptionElement.cpp:
   50467         (WebCore::optionElementForElement):
   50468         * dom/OptionGroupElement.cpp:
   50469         (WebCore::optionGroupElementForElement):
   50470 
   50471 2009-01-22  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   50472 
   50473         Reviewed by George Staikos.
   50474 
   50475         Fixes: https://bugs.webkit.org/show_bug.cgi?id=23454
   50476 
   50477         Add WML <option>/<optgroup> element support.
   50478         Currently the implementation is stubbed, all relevant parts can be enabled
   50479         once WMLSelectElement/SelectElement has been created.
   50480 
   50481         * GNUmakefile.am:
   50482         * WebCore.pro:
   50483         * WebCore.vcproj/WebCore.vcproj:
   50484         * WebCore.xcodeproj/project.pbxproj:
   50485         * wml/WMLOptGroupElement.cpp: Added.
   50486         (WebCore::WMLOptGroupElement::WMLOptGroupElement):
   50487         (WebCore::WMLOptGroupElement::~WMLOptGroupElement):
   50488         (WebCore::WMLOptGroupElement::insertBefore):
   50489         (WebCore::WMLOptGroupElement::replaceChild):
   50490         (WebCore::WMLOptGroupElement::removeChild):
   50491         (WebCore::WMLOptGroupElement::appendChild):
   50492         (WebCore::WMLOptGroupElement::removeChildren):
   50493         (WebCore::ownerSelectElement):
   50494         (WebCore::WMLOptGroupElement::accessKeyAction):
   50495         (WebCore::WMLOptGroupElement::childrenChanged):
   50496         (WebCore::WMLOptGroupElement::parseMappedAttribute):
   50497         (WebCore::WMLOptGroupElement::attach):
   50498         (WebCore::WMLOptGroupElement::detach):
   50499         (WebCore::WMLOptGroupElement::setRenderStyle):
   50500         (WebCore::WMLOptGroupElement::nonRendererRenderStyle):
   50501         (WebCore::WMLOptGroupElement::groupLabelText):
   50502         (WebCore::WMLOptGroupElement::recalcSelectOptions):
   50503         * wml/WMLOptGroupElement.h: Added.
   50504         (WebCore::WMLOptGroupElement::title):
   50505         (WebCore::WMLOptGroupElement::valueMatchesRenderer):
   50506         (WebCore::WMLOptGroupElement::setValueMatchesRenderer):
   50507         (WebCore::WMLOptGroupElement::rendererIsNeeded):
   50508         * wml/WMLOptionElement.cpp: Added.
   50509         (WebCore::WMLOptionElement::WMLOptionElement):
   50510         (WebCore::WMLOptionElement::~WMLOptionElement):
   50511         (WebCore::ownerSelectElement):
   50512         (WebCore::WMLOptionElement::accessKeyAction):
   50513         (WebCore::WMLOptionElement::childrenChanged):
   50514         (WebCore::WMLOptionElement::parseMappedAttribute):
   50515         (WebCore::WMLOptionElement::attach):
   50516         (WebCore::WMLOptionElement::detach):
   50517         (WebCore::WMLOptionElement::setRenderStyle):
   50518         (WebCore::WMLOptionElement::insertedIntoDocument):
   50519         (WebCore::WMLOptionElement::selected):
   50520         (WebCore::WMLOptionElement::setSelectedState):
   50521         (WebCore::WMLOptionElement::value):
   50522         (WebCore::WMLOptionElement::textIndentedToRespectGroupLabel):
   50523         (WebCore::WMLOptionElement::nonRendererRenderStyle):
   50524         (WebCore::WMLOptionElement::handleIntrinsicEventIfNeeded):
   50525         * wml/WMLOptionElement.h: Added.
   50526         (WebCore::WMLOptionElement::valueMatchesRenderer):
   50527         (WebCore::WMLOptionElement::setValueMatchesRenderer):
   50528         (WebCore::WMLOptionElement::rendererIsNeeded):
   50529         * wml/WMLTagNames.in:
   50530 
   50531 2009-01-22  Eric Roman  <eroman (a] chromium.org>
   50532 
   50533         Reviewed by Eric Seidel.
   50534 
   50535         https://bugs.webkit.org/show_bug.cgi?id=20806
   50536         Send referrer for history navigations.
   50537 
   50538         Test: http/tests/navigation/back-send-referrer.html
   50539 
   50540         Consolidates HistoryItem::rssFeedReferrer and HistoryItem::formReferrer into a single HistoryItem::referrer property.
   50541 
   50542         * history/HistoryItem.cpp:
   50543         (WebCore::HistoryItem::HistoryItem):
   50544         (WebCore::HistoryItem::referrer):
   50545         (WebCore::HistoryItem::setReferrer):
   50546         (WebCore::HistoryItem::formReferrer):
   50547         (WebCore::HistoryItem::rssFeedReferrer):
   50548         (WebCore::HistoryItem::setRSSFeedReferrer):
   50549         (WebCore::HistoryItem::setFormInfoFromRequest):
   50550         * history/HistoryItem.h:
   50551         * loader/FrameLoader.cpp:
   50552         (WebCore::FrameLoader::loadItem):
   50553 
   50554 2009-01-22  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   50555 
   50556         Reviewed by Eric Seidel.
   50557 
   50558         Fixes: https://bugs.webkit.org/show_bug.cgi?id=23465
   50559 
   50560         Further enhancments to share code between HTMLOptionElement and the upcoming WMLOptionElement.
   50561 
   50562         Rename optionText() to textIndentedToRespectGroupLabel() in (HTML)OptionElement, as it fits better.
   50563         optionText() returns the options text prefixed with some spaces, in case it got an optgroup parent.
   50564 
   50565         Add two more pure-virtual functions to OptionElement: setSelectedState(bool) & value().
   50566         These aren't used outside of html/ at the moment (unlike the other pure-virtual functions
   50567         used by RenderMenuList/RenderListBox) - but they will be used by SelectElement, once it exists.
   50568 
   50569         * dom/OptionElement.cpp:
   50570         (WebCore::OptionElement::setSelectedState):
   50571         (WebCore::OptionElement::collectOptionText):
   50572         (WebCore::OptionElement::collectOptionTextRespectingGroupLabel):
   50573         (WebCore::OptionElement::collectOptionValue):
   50574         (WebCore::OptionElementData::OptionElementData):
   50575         (WebCore::OptionElementData::~OptionElementData):
   50576         * dom/OptionElement.h:
   50577         (WebCore::OptionElementData::element):
   50578         (WebCore::OptionElementData::value):
   50579         (WebCore::OptionElementData::setValue):
   50580         (WebCore::OptionElementData::label):
   50581         (WebCore::OptionElementData::setLabel):
   50582         (WebCore::OptionElementData::selected):
   50583         (WebCore::OptionElementData::setSelected):
   50584         * html/HTMLOptionElement.cpp:
   50585         (WebCore::HTMLOptionElement::HTMLOptionElement):
   50586         (WebCore::HTMLOptionElement::text):
   50587         (WebCore::HTMLOptionElement::parseMappedAttribute):
   50588         (WebCore::HTMLOptionElement::value):
   50589         (WebCore::HTMLOptionElement::selected):
   50590         (WebCore::HTMLOptionElement::setSelected):
   50591         (WebCore::HTMLOptionElement::setSelectedState):
   50592         (WebCore::HTMLOptionElement::label):
   50593         (WebCore::HTMLOptionElement::textIndentedToRespectGroupLabel):
   50594         * html/HTMLOptionElement.h:
   50595         * html/HTMLSelectElement.cpp:
   50596         (WebCore::HTMLSelectElement::typeAheadFind):
   50597         * rendering/RenderListBox.cpp:
   50598         (WebCore::RenderListBox::updateFromElement):
   50599         (WebCore::RenderListBox::paintItemForeground):
   50600         * rendering/RenderMenuList.cpp:
   50601         (WebCore::RenderMenuList::updateOptionsWidth):
   50602         (WebCore::RenderMenuList::setTextFromOption):
   50603         (WebCore::RenderMenuList::itemText):
   50604 
   50605 2009-01-22  Chris Fleizach  <cfleizach (a] apple.com>
   50606 
   50607         Reviewed by Justin Garcia.
   50608 
   50609         Bug 23464: Infinite recursion at SelectionController::setSelection
   50610         https://bugs.webkit.org/show_bug.cgi?id=23464
   50611 
   50612         Check for conditions leading to infinite recursion.
   50613 
   50614         * editing/SelectionController.cpp:
   50615         (WebCore::SelectionController::setSelection):
   50616 
   50617 2009-01-22  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   50618 
   50619         Not reviewed. Fix WML build problem in RenderBox.cpp, WMLNames is undefined.
   50620 
   50621         * rendering/RenderBox.cpp:
   50622 
   50623 2009-01-22  Adam Treat  <adam.treat (a] torchmobile.com>
   50624 
   50625         Fix the Qt build after RenderBox changes.
   50626 
   50627         * platform/qt/RenderThemeQt.cpp:
   50628         (WebCore::RenderThemeQt::baselinePosition):
   50629 
   50630 2009-01-22  David Hyatt  <hyatt (a] apple.com>
   50631 
   50632         Fix regressions in list box selection on Mac.  The wrong color was being used for the list box
   50633         background, and list box colors actually weren't even being properly fetched because of a bug in
   50634         the RenderTheme base class.  Existing pixel tests cover the bug fix.
   50635 
   50636         Reviewed by Jon Honeycutt
   50637 
   50638         * rendering/RenderTheme.cpp:
   50639         (WebCore::RenderTheme::activeListBoxSelectionBackgroundColor):
   50640         (WebCore::RenderTheme::inactiveListBoxSelectionBackgroundColor):
   50641         (WebCore::RenderTheme::activeListBoxSelectionForegroundColor):
   50642         (WebCore::RenderTheme::inactiveListBoxSelectionForegroundColor):
   50643         * rendering/RenderThemeMac.mm:
   50644         (WebCore::RenderThemeMac::platformInactiveListBoxSelectionBackgroundColor):
   50645 
   50646 2009-01-22  David Levin  <levin (a] chromium.org>
   50647 
   50648         Reviewed by Alexey Proskuryakov.
   50649 
   50650         Bug 22720: Make XMLHttpRequest work in Workers
   50651         <https://bugs.webkit.org/show_bug.cgi?id=22720>
   50652 
   50653         Add copy/adopt for HTTPHeaderMap to allow the data to be passed across threads.
   50654 
   50655         No observable change in behavior, so no test.
   50656 
   50657         * GNUmakefile.am:
   50658         * WebCore.pro:
   50659         * WebCore.scons:
   50660         * WebCore.vcproj/WebCore.vcproj:
   50661         * WebCore.xcodeproj/project.pbxproj:
   50662         * WebCoreSources.bkl:
   50663         * platform/network/HTTPHeaderMap.cpp: Added.
   50664         (WebCore::HTTPHeaderMap::copyData):
   50665         (WebCore::HTTPHeaderMap::adopt):
   50666         * platform/network/HTTPHeaderMap.h:
   50667 
   50668 2009-01-21  David Hyatt  <hyatt (a] apple.com>
   50669 
   50670         Back out a portion of my patch that I did not mean to land.  Revert paintOutline back to the way it
   50671         was before my landing.  Fixes failing SVG focus ring tests.
   50672 
   50673         * rendering/RenderObject.cpp:
   50674         (WebCore::RenderObject::paintOutline):
   50675         * rendering/RenderObject.h:
   50676         * rendering/RenderPath.cpp:
   50677         (WebCore::RenderPath::paint):
   50678         * rendering/RenderSVGContainer.cpp:
   50679         (WebCore::RenderSVGContainer::paint):
   50680 
   50681 2009-01-21  David Hyatt  <hyatt (a] apple.com>
   50682 
   50683         Fix Node's renderBox() method on Windows.
   50684 
   50685         * dom/Node.cpp:
   50686         (WebCore::Node::renderBox):
   50687 
   50688 2009-01-21  David Hyatt  <hyatt (a] apple.com>
   50689 
   50690         Fix RenderThemeSafari bustage on Win32.
   50691 
   50692         * rendering/RenderThemeSafari.cpp:
   50693         (WebCore::RenderThemeSafari::baselinePosition):
   50694 
   50695 2009-01-21  David Hyatt  <hyatt (a] apple.com>
   50696 
   50697         Fix bustage in RenderThemeWin. It's actually terrible that RenderThemeWin is using absoluteContentBox,
   50698         but that's a problem for another day.
   50699 
   50700         * rendering/RenderThemeWin.cpp:
   50701         (WebCore::RenderThemeWin::paintSearchFieldCancelButton):
   50702         (WebCore::RenderThemeWin::paintSearchFieldResultsDecoration):
   50703         (WebCore::RenderThemeWin::paintSearchFieldResultsButton):
   50704 
   50705 2009-01-21  Oliver Hunt  <oliver (a] apple.com>
   50706 
   50707         Reviewed by Dave Hyatt.
   50708 
   50709         Bug 23470: Crash when page load occurs while processing scroll event with MallocScribble enabled
   50710         <https://bugs.webkit.org/show_bug.cgi?id=23470>
   50711 
   50712         Add a RefPtr protector to handleWheelEvent to guard against destruction
   50713         while processing the scroll event.  Alas the absurd set of circumstances
   50714         required to trigger this do not appear to be reproducible in DRT.
   50715 
   50716         * page/EventHandler.cpp:
   50717         (WebCore::EventHandler::handleWheelEvent):
   50718 
   50719 2009-01-21  David Hyatt  <hyatt (a] apple.com>
   50720 
   50721         Fix for https://bugs.webkit.org/show_bug.cgi?id=23453
   50722 
   50723         Devirtualize the width/height/x/y methods of the render tree.  The methods are now non-virtual on RenderBox.
   50724         Many functions that were previously in RenderObject.cpp are now in RenderBox.cpp.
   50725 
   50726         Reviewed by Eric Seidel and Darin Adler
   50727 
   50728         * WebCore.base.exp:
   50729         * css/CSSComputedStyleDeclaration.cpp:
   50730         (WebCore::sizingBox):
   50731         * dom/ContainerNode.cpp:
   50732         (WebCore::ContainerNode::getUpperLeftCorner):
   50733         (WebCore::ContainerNode::getLowerRightCorner):
   50734         * dom/Element.cpp:
   50735         (WebCore::Element::offsetLeft):
   50736         (WebCore::Element::offsetTop):
   50737         (WebCore::Element::offsetWidth):
   50738         (WebCore::Element::offsetHeight):
   50739         (WebCore::Element::offsetParent):
   50740         (WebCore::Element::clientLeft):
   50741         (WebCore::Element::clientTop):
   50742         (WebCore::Element::clientWidth):
   50743         (WebCore::Element::clientHeight):
   50744         (WebCore::Element::scrollLeft):
   50745         (WebCore::Element::scrollTop):
   50746         (WebCore::Element::setScrollLeft):
   50747         (WebCore::Element::setScrollTop):
   50748         (WebCore::Element::scrollWidth):
   50749         (WebCore::Element::scrollHeight):
   50750         * dom/Node.cpp:
   50751         (WebCore::Node::renderBox):
   50752         (WebCore::Node::getRect):
   50753         * dom/Node.h:
   50754         * dom/Position.cpp:
   50755         (WebCore::endsOfNodeAreVisuallyDistinctPositions):
   50756         (WebCore::Position::hasRenderedNonAnonymousDescendantsWithHeight):
   50757         (WebCore::Position::isCandidate):
   50758         * dom/PositionIterator.cpp:
   50759         (WebCore::PositionIterator::isCandidate):
   50760         * editing/CompositeEditCommand.cpp:
   50761         (WebCore::CompositeEditCommand::addBlockPlaceholderIfNeeded):
   50762         * editing/DeleteButtonController.cpp:
   50763         (WebCore::isDeletableElement):
   50764         * editing/DeleteSelectionCommand.cpp:
   50765         (WebCore::DeleteSelectionCommand::removeNode):
   50766         * editing/Editor.cpp:
   50767         (WebCore::Editor::insideVisibleArea):
   50768         * editing/EditorCommand.cpp:
   50769         (WebCore::verticalScrollDistance):
   50770         * html/HTMLAnchorElement.cpp:
   50771         (WebCore::HTMLAnchorElement::isKeyboardFocusable):
   50772         * html/HTMLCanvasElement.cpp:
   50773         (WebCore::HTMLCanvasElement::willDraw):
   50774         * html/HTMLFormControlElement.cpp:
   50775         (WebCore::HTMLFormControlElement::isFocusable):
   50776         * html/HTMLFrameElementBase.cpp:
   50777         (WebCore::HTMLFrameElementBase::width):
   50778         (WebCore::HTMLFrameElementBase::height):
   50779         * html/HTMLImageElement.cpp:
   50780         (WebCore::HTMLImageElement::width):
   50781         (WebCore::HTMLImageElement::height):
   50782         * inspector/InspectorController.cpp:
   50783         (WebCore::InspectorController::drawNodeHighlight):
   50784         * page/AccessibilityRenderObject.cpp:
   50785         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
   50786         * page/FrameView.cpp:
   50787         (WebCore::FrameView::createScrollbar):
   50788         (WebCore::FrameView::updateDashboardRegions):
   50789         * page/animation/AnimationBase.cpp:
   50790         (WebCore::blendFunc):
   50791         * rendering/HitTestResult.cpp:
   50792         (WebCore::HitTestResult::imageRect):
   50793         * rendering/InlineBox.cpp:
   50794         (WebCore::InlineBox::renderBox):
   50795         (WebCore::InlineBox::adjustPosition):
   50796         * rendering/InlineBox.h:
   50797         * rendering/InlineFlowBox.cpp:
   50798         (WebCore::InlineFlowBox::placeBoxesHorizontally):
   50799         (WebCore::InlineFlowBox::verticallyAlignBoxes):
   50800         (WebCore::InlineFlowBox::placeBoxesVertically):
   50801         * rendering/InlineFlowBox.h:
   50802         * rendering/RenderApplet.cpp:
   50803         (WebCore::RenderApplet::createWidgetIfNecessary):
   50804         * rendering/RenderBlock.cpp:
   50805         (WebCore::RenderBlock::overflowHeight):
   50806         (WebCore::RenderBlock::overflowWidth):
   50807         (WebCore::RenderBlock::overflowRect):
   50808         (WebCore::RenderBlock::isSelfCollapsingBlock):
   50809         (WebCore::RenderBlock::layout):
   50810         (WebCore::RenderBlock::layoutBlock):
   50811         (WebCore::RenderBlock::adjustPositionedBlock):
   50812         (WebCore::RenderBlock::adjustFloatingBlock):
   50813         (WebCore::RenderBlock::handleSpecialChild):
   50814         (WebCore::RenderBlock::handlePositionedChild):
   50815         (WebCore::RenderBlock::handleFloatingChild):
   50816         (WebCore::RenderBlock::handleCompactChild):
   50817         (WebCore::RenderBlock::insertCompactIfNeeded):
   50818         (WebCore::RenderBlock::handleRunInChild):
   50819         (WebCore::RenderBlock::collapseMargins):
   50820         (WebCore::RenderBlock::clearFloatsIfNeeded):
   50821         (WebCore::RenderBlock::estimateVerticalPosition):
   50822         (WebCore::RenderBlock::determineHorizontalPosition):
   50823         (WebCore::RenderBlock::handleBottomOfBlock):
   50824         (WebCore::RenderBlock::layoutBlockChildren):
   50825         (WebCore::RenderBlock::layoutOnlyPositionedObjects):
   50826         (WebCore::RenderBlock::layoutPositionedObjects):
   50827         (WebCore::RenderBlock::markPositionedObjectsForLayout):
   50828         (WebCore::RenderBlock::repaintOverhangingFloats):
   50829         (WebCore::RenderBlock::paint):
   50830         (WebCore::RenderBlock::paintChildren):
   50831         (WebCore::RenderBlock::paintObject):
   50832         (WebCore::RenderBlock::paintFloats):
   50833         (WebCore::RenderBlock::paintContinuationOutlines):
   50834         (WebCore::clipOutPositionedObjects):
   50835         (WebCore::RenderBlock::fillSelectionGaps):
   50836         (WebCore::RenderBlock::fillBlockSelectionGaps):
   50837         (WebCore::RenderBlock::leftSelectionOffset):
   50838         (WebCore::RenderBlock::rightSelectionOffset):
   50839         (WebCore::RenderBlock::insertPositionedObject):
   50840         (WebCore::RenderBlock::removePositionedObject):
   50841         (WebCore::RenderBlock::removePositionedObjects):
   50842         (WebCore::RenderBlock::insertFloatingObject):
   50843         (WebCore::RenderBlock::removeFloatingObject):
   50844         (WebCore::RenderBlock::positionNewFloats):
   50845         (WebCore::RenderBlock::newLine):
   50846         (WebCore::RenderBlock::lowestPosition):
   50847         (WebCore::RenderBlock::rightmostPosition):
   50848         (WebCore::RenderBlock::leftmostPosition):
   50849         (WebCore::RenderBlock::clearFloats):
   50850         (WebCore::RenderBlock::addOverhangingFloats):
   50851         (WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout):
   50852         (WebCore::RenderBlock::getClearDelta):
   50853         (WebCore::RenderBlock::nodeAtPoint):
   50854         (WebCore::RenderBlock::positionForCoordinates):
   50855         (WebCore::RenderBlock::layoutColumns):
   50856         (WebCore::RenderBlock::getBaselineOfFirstLineBox):
   50857         (WebCore::RenderBlock::getBaselineOfLastLineBox):
   50858         (WebCore::getHeightForLineCount):
   50859         (WebCore::RenderBlock::adjustForBorderFit):
   50860         * rendering/RenderBlock.h:
   50861         (WebCore::RenderBlock::FloatWithRect::FloatWithRect):
   50862         (WebCore::RenderBlock::hasOverhangingFloats):
   50863         (WebCore::RenderBlock::CompactInfo::compact):
   50864         (WebCore::RenderBlock::CompactInfo::set):
   50865         * rendering/RenderBox.cpp:
   50866         (WebCore::RenderBox::RenderBox):
   50867         (WebCore::RenderBox::offsetLeft):
   50868         (WebCore::RenderBox::offsetTop):
   50869         (WebCore::RenderBox::offsetParent):
   50870         (WebCore::RenderBox::clientWidth):
   50871         (WebCore::RenderBox::clientHeight):
   50872         (WebCore::RenderBox::scrollWidth):
   50873         (WebCore::RenderBox::scrollHeight):
   50874         (WebCore::RenderBox::scrollLeft):
   50875         (WebCore::RenderBox::scrollTop):
   50876         (WebCore::RenderBox::setScrollLeft):
   50877         (WebCore::RenderBox::setScrollTop):
   50878         (WebCore::RenderBox::absoluteRects):
   50879         (WebCore::RenderBox::absoluteQuads):
   50880         (WebCore::RenderBox::absoluteContentBox):
   50881         (WebCore::RenderBox::absoluteContentQuad):
   50882         (WebCore::RenderBox::absoluteOutlineBounds):
   50883         (WebCore::RenderBox::addFocusRingRects):
   50884         (WebCore::RenderBox::reflectionBox):
   50885         (WebCore::RenderBox::reflectionOffset):
   50886         (WebCore::RenderBox::reflectedRect):
   50887         (WebCore::RenderBox::overrideWidth):
   50888         (WebCore::RenderBox::overrideHeight):
   50889         (WebCore::RenderBox::nodeAtPoint):
   50890         (WebCore::RenderBox::paint):
   50891         (WebCore::RenderBox::maskClipRect):
   50892         (WebCore::RenderBox::repaintLayerRectsForImage):
   50893         (WebCore::RenderBox::paintCustomHighlight):
   50894         (WebCore::RenderBox::getOverflowClipRect):
   50895         (WebCore::RenderBox::getClipRect):
   50896         (WebCore::RenderBox::containingBlockWidth):
   50897         (WebCore::RenderBox::localToAbsolute):
   50898         (WebCore::RenderBox::offsetFromContainer):
   50899         (WebCore::RenderBox::position):
   50900         (WebCore::RenderBox::computeAbsoluteRepaintRect):
   50901         (WebCore::RenderBox::repaintDuringLayoutIfMoved):
   50902         (WebCore::RenderBox::calcWidth):
   50903         (WebCore::RenderBox::calcWidthUsing):
   50904         (WebCore::RenderBox::calcHorizontalMargins):
   50905         (WebCore::RenderBox::calcHeight):
   50906         (WebCore::RenderBox::calcPercentageHeight):
   50907         (WebCore::RenderBox::calcReplacedHeightUsing):
   50908         (WebCore::RenderBox::containingBlockWidthForPositioned):
   50909         (WebCore::RenderBox::containingBlockHeightForPositioned):
   50910         (WebCore::RenderBox::calcAbsoluteHorizontal):
   50911         (WebCore::RenderBox::calcAbsoluteVertical):
   50912         (WebCore::RenderBox::calcAbsoluteVerticalValues):
   50913         (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
   50914         (WebCore::RenderBox::calcAbsoluteVerticalReplaced):
   50915         (WebCore::RenderBox::localCaretRect):
   50916         (WebCore::RenderBox::lowestPosition):
   50917         (WebCore::RenderBox::rightmostPosition):
   50918         (WebCore::RenderBox::leftmostPosition):
   50919         (WebCore::RenderBox::localTransform):
   50920         * rendering/RenderBox.h:
   50921         (WebCore::):
   50922         (WebCore::RenderBox::x):
   50923         (WebCore::RenderBox::y):
   50924         (WebCore::RenderBox::width):
   50925         (WebCore::RenderBox::height):
   50926         (WebCore::RenderBox::setX):
   50927         (WebCore::RenderBox::setY):
   50928         (WebCore::RenderBox::setWidth):
   50929         (WebCore::RenderBox::setHeight):
   50930         (WebCore::RenderBox::location):
   50931         (WebCore::RenderBox::size):
   50932         (WebCore::RenderBox::setLocation):
   50933         (WebCore::RenderBox::setSize):
   50934         (WebCore::RenderBox::move):
   50935         (WebCore::RenderBox::frameRect):
   50936         (WebCore::RenderBox::setFrameRect):
   50937         (WebCore::RenderBox::borderBoxRect):
   50938         (WebCore::RenderBox::contentBoxRect):
   50939         (WebCore::RenderBox::previousSiblingBox):
   50940         (WebCore::RenderBox::nextSiblingBox):
   50941         (WebCore::RenderBox::parentBox):
   50942         (WebCore::RenderBox::overflowHeight):
   50943         (WebCore::RenderBox::overflowWidth):
   50944         (WebCore::RenderBox::setOverflowHeight):
   50945         (WebCore::RenderBox::setOverflowWidth):
   50946         (WebCore::RenderBox::overflowLeft):
   50947         (WebCore::RenderBox::overflowTop):
   50948         (WebCore::RenderBox::overflowRect):
   50949         (WebCore::RenderBox::contentWidth):
   50950         (WebCore::RenderBox::contentHeight):
   50951         (WebCore::RenderBox::offsetWidth):
   50952         (WebCore::RenderBox::offsetHeight):
   50953         (WebCore::RenderBox::clientLeft):
   50954         (WebCore::RenderBox::clientTop):
   50955         (WebCore::RenderBox::availableWidth):
   50956         (WebCore::RenderBox::tryLayoutDoingPositionedMovementOnly):
   50957         * rendering/RenderButton.cpp:
   50958         (WebCore::RenderButton::controlClipRect):
   50959         * rendering/RenderContainer.cpp:
   50960         (WebCore::RenderContainer::layout):
   50961         (WebCore::RenderContainer::positionForCoordinates):
   50962         * rendering/RenderContainer.h:
   50963         (WebCore::RenderContainer::firstChildBox):
   50964         (WebCore::RenderContainer::lastChildBox):
   50965         * rendering/RenderFieldset.cpp:
   50966         (WebCore::RenderFieldset::calcPrefWidths):
   50967         (WebCore::RenderFieldset::layoutLegend):
   50968         (WebCore::RenderFieldset::findLegend):
   50969         (WebCore::RenderFieldset::paintBoxDecorations):
   50970         (WebCore::RenderFieldset::paintMask):
   50971         * rendering/RenderFieldset.h:
   50972         * rendering/RenderFileUploadControl.cpp:
   50973         (WebCore::RenderFileUploadControl::maxFilenameWidth):
   50974         (WebCore::RenderFileUploadControl::paintObject):
   50975         * rendering/RenderFlexibleBox.cpp:
   50976         (WebCore::FlexBoxIterator::FlexBoxIterator):
   50977         (WebCore::FlexBoxIterator::first):
   50978         (WebCore::FlexBoxIterator::next):
   50979         (WebCore::RenderFlexibleBox::calcHorizontalPrefWidths):
   50980         (WebCore::RenderFlexibleBox::calcVerticalPrefWidths):
   50981         (WebCore::RenderFlexibleBox::layoutBlock):
   50982         (WebCore::RenderFlexibleBox::layoutHorizontalBox):
   50983         (WebCore::RenderFlexibleBox::layoutVerticalBox):
   50984         (WebCore::RenderFlexibleBox::placeChild):
   50985         (WebCore::RenderFlexibleBox::allowedChildFlex):
   50986         * rendering/RenderFlexibleBox.h:
   50987         * rendering/RenderFlow.cpp:
   50988         (WebCore::RenderFlow::absoluteClippedOverflowRect):
   50989         (WebCore::RenderFlow::lowestPosition):
   50990         (WebCore::RenderFlow::rightmostPosition):
   50991         (WebCore::RenderFlow::leftmostPosition):
   50992         (WebCore::RenderFlow::localCaretRect):
   50993         (WebCore::RenderFlow::addFocusRingRects):
   50994         * rendering/RenderFrameSet.cpp:
   50995         (WebCore::RenderFrameSet::paint):
   50996         (WebCore::RenderFrameSet::layout):
   50997         (WebCore::RenderFrameSet::positionFrames):
   50998         * rendering/RenderHTMLCanvas.cpp:
   50999         (WebCore::RenderHTMLCanvas::paintReplaced):
   51000         (WebCore::RenderHTMLCanvas::canvasSizeChanged):
   51001         * rendering/RenderImage.cpp:
   51002         (WebCore::RenderImage::imageChanged):
   51003         (WebCore::RenderImage::paintReplaced):
   51004         (WebCore::RenderImage::nodeAtPoint):
   51005         (WebCore::RenderImage::calcReplacedWidth):
   51006         * rendering/RenderInline.cpp:
   51007         (WebCore::RenderInline::absoluteRects):
   51008         (WebCore::RenderInline::boundingBoxWidth):
   51009         (WebCore::RenderInline::boundingBoxHeight):
   51010         (WebCore::RenderInline::positionForCoordinates):
   51011         * rendering/RenderInline.h:
   51012         (WebCore::RenderInline::offsetWidth):
   51013         (WebCore::RenderInline::offsetHeight):
   51014         * rendering/RenderLayer.cpp:
   51015         (WebCore::RenderLayer::updateTransform):
   51016         (WebCore::RenderLayer::updateLayerPosition):
   51017         (WebCore::RenderLayer::scrollbarCornerPresent):
   51018         (WebCore::RenderLayer::createScrollbar):
   51019         (WebCore::RenderLayer::positionOverflowControls):
   51020         (WebCore::RenderLayer::paintScrollCorner):
   51021         (WebCore::RenderLayer::paintResizer):
   51022         (WebCore::RenderLayer::paintLayer):
   51023         (WebCore::RenderLayer::hitTestLayer):
   51024         (WebCore::RenderLayer::calculateRects):
   51025         (WebCore::RenderLayer::boundingBox):
   51026         * rendering/RenderListBox.cpp:
   51027         (WebCore::RenderListBox::calcHeight):
   51028         (WebCore::RenderListBox::controlClipRect):
   51029         * rendering/RenderListItem.cpp:
   51030         (WebCore::RenderListItem::positionListMarker):
   51031         (WebCore::RenderListItem::paint):
   51032         * rendering/RenderListMarker.cpp:
   51033         (WebCore::RenderListMarker::paint):
   51034         (WebCore::RenderListMarker::layout):
   51035         (WebCore::RenderListMarker::imageChanged):
   51036         (WebCore::RenderListMarker::getRelativeMarkerRect):
   51037         (WebCore::RenderListMarker::selectionRect):
   51038         * rendering/RenderMarquee.cpp:
   51039         (WebCore::RenderMarquee::computePosition):
   51040         * rendering/RenderMedia.cpp:
   51041         (WebCore::RenderMedia::layout):
   51042         (WebCore::RenderMedia::lowestPosition):
   51043         (WebCore::RenderMedia::rightmostPosition):
   51044         (WebCore::RenderMedia::leftmostPosition):
   51045         * rendering/RenderMenuList.cpp:
   51046         (WebCore::RenderMenuList::controlClipRect):
   51047         * rendering/RenderObject.cpp:
   51048         (WebCore::RenderObject::RenderObject):
   51049         (WebCore::RenderObject::markAllDescendantsWithFloatsForLayout):
   51050         (WebCore::RenderObject::paintOutline):
   51051         (WebCore::RenderObject::addLineBoxRects):
   51052         (WebCore::RenderObject::absoluteBoundingBoxRect):
   51053         (WebCore::RenderObject::addAbsoluteRectForLayer):
   51054         (WebCore::RenderObject::paintingRootRect):
   51055         (WebCore::RenderObject::container):
   51056         (WebCore::RenderObject::removeFromObjectLists):
   51057         (WebCore::RenderObject::updateHitTestResult):
   51058         (WebCore::RenderObject::addDashboardRegions):
   51059         (WebCore::RenderObject::localTransform):
   51060         * rendering/RenderObject.h:
   51061         (WebCore::RenderObject::isBox):
   51062         (WebCore::RenderObject::hasMask):
   51063         (WebCore::RenderObject::setIsText):
   51064         (WebCore::RenderObject::setIsBox):
   51065         (WebCore::RenderObject::borderTop):
   51066         (WebCore::RenderObject::borderBottom):
   51067         (WebCore::RenderObject::absoluteRects):
   51068         (WebCore::RenderObject::collectAbsoluteLineBoxQuads):
   51069         (WebCore::RenderObject::absoluteQuads):
   51070         (WebCore::RenderObject::hasReflection):
   51071         (WebCore::RenderObject::addFocusRingRects):
   51072         (WebCore::RenderObject::absoluteOutlineBounds):
   51073         * rendering/RenderPart.cpp:
   51074         (WebCore::RenderPart::updateWidgetPosition):
   51075         * rendering/RenderPath.cpp:
   51076         (WebCore::RenderPath::layout):
   51077         (WebCore::RenderPath::paint):
   51078         (WebCore::RenderPath::absoluteOutlineBounds):
   51079         * rendering/RenderPath.h:
   51080         * rendering/RenderReplaced.cpp:
   51081         (WebCore::RenderReplaced::layout):
   51082         (WebCore::RenderReplaced::paint):
   51083         (WebCore::RenderReplaced::shouldPaint):
   51084         (WebCore::RenderReplaced::positionForCoordinates):
   51085         (WebCore::RenderReplaced::localSelectionRect):
   51086         (WebCore::RenderReplaced::adjustOverflowForBoxShadow):
   51087         (WebCore::RenderReplaced::overflowRect):
   51088         * rendering/RenderReplica.cpp:
   51089         (WebCore::RenderReplica::layout):
   51090         (WebCore::RenderReplica::calcPrefWidths):
   51091         (WebCore::RenderReplica::paint):
   51092         * rendering/RenderSVGContainer.cpp:
   51093         (WebCore::RenderSVGContainer::paint):
   51094         (WebCore::RenderSVGContainer::absoluteOutlineBounds):
   51095         * rendering/RenderSVGContainer.h:
   51096         (WebCore::RenderSVGContainer::width):
   51097         (WebCore::RenderSVGContainer::height):
   51098         * rendering/RenderSVGImage.cpp:
   51099         (WebCore::RenderSVGImage::layout):
   51100         * rendering/RenderSVGInlineText.cpp:
   51101         (WebCore::RenderSVGInlineText::computeAbsoluteRectForRange):
   51102         (WebCore::RenderSVGInlineText::positionForCoordinates):
   51103         * rendering/RenderSVGRoot.cpp:
   51104         (WebCore::RenderSVGRoot::layout):
   51105         (WebCore::RenderSVGRoot::applyContentTransforms):
   51106         (WebCore::RenderSVGRoot::paint):
   51107         (WebCore::RenderSVGRoot::absoluteTransform):
   51108         (WebCore::RenderSVGRoot::nodeAtPoint):
   51109         * rendering/RenderSVGTSpan.cpp:
   51110         (WebCore::RenderSVGTSpan::absoluteRects):
   51111         (WebCore::RenderSVGTSpan::absoluteQuads):
   51112         * rendering/RenderSVGText.cpp:
   51113         (WebCore::RenderSVGText::layout):
   51114         (WebCore::RenderSVGText::relativeBBox):
   51115         * rendering/RenderSVGTextPath.cpp:
   51116         (WebCore::RenderSVGTextPath::absoluteRects):
   51117         (WebCore::RenderSVGTextPath::absoluteQuads):
   51118         * rendering/RenderSVGViewportContainer.cpp:
   51119         (WebCore::RenderSVGViewportContainer::nodeAtPoint):
   51120         * rendering/RenderScrollbar.cpp:
   51121         (WebCore::RenderScrollbar::createCustomScrollbar):
   51122         (WebCore::RenderScrollbar::RenderScrollbar):
   51123         (WebCore::RenderScrollbar::setParent):
   51124         * rendering/RenderScrollbar.h:
   51125         (WebCore::RenderScrollbar::owningRenderer):
   51126         * rendering/RenderScrollbarPart.cpp:
   51127         (WebCore::RenderScrollbarPart::layout):
   51128         (WebCore::RenderScrollbarPart::layoutHorizontalPart):
   51129         (WebCore::RenderScrollbarPart::layoutVerticalPart):
   51130         (WebCore::RenderScrollbarPart::computeScrollbarWidth):
   51131         (WebCore::RenderScrollbarPart::computeScrollbarHeight):
   51132         (WebCore::RenderScrollbarPart::paintIntoRect):
   51133         * rendering/RenderSlider.cpp:
   51134         (WebCore::HTMLSliderThumbElement::defaultEventHandler):
   51135         (WebCore::RenderSlider::layout):
   51136         (WebCore::RenderSlider::mouseEventIsInThumb):
   51137         (WebCore::RenderSlider::positionForOffset):
   51138         (WebCore::RenderSlider::trackSize):
   51139         * rendering/RenderTable.cpp:
   51140         (WebCore::RenderTable::calcWidth):
   51141         (WebCore::RenderTable::layout):
   51142         (WebCore::RenderTable::paint):
   51143         (WebCore::RenderTable::getBaselineOfFirstLineBox):
   51144         * rendering/RenderTableCell.cpp:
   51145         (WebCore::RenderTableCell::updateWidth):
   51146         (WebCore::RenderTableCell::computeAbsoluteRepaintRect):
   51147         (WebCore::RenderTableCell::localToAbsolute):
   51148         (WebCore::RenderTableCell::absoluteToLocal):
   51149         (WebCore::RenderTableCell::localToAbsoluteQuad):
   51150         (WebCore::RenderTableCell::paint):
   51151         (WebCore::RenderTableCell::paintBackgroundsBehindCell):
   51152         * rendering/RenderTableCell.h:
   51153         * rendering/RenderTableSection.cpp:
   51154         (WebCore::RenderTableSection::addChild):
   51155         (WebCore::RenderTableSection::addCell):
   51156         (WebCore::RenderTableSection::setCellWidths):
   51157         (WebCore::RenderTableSection::calcRowHeight):
   51158         (WebCore::RenderTableSection::layoutRows):
   51159         (WebCore::RenderTableSection::lowestPosition):
   51160         (WebCore::RenderTableSection::rightmostPosition):
   51161         (WebCore::RenderTableSection::leftmostPosition):
   51162         (WebCore::RenderTableSection::getBaselineOfFirstLineBox):
   51163         (WebCore::RenderTableSection::paint):
   51164         (WebCore::RenderTableSection::recalcCells):
   51165         (WebCore::RenderTableSection::nodeAtPoint):
   51166         * rendering/RenderTableSection.h:
   51167         (WebCore::RenderTableSection::overflowWidth):
   51168         (WebCore::RenderTableSection::overflowHeight):
   51169         * rendering/RenderText.cpp:
   51170         (WebCore::RenderText::RenderText):
   51171         (WebCore::RenderText::boundingBoxX):
   51172         (WebCore::RenderText::boundingBoxY):
   51173         (WebCore::RenderText::firstRunX):
   51174         (WebCore::RenderText::firstRunY):
   51175         (WebCore::RenderText::boundingBoxHeight):
   51176         (WebCore::RenderText::boundingBoxWidth):
   51177         * rendering/RenderText.h:
   51178         * rendering/RenderTextControl.cpp:
   51179         (WebCore::RenderTextControl::textBlockHeight):
   51180         (WebCore::RenderTextControl::textBlockWidth):
   51181         (WebCore::RenderTextControl::setSelectionRange):
   51182         (WebCore::RenderTextControl::calcHeight):
   51183         (WebCore::RenderTextControl::hitInnerTextBlock):
   51184         (WebCore::RenderTextControl::controlClipRect):
   51185         * rendering/RenderTextControlMultiLine.cpp:
   51186         (WebCore::RenderTextControlMultiLine::layout):
   51187         (WebCore::RenderTextControlMultiLine::adjustControlHeightBasedOnLineHeight):
   51188         * rendering/RenderTextControlSingleLine.cpp:
   51189         (WebCore::RenderTextControlSingleLine::paint):
   51190         (WebCore::RenderTextControlSingleLine::layout):
   51191         (WebCore::RenderTextControlSingleLine::nodeAtPoint):
   51192         (WebCore::RenderTextControlSingleLine::forwardEvent):
   51193         (WebCore::RenderTextControlSingleLine::textBlockWidth):
   51194         (WebCore::RenderTextControlSingleLine::adjustControlHeightBasedOnLineHeight):
   51195         (WebCore::RenderTextControlSingleLine::clientPaddingLeft):
   51196         (WebCore::RenderTextControlSingleLine::clientPaddingRight):
   51197         * rendering/RenderTheme.cpp:
   51198         (WebCore::RenderTheme::hitTestMediaControlPart):
   51199         (WebCore::RenderTheme::baselinePosition):
   51200         * rendering/RenderThemeMac.mm:
   51201         (WebCore::RenderThemeMac::paintSearchFieldCancelButton):
   51202         (WebCore::RenderThemeMac::paintSearchFieldResultsDecoration):
   51203         (WebCore::RenderThemeMac::paintSearchFieldResultsButton):
   51204         (WebCore::RenderThemeMac::hitTestMediaControlPart):
   51205         * rendering/RenderTreeAsText.cpp:
   51206         (WebCore::operator<<):
   51207         * rendering/RenderVideo.cpp:
   51208         (WebCore::RenderVideo::videoBox):
   51209         * rendering/RenderView.cpp:
   51210         (WebCore::RenderView::RenderView):
   51211         (WebCore::RenderView::calcHeight):
   51212         (WebCore::RenderView::calcWidth):
   51213         (WebCore::RenderView::layout):
   51214         (WebCore::RenderView::viewRect):
   51215         (WebCore::RenderView::docHeight):
   51216         (WebCore::RenderView::docWidth):
   51217         (WebCore::RenderView::setBestTruncatedAt):
   51218         * rendering/RenderView.h:
   51219         * rendering/RenderWidget.cpp:
   51220         (WebCore::RenderWidget::paint):
   51221         (WebCore::RenderWidget::updateWidgetPosition):
   51222         (WebCore::RenderWidget::nodeAtPoint):
   51223         * rendering/RootInlineBox.h:
   51224         (WebCore::RootInlineBox::floats):
   51225         (WebCore::RootInlineBox::floatsPtr):
   51226         * rendering/SVGInlineFlowBox.cpp:
   51227         (WebCore::SVGInlineFlowBox::verticallyAlignBoxes):
   51228         * rendering/SVGInlineFlowBox.h:
   51229         * rendering/SVGRenderTreeAsText.cpp:
   51230         (WebCore::operator<<):
   51231         (WebCore::write):
   51232         * rendering/SVGRootInlineBox.cpp:
   51233         (WebCore::SVGRootInlineBox::verticallyAlignBoxes):
   51234         (WebCore::SVGRootInlineBox::computePerCharacterLayoutInformation):
   51235         (WebCore::SVGRootInlineBox::layoutInlineBoxes):
   51236         * rendering/SVGRootInlineBox.h:
   51237         * rendering/bidi.cpp:
   51238         (WebCore::RenderBlock::computeHorizontalPositionsForLine):
   51239         (WebCore::RenderBlock::computeVerticalPositionsForLine):
   51240         (WebCore::RenderBlock::layoutInlineChildren):
   51241         (WebCore::RenderBlock::determineStartPosition):
   51242         (WebCore::RenderBlock::matchedEndLine):
   51243         (WebCore::RenderBlock::skipTrailingWhitespace):
   51244         (WebCore::RenderBlock::skipLeadingWhitespace):
   51245         (WebCore::RenderBlock::fitBelowFloats):
   51246         (WebCore::RenderBlock::findNextLineBreak):
   51247         (WebCore::RenderBlock::checkLinesForOverflow):
   51248         * svg/SVGLength.cpp:
   51249         (WebCore::SVGLength::PercentageOfViewport):
   51250 
   51251 2009-01-21  Anders Carlsson  <andersca (a] apple.com>
   51252 
   51253         Reviewed by Sam Weinig.
   51254 
   51255         * WebCore.LP64.exp:
   51256         Add some bridge related symbols.
   51257 
   51258         * WebCore.xcodeproj/project.pbxproj:
   51259         Make runtime_object.h a private header.
   51260 
   51261 2009-01-20  David Levin  <levin (a] chromium.org>
   51262 
   51263         Reviewed by Alexey Proskuryakov.
   51264 
   51265         Bug 22720: Make XMLHttpRequest work in Workers
   51266         <https://bugs.webkit.org/show_bug.cgi?id=22720>
   51267 
   51268         More removal of document usage from XMLHttpRequest.
   51269         * Abstracted away the sync and async requests behind the ThreadableLoader class, which
   51270           will get an implementation for Workers.  ThreadableLoader follows the same model as
   51271           SubresourceLoader because DocumentThreadableLoader is a thin wrapper around SubresourceLoader.
   51272           Also, WorkerThreadableLoader (coming soon) will use DocumentThreadableLoader to get things done.
   51273         * Consolidated dashboard compatibility checks into usesDashboardBackwardCompatibilityMode
   51274           which handles workers.
   51275 
   51276         No observable change in behavior, so no test.
   51277 
   51278         * GNUmakefile.am:
   51279         * WebCore.pro:
   51280         * WebCore.scons:
   51281         * WebCore.vcproj/WebCore.vcproj:
   51282         * WebCore.xcodeproj/project.pbxproj:
   51283         * WebCoreSources.bkl:
   51284         * loader/DocumentThreadableLoader.cpp: Added.
   51285         (WebCore::DocumentThreadableLoader::create):
   51286         (WebCore::DocumentThreadableLoader::DocumentThreadableLoader):
   51287         (WebCore::DocumentThreadableLoader::~DocumentThreadableLoader):
   51288         (WebCore::DocumentThreadableLoader::cancel):
   51289         (WebCore::DocumentThreadableLoader::willSendRequest):
   51290         (WebCore::DocumentThreadableLoader::didSendData):
   51291         (WebCore::DocumentThreadableLoader::didReceiveResponse):
   51292         (WebCore::DocumentThreadableLoader::didReceiveData):
   51293         (WebCore::DocumentThreadableLoader::didFinishLoading):
   51294         (WebCore::DocumentThreadableLoader::didFail):
   51295         (WebCore::DocumentThreadableLoader::receivedCancellation):
   51296         * loader/DocumentThreadableLoader.h: Added.
   51297         (WebCore::DocumentThreadableLoader::refThreadableLoader):
   51298         (WebCore::DocumentThreadableLoader::derefThreadableLoader):
   51299         * loader/SubresourceLoaderClient.h:
   51300         (WebCore::SubresourceLoaderClient::didReceiveData):
   51301         * loader/ThreadableLoader.cpp: Added.
   51302         (WebCore::ThreadableLoader::create):
   51303         (WebCore::ThreadableLoader::loadResourceSynchronously):
   51304         * loader/ThreadableLoader.h: Added.
   51305         (WebCore::):
   51306         (WebCore::ThreadableLoader::ref):
   51307         (WebCore::ThreadableLoader::deref):
   51308         (WebCore::ThreadableLoader::~ThreadableLoader):
   51309         * loader/ThreadableLoaderClient.h: Added.
   51310         (WebCore::ThreadableLoaderClient::didSendData):
   51311         (WebCore::ThreadableLoaderClient::didReceiveResponse):
   51312         (WebCore::ThreadableLoaderClient::didReceiveData):
   51313         (WebCore::ThreadableLoaderClient::didFinishLoading):
   51314         (WebCore::ThreadableLoaderClient::didFail):
   51315         (WebCore::ThreadableLoaderClient::didGetCancelled):
   51316         (WebCore::ThreadableLoaderClient::didReceiveAuthenticationCancellation):
   51317         (WebCore::ThreadableLoaderClient::~ThreadableLoaderClient):
   51318         * xml/XMLHttpRequest.cpp:
   51319         (WebCore::XMLHttpRequest::XMLHttpRequest):
   51320         (WebCore::XMLHttpRequest::usesDashboardBackwardCompatibilityMode):
   51321         (WebCore::XMLHttpRequest::send):
   51322         (WebCore::XMLHttpRequest::loadRequestSynchronously):
   51323         (WebCore::XMLHttpRequest::loadRequestAsynchronously):
   51324         (WebCore::XMLHttpRequest::setRequestHeader):
   51325         (WebCore::XMLHttpRequest::processSyncLoadResults):
   51326         (WebCore::XMLHttpRequest::didFail):
   51327         (WebCore::XMLHttpRequest::didGetCancelled):
   51328         (WebCore::XMLHttpRequest::didFinishLoading):
   51329         (WebCore::XMLHttpRequest::didFinishLoadingPreflight):
   51330         (WebCore::XMLHttpRequest::didSendData):
   51331         (WebCore::XMLHttpRequest::didReceiveResponse):
   51332         (WebCore::XMLHttpRequest::didReceiveResponsePreflight):
   51333         (WebCore::XMLHttpRequest::didReceiveAuthenticationCancellation):
   51334         (WebCore::XMLHttpRequest::didReceiveData):
   51335         * xml/XMLHttpRequest.h:
   51336 
   51337 2009-01-19  Chris Marrin  <cmarrin (a] apple.com>
   51338 
   51339         Reviewed by David Hyatt.
   51340 
   51341         Fix for https://bugs.webkit.org/show_bug.cgi?id=23317
   51342 
   51343         The high CPU usage was really from repeatedly firing transitions caused
   51344         by a bug in the way we handle background-color animations. If animating
   51345         from a valid background color to no background color, we sometimes left
   51346         (based on timing) the background color as transparent black, but valid
   51347         rather than invalid, which it should be. Fixing that got rid of the
   51348         repeated firing.
   51349 
   51350         But we really were doing more expensive iteration of all objects with
   51351         animations or transitions on them (running or not). So I added two
   51352         optimizations to quickly short circuit when an object had no running
   51353         animations or transitions. Things are now as zippy as ever.
   51354 
   51355         Test: transitions/repeated-firing-background-color.html
   51356 
   51357         * page/animation/AnimationBase.cpp:
   51358         (WebCore::blendFunc):
   51359         * page/animation/AnimationController.cpp:
   51360         (WebCore::AnimationControllerPrivate::updateAnimationTimer):
   51361         * page/animation/CompositeAnimation.cpp:
   51362         (WebCore::CompositeAnimationPrivate::hasAnimations):
   51363         (WebCore::CompositeAnimationPrivate::clearRenderer):
   51364         (WebCore::CompositeAnimationPrivate::animate):
   51365         (WebCore::CompositeAnimationPrivate::setAnimating):
   51366         (WebCore::CompositeAnimationPrivate::willNeedService):
   51367         (WebCore::CompositeAnimationPrivate::getAnimationForProperty):
   51368         (WebCore::CompositeAnimationPrivate::cleanupFinishedAnimations):
   51369         (WebCore::CompositeAnimationPrivate::setAnimationStartTime):
   51370         (WebCore::CompositeAnimationPrivate::setTransitionStartTime):
   51371         (WebCore::CompositeAnimationPrivate::suspendAnimations):
   51372         (WebCore::CompositeAnimationPrivate::resumeAnimations):
   51373         (WebCore::CompositeAnimationPrivate::overrideImplicitAnimations):
   51374         (WebCore::CompositeAnimationPrivate::resumeOverriddenImplicitAnimations):
   51375         (WebCore::CompositeAnimationPrivate::styleAvailable):
   51376         (WebCore::CompositeAnimationPrivate::isAnimatingProperty):
   51377         (WebCore::CompositeAnimationPrivate::numberOfActiveAnimations):
   51378         (WebCore::CompositeAnimation::hasAnimations):
   51379         * page/animation/CompositeAnimation.h:
   51380 
   51381 2009-01-21  Eric Seidel  <eric (a] webkit.org>
   51382 
   51383         Reviewed by Justin Garcia.
   51384 
   51385         Remove the style='' turds left by some editing commands
   51386         https://bugs.webkit.org/show_bug.cgi?id=23463
   51387 
   51388         Test: editing/execCommand/toggle-styles.html
   51389 
   51390         * editing/ApplyStyleCommand.cpp:
   51391         (WebCore::ApplyStyleCommand::removeCSSStyle): check if we just removed the last CSS property and remove the style attribute as well
   51392         * editing/CompositeEditCommand.cpp:
   51393         (WebCore::CompositeEditCommand::removeNodeAttribute): remove extra ;
   51394 
   51395 2009-01-21  Eric Seidel  <eric (a] webkit.org>
   51396 
   51397         No review, build fix.
   51398 
   51399         Fix release-only build failure (and do a tiny code-cleanup).
   51400 
   51401         * editing/ApplyStyleCommand.cpp:
   51402         (WebCore::createFontElement):
   51403         (WebCore::createStyleSpanElement):
   51404         (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
   51405 
   51406 2009-01-21  Chris Fleizach  <cfleizach (a] apple.com>
   51407 
   51408         Reviewed by Beth Dakin.
   51409 
   51410         Bug 23443: Table accessibility should be re-enabled after fixing crash that occurs at WebCore::AccessibilityTable::isTableExposableThroughAccessibility()
   51411         https://bugs.webkit.org/show_bug.cgi?id=23443
   51412 
   51413         Test: accessibility/table-modification-crash.html
   51414 
   51415         * page/AccessibilityObject.cpp:
   51416         (WebCore::AccessibilityObject::updateBackingStore):
   51417         * page/AccessibilityObject.h:
   51418         * page/AccessibilityRenderObject.cpp:
   51419         (WebCore::AccessibilityRenderObject::childrenChanged):
   51420         (WebCore::AccessibilityRenderObject::children):
   51421         (WebCore::AccessibilityRenderObject::updateBackingStore):
   51422         * page/AccessibilityRenderObject.h:
   51423         (WebCore::AccessibilityRenderObject::markChildrenDirty):
   51424         * page/AccessibilityTable.cpp:
   51425         (WebCore::AccessibilityTable::AccessibilityTable):
   51426         * page/mac/AccessibilityObjectWrapper.mm:
   51427         (-[AccessibilityObjectWrapper accessibilityActionNames]):
   51428         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
   51429         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
   51430         (-[AccessibilityObjectWrapper accessibilityFocusedUIElement]):
   51431         (-[AccessibilityObjectWrapper accessibilityHitTest:]):
   51432         (-[AccessibilityObjectWrapper accessibilityIsAttributeSettable:]):
   51433         (-[AccessibilityObjectWrapper accessibilityIsIgnored]):
   51434         (-[AccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
   51435         (-[AccessibilityObjectWrapper accessibilityPerformPressAction]):
   51436         (-[AccessibilityObjectWrapper accessibilityPerformAction:]):
   51437         (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]):
   51438         (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
   51439         (-[AccessibilityObjectWrapper accessibilityIndexOfChild:]):
   51440         (-[AccessibilityObjectWrapper accessibilityArrayAttributeCount:]):
   51441         (-[AccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]):
   51442         * rendering/RenderObject.cpp:
   51443         (WebCore::RenderObject::destroy):
   51444         * rendering/RenderWidget.cpp:
   51445         (WebCore::RenderWidget::destroy):
   51446 
   51447 2009-01-16  Eric Seidel  <eric (a] webkit.org>
   51448 
   51449         Reviewed by Justin Garcia.
   51450 
   51451         Fix execCommand() 'super' and 'sub' commands to add <sup> and <sub> in quirks mode, and to toggle when called twice
   51452         https://bugs.webkit.org/show_bug.cgi?id=17733
   51453 
   51454         Test changed: editing/execCommand/toggle-styles-expected.txt
   51455 
   51456         * editing/ApplyStyleCommand.cpp:
   51457         (WebCore::StyleChange::applySubscript):
   51458         (WebCore::StyleChange::applySuperscript):
   51459         (WebCore::StyleChange::StyleChange):
   51460         (WebCore::StyleChange::init):
   51461         (WebCore::StyleChange::checkForLegacyHTMLStyleChange):
   51462         (WebCore::ApplyStyleCommand::isHTMLStyleNode):
   51463         (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
   51464         * editing/EditorCommand.cpp:
   51465         (WebCore::executeSubscript):
   51466         (WebCore::executeSuperscript):
   51467         * editing/htmlediting.cpp:
   51468         (WebCore::createHTMLElement):
   51469         * editing/htmlediting.h:
   51470 
   51471 2009-01-21  Anders Carlsson  <andersca (a] apple.com>
   51472 
   51473         Fix 64-bit build.
   51474 
   51475         * WebCore.LP64.exp:
   51476 
   51477 2009-01-21  Oliver Hunt  <oliver (a] apple.com>
   51478 
   51479         Reviewed by Alexey Proskuryakov.
   51480 
   51481         Bug 23458: Reintroduce CanvasPixelArray in ImageData.idl
   51482         <https://bugs.webkit.org/show_bug.cgi?id=23458>
   51483 
   51484         Return CanvasPixelArray, et al -- the only difference between this
   51485         and the original CPA implementation is that it now uses a ByteArray
   51486         rather than a vector.  JSC still uses a custom wrapper, but this allows
   51487         ObjC, COM, and V8 bindings to be autogenerated again.
   51488 
   51489         * GNUmakefile.am:
   51490         * WebCore.pro:
   51491         * WebCore.vcproj/WebCore.vcproj:
   51492         * WebCore.xcodeproj/project.pbxproj:
   51493         * WebCoreSources.bkl:
   51494         * bindings/js/JSImageDataCustom.cpp:
   51495         (WebCore::toJS):
   51496         * html/CanvasPixelArray.cpp: Added.
   51497         (WebCore::CanvasPixelArray::create):
   51498         (WebCore::CanvasPixelArray::CanvasPixelArray):
   51499         * html/CanvasPixelArray.h: Added.
   51500         (WebCore::CanvasPixelArray::data):
   51501         (WebCore::CanvasPixelArray::length):
   51502         (WebCore::CanvasPixelArray::set):
   51503         (WebCore::CanvasPixelArray::get):
   51504         * html/CanvasPixelArray.idl: Added.
   51505         * html/CanvasRenderingContext2D.cpp:
   51506         (WebCore::createEmptyImageData):
   51507         * html/ImageData.cpp:
   51508         (WebCore::ImageData::ImageData):
   51509         * html/ImageData.h:
   51510         (WebCore::ImageData::data):
   51511         * html/ImageData.idl:
   51512         * platform/graphics/cairo/ImageBufferCairo.cpp:
   51513         (WebCore::ImageBuffer::getImageData):
   51514         (WebCore::ImageBuffer::putImageData):
   51515         * platform/graphics/cg/ImageBufferCG.cpp:
   51516         (WebCore::ImageBuffer::getImageData):
   51517         (WebCore::ImageBuffer::putImageData):
   51518 
   51519 2009-01-21  Dirk Schulze  <krit (a] webkit.org>
   51520 
   51521         Reviewed by Nikolas Zimmermann.
   51522 
   51523         Remove last relics of platform dependent PaintServer in SVG.
   51524         We draw everything with the help of GraphicsContext.
   51525 
   51526         Remove SVGPaintServerPlatform's
   51527         [https://bugs.webkit.org/show_bug.cgi?id=23439]
   51528 
   51529         * GNUmakefile.am:
   51530         * WebCore.pro:
   51531         * WebCore.vcproj/WebCore.vcproj:
   51532         * WebCore.xcodeproj/project.pbxproj:
   51533         * svg/graphics/SVGPaintServer.cpp:
   51534         (WebCore::SVGPaintServer::draw):
   51535         (WebCore::SVGPaintServer::renderPath):
   51536         (WebCore::SVGPaintServer::teardown):
   51537         * svg/graphics/SVGPaintServer.h:
   51538         * svg/graphics/SVGPaintServerGradient.cpp:
   51539         * svg/graphics/SVGPaintServerGradient.h:
   51540         * svg/graphics/SVGPaintServerPattern.cpp:
   51541         * svg/graphics/SVGPaintServerPattern.h:
   51542         * svg/graphics/SVGPaintServerSolid.cpp:
   51543         * svg/graphics/SVGPaintServerSolid.h:
   51544         * svg/graphics/cairo/SVGPaintServerCairo.cpp: Removed.
   51545         * svg/graphics/cg/SVGPaintServerCg.cpp: Removed.
   51546         * svg/graphics/qt/SVGPaintServerQt.cpp: Removed.
   51547         * svg/graphics/skia/SVGPaintServerSkia.cpp: Removed.
   51548 
   51549 2009-01-21  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   51550 
   51551         Reviewed by Alexey Proskuryakov.
   51552 
   51553         Move "Element -> ScriptElement" casting functionality into ScriptElement.h
   51554         to be consistent with FormControlElement/InputElement/OptionElement/OptionGroupElement.
   51555 
   51556         It was living in XMLTokenizer before, which is not an obvious place for this.
   51557         TODO: Rename 'formControlElementForElement' to 'toFormControlElement' (analogous changes for InputElement etc.)
   51558               as suggested by Alexey, it really reads better this way.
   51559 
   51560         * dom/ScriptElement.cpp:
   51561         (WebCore::toScriptElement):
   51562         * dom/ScriptElement.h:
   51563         * dom/XMLTokenizer.cpp:
   51564         (WebCore::XMLTokenizer::notifyFinished):
   51565         * dom/XMLTokenizer.h:
   51566         * dom/XMLTokenizerLibxml2.cpp:
   51567         (WebCore::XMLTokenizer::startElementNs):
   51568         (WebCore::XMLTokenizer::endElementNs):
   51569         * dom/XMLTokenizerQt.cpp:
   51570         (WebCore::XMLTokenizer::parseStartElement):
   51571         (WebCore::XMLTokenizer::parseEndElement):
   51572 
   51573 2009-01-20  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   51574 
   51575         Reviewed by George Staikos.
   51576 
   51577         Fixes: https://bugs.webkit.org/show_bug.cgi?id=23444
   51578 
   51579         Refactor some functionality from HTMLOption/OptGroupElement needed by RenderListBox/RenderMenuList
   51580         in two abstract base classes: OptionElement & OptionGroupElement living in dom/ - just like it
   51581         has been done before for FormControlElement and RenderTextControl.
   51582 
   51583         This is needed to prepare the addtion of WMLOption/OptGroupElement.
   51584 
   51585         * GNUmakefile.am:
   51586         * WebCore.pro:
   51587         * WebCore.scons:
   51588         * WebCore.vcproj/WebCore.vcproj:
   51589         * WebCore.xcodeproj/project.pbxproj:
   51590         * WebCoreSources.bkl:
   51591         * dom/OptionElement.cpp: Added.
   51592         (WebCore::optionElementForElement):
   51593         * dom/OptionElement.h: Added.
   51594         (WebCore::OptionElement::~OptionElement):
   51595         (WebCore::OptionElement::OptionElement):
   51596         * dom/OptionGroupElement.cpp: Added.
   51597         (WebCore::optionGroupElementForElement):
   51598         * dom/OptionGroupElement.h: Added.
   51599         (WebCore::OptionGroupElement::~OptionGroupElement):
   51600         (WebCore::OptionGroupElement::OptionGroupElement):
   51601         * html/HTMLOptGroupElement.h:
   51602         * html/HTMLOptionElement.cpp:
   51603         (WebCore::HTMLOptionElement::optionText):
   51604         * html/HTMLOptionElement.h:
   51605         (WebCore::HTMLOptionElement::selected):
   51606         * rendering/RenderListBox.cpp:
   51607         (WebCore::RenderListBox::updateFromElement):
   51608         (WebCore::RenderListBox::paintItemForeground):
   51609         (WebCore::RenderListBox::paintItemBackground):
   51610         * rendering/RenderMenuList.cpp:
   51611         (WebCore::RenderMenuList::updateOptionsWidth):
   51612         (WebCore::RenderMenuList::setTextFromOption):
   51613         (WebCore::RenderMenuList::itemText):
   51614         (WebCore::RenderMenuList::itemIsSelected):
   51615 
   51616 2009-01-20  Darin Adler  <darin (a] apple.com>
   51617 
   51618         Reviewed by Alexey Proskuryakov.
   51619 
   51620         Bug 23448: memory leak in Mac version of preferredExtensionForImageSourceType
   51621         https://bugs.webkit.org/show_bug.cgi?id=23448
   51622 
   51623         * platform/graphics/cg/ImageSourceCGMac.mm:
   51624         (WebCore::preferredExtensionForImageSourceType): Use RetainPtr to avoid the leak.
   51625 
   51626 2009-01-20  Darin Adler  <darin (a] apple.com>
   51627 
   51628         Try to fix Wx build.
   51629 
   51630         * platform/wx/PasteboardWx.cpp:
   51631         (WebCore::Pasteboard::writeSelection): Removed code that replaces backslash
   51632         with backslashAsCurrencySymbol. I'm pretty sure this is not needed when writing
   51633         to the clipboard. Other platforms don't do it. If it was needed, the new function
   51634         to use would be displayStringModifiedByEncoding.
   51635 
   51636 2009-01-19  Brent Fulgham  <bfulgham (a] gmail.com>
   51637 
   51638         Reviewed by Mitz Pettel.
   51639 
   51640         Fixes https://bugs.webkit.org/show_bug.cgi?id=23423.
   51641 
   51642         The Windows Cairo post-build targets (Release/Debug) do not
   51643         copy all of the headers that the CG-based build does.
   51644 
   51645         * WebCore.vcproj/WebCore.vcproj: Extend WebCore Cairo build targets
   51646           to copy the page/animation/*.h files into WebKitBuild so that
   51647           WebKit can find them.
   51648 
   51649 2009-01-20  Dmitry Titov  <dimich (a] chromium.org>
   51650 
   51651         Reviewed by Alexey Proskuryakov.
   51652 
   51653         https://bugs.webkit.org/show_bug.cgi?id=23413
   51654         Remove unused WebCore::setDeferringTimers()
   51655 
   51656         * platform/Timer.cpp:
   51657         (WebCore::updateSharedTimer):
   51658         * platform/Timer.h:
   51659 
   51660 2009-01-20  David Hyatt  <hyatt (a] apple.com>
   51661 
   51662         Tighten up the type of RenderObject owned by RenderLayer to be a RenderBox.  Rename m_object to
   51663         m_renderer to be consistent with the corresponding member function.
   51664 
   51665         Reviewed by Jon Honeycutt
   51666 
   51667         * rendering/RenderLayer.cpp:
   51668         (WebCore::RenderLayer::RenderLayer):
   51669         (WebCore::RenderLayer::updateLayerPositions):
   51670         (WebCore::RenderLayer::updateVisibilityStatus):
   51671         (WebCore::RenderLayer::updateLayerPosition):
   51672         (WebCore::RenderLayer::stackingContext):
   51673         (WebCore::RenderLayer::enclosingPositionedAncestor):
   51674         (WebCore::RenderLayer::enclosingTransformedAncestor):
   51675         (WebCore::RenderLayer::isTransparent):
   51676         (WebCore::RenderLayer::convertToLayerCoords):
   51677         (WebCore::RenderLayer::scrollByRecursively):
   51678         (WebCore::RenderLayer::scrollToOffset):
   51679         (WebCore::RenderLayer::scrollRectToVisible):
   51680         (WebCore::RenderLayer::resize):
   51681         (WebCore::RenderLayer::scrollbarCornerPresent):
   51682         (WebCore::RenderLayer::createScrollbar):
   51683         (WebCore::RenderLayer::setHasHorizontalScrollbar):
   51684         (WebCore::RenderLayer::setHasVerticalScrollbar):
   51685         (WebCore::RenderLayer::positionOverflowControls):
   51686         (WebCore::RenderLayer::computeScrollDimensions):
   51687         (WebCore::RenderLayer::updateOverflowStatus):
   51688         (WebCore::RenderLayer::updateScrollInfoAfterLayout):
   51689         (WebCore::RenderLayer::paintOverflowControls):
   51690         (WebCore::RenderLayer::paintScrollCorner):
   51691         (WebCore::RenderLayer::paintResizer):
   51692         (WebCore::RenderLayer::isPointInResizeControl):
   51693         (WebCore::RenderLayer::paintLayer):
   51694         (WebCore::RenderLayer::hitTestLayer):
   51695         (WebCore::RenderLayer::updateClipRects):
   51696         (WebCore::RenderLayer::calculateClipRects):
   51697         (WebCore::RenderLayer::calculateRects):
   51698         (WebCore::RenderLayer::clearClipRects):
   51699         (WebCore::RenderLayer::repaintIncludingDescendants):
   51700         (WebCore::RenderLayer::styleChanged):
   51701         (WebCore::RenderLayer::updateScrollCornerStyle):
   51702         (WebCore::RenderLayer::updateResizerStyle):
   51703         * rendering/RenderLayer.h:
   51704         (WebCore::RenderLayer::renderer):
   51705         (WebCore::RenderLayer::hasReflection):
   51706         (WebCore::RenderLayer::hasTransform):
   51707 
   51708 2009-01-20  David Hyatt  <hyatt (a] apple.com>
   51709 
   51710         Fix Mac build bustage from my selection changes.  I forgot to implement the functions on RenderThemeMac
   51711         for returning the appropriate listbox selection colors.
   51712 
   51713         Reviewed by Adele
   51714 
   51715         * rendering/RenderThemeMac.mm:
   51716         (WebCore::RenderThemeMac::platformActiveListBoxSelectionForegroundColor):
   51717         (WebCore::RenderThemeMac::platformInactiveListBoxSelectionForegroundColor):
   51718         (WebCore::RenderThemeMac::platformInactiveListBoxSelectionBackgroundColor):
   51719 
   51720 2009-01-20  Dave Hyatt  <hyatt (a] apple.com>
   51721 
   51722         Fix for focus rings on Windows.  Make sure that focus rings draw for all controls but buttons.
   51723 
   51724         Fix list box selection colors on Windows.  Also add a cache for all of the selection colors (and not just the two
   51725         background selection colors).
   51726 
   51727         Reviewed by Adam Roben
   51728 
   51729         * rendering/RenderObject.cpp:
   51730         (WebCore::RenderObject::selectionForegroundColor):
   51731         * rendering/RenderTheme.cpp:
   51732         (WebCore::RenderTheme::activeSelectionBackgroundColor):
   51733         (WebCore::RenderTheme::inactiveSelectionBackgroundColor):
   51734         (WebCore::RenderTheme::activeSelectionForegroundColor):
   51735         (WebCore::RenderTheme::inactiveSelectionForegroundColor):
   51736         (WebCore::RenderTheme::activeListBoxSelectionBackgroundColor):
   51737         (WebCore::RenderTheme::inactiveListBoxSelectionBackgroundColor):
   51738         (WebCore::RenderTheme::activeListBoxSelectionForegroundColor):
   51739         (WebCore::RenderTheme::inactiveListBoxSelectionForegroundColor):
   51740         (WebCore::RenderTheme::platformActiveSelectionForegroundColor):
   51741         (WebCore::RenderTheme::platformInactiveSelectionBackgroundColor):
   51742         (WebCore::RenderTheme::platformInactiveSelectionForegroundColor):
   51743         (WebCore::RenderTheme::platformActiveListBoxSelectionBackgroundColor):
   51744         (WebCore::RenderTheme::platformActiveListBoxSelectionForegroundColor):
   51745         (WebCore::RenderTheme::platformInactiveListBoxSelectionBackgroundColor):
   51746         (WebCore::RenderTheme::platformInactiveListBoxSelectionForegroundColor):
   51747         (WebCore::RenderTheme::platformColorsDidChange):
   51748         * rendering/RenderTheme.h:
   51749         (WebCore::RenderTheme::supportsForegroundSelectionColors):
   51750         (WebCore::RenderTheme::supportsForegroundListBoxSelectionColors):
   51751         * rendering/RenderThemeMac.h:
   51752         (WebCore::RenderThemeMac::supportsForegroundSelectionColors):
   51753         * rendering/RenderThemeMac.mm:
   51754         (WebCore::RenderThemeMac::platformActiveListBoxSelectionBackgroundColor):
   51755         * rendering/RenderThemeWin.cpp:
   51756         (WebCore::RenderThemeWin::platformInactiveSelectionBackgroundColor):
   51757         (WebCore::RenderThemeWin::platformInactiveSelectionForegroundColor):
   51758         (WebCore::RenderThemeWin::supportsFocus):
   51759         (WebCore::RenderThemeWin::supportsFocusRing):
   51760         * rendering/RenderThemeWin.h:
   51761 
   51762 2009-01-20  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   51763 
   51764         Reviewed by George Staikos.
   51765 
   51766         Fixes: https://bugs.webkit.org/show_bug.cgi?id=23434
   51767 
   51768         Add WML <input> element support - it required a lot of changes to the RenderText*/HTMLInput* code.
   51769         Now any language can provide <input>-style elements, without having to inherit from HTML* classes.
   51770 
   51771         No WML specific features/attributes are handled so far. A follow-up patch will provide those bits.
   51772         Added very simple fast/wml/input.wml, just checking that input elements can be rendered properly now.
   51773         Detailed testcases will follow in conjunction with the WML specific attribute support.
   51774 
   51775         * GNUmakefile.am:
   51776         * WebCore.pro:
   51777         * WebCore.vcproj/WebCore.vcproj:
   51778         * WebCore.xcodeproj/project.pbxproj:
   51779         * css/CSSStyleSelector.cpp:
   51780         (WebCore::CSSStyleSelector::adjustRenderStyle):
   51781         * dom/FormControlElement.cpp: Activate disabled code from previous checking.
   51782         (WebCore::formControlElementForElement):
   51783         * dom/InputElement.cpp: Ditto.
   51784         (WebCore::inputElementForElement):
   51785         * wml/WMLInputElement.cpp: Added.
   51786         (WebCore::WMLInputElement::WMLInputElement):
   51787         (WebCore::WMLInputElement::~WMLInputElement):
   51788         (WebCore::isInputFocusable):
   51789         (WebCore::WMLInputElement::isKeyboardFocusable):
   51790         (WebCore::WMLInputElement::isMouseFocusable):
   51791         (WebCore::WMLInputElement::dispatchFocusEvent):
   51792         (WebCore::WMLInputElement::dispatchBlurEvent):
   51793         (WebCore::WMLInputElement::updateFocusAppearance):
   51794         (WebCore::WMLInputElement::aboutToUnload):
   51795         (WebCore::WMLInputElement::size):
   51796         (WebCore::WMLInputElement::name):
   51797         (WebCore::WMLInputElement::value):
   51798         (WebCore::WMLInputElement::setValue):
   51799         (WebCore::WMLInputElement::setValueFromRenderer):
   51800         (WebCore::WMLInputElement::saveState):
   51801         (WebCore::WMLInputElement::restoreState):
   51802         (WebCore::WMLInputElement::select):
   51803         (WebCore::WMLInputElement::accessKeyAction):
   51804         (WebCore::WMLInputElement::parseMappedAttribute):
   51805         (WebCore::WMLInputElement::copyNonAttributeProperties):
   51806         (WebCore::WMLInputElement::createRenderer):
   51807         (WebCore::WMLInputElement::attach):
   51808         (WebCore::WMLInputElement::detach):
   51809         (WebCore::WMLInputElement::appendFormData):
   51810         (WebCore::WMLInputElement::reset):
   51811         (WebCore::WMLInputElement::defaultEventHandler):
   51812         (WebCore::WMLInputElement::cacheSelection):
   51813         (WebCore::WMLInputElement::constrainValue):
   51814         (WebCore::WMLInputElement::documentDidBecomeActive):
   51815         (WebCore::WMLInputElement::placeholderShouldBeVisible):
   51816         (WebCore::WMLInputElement::willMoveToNewOwnerDocument):
   51817         (WebCore::WMLInputElement::didMoveToNewOwnerDocument):
   51818         * wml/WMLInputElement.h: Added.
   51819         (WebCore::WMLInputElement::valueMatchesRenderer):
   51820         (WebCore::WMLInputElement::setValueMatchesRenderer):
   51821         (WebCore::WMLInputElement::shouldUseInputMethod):
   51822         (WebCore::WMLInputElement::isChecked):
   51823         (WebCore::WMLInputElement::isIndeterminate):
   51824         (WebCore::WMLInputElement::isTextControl):
   51825         (WebCore::WMLInputElement::isRadioButton):
   51826         (WebCore::WMLInputElement::isTextField):
   51827         (WebCore::WMLInputElement::isSearchField):
   51828         (WebCore::WMLInputElement::isInputTypeHidden):
   51829         (WebCore::WMLInputElement::isPasswordField):
   51830         (WebCore::WMLInputElement::searchEventsShouldBeDispatched):
   51831         (WebCore::WMLInputElement::placeholderValue):
   51832         * wml/WMLTagNames.in:
   51833 
   51834 2009-01-20  Darin Adler  <darin (a] apple.com>
   51835 
   51836         Reviewed by John Sullivan.
   51837 
   51838         Remove a little dead code left over after the fix for
   51839         https://bugs.webkit.org/show_bug.cgi?id=11395, which
   51840         moved pointer-events from SVG to be shared with HTML.
   51841 
   51842         * css/SVGCSSParser.cpp:
   51843         (WebCore::CSSParser::parseSVGValue): Remove SVG's parsing of this
   51844         property since it's handled in the non-SVG function now so we'll
   51845         never get here.
   51846 
   51847 2009-01-20  Julien Chaffraix  <jchaffraix (a] webkit.org>
   51848 
   51849         Reviewed by Darin Adler.
   51850 
   51851         Bug 23438: Provide a default value to the .in file parser
   51852 
   51853         Added the default value 1 as it simplifies some of
   51854         the format by removing some "=1" that were awkward.
   51855 
   51856         This was suggested by Darin Adler as par of a previous
   51857         review.
   51858 
   51859         * bindings/scripts/InFilesParser.pm: When no value
   51860         was entered (the second part of the split is undef),
   51861         provide the default value.
   51862 
   51863         * html/HTMLAttributeNames.in: Removed unnecessary "=1".
   51864         * html/HTMLTagNames.in: Ditto.
   51865         * svg/svgattrs.in: Ditto.
   51866         * svg/svgtags.in: Ditto.
   51867         * svg/xlinkattrs.in: Ditto.
   51868         * wml/WMLAttributeNames.in: Ditto.
   51869 
   51870 2009-01-20  Anders Carlsson  <andersca (a] apple.com>
   51871 
   51872         Reviewed by Darin Adler.
   51873 
   51874         * bridge/c/c_class.cpp:
   51875         * bridge/c/c_class.h:
   51876         Get rid of CClass::name().
   51877 
   51878         * bridge/jni/jni_class.h:
   51879         Get rid of JavaClass::name().
   51880 
   51881         * bridge/objc/objc_class.h:
   51882         * bridge/objc/objc_class.mm:
   51883         Get rid of ObjcClass::name().
   51884 
   51885         * bridge/objc/objc_instance.h:
   51886         Get rid of supportsSetValueOfUndefinedField.
   51887 
   51888         * bridge/objc/objc_instance.mm:
   51889         (ObjcInstance::setValueOfUndefinedField):
   51890         Fold supportsSetValueOfUndefinedField into setValueOfUndefinedField.
   51891 
   51892         * bridge/runtime.cpp:
   51893         Get rid of getValueOfField and setValueOfField.
   51894 
   51895         * bridge/runtime.h:
   51896         (JSC::Bindings::Instance::setValueOfUndefinedField):
   51897         Have this return a bool and get rid of supportsSetValueOfUndefinedField
   51898 
   51899         * bridge/runtime_object.cpp:
   51900         (JSC::RuntimeObjectImp::fieldGetter):
   51901         Call Field::valueFromInstance on the field.
   51902 
   51903         (JSC::RuntimeObjectImp::put):
   51904         Call Field::setValueToInstance on the field.
   51905 
   51906 2009-01-20  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   51907 
   51908         Not reviewed. Forgot to land build changes for non-mac platforms.
   51909 
   51910         * GNUmakefile.am:
   51911         * WebCore.pro:
   51912         * WebCore.scons:
   51913         * WebCore.vcproj/WebCore.vcproj:
   51914         * WebCoreSources.bkl:
   51915 
   51916 2009-01-20  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   51917 
   51918         Reviewed by Adam Roben.
   51919 
   51920         Fix last-minute regression, introduced by simplifying max length determination - by
   51921         clamping using min/max, negative maxLength values got broken.
   51922 
   51923         * dom/InputElement.cpp:
   51924         (WebCore::InputElement::parseMaxLengthAttribute):
   51925 
   51926 2009-01-20  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   51927 
   51928         Reviewed by Adam Roben.
   51929 
   51930         Fixes: https://bugs.webkit.org/show_bug.cgi?id=23433
   51931 
   51932         Add InputElement abstraction, similar to the FormControlElement refactorization
   51933         done a month ago. The goal is to share as much code as possible between HTML/WMLInputElement.
   51934         In a previous patch the RenderTextControl class has been split-up in RenderTextControlSingle/MultiLine,
   51935         RenderTextControl itself only depends on FormControlElement, RenderTextControlSingleLine still
   51936         depends on HTMLInputElement directly -> change that and make it use the new InputElement abstraction.
   51937 
   51938         A lot of code from HTMLInputElement now lives in InputElement, as static member functions - the
   51939         InputElement class itself is an abstract virtual class, just like ScriptElement. HTML/WMLInputElement
   51940         derive from InputElement, and hold a InputElementData member variable, that they pass to the
   51941         static functions in InputElement. The abstraction is equal to the one chosen for HTML/SVGScriptElement.
   51942 
   51943         * WebCore.xcodeproj/project.pbxproj:
   51944         * dom/FormControlElement.cpp: Added.
   51945         (WebCore::formControlElementForElement):
   51946         * dom/FormControlElement.h:
   51947         * dom/InputElement.cpp: Added.
   51948         (WebCore::InputElement::dispatchFocusEvent):
   51949         (WebCore::InputElement::dispatchBlurEvent):
   51950         (WebCore::InputElement::updatePlaceholderVisibility):
   51951         (WebCore::InputElement::updateFocusAppearance):
   51952         (WebCore::InputElement::updateSelectionRange):
   51953         (WebCore::InputElement::aboutToUnload):
   51954         (WebCore::InputElement::setValueFromRenderer):
   51955         (WebCore::numCharactersInGraphemeClusters):
   51956         (WebCore::InputElement::constrainValue):
   51957         (WebCore::numGraphemeClusters):
   51958         (WebCore::InputElement::handleBeforeTextInsertedEvent):
   51959         (WebCore::InputElement::parseSizeAttribute):
   51960         (WebCore::InputElement::parseMaxLengthAttribute):
   51961         (WebCore::InputElement::updateValueIfNeeded):
   51962         (WebCore::InputElement::notifyFormStateChanged):
   51963         (WebCore::InputElementData::InputElementData):
   51964         (WebCore::InputElementData::~InputElementData):
   51965         (WebCore::InputElementData::name):
   51966         (WebCore::inputElementForElement):
   51967         * dom/InputElement.h: Added.
   51968         (WebCore::InputElement::~InputElement):
   51969         (WebCore::InputElement::InputElement):
   51970         (WebCore::InputElementData::inputElement):
   51971         (WebCore::InputElementData::element):
   51972         (WebCore::InputElementData::placeholderShouldBeVisible):
   51973         (WebCore::InputElementData::setPlaceholderShouldBeVisible):
   51974         (WebCore::InputElementData::setName):
   51975         (WebCore::InputElementData::value):
   51976         (WebCore::InputElementData::setValue):
   51977         (WebCore::InputElementData::size):
   51978         (WebCore::InputElementData::setSize):
   51979         (WebCore::InputElementData::maxLength):
   51980         (WebCore::InputElementData::setMaxLength):
   51981         (WebCore::InputElementData::cachedSelectionStart):
   51982         (WebCore::InputElementData::setCachedSelectionStart):
   51983         (WebCore::InputElementData::cachedSelectionEnd):
   51984         (WebCore::InputElementData::setCachedSelectionEnd):
   51985         * html/HTMLInputElement.cpp:
   51986         (WebCore::HTMLInputElement::HTMLInputElement):
   51987         (WebCore::HTMLInputElement::name):
   51988         (WebCore::HTMLInputElement::updateFocusAppearance): Moved to InputElement.
   51989         (WebCore::HTMLInputElement::aboutToUnload): Ditto.
   51990         (WebCore::HTMLInputElement::dispatchFocusEvent): Ditto.
   51991         (WebCore::HTMLInputElement::dispatchBlurEvent): Ditto.
   51992         (WebCore::HTMLInputElement::setSelectionRange): Moved to InputElement::updateSelectionRange, call it from here.
   51993         (WebCore::HTMLInputElement::parseMappedAttribute):
   51994         (WebCore::HTMLInputElement::size): Make virtual and override InputElements abstract version.
   51995         (WebCore::HTMLInputElement::copyNonAttributeProperties):
   51996         (WebCore::HTMLInputElement::value): Make virtual and override InputElements abstract version.
   51997         (WebCore::HTMLInputElement::setValue): Ditto.
   51998         (WebCore::HTMLInputElement::placeholderValue): Ditto.
   51999         (WebCore::HTMLInputElement::searchEventsShouldBeDispatched): Ditto.
   52000         (WebCore::HTMLInputElement::setValueFromRenderer): Ditto.
   52001         (WebCore::HTMLInputElement::setFileListFromRenderer): Use new code in InputElement::setValueFromRenderer
   52002         (WebCore::HTMLInputElement::defaultEventHandler):
   52003         (WebCore::HTMLInputElement::setDefaultName): Added as helper function for HTMLIsIndexElement.
   52004         (WebCore::HTMLInputElement::maxLength): Added accesor.
   52005         (WebCore::HTMLInputElement::constrainValue): Move functionality to InputElement::constrainValue.
   52006         (WebCore::HTMLInputElement::cacheSelection): Move functionality to InputElement::cacheSelection.
   52007         (WebCore::HTMLInputElement::selection):
   52008         (WebCore::HTMLInputElement::placeholderShouldBeVisible): Make virtual and override InputElements abstract version.
   52009         * html/HTMLInputElement.h:
   52010         (WebCore::HTMLInputElement::isTextField):
   52011         (WebCore::HTMLInputElement::isSearchField):
   52012         (WebCore::HTMLInputElement::isAutofilled):
   52013         * html/HTMLIsIndexElement.cpp:
   52014         (WebCore::HTMLIsIndexElement::HTMLIsIndexElement):
   52015         * rendering/RenderTextControl.cpp:
   52016         (WebCore::RenderTextControl::formControlElement):
   52017         * rendering/RenderTextControlSingleLine.cpp:
   52018         (WebCore::RenderTextControlSingleLine::placeholderShouldBeVisible):
   52019         (WebCore::RenderTextControlSingleLine::addSearchResult):
   52020         (WebCore::RenderTextControlSingleLine::stopSearchEventTimer):
   52021         (WebCore::RenderTextControlSingleLine::showPopup):
   52022         (WebCore::RenderTextControlSingleLine::hidePopup):
   52023         (WebCore::RenderTextControlSingleLine::subtreeHasChanged):
   52024         (WebCore::RenderTextControlSingleLine::capsLockStateMayHaveChanged):
   52025         (WebCore::RenderTextControlSingleLine::preferredContentWidth):
   52026         (WebCore::RenderTextControlSingleLine::createSubtreeIfNeeded):
   52027         (WebCore::RenderTextControlSingleLine::updateFromElement):
   52028         (WebCore::RenderTextControlSingleLine::cacheSelection):
   52029         (WebCore::RenderTextControlSingleLine::createInnerBlockStyle):
   52030         (WebCore::RenderTextControlSingleLine::createResultsButtonStyle):
   52031         (WebCore::RenderTextControlSingleLine::createCancelButtonStyle):
   52032         (WebCore::RenderTextControlSingleLine::updateCancelButtonVisibility):
   52033         (WebCore::RenderTextControlSingleLine::startSearchEventTimer):
   52034         (WebCore::RenderTextControlSingleLine::searchEventTimerFired):
   52035         (WebCore::RenderTextControlSingleLine::valueChanged):
   52036         (WebCore::RenderTextControlSingleLine::setTextFromItem):
   52037         (WebCore::RenderTextControlSingleLine::inputElement):
   52038         * rendering/RenderTextControlSingleLine.h:
   52039 
   52040 2009-01-20  Dirk Schulze  <krit (a] webkit.org>
   52041 
   52042         Reviewed by Nikolas Zimmermann.
   52043 
   52044         Make SVG pattern platform independent and remove platform code.
   52045 
   52046         Make SVGPattern platform independent
   52047         https://bugs.webkit.org/show_bug.cgi?id=21205
   52048 
   52049         * GNUmakefile.am:
   52050         * WebCore.pro:
   52051         * WebCore.vcproj/WebCore.vcproj:
   52052         * WebCore.xcodeproj/project.pbxproj:
   52053         * platform/graphics/GraphicsContext.h:
   52054         * platform/graphics/cg/GraphicsContextCG.cpp:
   52055         (WebCore::GraphicsContext::applyStrokePattern):
   52056         (WebCore::GraphicsContext::applyFillPattern):
   52057         (WebCore::GraphicsContext::drawPath):
   52058         (WebCore::GraphicsContext::fillPath):
   52059         (WebCore::GraphicsContext::strokePath):
   52060         (WebCore::GraphicsContext::fillRect):
   52061         (WebCore::GraphicsContext::strokeRect):
   52062         * svg/graphics/SVGPaintServerPattern.cpp:
   52063         (WebCore::SVGPaintServerPattern::SVGPaintServerPattern):
   52064         (WebCore::SVGPaintServerPattern::~SVGPaintServerPattern):
   52065         (WebCore::SVGPaintServerPattern::setup):
   52066         (WebCore::SVGPaintServerPattern::renderPath):
   52067         (WebCore::SVGPaintServerPattern::teardown):
   52068         * svg/graphics/SVGPaintServerPattern.h:
   52069         * svg/graphics/cairo/SVGPaintServerPatternCairo.cpp: Removed.
   52070         * svg/graphics/cg/SVGPaintServerPatternCg.cpp: Removed.
   52071         * svg/graphics/qt/SVGPaintServerPatternQt.cpp: Removed.
   52072         * svg/graphics/skia/SVGPaintServerPatternSkia.cpp: Removed.
   52073 
   52074 2009-01-20  Darin Fisher  <darin (a] chromium.org>
   52075 
   52076         Reviewed by Eric Seidel.
   52077 
   52078         https://bugs.webkit.org/show_bug.cgi?id=23436
   52079         Upstream rendering/RenderThemeChromium*
   52080 
   52081         * rendering/RenderThemeChromiumGtk.cpp: Added.
   52082         * rendering/RenderThemeChromiumGtk.h: Added.
   52083         * rendering/RenderThemeChromiumMac.h: Added.
   52084         * rendering/RenderThemeChromiumMac.mm: Added.
   52085         * rendering/RenderThemeChromiumWin.cpp: Added.
   52086         * rendering/RenderThemeChromiumWin.h: Added.
   52087 
   52088 2009-01-20  Darin Adler  <darin (a] apple.com>
   52089 
   52090         Reviewed by Mark Rowe.
   52091 
   52092         Bug 23352: Turn on more compiler warnings in the Mac build
   52093         https://bugs.webkit.org/show_bug.cgi?id=23352
   52094 
   52095         First patch: Fix some simple cases of various warnings.
   52096 
   52097         * platform/DeprecatedPtrListImpl.cpp:
   52098         (WebCore::DeprecatedPtrListImpl::insert): Use const_cast to change const-ness.
   52099         * platform/graphics/mac/SimpleFontDataMac.mm:
   52100         (WebCore::SimpleFontData::containsCharacters): Ditto.
   52101 
   52102         * platform/text/PlatformString.h: Overload for short and unsigned short to avoid
   52103         ambiguity leading to warnings.
   52104         * platform/text/String.cpp:
   52105         (WebCore::String::number): Implemented overloads.
   52106 
   52107         * platform/text/TextStream.cpp:
   52108         (WebCore::TextStream::operator<<): Overload for bool to avoid ambiguity leading
   52109         to warnings.
   52110         * platform/text/TextStream.h: Ditto.
   52111 
   52112         * rendering/InlineFlowBox.h: Fix declaration that was specifying the wrong type.
   52113 
   52114         * svg/graphics/filters/cg/WKLinearTransferFilter.m: Fix stray characters after
   52115         #endif that should be a comment instead.
   52116         * svg/graphics/filters/cg/WKSpecularLightingFilter.h: Ditto.
   52117 
   52118         * xml/XPathPath.h: Remove unneeded redundant declaration.
   52119 
   52120 2009-01-20  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   52121 
   52122         Build fix for WML enabled builds, not reviewed.
   52123 
   52124         Fix unused variable warning.
   52125 
   52126         * wml/WMLGoElement.cpp:
   52127         (WebCore::WMLGoElement::executeTask):
   52128 
   52129 2009-01-20  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   52130 
   52131         Build fix for WML enabled builds, not reviewed.
   52132 
   52133         Rename 'continuation' to 'virtualContinuation'.
   52134 
   52135         * wml/WMLAElement.cpp:
   52136         (WebCore::WMLAElement::isKeyboardFocusable):
   52137 
   52138 2009-01-20  Oliver Hunt  <oliver (a] apple.com>
   52139 
   52140         RS=Dan Bernstein
   52141 
   52142         Move runtime/ByteArray to wtf/ByteArray
   52143 
   52144         * ForwardingHeaders/wtf/ByteArray.h: Renamed from WebCore/ForwardingHeaders/runtime/ByteArray.h.
   52145         * html/CanvasRenderingContext2D.cpp:
   52146         * html/ImageData.cpp:
   52147         (WebCore::ImageData::ImageData):
   52148         * html/ImageData.h:
   52149         (WebCore::ImageData::data):
   52150 
   52151 2009-01-20  Darin Fisher  <darin (a] chromium.org>
   52152 
   52153         Reviewed by Sam Weinig.
   52154 
   52155         https://bugs.webkit.org/show_bug.cgi?id=23391
   52156         Upstream plugins/chromium/
   52157 
   52158         * plugins/chromium: Added.
   52159         * plugins/chromium/PluginDataChromium.cpp: Added.
   52160 
   52161 2009-01-19  Steve Falkenburg  <sfalken (a] apple.com>
   52162 
   52163         Fix Windows release build.
   52164         Move SVG files into all-in-one file for Windows build.
   52165 
   52166         * WebCore.vcproj/WebCore.vcproj:
   52167         * svg/SVGAllInOne.cpp: Added.
   52168 
   52169 2009-01-19  Steve Falkenburg  <sfalken (a] apple.com>
   52170 
   52171         Partial build fix.
   52172         Move new derived sources into all-in-one DerivedSources.cpp
   52173 
   52174         * DerivedSources.cpp:
   52175         * WebCore.vcproj/WebCore.vcproj:
   52176 
   52177 2009-01-19  Sam Weinig  <sam (a] webkit.org>
   52178 
   52179         Fix Qt build.
   52180 
   52181         * bridge/qt/qt_instance.cpp:
   52182         (JSC::Bindings::QtInstance::mark):
   52183         * bridge/qt/qt_runtime.cpp:
   52184         (JSC::Bindings::valueRealType):
   52185         (JSC::Bindings::convertValueToQVariant):
   52186         (JSC::Bindings::QtRuntimeConnectionMethod::call):
   52187         (JSC::Bindings::QtConnectionObject::execute):
   52188 
   52189 2009-01-19  Sam Weinig  <sam (a] webkit.org>
   52190 
   52191         Fix wx build.
   52192 
   52193         * plugins/PluginView.cpp:
   52194         (WebCore::getString):
   52195 
   52196 2009-01-19  Sam Weinig  <sam (a] webkit.org>
   52197 
   52198         Rubber-stamped by Gavin Barraclough.
   52199 
   52200         Remove temporary operator-> from JSValuePtr.
   52201 
   52202         * WebCore.xcodeproj/project.pbxproj:
   52203         * bindings/js/JSAudioConstructor.cpp:
   52204         (WebCore::constructAudio):
   52205         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
   52206         (WebCore::toHTMLCanvasStyle):
   52207         (WebCore::JSCanvasRenderingContext2D::setFillColor):
   52208         (WebCore::JSCanvasRenderingContext2D::setStrokeColor):
   52209         (WebCore::JSCanvasRenderingContext2D::strokeRect):
   52210         (WebCore::JSCanvasRenderingContext2D::drawImage):
   52211         (WebCore::JSCanvasRenderingContext2D::drawImageFromRect):
   52212         (WebCore::JSCanvasRenderingContext2D::setShadow):
   52213         (WebCore::JSCanvasRenderingContext2D::createPattern):
   52214         (WebCore::JSCanvasRenderingContext2D::putImageData):
   52215         (WebCore::JSCanvasRenderingContext2D::fillText):
   52216         (WebCore::JSCanvasRenderingContext2D::strokeText):
   52217         * bindings/js/JSClipboardCustom.cpp:
   52218         (WebCore::JSClipboard::clearData):
   52219         (WebCore::JSClipboard::getData):
   52220         (WebCore::JSClipboard::setData):
   52221         (WebCore::JSClipboard::setDragImage):
   52222         * bindings/js/JSCustomPositionCallback.cpp:
   52223         (WebCore::JSCustomPositionCallback::handleEvent):
   52224         * bindings/js/JSCustomPositionErrorCallback.cpp:
   52225         (WebCore::JSCustomPositionErrorCallback::handleEvent):
   52226         * bindings/js/JSCustomSQLStatementCallback.cpp:
   52227         (WebCore::JSCustomSQLStatementCallback::handleEvent):
   52228         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
   52229         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
   52230         * bindings/js/JSCustomSQLTransactionCallback.cpp:
   52231         (WebCore::JSCustomSQLTransactionCallback::handleEvent):
   52232         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
   52233         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
   52234         * bindings/js/JSCustomVoidCallback.cpp:
   52235         (WebCore::JSCustomVoidCallback::handleEvent):
   52236         (WebCore::toVoidCallback):
   52237         * bindings/js/JSCustomXPathNSResolver.cpp:
   52238         (WebCore::JSCustomXPathNSResolver::create):
   52239         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
   52240         * bindings/js/JSDOMApplicationCacheCustom.cpp:
   52241         (WebCore::JSDOMApplicationCache::hasItem):
   52242         (WebCore::JSDOMApplicationCache::add):
   52243         (WebCore::JSDOMApplicationCache::remove):
   52244         (WebCore::JSDOMApplicationCache::addEventListener):
   52245         (WebCore::JSDOMApplicationCache::removeEventListener):
   52246         * bindings/js/JSDOMBinding.cpp:
   52247         (WebCore::valueToStringWithNullCheck):
   52248         (WebCore::valueToStringWithUndefinedOrNullCheck):
   52249         (WebCore::reportException):
   52250         * bindings/js/JSDOMGlobalObject.cpp:
   52251         (WebCore::JSDOMGlobalObject::findJSEventListener):
   52252         (WebCore::JSDOMGlobalObject::findOrCreateJSEventListener):
   52253         (WebCore::JSDOMGlobalObject::findJSUnprotectedEventListener):
   52254         (WebCore::JSDOMGlobalObject::findOrCreateJSUnprotectedEventListener):
   52255         * bindings/js/JSDOMStringListCustom.cpp:
   52256         (WebCore::JSDOMStringList::item):
   52257         * bindings/js/JSDOMWindowBase.cpp:
   52258         (WebCore::JSDOMWindowBase::getOwnPropertySlot):
   52259         (windowProtoFuncOpen):
   52260         (WebCore::toJSDOMWindow):
   52261         * bindings/js/JSDOMWindowCustom.cpp:
   52262         (WebCore::JSDOMWindow::setLocation):
   52263         (WebCore::JSDOMWindow::postMessage):
   52264         (WebCore::setTimeoutOrInterval):
   52265         (WebCore::JSDOMWindow::clearTimeout):
   52266         (WebCore::JSDOMWindow::clearInterval):
   52267         (WebCore::JSDOMWindow::atob):
   52268         (WebCore::JSDOMWindow::btoa):
   52269         (WebCore::JSDOMWindow::addEventListener):
   52270         (WebCore::JSDOMWindow::removeEventListener):
   52271         (WebCore::toDOMWindow):
   52272         * bindings/js/JSDatabaseCustom.cpp:
   52273         (WebCore::JSDatabase::changeVersion):
   52274         (WebCore::JSDatabase::transaction):
   52275         * bindings/js/JSDocumentCustom.cpp:
   52276         (WebCore::JSDocument::setLocation):
   52277         * bindings/js/JSElementCustom.cpp:
   52278         (WebCore::JSElement::setAttribute):
   52279         (WebCore::JSElement::setAttributeNS):
   52280         * bindings/js/JSEventListener.cpp:
   52281         (WebCore::JSAbstractEventListener::handleEvent):
   52282         (WebCore::JSLazyEventListener::parseCode):
   52283         * bindings/js/JSEventTargetNodeCustom.cpp:
   52284         (WebCore::JSEventTargetNode::addEventListener):
   52285         (WebCore::JSEventTargetNode::removeEventListener):
   52286         * bindings/js/JSGeolocationCustom.cpp:
   52287         (WebCore::createPositionOptions):
   52288         (WebCore::JSGeolocation::getCurrentPosition):
   52289         (WebCore::JSGeolocation::watchPosition):
   52290         * bindings/js/JSHTMLCollectionCustom.cpp:
   52291         (WebCore::callHTMLCollection):
   52292         (WebCore::JSHTMLCollection::canGetItemsForName):
   52293         (WebCore::JSHTMLCollection::item):
   52294         (WebCore::JSHTMLCollection::namedItem):
   52295         * bindings/js/JSHTMLDocumentCustom.cpp:
   52296         (WebCore::JSHTMLDocument::open):
   52297         (WebCore::writeHelper):
   52298         * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
   52299         (WebCore::JSHTMLOptionsCollection::setLength):
   52300         (WebCore::JSHTMLOptionsCollection::add):
   52301         * bindings/js/JSHTMLSelectElementCustom.cpp:
   52302         (WebCore::JSHTMLSelectElement::remove):
   52303         (WebCore::selectIndexSetter):
   52304         * bindings/js/JSImageConstructor.cpp:
   52305         (WebCore::constructImage):
   52306         * bindings/js/JSInspectedObjectWrapper.cpp:
   52307         (WebCore::JSInspectedObjectWrapper::wrap):
   52308         (WebCore::JSInspectedObjectWrapper::prepareIncomingValue):
   52309         * bindings/js/JSInspectorCallbackWrapper.cpp:
   52310         (WebCore::JSInspectorCallbackWrapper::wrap):
   52311         * bindings/js/JSJavaScriptCallFrameCustom.cpp:
   52312         (WebCore::JSJavaScriptCallFrame::evaluate):
   52313         * bindings/js/JSLocationCustom.cpp:
   52314         (WebCore::JSLocation::setHref):
   52315         (WebCore::JSLocation::setProtocol):
   52316         (WebCore::JSLocation::setHost):
   52317         (WebCore::JSLocation::setHostname):
   52318         (WebCore::JSLocation::setPort):
   52319         (WebCore::JSLocation::setPathname):
   52320         (WebCore::JSLocation::setSearch):
   52321         (WebCore::JSLocation::setHash):
   52322         (WebCore::JSLocation::replace):
   52323         (WebCore::JSLocation::assign):
   52324         * bindings/js/JSMessageChannelConstructor.cpp:
   52325         (WebCore::JSMessageChannelConstructor::mark):
   52326         * bindings/js/JSMessagePortCustom.cpp:
   52327         (WebCore::JSMessagePort::startConversation):
   52328         (WebCore::JSMessagePort::addEventListener):
   52329         (WebCore::JSMessagePort::removeEventListener):
   52330         * bindings/js/JSNodeFilterCondition.cpp:
   52331         (WebCore::JSNodeFilterCondition::mark):
   52332         (WebCore::JSNodeFilterCondition::acceptNode):
   52333         * bindings/js/JSNodeFilterCondition.h:
   52334         * bindings/js/JSNodeFilterCustom.cpp:
   52335         (WebCore::toNodeFilter):
   52336         * bindings/js/JSNodeListCustom.cpp:
   52337         (WebCore::callNodeList):
   52338         * bindings/js/JSOptionConstructor.cpp:
   52339         (WebCore::constructHTMLOptionElement):
   52340         * bindings/js/JSQuarantinedObjectWrapper.cpp:
   52341         (WebCore::JSQuarantinedObjectWrapper::asWrapper):
   52342         (WebCore::JSQuarantinedObjectWrapper::construct):
   52343         * bindings/js/JSSQLResultSetRowListCustom.cpp:
   52344         (WebCore::JSSQLResultSetRowList::item):
   52345         * bindings/js/JSSQLTransactionCustom.cpp:
   52346         (WebCore::JSSQLTransaction::executeSql):
   52347         * bindings/js/JSSVGElementInstanceCustom.cpp:
   52348         (WebCore::JSSVGElementInstance::addEventListener):
   52349         (WebCore::JSSVGElementInstance::removeEventListener):
   52350         * bindings/js/JSSVGLengthCustom.cpp:
   52351         (WebCore::JSSVGLength::convertToSpecifiedUnits):
   52352         * bindings/js/JSSVGMatrixCustom.cpp:
   52353         (WebCore::JSSVGMatrix::translate):
   52354         (WebCore::JSSVGMatrix::scale):
   52355         (WebCore::JSSVGMatrix::scaleNonUniform):
   52356         (WebCore::JSSVGMatrix::rotate):
   52357         (WebCore::JSSVGMatrix::rotateFromVector):
   52358         (WebCore::JSSVGMatrix::skewX):
   52359         (WebCore::JSSVGMatrix::skewY):
   52360         * bindings/js/JSSVGPathSegListCustom.cpp:
   52361         (WebCore::JSSVGPathSegList::getItem):
   52362         (WebCore::JSSVGPathSegList::insertItemBefore):
   52363         (WebCore::JSSVGPathSegList::replaceItem):
   52364         (WebCore::JSSVGPathSegList::removeItem):
   52365         * bindings/js/JSSVGPointListCustom.cpp:
   52366         (WebCore::JSSVGPointList::getItem):
   52367         (WebCore::JSSVGPointList::insertItemBefore):
   52368         (WebCore::JSSVGPointList::replaceItem):
   52369         (WebCore::JSSVGPointList::removeItem):
   52370         * bindings/js/JSSVGTransformListCustom.cpp:
   52371         (WebCore::JSSVGTransformList::getItem):
   52372         (WebCore::JSSVGTransformList::insertItemBefore):
   52373         (WebCore::JSSVGTransformList::replaceItem):
   52374         (WebCore::JSSVGTransformList::removeItem):
   52375         * bindings/js/JSStorageCustom.cpp:
   52376         (WebCore::JSStorage::deleteProperty):
   52377         (WebCore::JSStorage::customPut):
   52378         * bindings/js/JSWebKitCSSMatrixConstructor.cpp:
   52379         (WebCore::constructWebKitCSSMatrix):
   52380         * bindings/js/JSWorkerConstructor.cpp:
   52381         (WebCore::constructWorker):
   52382         * bindings/js/JSWorkerContextCustom.cpp:
   52383         (WebCore::JSWorkerContext::addEventListener):
   52384         (WebCore::JSWorkerContext::removeEventListener):
   52385         * bindings/js/JSWorkerCustom.cpp:
   52386         (WebCore::JSWorker::addEventListener):
   52387         (WebCore::JSWorker::removeEventListener):
   52388         * bindings/js/JSXMLHttpRequestCustom.cpp:
   52389         (WebCore::JSXMLHttpRequest::open):
   52390         (WebCore::JSXMLHttpRequest::setRequestHeader):
   52391         (WebCore::JSXMLHttpRequest::send):
   52392         (WebCore::JSXMLHttpRequest::getResponseHeader):
   52393         (WebCore::JSXMLHttpRequest::overrideMimeType):
   52394         (WebCore::JSXMLHttpRequest::addEventListener):
   52395         (WebCore::JSXMLHttpRequest::removeEventListener):
   52396         * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
   52397         (WebCore::JSXMLHttpRequestUpload::addEventListener):
   52398         (WebCore::JSXMLHttpRequestUpload::removeEventListener):
   52399         * bindings/js/JSXSLTProcessorCustom.cpp:
   52400         (WebCore::JSXSLTProcessor::importStylesheet):
   52401         (WebCore::JSXSLTProcessor::transformToFragment):
   52402         (WebCore::JSXSLTProcessor::transformToDocument):
   52403         (WebCore::JSXSLTProcessor::setParameter):
   52404         (WebCore::JSXSLTProcessor::getParameter):
   52405         (WebCore::JSXSLTProcessor::removeParameter):
   52406         * bindings/js/ScheduledAction.cpp:
   52407         (WebCore::ScheduledAction::executeFunctionInContext):
   52408         * bindings/js/ScriptCallStack.cpp:
   52409         (WebCore::ScriptCallStack::initialize):
   52410         * bindings/js/ScriptController.cpp:
   52411         (WebCore::ScriptController::createScriptObjectForPluginElement):
   52412         * bindings/js/ScriptValue.cpp:
   52413         (WebCore::ScriptValue::getString):
   52414         (WebCore::ScriptValue::isNull):
   52415         (WebCore::ScriptValue::isUndefined):
   52416         * bindings/objc/WebScriptObject.mm:
   52417         (-[WebScriptObject callWebScriptMethod:withArguments:]):
   52418         (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
   52419         * bindings/scripts/CodeGeneratorJS.pm:
   52420         * bridge/NP_jsobject.cpp:
   52421         (_NPN_InvokeDefault):
   52422         (_NPN_Invoke):
   52423         (_NPN_HasMethod):
   52424         (_NPN_Construct):
   52425         * bridge/c/c_utility.cpp:
   52426         (JSC::Bindings::convertValueToNPVariant):
   52427         * bridge/jni/jni_instance.cpp:
   52428         (JavaInstance::invokeMethod):
   52429         * bridge/jni/jni_jsobject.mm:
   52430         (JavaJSObject::call):
   52431         (JavaJSObject::convertValueToJObject):
   52432         * bridge/jni/jni_runtime.cpp:
   52433         (JavaField::dispatchValueFromInstance):
   52434         (JavaField::valueFromInstance):
   52435         (JavaField::dispatchSetValueToInstance):
   52436         (JavaField::setValueToInstance):
   52437         * bridge/jni/jni_utility.cpp:
   52438         (JSC::Bindings::convertArrayInstanceToJavaArray):
   52439         (JSC::Bindings::convertValueToJValue):
   52440         * bridge/objc/objc_runtime.mm:
   52441         (JSC::Bindings::callObjCFallbackObject):
   52442         * bridge/objc/objc_utility.mm:
   52443         (JSC::Bindings::convertValueToObjcValue):
   52444         * bridge/runtime_method.cpp:
   52445         (JSC::callRuntimeMethod):
   52446         * bridge/runtime_object.cpp:
   52447         (JSC::RuntimeObjectImp::getOwnPropertySlot):
   52448         (JSC::callRuntimeConstructor):
   52449 
   52450 2009-01-20  Gustavo Noronha Silva  <gns (a] gnome.org>
   52451 
   52452          Reviewed by Mark Rowe.
   52453 
   52454          https://bugs.webkit.org/show_bug.cgi?id=23419
   52455          removal of FramePrivate.h breaks GTK+'s make dist
   52456 
   52457          * GNUmakefile.am: No longer mention FramePrivate.h in our build,
   52458          since it was removed.
   52459 
   52460 2009-01-20  Alexander V. Butenko  <alex (a] digiqube.com>
   52461 
   52462         Reviewed by Holger Freyther.
   52463 
   52464         http://bugs.webkit.org/show_bug.cgi?id=23116
   52465         [GTK] Fix crash due a callback called from GIO after the
   52466         destruction of the ResourceHandle
   52467 
   52468         * platform/network/soup/ResourceHandleSoup.cpp:
   52469         (WebCore::ResourceHandle::cancel): Only call didFinishLoading if
   52470         'client' is set, otherwise cancelling a load could lead to a crash.
   52471 
   52472 2009-01-19  Simon Fraser  <simon.fraser (a] apple.com>
   52473 
   52474         Build fix: remove duplicate entries in the Xcode project, and
   52475         sort the project with sort-Xcode-project-file .
   52476 
   52477         * WebCore.xcodeproj/project.pbxproj:
   52478 
   52479 2009-01-19  Simon Fraser  <simon.fraser (a] apple.com>
   52480 
   52481         Reviewed by Dave Hyatt
   52482 
   52483         https://bugs.webkit.org/show_bug.cgi?id=18078
   52484 
   52485         Support animations and transitions of shorthand properties by creating
   52486         PropertyWrappers that simply wrap a vector of atomic wrappers, and implement
   52487         equal() and blend(). Build that collection of shorthand wrappers using the
   52488         shorthand map that CSSMutableStyleDeclaration already has. Skip comparing these
   52489         shorthand wrappers during 'all' transitions.
   52490 
   52491         * GNUmakefile.am:
   52492         * WebCore.pro:
   52493         * WebCore.scons:
   52494         * WebCore.vcproj/WebCore.vcproj:
   52495         * WebCore.xcodeproj/project.pbxproj:
   52496         * WebCoreSources.bkl:
   52497         Add CSSPropertyLonghand.h/cpp.
   52498 
   52499         * css/CSSMutableStyleDeclaration.cpp:
   52500         (WebCore::CSSMutableStyleDeclaration::removeShorthandProperty):
   52501         Move CSSPropertyLonghand to its own file.
   52502 
   52503         * css/CSSPropertyLonghand.cpp: Added.
   52504         (WebCore::initShorthandMap):
   52505         (WebCore::longhandForProperty):
   52506         * css/CSSPropertyLonghand.h: Added.
   52507         (WebCore::CSSPropertyLonghand::CSSPropertyLonghand):
   52508         (WebCore::CSSPropertyLonghand::properties):
   52509         (WebCore::CSSPropertyLonghand::length):
   52510         Code moved from CSSMutableStyleDeclaration.h/cpp
   52511 
   52512         * page/animation/AnimationBase.cpp:
   52513         (WebCore::PropertyWrapperBase::isShorthandWrapper):
   52514         (WebCore::ShorthandPropertyWrapper::ShorthandPropertyWrapper):
   52515         (WebCore::ShorthandPropertyWrapper::isShorthandWrapper):
   52516         (WebCore::ShorthandPropertyWrapper::equals):
   52517         (WebCore::ShorthandPropertyWrapper::blend):
   52518         Add a wrapper class for shorthand properties that simply wraps an
   52519         array of atomic property wrappers.
   52520 
   52521         (WebCore::ensurePropertyMap):
   52522         (WebCore::addPropertyWrapper):
   52523         (WebCore::addShorthandProperties):
   52524         (WebCore::wrapperForProperty):
   52525         (WebCore::AnimationBase::propertiesEqual):
   52526         (WebCore::AnimationBase::getPropertyAtIndex):
   52527         Some minor refactoring to re-use wrapperForProperty(), and ensure that gPropertyWrapperMap
   52528         is filled with an invalid index (-1), not 0.
   52529 
   52530         (WebCore::AnimationBase::blendProperties):
   52531         * page/animation/AnimationBase.h:
   52532         * page/animation/CompositeAnimation.cpp:
   52533         (WebCore::CompositeAnimationPrivate::updateTransitions):
   52534         When doing 'all' transitions, skip shorthand wrappers, since 'all' transitions
   52535         just need to compare all the atomic property wrappers.
   52536 
   52537 2009-01-19  Oliver Hunt  <oliver (a] apple.com>
   52538 
   52539         Reviewed by NOBODY (Build fix).
   52540 
   52541         Actually add the new header.
   52542 
   52543         * dom/GenericWorkerTask.h: Added.
   52544 
   52545 2009-01-19  David Levin  <levin (a] chromium.org>
   52546 
   52547         Reviewed by Alexey Proskuryakov.
   52548 
   52549         https://bugs.webkit.org/show_bug.cgi?id=22720
   52550 
   52551         Provide a generic class to handle the pattern of task callbacks across worker/parent threads.  It
   52552         only works for methods that need 6 parameters but similar classes could be added as needed for
   52553         other numbers of parameters.
   52554 
   52555         Add addMessage and resourceRetrievedByXMLHttpRequest to ScriptExecutionContext.
   52556 
   52557         Use these methods and others to remove document() from XMLHttpRequest in a few more places.
   52558 
   52559         No observable change in behavior, so no test.
   52560 
   52561         * GNUmakefile.am:
   52562         * WebCore.vcproj/WebCore.vcproj:
   52563         * WebCore.xcodeproj/project.pbxproj:
   52564         Sorted project file while adding GenericWorkerTask.h
   52565 
   52566         * bindings/js/ScriptString.h:
   52567         (WebCore::ScriptString::operator=):
   52568         (WebCore::ScriptString::operator+=):
   52569         (WebCore::ScriptString::operator==):
   52570         (WebCore::ScriptString::operator!=):
   52571         Removed unnecessary JSLock.
   52572 
   52573         * dom/Document.cpp:
   52574         (WebCore::Document::addMessage):
   52575         (WebCore::Document::resourceRetrievedByXMLHttpRequest):
   52576         * dom/Document.h:
   52577         * dom/GenericWorkerTask.h: Added.
   52578         (WebCore::GenericWorkerTaskBase::GenericWorkerTaskBase):
   52579         (WebCore::GenericWorkerTaskBase::canPerformTask):
   52580         (WebCore::GenericWorkerTask6::create):
   52581         (WebCore::GenericWorkerTask6::GenericWorkerTask6):
   52582         (WebCore::GenericWorkerTask6::performTask):
   52583         (WebCore::createCallbackTask):
   52584         * dom/ScriptExecutionContext.h:
   52585         * dom/WorkerContext.cpp:
   52586         (WebCore::addMessageTask):
   52587         (WebCore::WorkerContext::addMessage):
   52588         (WebCore::WorkerContext::resourceRetrievedByXMLHttpRequest):
   52589         (WebCore::WorkerContext::postTaskToParentContext):
   52590         * dom/WorkerContext.h:
   52591         * dom/WorkerMessagingProxy.cpp:
   52592         (WebCore::WorkerMessagingProxy::postTaskToParentContext):
   52593         * dom/WorkerMessagingProxy.h:
   52594         * dom/WorkerThread.h:
   52595         * xml/XMLHttpRequest.cpp:
   52596         (WebCore::XMLHttpRequest::XMLHttpRequest):
   52597         (WebCore::XMLHttpRequest::dropProtection):
   52598         (WebCore::reportUnsafeUsage):
   52599         (WebCore::XMLHttpRequest::setRequestHeader):
   52600         (WebCore::XMLHttpRequest::getResponseHeader):
   52601         (WebCore::XMLHttpRequest::didFinishLoading):
   52602         * xml/XMLHttpRequest.h:
   52603         (WebCore::XMLHttpRequest::create):
   52604 
   52605 
   52606 2009-01-19  Chris Fleizach  <cfleizach (a] apple.com>
   52607 
   52608         Reviewed by Beth Dakin.
   52609 
   52610         Bug 23422: AX: AXLinks should expose access key information
   52611         https://bugs.webkit.org/show_bug.cgi?id=23422
   52612 
   52613         Test: accessibility/accesskey.html
   52614 
   52615         * page/mac/AccessibilityObjectWrapper.mm:
   52616         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
   52617         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
   52618 
   52619 2009-01-19  Alexey Proskuryakov  <ap (a] webkit.org>
   52620 
   52621         Reviewed by Anders Carlsson.
   52622 
   52623         https://bugs.webkit.org/show_bug.cgi?id=23417
   52624         Implement application cache obsolete state
   52625 
   52626         Test: http/tests/appcache/remove-cache.html
   52627 
   52628         * bindings/js/JSDOMApplicationCacheCustom.cpp:
   52629         (WebCore::JSDOMApplicationCache::mark):
   52630         * dom/EventNames.h:
   52631         * loader/appcache/DOMApplicationCache.h:
   52632         (WebCore::DOMApplicationCache::Status):
   52633         (WebCore::DOMApplicationCache::setOnobsolete):
   52634         (WebCore::DOMApplicationCache::onobsolete):
   52635         * loader/appcache/DOMApplicationCache.idl:
   52636         Added "obsolete" event and status.
   52637 
   52638         * loader/appcache/ApplicationCacheGroup.h:
   52639         (WebCore::ApplicationCacheGroup::savedNewestCachePointer): Removed, there is no longer
   52640         any need to track what the newest cache was during teardown.
   52641         (WebCore::ApplicationCacheGroup::updateStatus): Renamed Status to UpdateStatus, reducing
   52642         confusion with cache group lifecycle status.
   52643         (WebCore::ApplicationCacheGroup::m_isObsolete): Added an obsolete state flag.
   52644 
   52645         * loader/appcache/ApplicationCacheGroup.cpp:
   52646         (WebCore::ApplicationCacheGroup::ApplicationCacheGroup): Initialize m_isObsolete.
   52647         (WebCore::ApplicationCacheGroup::cacheForMainRequest): Assert that the returned cache does
   52648         not belong to an obsolete group.
   52649         (WebCore::ApplicationCacheGroup::fallbackCacheForMainRequest): Ditto.
   52650         (WebCore::ApplicationCacheGroup::disassociateDocumentLoader): Disassociation can now happen
   52651         via a JS swapCache() call, not only when the loader is destroyed.
   52652         (WebCore::ApplicationCacheGroup::cacheDestroyed): Don't track m_savedNewestCachePointer.
   52653         (WebCore::ApplicationCacheGroup::setNewestCache): Remove old newest cache from storage is
   52654         a caller responsibility, because this method is also used when loading caches from disk.
   52655         (WebCore::ApplicationCacheGroup::makeObsolete): Added. Mark the cache group as obsolete, and
   52656         inform cache storage, so that it could be removed.
   52657         (WebCore::ApplicationCacheGroup::didFailToLoadManifest): Removed, as all this method did
   52658         was call cacheUpdateFailed().
   52659         (WebCore::ApplicationCacheGroup::didReceiveResponse): Added a FIXME about correct failure
   52660         handing.
   52661         (WebCore::ApplicationCacheGroup::didFail): Ditto.
   52662         (WebCore::ApplicationCacheGroup::didReceiveManifestResponse): Call a new manifestNotFound()
   52663         method for 404 and 410 responses.
   52664         (WebCore::ApplicationCacheGroup::didFinishLoadingManifest): Call cacheUpdateFailed()
   52665         directly, instead of the removed didFailToLoadManifest().
   52666         (WebCore::ApplicationCacheGroup::manifestNotFound): Implement "remove a cache" algorithm.
   52667         (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete): Remove superceded cache from storage
   52668         after update successfully finishes (moved from setNewestCache()).
   52669         (WebCore::ApplicationCacheGroup::associateDocumentLoaderWithCache): Revive the group using
   52670         an explicitly passed pointer, without the need to save it during teardown.
   52671 
   52672         * loader/DocumentLoader.cpp: (WebCore::DocumentLoader::~DocumentLoader):
   52673         Call the general ApplicationCacheGroup::disassociateDocumentLoader() method.
   52674 
   52675         * loader/appcache/ApplicationCacheStorage.h: Added a cacheGroupMadeObsolete() method, updated
   52676         some comments.
   52677 
   52678         * loader/appcache/ApplicationCacheStorage.cpp:
   52679         (WebCore::ApplicationCacheStorage::cacheGroupForURL): Assert that iterated caches are not
   52680         obsolete.
   52681         (WebCore::ApplicationCacheStorage::fallbackCacheGroupForURL): Ditto.
   52682         (WebCore::ApplicationCacheStorage::cacheGroupDestroyed): Don't do anything for obsolete
   52683         groups, as they cannot be in storage.
   52684         (WebCore::ApplicationCacheStorage::cacheGroupMadeObsolete): Remove the cache group from storage
   52685         completely, so that a new one could replace it, if necessary.
   52686         (WebCore::ApplicationCacheStorage::storeNewestCache): Added assertions.
   52687         (WebCore::ApplicationCacheStorage::remove): Remove cache group if its newest cache is removed.
   52688 
   52689         * loader/appcache/DOMApplicationCache.cpp:
   52690         (WebCore::DOMApplicationCache::status): Added support for OBSOLETE state.
   52691         (WebCore::DOMApplicationCache::swapCache): Disassociate document loader from cache if the
   52692         application was removed server-side.
   52693         (WebCore::DOMApplicationCache::callObsoleteListener): Added support for obsolete event.
   52694 
   52695         * loader/appcache/DOMApplicationCache.h:
   52696         (WebCore::DOMApplicationCache::Status):
   52697         (WebCore::DOMApplicationCache::setOnobsolete):
   52698         (WebCore::DOMApplicationCache::onobsolete):
   52699         Added support for OBSOLETE state and obsolete event.
   52700 
   52701         * loader/appcache/DOMApplicationCache.idl: Ditto.
   52702 
   52703 2009-01-19  Anders Carlsson  <andersca (a] apple.com>
   52704 
   52705         Reviewed by Kevin Decker.
   52706 
   52707         Allow plug-in views to return an instance directly.
   52708 
   52709         * bindings/js/ScriptControllerMac.mm:
   52710         (WebCore::ScriptController::createScriptInstanceForWidget):
   52711 
   52712 2009-01-19  Chris Fleizach  <cfleizach (a] apple.com>
   52713 
   52714         Reviewed by David Hyatt.
   52715 
   52716         AX: some buttons don't expose AXPress as an action
   52717         https://bugs.webkit.org/show_bug.cgi?id=23399
   52718 
   52719         Test: accessibility/button-press-action.html
   52720 
   52721         * page/AccessibilityRenderObject.cpp:
   52722         (WebCore::AccessibilityRenderObject::actionElement):
   52723 
   52724 2009-01-19  Adam Roben  <aroben (a] apple.com>
   52725 
   52726         Windows build fix
   52727 
   52728         * WebCore.vcproj/WebCore.vcproj: Copy headers from page/animation into
   52729         $WebKitOutputDir so that WebKit can access them.
   52730 
   52731         * html/HTMLBaseFontElement.cpp: Touched this file to cause a rebuild
   52732         and header copy.
   52733 
   52734 2009-01-19  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   52735 
   52736         Reviewed by Simon Hausmann.
   52737 
   52738         http://qt.nokia.com/developer/task-tracker/index_html?id=211228&method=entry
   52739 
   52740         [Qt] Show focus rect when a button gets the focus for the first time.
   52741         This is important at least for Windows style.
   52742 
   52743         * platform/qt/RenderThemeQt.cpp:
   52744         (WebCore::RenderThemeQt::applyTheme):
   52745 
   52746 2009-01-19  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   52747 
   52748         [Qt] Build fix after r39971.
   52749 
   52750         * platform/qt/LoggingQt.cpp:
   52751         (WebCore::InitializeLoggingChannelsIfNecessary):
   52752 
   52753 2009-01-18  Sam Weinig  <sam (a] webkit.org>
   52754 
   52755         Reviewed by Cameron Zwarich.
   52756 
   52757         Fix for https://bugs.webkit.org/show_bug.cgi?id=23415
   52758         Remove FramePrivate
   52759 
   52760         Minor PLT speedup.
   52761 
   52762         * WebCore.base.exp:
   52763         * WebCore.vcproj/WebCore.vcproj:
   52764         * WebCore.xcodeproj/project.pbxproj:
   52765         * loader/FrameLoader.cpp:
   52766         * page/Frame.cpp:
   52767         (WebCore::Frame::Frame):
   52768         (WebCore::Frame::~Frame):
   52769         (WebCore::Frame::init):
   52770         (WebCore::Frame::loader):
   52771         (WebCore::Frame::view):
   52772         (WebCore::Frame::setView):
   52773         (WebCore::Frame::script):
   52774         (WebCore::Frame::document):
   52775         (WebCore::Frame::setDocument):
   52776         (WebCore::Frame::settings):
   52777         (WebCore::Frame::selection):
   52778         (WebCore::Frame::editor):
   52779         (WebCore::Frame::selectionGranularity):
   52780         (WebCore::Frame::setSelectionGranularity):
   52781         (WebCore::Frame::dragCaretController):
   52782         (WebCore::Frame::animation):
   52783         (WebCore::Frame::mark):
   52784         (WebCore::Frame::setMark):
   52785         (WebCore::Frame::setCaretVisible):
   52786         (WebCore::Frame::clearCaretRectIfNeeded):
   52787         (WebCore::Frame::selectionLayoutChanged):
   52788         (WebCore::Frame::caretBlinkTimerFired):
   52789         (WebCore::Frame::paintCaret):
   52790         (WebCore::Frame::paintDragCaret):
   52791         (WebCore::Frame::zoomFactor):
   52792         (WebCore::Frame::isZoomFactorTextOnly):
   52793         (WebCore::Frame::shouldApplyTextZoom):
   52794         (WebCore::Frame::shouldApplyPageZoom):
   52795         (WebCore::Frame::setZoomFactor):
   52796         (WebCore::Frame::setPrinting):
   52797         (WebCore::Frame::setJSStatusBarText):
   52798         (WebCore::Frame::setJSDefaultStatusBarText):
   52799         (WebCore::Frame::jsStatusBarText):
   52800         (WebCore::Frame::jsDefaultStatusBarText):
   52801         (WebCore::Frame::setNeedsReapplyStyles):
   52802         (WebCore::Frame::needsReapplyStyles):
   52803         (WebCore::Frame::reapplyStyles):
   52804         (WebCore::Frame::isContentEditable):
   52805         (WebCore::Frame::updateSecureKeyboardEntryIfActive):
   52806         (WebCore::Frame::typingStyle):
   52807         (WebCore::Frame::setTypingStyle):
   52808         (WebCore::Frame::clearTypingStyle):
   52809         (WebCore::Frame::computeAndSetTypingStyle):
   52810         (WebCore::Frame::selectionComputedStyle):
   52811         (WebCore::Frame::applyEditingStyleToBodyElement):
   52812         (WebCore::Frame::removeEditingStyleFromBodyElement):
   52813         (WebCore::Frame::keepAlive):
   52814         (WebCore::Frame::cancelAllKeepAlive):
   52815         (WebCore::Frame::clearDOMWindow):
   52816         (WebCore::Frame::ownerElement):
   52817         (WebCore::Frame::ownerRenderer):
   52818         (WebCore::Frame::isDisconnected):
   52819         (WebCore::Frame::setIsDisconnected):
   52820         (WebCore::Frame::excludeFromTextSearch):
   52821         (WebCore::Frame::setExcludeFromTextSearch):
   52822         (WebCore::Frame::selectionBounds):
   52823         (WebCore::Frame::selectionTextRects):
   52824         (WebCore::Frame::isFrameSet):
   52825         (WebCore::Frame::currentForm):
   52826         (WebCore::Frame::forceLayout):
   52827         (WebCore::Frame::sendScrollEvent):
   52828         (WebCore::Frame::clearTimers):
   52829         (WebCore::Frame::styleForSelectionStart):
   52830         (WebCore::Frame::inViewSourceMode):
   52831         (WebCore::Frame::setInViewSourceMode):
   52832         (WebCore::Frame::markAllMatchesForText):
   52833         (WebCore::Frame::markedTextMatchesAreHighlighted):
   52834         (WebCore::Frame::setMarkedTextMatchesAreHighlighted):
   52835         (WebCore::Frame::tree):
   52836         (WebCore::Frame::setDOMWindow):
   52837         (WebCore::Frame::domWindow):
   52838         (WebCore::Frame::clearFormerDOMWindow):
   52839         (WebCore::Frame::page):
   52840         (WebCore::Frame::eventHandler):
   52841         (WebCore::Frame::pageDestroyed):
   52842         (WebCore::Frame::disconnectOwnerElement):
   52843         (WebCore::Frame::documentAtPoint):
   52844         * page/Frame.h:
   52845         * page/FramePrivate.h: Removed.
   52846         * page/FrameTree.h:
   52847         * page/chromium/FrameChromium.cpp:
   52848         * page/mac/FrameMac.mm:
   52849         (WebCore::Frame::imageFromRect):
   52850         (WebCore::Frame::selectionImage):
   52851         (WebCore::Frame::snapshotDragImage):
   52852         (WebCore::Frame::nodeImage):
   52853         (WebCore::Frame::setUserStyleSheetLocation):
   52854         (WebCore::Frame::setUserStyleSheet):
   52855         * page/qt/FrameQt.cpp:
   52856         (WebCore::Frame::setUserStyleSheetLocation):
   52857         (WebCore::Frame::setUserStyleSheet):
   52858         * page/win/FrameCGWin.cpp:
   52859         (WebCore::Frame::nodeImage):
   52860         * page/win/FrameWin.cpp:
   52861 
   52862 2009-01-18  Eric Carlson  <eric.carlson (a] apple.com>
   52863 
   52864         Build fix for !ENABLE(VIDEO) following r40016.
   52865 
   52866         * rendering/RenderSlider.cpp:
   52867         (WebCore::RenderSlider::mouseEventIsInThumb):
   52868 
   52869 2009-01-17  Steve Falkenburg  <sfalken (a] apple.com>
   52870 
   52871         Build fix.
   52872 
   52873 2009-01-17  David Hyatt  <hyatt (a] apple.com>
   52874 
   52875         Optimize isTextNode() the same way isElementNode() was optimized in an earlier checkin.  isTextNode()
   52876         on Node is now non-virtual and just checks a bit that is set at construction time by Text.
   52877 
   52878         Reviewed by Sam Weinig
   52879 
   52880         * dom/CharacterData.cpp:
   52881         (WebCore::CharacterData::CharacterData):
   52882         * dom/CharacterData.h:
   52883         * dom/EventTargetNode.cpp:
   52884         (WebCore::EventTargetNode::EventTargetNode):
   52885         * dom/EventTargetNode.h:
   52886         * dom/Node.cpp:
   52887         (WebCore::Node::Node):
   52888         * dom/Node.h:
   52889         (WebCore::Node::isTextNode):
   52890         (WebCore::Node::isAttributeNode):
   52891         * dom/Text.cpp:
   52892         (WebCore::Text::Text):
   52893         * dom/Text.h:
   52894 
   52895 2009-01-17  David Hyatt  <hyatt (a] apple.com>
   52896 
   52897         Change how backslashAsCurrencySymbol() works.  Instead of forcing call sites to do the direct
   52898         replacement themselves, the exact transformation is instead done by the encoding (indirectly through
   52899         a method on Document).
   52900 
   52901         These changes allow the fast case (where no replacement is needed) checks to be completely inlined for
   52902         a slight speedup, and also allow encodings to do future alterations to displayed string content without
   52903         having to patch call sites again.
   52904 
   52905         Reviewed by Oliver Hunt
   52906 
   52907         * WebCore.base.exp:
   52908         * dom/Document.cpp:
   52909         * dom/Document.h:
   52910         (WebCore::Document::displayStringModifiedByEncoding):
   52911         (WebCore::Document::displayBufferModifiedByEncoding):
   52912         * editing/Editor.cpp:
   52913         (WebCore::Editor::addToKillRing):
   52914         * editing/TextIterator.cpp:
   52915         (WebCore::plainTextToMallocAllocatedBuffer):
   52916         (WebCore::plainText):
   52917         * editing/TextIterator.h:
   52918         * html/HTMLOptGroupElement.cpp:
   52919         (WebCore::HTMLOptGroupElement::groupLabelText):
   52920         * html/HTMLOptionElement.cpp:
   52921         (WebCore::HTMLOptionElement::text):
   52922         * loader/DocumentLoader.cpp:
   52923         (WebCore::canonicalizedTitle):
   52924         * page/Chrome.cpp:
   52925         (WebCore::displayString):
   52926         (WebCore::Chrome::runJavaScriptAlert):
   52927         (WebCore::Chrome::runJavaScriptConfirm):
   52928         (WebCore::Chrome::runJavaScriptPrompt):
   52929         (WebCore::Chrome::setStatusbarText):
   52930         * page/Frame.cpp:
   52931         (WebCore::Frame::shouldClose):
   52932         * page/Frame.h:
   52933         * platform/mac/PasteboardMac.mm:
   52934         (WebCore::Pasteboard::writeSelection):
   52935         * platform/text/TextCodecICU.cpp:
   52936         (WebCore::TextCodecICU::encode):
   52937         * platform/text/TextEncoding.cpp:
   52938         (WebCore::TextEncoding::TextEncoding):
   52939         * platform/text/TextEncoding.h:
   52940         (WebCore::TextEncoding::displayString):
   52941         (WebCore::TextEncoding::displayBuffer):
   52942         * rendering/HitTestResult.cpp:
   52943         (WebCore::displayString):
   52944         * rendering/RenderImage.cpp:
   52945         (WebCore::RenderImage::paintReplaced):
   52946         * rendering/RenderObject.cpp:
   52947         * rendering/RenderObject.h:
   52948         * rendering/RenderText.cpp:
   52949         (WebCore::RenderText::RenderText):
   52950         (WebCore::RenderText::setTextInternal):
   52951         * rendering/RenderTextControl.cpp:
   52952         (WebCore::RenderTextControl::setInnerTextValue):
   52953         (WebCore::RenderTextControl::finishText):
   52954 
   52955 2009-01-17  Eric Carlson  <eric.carlson (a] apple.com>
   52956 
   52957         Reviewed by Adele Peterson
   52958 
   52959         Complete <rdar://problem/6293969>
   52960 
   52961         * DerivedSources.make: include mediaControlsQT.css for Mac build.
   52962 
   52963         * WebCore.xcodeproj/project.pbxproj: add mediaControlsQT.css
   52964 
   52965         * css/CSSPrimitiveValueMappings.h:
   52966         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): add MediaTimelineContainerPart,
   52967         CSSValueMediaCurrentTimeDisplay, and CSSValueMediaTimeRemainingDisplay
   52968 
   52969         * css/CSSSelector.cpp:
   52970         (WebCore::CSSSelector::extractPseudoType): include new media controller element styles
   52971         * css/CSSSelector.h:
   52972         (WebCore::CSSSelector::): Ditto.
   52973 
   52974         * css/CSSStyleSelector.cpp:
   52975         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):  include new media
   52976         controller element styles
   52977 
   52978         * css/CSSValueKeywords.in: add keywords for new media time display controls
   52979 
   52980         * css/mediaControls.css: adjust css for new control elements
   52981 
   52982         * css/mediaControlsQT.css: Added.
   52983 
   52984         * platform/ThemeTypes.h:
   52985         (WebCore::): add media time display controls to ControlPart
   52986 
   52987         * platform/mac/WebCoreSystemInterface.h:
   52988         * platform/mac/WebCoreSystemInterface.mm: pass controller style to WKSI functions
   52989 
   52990         * rendering/MediaControlElements.cpp:
   52991         (WebCore::MediaTextDisplayElement::MediaTextDisplayElement): Added
   52992         (WebCore::MediaTextDisplayElement::attachToParent): Added
   52993         (WebCore::MediaTextDisplayElement::update): Added
   52994         (WebCore::MediaTimeDisplayElement::MediaTimeDisplayElement): Added
   52995         (WebCore::MediaControlInputElement::MediaControlInputElement): Added
   52996         (WebCore::MediaControlInputElement::hitTest): Added
   52997         (WebCore::MediaControlTimelineElement::defaultEventHandler): Update the time display when
   52998         dragging the thumb
   52999         * rendering/MediaControlElements.h:
   53000         (WebCore::): Add MediaTextDisplayElement
   53001 
   53002         * rendering/RenderMedia.cpp:
   53003         (WebCore::RenderMedia::createTimelineContainer): Added
   53004         (WebCore::RenderMedia::createTimeline): Parent is now the timeline container
   53005         (WebCore::RenderMedia::createCurrentTimeDisplay): Added
   53006         (WebCore::RenderMedia::createTimeRemainingDisplay): Added
   53007         (WebCore::RenderMedia::updateControls): Create new elements. Don't ever start the time update
   53008         timer when the time display elements are not visible
   53009         (WebCore::RenderMedia::formatTime): Handle negative times. Don't display 0 hours or minutes
   53010         (WebCore::RenderMedia::updateTimeDisplay): Do nothing when the time display elements are not
   53011         visible. Display time remaining as well as current time.
   53012         (WebCore::RenderMedia::updateControlVisibility): Don't assume opacity should be set to 0 when
   53013         visibility changes
   53014         (WebCore::RenderMedia::forwardEvent): Call element hitTest() method instead of local function
   53015         as we can't assume that all controls are rectangular
   53016         * rendering/RenderMedia.h: Updated
   53017 
   53018         * rendering/RenderSlider.cpp:
   53019         (WebCore::RenderSlider::mouseEventIsInThumb): When slider is media timeline control, call
   53020         element hitTest() method instead of assuming it is rectangular
   53021         * rendering/RenderSlider.h: make mouseEventIsInThumb virtual
   53022 
   53023         * rendering/RenderTheme.cpp:
   53024         (WebCore::RenderTheme::paint): Deal with time display and timeline container
   53025         * rendering/RenderTheme.h:
   53026         (WebCore::RenderTheme::paintMediaTimelineContainer): Updated
   53027         (WebCore::RenderTheme::paintMediaCurrentTime): Added
   53028         (WebCore::RenderTheme::paintMediaTimeRemaining): Added
   53029 
   53030         * rendering/RenderThemeMac.h: Updated
   53031         * rendering/RenderThemeMac.mm:
   53032         (WebCore::):
   53033         (WebCore::mediaControllerTheme):
   53034         (WebCore::RenderThemeMac::adjustSliderThumbSize): Call WebKitSystemInterface to get the thumb
   53035         size when appropriate
   53036         (WebCore::RenderThemeMac::paintMediaFullscreenButton): pass controller style to render function
   53037         (WebCore::RenderThemeMac::paintMediaMuteButton): Ditto
   53038         (WebCore::RenderThemeMac::paintMediaPlayButton): Ditto
   53039         (WebCore::RenderThemeMac::paintMediaSeekBackButton): Ditto
   53040         (WebCore::RenderThemeMac::paintMediaSeekForwardButton): Ditto
   53041         (WebCore::RenderThemeMac::paintMediaSliderTrack): Ditto
   53042         (WebCore::RenderThemeMac::paintMediaSliderThumb): Ditto
   53043         (WebCore::RenderThemeMac::paintMediaTimelineContainer): Added
   53044         (WebCore::RenderThemeMac::paintMediaCurrentTime): Added
   53045         (WebCore::RenderThemeMac::paintMediaTimeRemaining): Added
   53046         (WebCore::RenderThemeMac::extraMediaControlsStyleSheet): Added
   53047         (WebCore::RenderThemeMac::hitTestMediaControlPart): Added
   53048         * rendering/style/RenderStyle.h: Updated
   53049         (WebCore::):
   53050 
   53051 2009-01-17  David Hyatt  <hyatt (a] apple.com>
   53052 
   53053         Inline a few methods in FrameView for speed.
   53054 
   53055         Reviewed by Oliver Hunt
   53056 
   53057         * page/FrameView.cpp:
   53058         * page/FrameView.h:
   53059         (WebCore::FrameView::layoutCount):
   53060         (WebCore::FrameView::needsFullRepaint):
   53061 
   53062 2009-01-17  David Hyatt  <hyatt (a] apple.com>
   53063 
   53064         Inline Document::documentElement(), since it is used by the (very hot) RenderObject::isRoot().  Split off
   53065         the code that fetches and caches the document element into a separate function and inline the part that
   53066         does the null check and the return of the already-cached element.
   53067 
   53068         Reviewed by Oliver Hunt
   53069 
   53070         * dom/Document.cpp:
   53071         (WebCore::Document::cacheDocumentElement):
   53072         * dom/Document.h:
   53073         (WebCore::Document::documentElement):
   53074 
   53075 2009-01-17  David Hyatt  <hyatt (a] apple.com>
   53076 
   53077         Minor tweaks to RenderBox::styleChange to speed it up.
   53078 
   53079         Reviewed by Oliver Hunt
   53080 
   53081         * rendering/RenderBox.cpp:
   53082         (WebCore::RenderBox::styleDidChange):
   53083 
   53084 2009-01-17  David Hyatt  <hyatt (a] apple.com>
   53085 
   53086         Inline FrameLoader::client().
   53087 
   53088         Reviewed by Oliver Hunt
   53089 
   53090         * WebCore.base.exp:
   53091         * loader/FrameLoader.cpp:
   53092         * loader/FrameLoader.h:
   53093         (WebCore::FrameLoader::client):
   53094 
   53095 2009-01-17  David Hyatt  <hyatt (a] apple.com>
   53096 
   53097         Inline some Image methods for speed.  Fix CachedImage's addClient method to just use isNull rather
   53098         than needlessly creating a rect.
   53099 
   53100         Reviewed by Oliver Hunt
   53101 
   53102         * loader/CachedImage.cpp:
   53103         (WebCore::CachedImage::addClient):
   53104         * platform/graphics/Image.cpp:
   53105         * platform/graphics/Image.h:
   53106         (WebCore::Image::isNull):
   53107         (WebCore::Image::rect):
   53108         (WebCore::Image::width):
   53109         (WebCore::Image::height):
   53110 
   53111 2009-01-17  David Hyatt  <hyatt (a] apple.com>
   53112 
   53113         Avoid using the non-inlined isVariable() when adding parsed values during CSS parsing.
   53114 
   53115         Reviewed by Oliver Hunt
   53116 
   53117         * css/CSSParserValues.cpp:
   53118         (WebCore::CSSParserValueList::addValue):
   53119 
   53120 2009-01-17  David Hyatt  <hyatt (a] apple.com>
   53121 
   53122         Inline Document::inPageCache(), since - because of animation code - it is now called every time
   53123         styles change on any element and so is now super-hot.
   53124 
   53125         Reviewed by Oliver Hunt
   53126 
   53127         * dom/Document.cpp:
   53128         * dom/Document.h:
   53129         (WebCore::Document::inPageCache):
   53130 
   53131 2009-01-16  David Hyatt  <hyatt (a] apple.com>
   53132 
   53133         Take Font out of the GraphicsContext.  Fonts are moderately expensive to both compare and to assign to.
   53134         The Font's presence in the GraphicsContext was making save/restore more expensive than it needed to be,
   53135         and was also causing expensive comparison checks to be made before doing alterations of the Font in the
   53136         GraphicsContext.
   53137 
   53138         A font must now be passed as a parameter to all text drawing functions.
   53139 
   53140         Reviewed by Oliver Hunt
   53141 
   53142         * html/CanvasRenderingContext2D.cpp:
   53143         (WebCore::CanvasRenderingContext2D::setFont):
   53144         (WebCore::CanvasRenderingContext2D::drawTextInternal):
   53145         * platform/graphics/GraphicsContext.cpp:
   53146         (WebCore::GraphicsContext::drawText):
   53147         (WebCore::GraphicsContext::drawBidiText):
   53148         (WebCore::GraphicsContext::drawHighlightForText):
   53149         * platform/graphics/GraphicsContext.h:
   53150         * platform/graphics/GraphicsContextPrivate.h:
   53151         * platform/graphics/qt/GraphicsContextQt.cpp:
   53152         * rendering/EllipsisBox.cpp:
   53153         (WebCore::EllipsisBox::paint):
   53154         * rendering/InlineTextBox.cpp:
   53155         (WebCore::paintTextWithShadows):
   53156         (WebCore::InlineTextBox::paint):
   53157         (WebCore::InlineTextBox::paintSelection):
   53158         (WebCore::InlineTextBox::paintCompositionBackground):
   53159         (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
   53160         (WebCore::InlineTextBox::paintTextMatchMarker):
   53161         (WebCore::InlineTextBox::paintDocumentMarkers):
   53162         * rendering/InlineTextBox.h:
   53163         * rendering/RenderFileUploadControl.cpp:
   53164         (WebCore::RenderFileUploadControl::paintObject):
   53165         * rendering/RenderImage.cpp:
   53166         (WebCore::RenderImage::paintReplaced):
   53167         * rendering/RenderListBox.cpp:
   53168         (WebCore::RenderListBox::paintItemForeground):
   53169         * rendering/RenderListMarker.cpp:
   53170         (WebCore::RenderListMarker::paint):
   53171         * rendering/SVGInlineTextBox.cpp:
   53172         (WebCore::SVGInlineTextBox::paintCharacters):
   53173         (WebCore::SVGInlineTextBox::paintSelection):
   53174         * rendering/SVGInlineTextBox.h:
   53175         * svg/SVGFont.cpp:
   53176         (WebCore::Font::drawTextUsingSVGFont):
   53177 
   53178 2009-01-16  David Hyatt  <hyatt (a] apple.com>
   53179 
   53180         Fix a regression from the virtualContinuation()/continuation() split where I accidentally changed
   53181         two if statements.
   53182 
   53183         Reviewed by Oliver Hunt
   53184 
   53185         * rendering/RenderObject.cpp:
   53186         (WebCore::RenderObject::absoluteRects):
   53187         (WebCore::RenderObject::absoluteQuads):
   53188 
   53189 2009-01-16  David Hyatt  <hyatt (a] apple.com>
   53190 
   53191         Fix a regression from my before/after optimization.  Make sure the <q> element puts the document
   53192         into a mode where it will respect before/after rules, since <q> implicitly uses such rules.
   53193 
   53194         Make sure view source mode documents also turn on before/after rules, since they are used there also.
   53195 
   53196         Reviewed by Oliver Hunt
   53197 
   53198         * html/HTMLElementFactory.cpp:
   53199         (WebCore::quoteConstructor):
   53200         * html/HTMLViewSourceDocument.cpp:
   53201         (WebCore::HTMLViewSourceDocument::HTMLViewSourceDocument):
   53202 
   53203 2009-01-16  Chris Fleizach  <cfleizach (a] apple.com>
   53204 
   53205         Reviewed by Oliver Hunt.
   53206 
   53207         Bug 23397: AXURL is not reported for <INPUT type="image"> elements
   53208         https://bugs.webkit.org/show_bug.cgi?id=23397
   53209 
   53210         Report an AXURL for inputs that have an image type.
   53211 
   53212         Test: accessibility/input-image-url.html
   53213 
   53214         * page/AccessibilityObject.h:
   53215         (WebCore::AccessibilityObject::isInputImage):
   53216         * page/AccessibilityRenderObject.cpp:
   53217         (WebCore::AccessibilityRenderObject::isInputImage):
   53218         (WebCore::AccessibilityRenderObject::url):
   53219         * page/AccessibilityRenderObject.h:
   53220         * page/mac/AccessibilityObjectWrapper.mm:
   53221         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
   53222 
   53223 2009-01-16  Adele Peterson  <adele (a] apple.com>
   53224 
   53225         Windows build fix.
   53226 
   53227         * loader/FrameLoader.cpp: (WebCore::FrameLoader::logCanCachePageDecision):
   53228 
   53229 2009-01-16  Steve Falkenburg  <sfalken (a] apple.com>
   53230 
   53231         <rdar://problem/6502511> Safari crashes if it's running while the desktop theme is changed.
   53232 
   53233         This was caused by mismatched ENABLE definitions across WebCore and WebKit.
   53234 
   53235         Several virtual methods were added to RenderTheme.h, conditionalized by ENABLE(VIDEO).
   53236         In addition to adding ENABLE_VIDEO to WebKit, this change also adds ENABLE_DATABASE and ENABLE_ICONDATABASE
   53237         to Windows WebCore/WebKit, and adds ENABLE_WORKERS, and several ENABLE_SVG_ flags to WebKit on Windows.
   53238         Our Windows ENABLE flags now match Mac.
   53239 
   53240         Reviewed by Adele Peterson.
   53241 
   53242         * WebCore.vcproj/WebCore.vcproj:
   53243         * WebCore.vcproj/build-generated-files.sh:
   53244 
   53245 2009-01-16  Mark Rowe  <mrowe (a] apple.com>
   53246 
   53247         40,000!
   53248 
   53249         * ChangeLog: Point out revision 40,000.
   53250 
   53251 2009-01-16  Eric Seidel  <eric (a] webkit.org>
   53252 
   53253         Reviewed by Justin Garcia.
   53254 
   53255         Make surroundNodeRangeWithElement call insertNodeBefore implicitly
   53256         Make insertNodeBefore take PassRefPtr
   53257         Clean up the use of PassRefPtr vs. raw pointers a few places in the editing code.
   53258         https://bugs.webkit.org/show_bug.cgi?id=23389
   53259 
   53260         * editing/ApplyStyleCommand.cpp:
   53261         (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
   53262         (WebCore::ApplyStyleCommand::applyTextDecorationStyle):
   53263         (WebCore::ApplyStyleCommand::surroundNodeRangeWithElement):
   53264         (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
   53265         * editing/ApplyStyleCommand.h:
   53266         * editing/CompositeEditCommand.cpp:
   53267         (WebCore::CompositeEditCommand::insertNodeAt):
   53268         * editing/IndentOutdentCommand.cpp:
   53269         (WebCore::IndentOutdentCommand::prepareBlockquoteLevelForInsertion):
   53270         * editing/InsertLineBreakCommand.cpp:
   53271         (WebCore::InsertLineBreakCommand::doApply):
   53272         * editing/InsertParagraphSeparatorCommand.cpp:
   53273         (WebCore::InsertParagraphSeparatorCommand::doApply):
   53274         * editing/InsertTextCommand.cpp:
   53275         (WebCore::InsertTextCommand::insertTab):
   53276         * editing/ModifySelectionListLevel.cpp:
   53277         (WebCore::IncreaseSelectionListLevelCommand::doApply):
   53278         * editing/ReplaceSelectionCommand.cpp:
   53279         (WebCore::ReplacementFragment::removeNodePreservingChildren):
   53280         (WebCore::ReplacementFragment::insertNodeBefore):
   53281         (WebCore::ReplacementFragment::removeInterchangeNodes):
   53282         (WebCore::ReplaceSelectionCommand::doApply):
   53283         (WebCore::ReplaceSelectionCommand::insertNodeAfterAndUpdateNodesInserted):
   53284         (WebCore::ReplaceSelectionCommand::insertNodeAtAndUpdateNodesInserted):
   53285         (WebCore::ReplaceSelectionCommand::insertNodeBeforeAndUpdateNodesInserted):
   53286         * editing/ReplaceSelectionCommand.h:
   53287 
   53288 2009-01-16  Chris Fleizach  <cfleizach (a] apple.com>
   53289 
   53290         Reviewed by Oliver Hunt.
   53291 
   53292         Bug 23393: TextField has AXTitle and AXTitleUIElement
   53293         https://bugs.webkit.org/show_bug.cgi?id=23393
   53294 
   53295         Test: accessibility/double-title.html
   53296 
   53297         * page/AccessibilityRenderObject.cpp:
   53298         (WebCore::AccessibilityRenderObject::title):
   53299 
   53300 2009-01-16  Adam Treat  <adam.treat (a] torchmobile.com>
   53301 
   53302         The correct build fix for all platforms.
   53303 
   53304         * platform/graphics/Font.h:
   53305 
   53306 2009-01-16  Adam Treat  <adam.treat (a] torchmobile.com>
   53307 
   53308         Fix the Qt build.
   53309 
   53310         * platform/graphics/Font.h:
   53311 
   53312 2009-01-16  David Hyatt  <hyatt (a] apple.com>
   53313 
   53314         Add a new flag (similar to first-line and first-letter) to Document to track whether any before/after rules
   53315         are being used.  If not, don't waste time probing for those pseudo element styles.
   53316 
   53317         Reviewed by Sam Weinig
   53318 
   53319         * css/CSSGrammar.y:
   53320         * dom/Document.cpp:
   53321         (WebCore::Document::Document):
   53322         * dom/Document.h:
   53323         (WebCore::Document::usesBeforeAfterRules):
   53324         (WebCore::Document::setUsesBeforeAfterRules):
   53325         * rendering/RenderBlock.cpp:
   53326         (WebCore::RenderBlock::styleDidChange):
   53327         * rendering/RenderContainer.cpp:
   53328         (WebCore::RenderContainer::updateBeforeAfterContentForContainer):
   53329         * rendering/RenderInline.cpp:
   53330         (WebCore::RenderInline::styleDidChange):
   53331         (WebCore::RenderInline::addChildToFlow):
   53332         (WebCore::RenderInline::splitInlines):
   53333 
   53334 2009-01-16  Dmitry Titov  <dimich (a] chromium.org>
   53335 
   53336         Reviewed by Alp Toker.
   53337 
   53338         https://bugs.webkit.org/show_bug.cgi?id=23394
   53339         Remove unnecessary calls to setDeferringTimers().
   53340 
   53341         Use of this function was obsoleted by better handling of EINTR.
   53342 
   53343         * platform/network/curl/ResourceHandleManager.cpp:
   53344         (WebCore::ResourceHandleManager::downloadTimerCallback): removed setDeferringTimers calls.
   53345 
   53346 2009-01-16  David Hyatt  <hyatt (a] apple.com>
   53347 
   53348         Fix badness with the cursor CSS property.  For all links and form controls, resetting to a value of auto
   53349         was resulting in the creation of a cursor list.  clearCursorList was creating a new list rather than just
   53350         nulling out the pointer.  Since addCursor already lazily recreates the list, in the case of simple cursor types,
   53351         the clear method was wastefully creating a completely unnecessary list for all of these elements.
   53352 
   53353         Also optimized the setting of simple cursor values to not alter the RenderStyle's cursor setting if it is already
   53354         set to the same value.  Since this is the common case, it prevents a fault and copy of StyleInheritedData for
   53355         all links and form controls.
   53356 
   53357         This is a PLT speedup.
   53358 
   53359         Reviewed by Oliver Hunt
   53360 
   53361         * css/CSSStyleSelector.cpp:
   53362         (WebCore::CSSStyleSelector::applyProperty):
   53363         * rendering/style/RenderStyle.cpp:
   53364         (WebCore::RenderStyle::clearCursorList):
   53365 
   53366 2009-01-16  Darin Fisher  <darin (a] chromium.org>
   53367 
   53368         Reviewed by Darin Adler.
   53369 
   53370         https://bugs.webkit.org/show_bug.cgi?id=23384
   53371         PLATFORM(CHROMIUM) needs to delegate BackForwardList.cpp methods to the embedder
   53372 
   53373         * history/BackForwardList.h:
   53374         (WebCore::BackForwardListClient::~BackForwardListClient):
   53375         (WebCore::BackForwardList::setClient):
   53376         * history/BackForwardListChromium.cpp: Added.
   53377 
   53378 2009-01-16  Dan Bernstein  <mitz (a] apple.com>
   53379 
   53380         Reviewed by Kevin Decker and Adam Roben.
   53381 
   53382         - fix a regression that resulted in a crash when plug-ins were
   53383           disabled.
   53384 
   53385         * rendering/RenderPartObject.cpp:
   53386         (WebCore::RenderPartObject::updateWidget): Added a null check.
   53387 
   53388 2009-01-16  David Hyatt  <hyatt (a] apple.com>
   53389 
   53390         Split continuation() into virtual and non-virtual versions so that the non-virtual version can
   53391         be used whereever possible.  Eventually the virtual method can be eliminated completely.
   53392 
   53393         Reviewed by Sam Weinig and Oliver Hunt
   53394 
   53395         * html/HTMLAnchorElement.cpp:
   53396         (WebCore::HTMLAnchorElement::isKeyboardFocusable):
   53397         * page/AccessibilityRenderObject.cpp:
   53398         (WebCore::AccessibilityRenderObject::anchorElement):
   53399         * rendering/InlineFlowBox.cpp:
   53400         (WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
   53401         (WebCore::InlineFlowBox::paint):
   53402         * rendering/RenderBlock.cpp:
   53403         (WebCore::RenderBlock::removeChild):
   53404         * rendering/RenderContainer.cpp:
   53405         (WebCore::RenderContainer::updateBeforeAfterContentForContainer):
   53406         * rendering/RenderFlow.h:
   53407         (WebCore::RenderFlow::virtualContinuation):
   53408         (WebCore::RenderFlow::continuation):
   53409         * rendering/RenderInline.cpp:
   53410         (WebCore::RenderInline::positionForCoordinates):
   53411         * rendering/RenderObject.cpp:
   53412         (WebCore::RenderObject::absoluteRects):
   53413         (WebCore::RenderObject::absoluteQuads):
   53414         (WebCore::RenderObject::addFocusRingRects):
   53415         (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
   53416         (WebCore::RenderObject::getAbsoluteRepaintRectWithOutline):
   53417         (WebCore::RenderObject::handleDynamicFloatPositionChange):
   53418         (WebCore::RenderObject::hoverAncestor):
   53419         (WebCore::RenderObject::updateDragState):
   53420         (WebCore::RenderObject::updateHitTestResult):
   53421         (WebCore::RenderObject::getTextDecorationColors):
   53422         (WebCore::RenderObject::adjustRectForOutlineAndShadow):
   53423         * rendering/RenderObject.h:
   53424         (WebCore::RenderObject::virtualContinuation):
   53425 
   53426 2009-01-16  David Hyatt  <hyatt (a] apple.com>
   53427 
   53428         Inline the methods of Font for obtaining metrics such as ascent, descent and line spacing.
   53429 
   53430         Reviewed by ggaren
   53431 
   53432         * platform/graphics/Font.cpp:
   53433         * platform/graphics/Font.h:
   53434         (WebCore::Font::width):
   53435         (WebCore::Font::ascent):
   53436         (WebCore::Font::descent):
   53437         (WebCore::Font::lineSpacing):
   53438         (WebCore::Font::lineGap):
   53439         (WebCore::Font::xHeight):
   53440         (WebCore::Font::unitsPerEm):
   53441         (WebCore::Font::spaceWidth):
   53442 
   53443 2009-01-16  Sam Weinig  <sam (a] webkit.org>
   53444 
   53445         Reviewed by David Hyatt.
   53446 
   53447         Fix for https://bugs.webkit.org/show_bug.cgi?id=23388
   53448         Remove FrameViewPrivate
   53449 
   53450         Removes an indirection and is a small speedup on PLT.
   53451 
   53452         * page/FrameView.cpp:
   53453         (WebCore::FrameView::FrameView):
   53454         (WebCore::FrameView::~FrameView):
   53455         (WebCore::FrameView::reset):
   53456         (WebCore::FrameView::resetScrollbars):
   53457         (WebCore::FrameView::init):
   53458         (WebCore::FrameView::clear):
   53459         (WebCore::FrameView::didFirstLayout):
   53460         (WebCore::FrameView::initScrollbars):
   53461         (WebCore::FrameView::updateDefaultScrollbarState):
   53462         (WebCore::FrameView::setCanHaveScrollbars):
   53463         (WebCore::FrameView::applyOverflowToViewport):
   53464         (WebCore::FrameView::layoutCount):
   53465         (WebCore::FrameView::needsFullRepaint):
   53466         (WebCore::FrameView::layoutRoot):
   53467         (WebCore::FrameView::layout):
   53468         (WebCore::FrameView::setMediaType):
   53469         (WebCore::FrameView::mediaType):
   53470         (WebCore::FrameView::useSlowRepaints):
   53471         (WebCore::FrameView::setUseSlowRepaints):
   53472         (WebCore::FrameView::addSlowRepaintObject):
   53473         (WebCore::FrameView::removeSlowRepaintObject):
   53474         (WebCore::FrameView::scrollRectIntoViewRecursively):
   53475         (WebCore::FrameView::setScrollPosition):
   53476         (WebCore::FrameView::repaintContentRectangle):
   53477         (WebCore::FrameView::beginDeferredRepaints):
   53478         (WebCore::FrameView::endDeferredRepaints):
   53479         (WebCore::FrameView::scheduleRelayout):
   53480         (WebCore::FrameView::scheduleRelayoutOfSubtree):
   53481         (WebCore::FrameView::layoutPending):
   53482         (WebCore::FrameView::needsLayout):
   53483         (WebCore::FrameView::unscheduleRelayout):
   53484         (WebCore::FrameView::isTransparent):
   53485         (WebCore::FrameView::setTransparent):
   53486         (WebCore::FrameView::baseBackgroundColor):
   53487         (WebCore::FrameView::setBaseBackgroundColor):
   53488         (WebCore::FrameView::shouldUpdateWhileOffscreen):
   53489         (WebCore::FrameView::setShouldUpdateWhileOffscreen):
   53490         (WebCore::FrameView::scheduleEvent):
   53491         (WebCore::FrameView::pauseScheduledEvents):
   53492         (WebCore::FrameView::resumeScheduledEvents):
   53493         (WebCore::FrameView::performPostLayoutTasks):
   53494         (WebCore::FrameView::updateOverflowStatus):
   53495         (WebCore::FrameView::dispatchScheduledEvents):
   53496         (WebCore::FrameView::wasScrolledByUser):
   53497         (WebCore::FrameView::setWasScrolledByUser):
   53498         (WebCore::FrameView::paintContents):
   53499         (WebCore::FrameView::setPaintRestriction):
   53500         (WebCore::FrameView::isPainting):
   53501         (WebCore::FrameView::setNodeToDraw):
   53502         * page/FrameView.h:
   53503         (WebCore::FrameView::setIsVisuallyNonEmpty): Inline.
   53504 
   53505 2009-01-14  Julien Chaffraix  <jchaffraix (a] webkit.org>
   53506 
   53507         Reviewed by Darin Adler.
   53508 
   53509         Bug 23237: Some HTML constructors in HTMLElementFactory needs
   53510         an HTMLFormElement argument
   53511 
   53512         - Added 'constructorNeedsFormElement' parameter to make_names.pl to account
   53513           for HTML form elements.
   53514 
   53515         - Added the new information to HTMLTagNames.in.
   53516 
   53517         * dom/make_names.pl:
   53518         * html/HTMLTagNames.in:
   53519 
   53520 2009-01-16  David Hyatt  <hyatt (a] apple.com>
   53521 
   53522         Eliminate a bunch of save/restore pairs from commonly used GraphicsContext methods.  The most common reason
   53523         for needing save/restore in the line-drawing methods was antialiasing, so this has now been made part of
   53524         the cross-platform graphics state.  By being able to query for the current antialiasing setting, antialiasing
   53525         can be temporarily changed and then restored back to the real value without needing to do a save/restore.
   53526 
   53527         The line drawing code also set the fill color to the stroke color and relied on save/restore to prevent
   53528         a permanent mutation of the fill color in the CGContext.   The new code just restores the fill color back
   53529         to its original value without doing the much more expensive save/restore.
   53530 
   53531         Reviewed by Oliver Hunt
   53532 
   53533         * platform/graphics/GraphicsContext.cpp:
   53534         (WebCore::GraphicsContext::setShouldAntialias):
   53535         (WebCore::GraphicsContext::shouldAntialias):
   53536         * platform/graphics/GraphicsContext.h:
   53537         * platform/graphics/GraphicsContextPrivate.h:
   53538         (WebCore::GraphicsContextState::GraphicsContextState):
   53539         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   53540         (WebCore::GraphicsContext::setPlatformShouldAntialias):
   53541         * platform/graphics/cg/GraphicsContextCG.cpp:
   53542         (WebCore::GraphicsContext::drawLine):
   53543         (WebCore::GraphicsContext::drawConvexPolygon):
   53544         (WebCore::GraphicsContext::drawLineForText):
   53545         (WebCore::GraphicsContext::setPlatformShouldAntialias):
   53546         * platform/graphics/qt/GraphicsContextQt.cpp:
   53547         (WebCore::GraphicsContext::setPlatformShouldAntialias):
   53548         * platform/graphics/skia/GraphicsContextSkia.cpp:
   53549         (WebCore::GraphicsContext::setPlatformShouldAntialias):
   53550         * platform/graphics/wx/GraphicsContextWx.cpp:
   53551         (WebCore::GraphicsContext::setPlatformShouldAntialias):
   53552         * rendering/RenderPath.cpp:
   53553         (WebCore::RenderPath::paint):
   53554 
   53555 2009-01-16  Anders Carlsson  <andersca (a] apple.com>
   53556 
   53557         Reviewed by Sam Weinig.
   53558 
   53559         Clean up the bridge code and get rid of Field::name() and Method::name().
   53560 
   53561         * bridge/c/c_instance.cpp:
   53562         (JSC::Bindings::CInstance::invokeMethod):
   53563         * bridge/c/c_runtime.cpp:
   53564         * bridge/c/c_runtime.h:
   53565         (JSC::Bindings::CField::identifier):
   53566         (JSC::Bindings::CMethod::identifier):
   53567         * bridge/jni/jni_class.cpp:
   53568         (JavaClass::JavaClass):
   53569         * bridge/jni/jni_instance.cpp:
   53570         (JavaInstance::invokeMethod):
   53571         * bridge/jni/jni_runtime.cpp:
   53572         (JavaField::valueFromInstance):
   53573         (JavaField::setValueToInstance):
   53574         (JavaMethod::methodID):
   53575         * bridge/jni/jni_runtime.h:
   53576         (JSC::Bindings::JavaField::name):
   53577         (JSC::Bindings::JavaMethod::name):
   53578         * bridge/objc/objc_class.mm:
   53579         (JSC::Bindings::ObjcClass::methodsNamed):
   53580         * bridge/objc/objc_instance.mm:
   53581         (ObjcInstance::invokeMethod):
   53582         * bridge/objc/objc_runtime.h:
   53583         (JSC::Bindings::ObjcMethod::isFallbackMethod):
   53584         (JSC::Bindings::ObjcMethod::selector):
   53585         * bridge/objc/objc_runtime.mm:
   53586         (JSC::Bindings::ObjcMethod::ObjcMethod):
   53587         (JSC::Bindings::ObjcMethod::getMethodSignature):
   53588         (JSC::Bindings::ObjcField::ObjcField):
   53589         (JSC::Bindings::ObjcField::valueFromInstance):
   53590         (JSC::Bindings::ObjcField::setValueToInstance):
   53591         (JSC::Bindings::callObjCFallbackObject):
   53592         * bridge/runtime.h:
   53593 
   53594 2009-01-16  David Hyatt  <hyatt (a] apple.com>
   53595 
   53596         Optimize RenderText::styleDidChange.  Don't call the base class, which does extra meaningless work.
   53597         Instead just do the one check we need to do (for a diff of layout) and mark dirty as appropriate.
   53598         Clean up the base class method also to just bail early if no m_parent is set instead of repeatedly checking
   53599         for the existence of m_parent in each if clause.
   53600 
   53601         Reviewed by Darin Adler
   53602 
   53603         * rendering/RenderObject.cpp:
   53604         (WebCore::RenderObject::styleDidChange):
   53605         * rendering/RenderText.cpp:
   53606         (WebCore::RenderText::styleDidChange):
   53607 
   53608 2009-01-16  Chris Fleizach  <cfleizach (a] apple.com>
   53609 
   53610         Reviewed by Beth Dakin.
   53611 
   53612         Bug 23387: AX hierarchy is incorrect when iframes are present
   53613         https://bugs.webkit.org/show_bug.cgi?id=23387
   53614 
   53615         The AX hierarchy is incorrect when iframes are present.
   53616 
   53617         Test: accessibility/iframe-bastardization.html
   53618 
   53619         * page/mac/AccessibilityObjectWrapper.mm:
   53620         (-[AccessibilityObjectWrapper renderWidgetChildren]):
   53621 
   53622 2009-01-16  Brady Eidson  <beidson (a] apple.com>
   53623 
   53624         Reviewed by Darin Adler
   53625 
   53626         <rdar://problem/3541409> - Split up some back/forward cache decision making and add detailed logging to
   53627         better understand what the common disqualifiers are.
   53628 
   53629         * loader/FrameLoader.cpp:
   53630         (WebCore::FrameLoader::canCachePageContainingThisFrame):
   53631         (WebCore::FrameLoader::canCachePage): Split off what will be per-frame decision making into canCacheSubframe.
   53632         (WebCore::FrameLoader::logCanCachePageDecision): Detailed logging about why a page may not be considered for
   53633           the back/forward cache.
   53634         (WebCore::FrameLoader::logCanCacheFrameDecision): Same detailed logging on the per-frame basis.
   53635         (WebCore::FrameLoader::commitProvisionalLoad): Move the m_client->canCachePage() call into canCachePageContainingThisFrame().
   53636         * loader/FrameLoader.h:
   53637 
   53638 2009-01-16  Chris Marrin  <cmarrin (a] apple.com>
   53639 
   53640         Reviewed by David Hyatt.
   53641 
   53642         Test: transitions/hang-with-bad-transition-list.html
   53643 
   53644         Fixed https://bugs.webkit.org/show_bug.cgi?id=23088.
   53645         This was happening because I was calling setChanged() from inside updateRendering()
   53646         which causes an infinite loop. I fixed this by deferring the setChanged to the next
   53647         run loop iteration. That made it not infinite loop, but it still retriggers the
   53648         transition forever. The problem is that there is both an 'all' and specific transition
   53649         on 'opacity'. This tickled a bug in AnimationController which causes the opacity
   53650         transition to get constantly cancelled and then retriggered. The problem is that
   53651         the specific opacity transition has a duration of 0. I got rid of the logic to
   53652         flush out 0 duration transitions and it is no longer constantly triggered. The
   53653         logic to flush them was just an optimization, and you really need to keep them
   53654         around to make the logic to override earlier animations by later ones work. And there is
   53655         very little overhead in this case anyway, so the optimization was not that useful.
   53656 
   53657         I made a LayoutTest from the original testcase which tests both the infinite
   53658         loop and constantly triggering animation cases.
   53659 
   53660         * page/animation/AnimationBase.cpp:
   53661         (WebCore::AnimationBase::updateStateMachine):
   53662         * page/animation/AnimationController.cpp:
   53663         (WebCore::AnimationControllerPrivate::updateRenderingDispatcherFired):
   53664         (WebCore::AnimationControllerPrivate::addNodeChangeToDispatch):
   53665         (WebCore::AnimationController::addNodeChangeToDispatch):
   53666         * page/animation/AnimationController.h:
   53667         * page/animation/CompositeAnimation.cpp:
   53668         (WebCore::CompositeAnimationPrivate::updateTransitions):
   53669         * rendering/style/RenderStyle.cpp:
   53670         (WebCore::RenderStyle::adjustAnimations):
   53671         (WebCore::RenderStyle::adjustTransitions):
   53672 
   53673 2009-01-16  Chris Fleizach  <cfleizach (a] apple.com>
   53674 
   53675         Reviewed by Darin Adler.
   53676 
   53677         Bug 23385: crash at com.apple.WebCore  WebCore::HTMLAnchorElement::isKeyboardFocusable
   53678         https://bugs.webkit.org/show_bug.cgi?id=23385
   53679 
   53680         Option-tabbing through the page mentioned in the bug causes a crash
   53681 
   53682         Test: fast/events/tab-crash-with-image-map.html
   53683 
   53684         * html/HTMLAnchorElement.cpp:
   53685         (WebCore::HTMLAnchorElement::isKeyboardFocusable):
   53686 
   53687 2009-01-16  Thiago Macieira  <thiago.macieira (a] nokia.com>
   53688 
   53689         Reviewed by Simon Hausmann.
   53690 
   53691         [Qt] Fixes QString and 8-bit mix fixes.
   53692 
   53693         Details:  Make sure we use QLatin1String where appropriate (and don't
   53694         use QString when not necessary)
   53695 
   53696         * platform/graphics/qt/ImageDecoderQt.cpp:
   53697         (WebCore::ImageDecoderQt::create):
   53698         * platform/graphics/qt/SimpleFontDataQt.cpp:
   53699         (WebCore::SimpleFontData::platformInit):
   53700         * platform/qt/FileSystemQt.cpp:
   53701         (WebCore::openTemporaryFile):
   53702         * platform/qt/LoggingQt.cpp:
   53703         (WebCore::InitializeLoggingChannelsIfNecessary):
   53704         * platform/qt/RenderThemeQt.cpp:
   53705         (WebCore::RenderThemeQt::extraMediaControlsStyleSheet):
   53706         * plugins/qt/PluginDataQt.cpp:
   53707         (WebCore::PluginData::initPlugins):
   53708 
   53709 2009-01-16  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   53710 
   53711         Reviewed by Adam Roben.
   53712 
   53713         https://bugs.webkit.org/show_bug.cgi?id=22452
   53714 
   53715         When plugins are disabled, plugin data should not be available for
   53716         the page. This ensures that navigator.plugins would not see the
   53717         additional MIME types supported by the plugins.
   53718 
   53719         * page/Page.cpp:
   53720         (WebCore::Page::pluginData):
   53721         * loader/FrameLoader.cpp:
   53722         (WebCore::FrameLoader::shouldUsePlugin):
   53723         * rendering/RenderPartObject.cpp:
   53724         (WebCore::RenderPartObject::updateWidget):
   53725 
   53726 2009-01-15  Chris Marrin  <cmarrin (a] apple.com>
   53727 
   53728         Reviewed by Sam Weinig.
   53729 
   53730         Got rid of .idl file in Resources for bug https://bugs.webkit.org/show_bug.cgi?id=21421.
   53731         Also fixed the test case to work on ppc.
   53732 
   53733         * WebCore.xcodeproj/project.pbxproj:
   53734 
   53735 2009-01-16  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   53736 
   53737         Another attempt at fixing the Qt build.
   53738 
   53739         * bridge/qt/qt_instance.cpp:
   53740         (JSC::Bindings::QtInstance::getInstance):
   53741 
   53742 2009-01-16  David Hyatt  <hyatt (a] apple.com>
   53743 
   53744         Fix for 1.85% PLT regression.  Since asking if a frame is "complete" actually aggressively decodes
   53745         the frame, we add an optimization when advancing animations.  If we have received all of the animated
   53746         image's data, then obviously we can go ahead and advance safely.  This prevents the first draw of an image
   53747         from decoding two frames' worth of data in the case where all of the image's data has been received.
   53748 
   53749         While this fixes the cached case, there could in fact be a regression on the uncached PLT from this change
   53750         as well.  It's not immediately clear how that regression would be fixed, though, and it would likely be
   53751         a much smaller percentage of that overall uncached time.
   53752 
   53753         Reviewed by Dan Bernstein
   53754 
   53755         * platform/graphics/BitmapImage.cpp:
   53756         (WebCore::BitmapImage::startAnimation):
   53757 
   53758 2009-01-15  Alexey Proskuryakov  <ap (a] webkit.org>
   53759 
   53760         Reviewed by Anders Carlsson.
   53761 
   53762         https://bugs.webkit.org/show_bug.cgi?id=23349
   53763         Don't store obsolete caches in disk storage
   53764 
   53765         * loader/ResourceLoader.cpp:
   53766         (WebCore::ResourceLoader::ResourceLoader):
   53767         (WebCore::ResourceLoader::load):
   53768         (WebCore::ResourceLoader::scheduleLoadFallbackResourceFromApplicationCache):
   53769         * loader/ResourceLoader.h:
   53770         Don't maintain m_wasLoadedFromApplicationCache, which was never used.
   53771 
   53772         * loader/appcache/ApplicationCache.cpp: (WebCore::ApplicationCache::addResource):
   53773         Assert that only implicit and dynamic resources can be added after the cache has been fully
   53774         loaded and stored to disk database.
   53775 
   53776         * loader/appcache/ApplicationCacheGroup.cpp:
   53777         (WebCore::ApplicationCacheGroup::cacheDestroyed): Don't remove non-newest caches from disk
   53778         database, as this is now done whenever the cache becomes obsolete.
   53779         (WebCore::ApplicationCacheGroup::setNewestCache): Remove an obsolete cache from disk storage.
   53780 
   53781         * loader/appcache/ApplicationCacheStorage.cpp: (WebCore::ApplicationCacheStorage::cacheGroupDestroyed):
   53782         A cache group that has never been saved should not be remembered in m_cacheHostSet. Changed
   53783         the check to no longer rely on savedNewestCachePointer.
   53784 
   53785 2009-01-15  Dimitri Dupuis-Latour  <dupuislatour (a] apple.com>
   53786 
   53787         <rdar://problem/5870656> selectorText and cssText are clipped for :nth-child() and :nth-of-type();
   53788 
   53789         Reviewed by Timothy Hatcher.
   53790 
   53791         * css/CSSSelector.cpp:
   53792         (WebCore::CSSSelector::selectorText):
   53793 
   53794 2009-01-15  Justin Garcia  <justin.garcia (a] apple.com>
   53795 
   53796         Reviewed by Oliver Hunt.
   53797 
   53798         <rdar://problem/6444148> Styling a selection that ends in a line break can sometimes style what's after the break
   53799 
   53800         If the range to style ended at [node, 0] or inside node (and if for some reason the node didn't get split),
   53801         applyInlineStyle would style node.
   53802 
   53803         * editing/ApplyStyleCommand.cpp:
   53804         (WebCore::ApplyStyleCommand::applyInlineStyle): Rename pastLast to pastEndNode, since it doesn't come from
   53805         Range::pastLastNode() anymore.  pastEndNode is the node after the last one that is fully selected, since
   53806         the work done in the loop that follows should only be performed on fully selected nodes.
   53807         * editing/InsertLineBreakCommand.cpp:
   53808         (WebCore::InsertLineBreakCommand::doApply): Explicitly handle insertion into containers and after non-text nodes.
   53809         Those were handled accidently before.
   53810         * editing/htmlediting.cpp:
   53811         (WebCore::caretMaxOffset): In various places we call this with a container and expect to be given the number
   53812         of children in that container, so I changed it to match that.  RenderBR and RenderObject::caretMaxOffset() should
   53813         also be eliminated since maxDeepOffset handles non-text nodes.
   53814 
   53815 2009-01-15  Anders Carlsson  <andersca (a] apple.com>
   53816 
   53817         Reviewed by Geoffrey Garen.
   53818 
   53819         Get rid of the dreaded BindingLanguage once and for all. Also get rid of Instance::getInstance.
   53820 
   53821         * bridge/c/c_instance.h:
   53822         * bridge/jni/jni_instance.h:
   53823         * bridge/objc/objc_instance.h:
   53824         * bridge/qt/qt_instance.h:
   53825         * bridge/runtime.cpp:
   53826         * bridge/runtime.h:
   53827         * bridge/runtime_object.h:
   53828 
   53829 2009-01-15  David Hyatt  <hyatt (a] apple.com>
   53830 
   53831         Eliminate an extra virtual function call that occurs for every single RenderText by moving the SVG-specific
   53832         code that was placed into RenderText::styleDidChange into RenderSVGInlineText::styleDidChange.
   53833 
   53834         Reviewed by Oliver Hunt
   53835 
   53836         * rendering/RenderSVGInlineText.cpp:
   53837         (WebCore::RenderSVGInlineText::styleDidChange):
   53838         * rendering/RenderSVGInlineText.h:
   53839         * rendering/RenderText.cpp:
   53840         (WebCore::RenderText::styleDidChange):
   53841 
   53842 2009-01-15  Anders Carlsson  <andersca (a] apple.com>
   53843 
   53844         Another attempt at fixing the Qt build.
   53845 
   53846         * bridge/qt/qt_instance.cpp:
   53847         (JSC::Bindings::QtInstance::getOwnPropertySlot):
   53848         (JSC::Bindings::QtInstance::put):
   53849         * bridge/qt/qt_instance.h:
   53850         * bridge/runtime.h:
   53851         (JSC::Bindings::Instance::getOwnPropertySlot):
   53852         (JSC::Bindings::Instance::put):
   53853         * bridge/runtime_object.cpp:
   53854         (JSC::RuntimeObjectImp::getOwnPropertySlot):
   53855         (JSC::RuntimeObjectImp::put):
   53856 
   53857 2009-01-15  Anders Carlsson  <andersca (a] apple.com>
   53858 
   53859         Reviewed by Darin Adler.
   53860 
   53861         Add QtInstance::getInstance and start using it.
   53862 
   53863         * bridge/qt/qt_instance.cpp:
   53864         (JSC::Bindings::QtRuntimeObjectImp::mark):
   53865         (JSC::Bindings::QtRuntimeObjectImp::classInfo):
   53866         (JSC::Bindings::):
   53867         (JSC::Bindings::QtInstance::getInstance):
   53868         * bridge/qt/qt_instance.h:
   53869         * bridge/qt/qt_runtime.cpp:
   53870         (JSC::Bindings::convertValueToQVariant):
   53871 
   53872 2009-01-15  Anders Carlsson  <andersca (a] apple.com>
   53873 
   53874         Reviewed by Sam Weinig.
   53875 
   53876         Add the ability for Instance objects to override getOwnPropertySlot/put for runtime objects.
   53877 
   53878         * bridge/qt/qt_instance.cpp:
   53879         (JSC::Bindings::QtInstance::getOwnPropertySlot):
   53880         (JSC::Bindings::QtInstance::put):
   53881         * bridge/qt/qt_instance.h:
   53882         * bridge/runtime.h:
   53883         (JSC::Bindings::Instance::getOwnPropertySlot):
   53884         (JSC::Bindings::Instance::put):
   53885         * bridge/runtime_object.cpp:
   53886         (JSC::RuntimeObjectImp::getOwnPropertySlot):
   53887         (JSC::RuntimeObjectImp::put):
   53888 
   53889 2009-01-15  Anders Carlsson  <andersca (a] apple.com>
   53890 
   53891         Fix the QT build.
   53892 
   53893         * bridge/qt/qt_instance.cpp:
   53894         (JSC::Bindings::QtInstance::createRuntimeObject):
   53895         * bridge/qt/qt_instance.h:
   53896 
   53897 2009-01-15  David Hyatt  <hyatt (a] apple.com>
   53898 
   53899         Fix for <rdar://problem/6500278> REGRESSION: 3.5% of samples on iBench in WebCore::Frame::setZoomFactor
   53900 
   53901         setZoomFactor was supposed to bail if both the zoom factor and mode were the same.  The mode check was
   53902         buggy and doing the wrong thing.
   53903 
   53904         Reviewed by Darin Adler
   53905 
   53906         * page/Frame.cpp:
   53907         (WebCore::Frame::setZoomFactor):
   53908 
   53909 2009-01-15  Anders Carlsson  <andersca (a] apple.com>
   53910 
   53911         Reviewed by Geoffrey Garen.
   53912 
   53913         Make Instance::createRuntimeObject a virtual function and override it for QtInstance.
   53914 
   53915         * bindings/js/JSPluginElementFunctions.cpp:
   53916         (WebCore::getRuntimeObject):
   53917         * bridge/c/c_utility.cpp:
   53918         (JSC::Bindings::convertNPVariantToValue):
   53919         * bridge/jni/jni_instance.cpp:
   53920         (JavaInstance::invokeMethod):
   53921         * bridge/jni/jni_jsobject.mm:
   53922         (JavaJSObject::convertJObjectToValue):
   53923         * bridge/jni/jni_runtime.cpp:
   53924         (JavaField::valueFromInstance):
   53925         (JavaArray::valueAt):
   53926         * bridge/objc/objc_utility.mm:
   53927         (JSC::Bindings::convertObjcValueToValue):
   53928         * bridge/qt/qt_instance.cpp:
   53929         (JSC::Bindings::QtInstance::getRuntimeObject):
   53930         (JSC::Bindings::QtInstance::createRuntimeObject):
   53931         * bridge/qt/qt_instance.h:
   53932         * bridge/qt/qt_runtime.cpp:
   53933         (JSC::Bindings::convertQVariantToValue):
   53934         (JSC::Bindings::QtConnectionObject::execute):
   53935         * bridge/runtime.cpp:
   53936         (JSC::Bindings::Instance::createRuntimeObject):
   53937         * bridge/runtime.h:
   53938 
   53939 2009-01-15  Dimitri Glazkov  <dglazkov (a] chromium.org>
   53940 
   53941         Reviewed by Darin Adler.
   53942 
   53943         https://bugs.webkit.org/show_bug.cgi?id=23354
   53944         Fix up graphics/chromium files to account for Uniscribe style scrubbing.
   53945 
   53946         * platform/graphics/chromium/FontChromiumWin.cpp:
   53947         (WebCore::windowsCanHandleTextDrawing):
   53948         (WebCore::Font::selectionRectForComplexText):
   53949         (WebCore::Font::drawComplexText):
   53950         (WebCore::Font::floatWidthForComplexText):
   53951         (WebCore::Font::offsetForPositionForComplexText):
   53952         * platform/graphics/chromium/GlyphPageTreeNodeChromiumWin.cpp:
   53953         (WebCore::fillNonBMPGlyphs):
   53954 
   53955 2009-01-15  David Levin  <levin (a] chromium.org>
   53956 
   53957         Reviewed by Darin Adler.
   53958 
   53959         https://bugs.webkit.org/show_bug.cgi?id=23333
   53960         Adjust due to a name change that happened in a WebKit.
   53961 
   53962         * svg/graphics/skia/SVGPaintServerPatternSkia.cpp:
   53963         (WebCore::SVGPaintServerPattern::setup):
   53964 
   53965 2009-01-15  Dimitri Glazkov  <dglazkov (a] chromium.org>
   53966 
   53967         Reviewed by Eric Seidel.
   53968 
   53969         https://bugs.webkit.org/show_bug.cgi?id=23340
   53970         Add remaining bits of graphics/chromium.
   53971 
   53972         * platform/graphics/chromium/SimpleFontDataChromiumWin.cpp: Added.
   53973         (WebCore::scaleEmToUnits):
   53974         (WebCore::SimpleFontData::platformInit):
   53975         (WebCore::SimpleFontData::platformDestroy):
   53976         (WebCore::SimpleFontData::smallCapsFontData):
   53977         (WebCore::SimpleFontData::containsCharacters):
   53978         (WebCore::SimpleFontData::determinePitch):
   53979         (WebCore::SimpleFontData::platformWidthForGlyph):
   53980         * platform/graphics/chromium/SimpleFontDataLinux.cpp: Added.
   53981         (WebCore::SimpleFontData::platformInit):
   53982         (WebCore::SimpleFontData::platformDestroy):
   53983         (WebCore::SimpleFontData::smallCapsFontData):
   53984         (WebCore::SimpleFontData::containsCharacters):
   53985         (WebCore::SimpleFontData::determinePitch):
   53986         (WebCore::SimpleFontData::platformWidthForGlyph):
   53987         * platform/graphics/chromium/ThemeHelperChromiumWin.cpp: Added.
   53988         (WebCore::ThemeHelperWin::ThemeHelperWin):
   53989         (WebCore::ThemeHelperWin::~ThemeHelperWin):
   53990         * platform/graphics/chromium/ThemeHelperChromiumWin.h: Added.
   53991         (WebCore::ThemeHelperWin::):
   53992         (WebCore::ThemeHelperWin::context):
   53993         (WebCore::ThemeHelperWin::rect):
   53994         * platform/graphics/chromium/UniscribeHelper.cpp: Added.
   53995         (WebCore::treatAsSpace):
   53996         (WebCore::containsMissingGlyphs):
   53997         (WebCore::setLogFontAndStyle):
   53998         (WebCore::UniscribeHelper::UniscribeHelper):
   53999         (WebCore::UniscribeHelper::~UniscribeHelper):
   54000         (WebCore::UniscribeHelper::initWithOptionalLengthProtection):
   54001         (WebCore::UniscribeHelper::width):
   54002         (WebCore::UniscribeHelper::justify):
   54003         (WebCore::UniscribeHelper::characterToX):
   54004         (WebCore::UniscribeHelper::xToCharacter):
   54005         (WebCore::UniscribeHelper::draw):
   54006         (WebCore::UniscribeHelper::firstGlyphForCharacter):
   54007         (WebCore::UniscribeHelper::fillRuns):
   54008         (WebCore::UniscribeHelper::shape):
   54009         (WebCore::UniscribeHelper::fillShapes):
   54010         (WebCore::UniscribeHelper::fillScreenOrder):
   54011         (WebCore::UniscribeHelper::adjustSpaceAdvances):
   54012         (WebCore::UniscribeHelper::applySpacing):
   54013         (WebCore::UniscribeHelper::advanceForItem):
   54014         * platform/graphics/chromium/UniscribeHelper.h: Added.
   54015         (WebCore::UniscribeHelper::directionalOverride):
   54016         (WebCore::UniscribeHelper::setDirectionalOverride):
   54017         (WebCore::UniscribeHelper::inhibitLigate):
   54018         (WebCore::UniscribeHelper::setInhibitLigate):
   54019         (WebCore::UniscribeHelper::letterSpacing):
   54020         (WebCore::UniscribeHelper::setLetterSpacing):
   54021         (WebCore::UniscribeHelper::spaceWidth):
   54022         (WebCore::UniscribeHelper::setSpaceWidth):
   54023         (WebCore::UniscribeHelper::wordSpacing):
   54024         (WebCore::UniscribeHelper::setWordSpacing):
   54025         (WebCore::UniscribeHelper::setAscent):
   54026         (WebCore::UniscribeHelper::init):
   54027         (WebCore::UniscribeHelper::tryToPreloadFont):
   54028         (WebCore::UniscribeHelper::Shaping::Shaping):
   54029         (WebCore::UniscribeHelper::Shaping::glyphLength):
   54030         (WebCore::UniscribeHelper::Shaping::charLength):
   54031         (WebCore::UniscribeHelper::Shaping::effectiveAdvances):
   54032         (WebCore::UniscribeHelper::nextWinFontData):
   54033         (WebCore::UniscribeHelper::resetFontIndex):
   54034         * platform/graphics/chromium/UniscribeHelperTextRun.cpp: Added.
   54035         (WebCore::UniscribeHelperTextRun::UniscribeHelperTextRun):
   54036         (WebCore::UniscribeHelperTextRun::tryToPreloadFont):
   54037         (WebCore::UniscribeHelperTextRun::nextWinFontData):
   54038         (WebCore::UniscribeHelperTextRun::resetFontIndex):
   54039         * platform/graphics/chromium/UniscribeHelperTextRun.h: Added.
   54040 
   54041 2009-01-15  Chris Marrin  <cmarrin (a] apple.com>
   54042 
   54043         Reviewed by Dan Bernstein.
   54044 
   54045         Fixed Windows project file after https://bugs.webkit.org/show_bug.cgi?id=21421
   54046 
   54047         * WebCore.vcproj/WebCore.vcproj:
   54048 
   54049 2009-01-15  Aaron Boodman  <aa (a] chromium.org>
   54050 
   54051         Reviewed by Adam Roben.
   54052 
   54053         https://bugs.webkit.org/show_bug.cgi?id=15279
   54054         Right clicking over text (or multiple spaces) auto selects the word
   54055         (or multiple spaces) under it, which is not a desirable effect for some
   54056         platforms.
   54057 
   54058         * page/EventHandler.cpp:
   54059         (WebCore::EventHandler::sendContextMenuEvent):
   54060         Don't select words on right-click on Chromium.
   54061 
   54062 2009-01-15  Darin Fisher  <darin (a] chromium.org>
   54063 
   54064         Reviewed by Eric Seidel.
   54065 
   54066         https://bugs.webkit.org/show_bug.cgi?id=23345
   54067         SharedBuffer.h should include wtf/OwnPtr.h
   54068 
   54069         * platform/SharedBuffer.h:
   54070 
   54071 2009-01-14  David Kilzer  <ddkilzer (a] apple.com>
   54072 
   54073         Bug 23338: Make "Streamline Inspector Source" build script check for a directory before using it
   54074 
   54075         <https://bugs.webkit.org/show_bug.cgi?id=23338>
   54076 
   54077         Reviewed by Timothy Hatcher.
   54078 
   54079         * WebCore.xcodeproj/project.pbxproj: Check to see if
   54080         "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/inspector"
   54081         exists before trying to change directories into it and then
   54082         deleting, modifying and adding files to it.
   54083 
   54084 2009-01-14  miggilin  <mr.diggilin (a] gmail.com>
   54085 
   54086         Reviewed by Kevin Ollivier.
   54087 
   54088         Fixing wx compilation for wx 2.9/trunk.
   54089 
   54090         * platform/graphics/wx/FontPlatformData.h:
   54091         (WebCore::FontPlatformData::operator==):
   54092         (WebCore::FontPlatformData::computeHash):
   54093         * platform/graphics/wx/GraphicsContextWx.cpp:
   54094         (WebCore::GraphicsContext::clip):
   54095         (WebCore::GraphicsContext::setCompositeOperation):
   54096         * platform/graphics/wx/ImageSourceWx.cpp:
   54097         (WebCore::ImageSource::createFrameAtIndex):
   54098         * platform/graphics/wx/PathWx.cpp:
   54099         (WebCore::Path::contains):
   54100         * platform/wx/RenderThemeWx.cpp:
   54101         (WebCore::RenderThemeWx::paintButton):
   54102         (WebCore::RenderThemeWx::paintTextField):
   54103         (WebCore::RenderThemeWx::paintMenuList):
   54104         * platform/wx/wxcode/gtk/non-kerned-drawing.cpp:
   54105 
   54106 2009-01-14  Kevin Ollivier  <kevino (a] theolliviers.com>
   54107 
   54108         wx build fix. Adding WebKitCSSMatrix.
   54109 
   54110         * WebCoreSources.bkl:
   54111 
   54112 2009-01-14  Adam Treat  <adam.treat (a] torchmobile.com>
   54113 
   54114         Prospective build fix for Qt following r39922.
   54115 
   54116         * WebCore.pro:
   54117 
   54118 2009-01-14  Darin Adler  <darin (a] apple.com>
   54119 
   54120         Fix debug build.
   54121 
   54122         * bindings/js/JSWebKitCSSMatrixConstructor.cpp:
   54123         (WebCore::JSWebKitCSSMatrixConstructor::JSWebKitCSSMatrixConstructor):
   54124         Use ASSERT_UNUSED.
   54125 
   54126 2009-01-14  Adele Peterson  <adele (a] apple.com>
   54127 
   54128         Reviewed by Darin Adler.
   54129 
   54130         Fix for https://bugs.webkit.org/show_bug.cgi?id=23335
   54131         <rdar://problem/6247650> Update <input type="search"> for RenderThemeWin
   54132 
   54133         No new tests added.  In the future, we need to update DumpRenderTree to be able to run with different RenderThemes and
   54134         we'll need a separate set of results for different themes.
   54135 
   54136         * css/themeWin.css: Renable search fields.  Added new rules for sub-element placement.
   54137 
   54138         * rendering/RenderTextControlSingleLine.cpp:
   54139         (WebCore::RenderTextControlSingleLine::textBlockWidth): Consider margin set on the sub-elements when computing the
   54140         desired width for the text block.
   54141 
   54142         * rendering/RenderThemeWin.cpp:
   54143         (WebCore::RenderThemeWin::supportsFocus): Treat SearchFieldPart the same as TextFieldPart.
   54144         (WebCore::RenderThemeWin::determineState): ditto.
   54145         (WebCore::RenderThemeWin::getClassicThemeData): ditto.
   54146         (WebCore::RenderThemeWin::getThemeData): ditto.
   54147         (WebCore::RenderThemeWin::paintSearchFieldCancelButton): Draw a scaled, vertically centered, version of the new artwork.
   54148         (WebCore::RenderThemeWin::paintSearchFieldResultsDecoration): ditto.
   54149         (WebCore::RenderThemeWin::paintSearchFieldResultsButton): ditto.
   54150         (WebCore::RenderThemeWin::adjustSearchFieldCancelButtonStyle): Set the scaled width and height.
   54151         (WebCore::RenderThemeWin::adjustSearchFieldResultsDecorationStyle): ditto.
   54152         (WebCore::RenderThemeWin::adjustSearchFieldResultsButtonStyle): ditto.
   54153 
   54154 2009-01-14  Alp Toker  <alp (a] nuanti.com>
   54155 
   54156         GTK+ build fix following r39922.
   54157         Add WebKitCSSMatrix to the build system.
   54158 
   54159         * GNUmakefile.am:
   54160 
   54161 2009-01-14  Chris Marrin  <cmarrin (a] apple.com>
   54162 
   54163         Reviewed by Sam Weinig.
   54164 
   54165         Implemented 2D WebKitCSSMatrix
   54166         https://bugs.webkit.org/show_bug.cgi?id=21421
   54167 
   54168         Test: transforms/2d/cssmatrix-interface.xhtml
   54169 
   54170         * DerivedSources.make:
   54171         * WebCore.xcodeproj/project.pbxproj:
   54172         * bindings/js/JSDOMWindowBase.cpp:
   54173         (jsDOMWindowBaseWebKitCSSMatrix):
   54174         (setJSDOMWindowBaseWebKitCSSMatrix):
   54175         * bindings/js/JSWebKitCSSMatrixConstructor.cpp: Added.
   54176         (WebCore::):
   54177         (WebCore::JSWebKitCSSMatrixConstructor::JSWebKitCSSMatrixConstructor):
   54178         (WebCore::constructWebKitCSSMatrix):
   54179         (WebCore::JSWebKitCSSMatrixConstructor::getConstructData):
   54180         * bindings/js/JSWebKitCSSMatrixConstructor.h: Added.
   54181         (WebCore::JSWebKitCSSMatrixConstructor::classInfo):
   54182         * bindings/objc/DOMInternal.h:
   54183         * css/WebKitCSSMatrix.cpp: Added.
   54184         (WebCore::WebKitCSSMatrix::WebKitCSSMatrix):
   54185         (WebCore::WebKitCSSMatrix::~WebKitCSSMatrix):
   54186         (WebCore::WebKitCSSMatrix::setMatrixValue):
   54187         (WebCore::WebKitCSSMatrix::multiply):
   54188         (WebCore::WebKitCSSMatrix::inverse):
   54189         (WebCore::WebKitCSSMatrix::translate):
   54190         (WebCore::WebKitCSSMatrix::scale):
   54191         (WebCore::WebKitCSSMatrix::rotate):
   54192         (WebCore::WebKitCSSMatrix::toString):
   54193         * css/WebKitCSSMatrix.h: Added.
   54194         (WebCore::WebKitCSSMatrix::create):
   54195         (WebCore::WebKitCSSMatrix::a):
   54196         (WebCore::WebKitCSSMatrix::b):
   54197         (WebCore::WebKitCSSMatrix::c):
   54198         (WebCore::WebKitCSSMatrix::d):
   54199         (WebCore::WebKitCSSMatrix::e):
   54200         (WebCore::WebKitCSSMatrix::f):
   54201         (WebCore::WebKitCSSMatrix::setA):
   54202         (WebCore::WebKitCSSMatrix::setB):
   54203         (WebCore::WebKitCSSMatrix::setC):
   54204         (WebCore::WebKitCSSMatrix::setD):
   54205         (WebCore::WebKitCSSMatrix::setE):
   54206         (WebCore::WebKitCSSMatrix::setF):
   54207         (WebCore::WebKitCSSMatrix::transform):
   54208         * css/WebKitCSSMatrix.idl: Added.
   54209 
   54210 2009-01-14  Michael Moss  <mmoss (a] chromium.org>
   54211 
   54212         Reviewed by Eric Seidel.
   54213 
   54214         Workaround a skia limitation on repeated patterns, and remove extra
   54215         transformations applied to pattern.
   54216         https://bugs.webkit.org/show_bug.cgi?id=23332
   54217 
   54218         Fixes:
   54219         LayoutTests/fast/canvas/patternfill-repeat.html
   54220         LayoutTests/svg/W3C-SVG-1.1/pservers-grad-06-b.svg
   54221 
   54222         * platform/graphics/skia/PatternSkia.cpp:
   54223         (WebCore::Pattern::createPlatformPattern):
   54224 
   54225 2009-01-14  Mark Rowe  <mrowe (a] apple.com>
   54226 
   54227         Fix https://bugs.webkit.org/show_bug.cgi?id=23334
   54228         Bug 23334: Compile failure in XMLTokenizerLibxml2.cpp
   54229 
   54230         Include wtf/UnusedParam.h to get UNUSED_PARAM.
   54231 
   54232         * dom/XMLTokenizerLibxml2.cpp:
   54233         (WebCore::hackAroundLibXMLEntityBug):
   54234 
   54235 2009-01-14  David Levin  <levin (a] chromium.org>
   54236 
   54237         Reviewed by Darin Adler.
   54238 
   54239         https://bugs.webkit.org/show_bug.cgi?id=23333
   54240         Platform code fixes. These compensate for changes in platform
   54241         callbacks from WebKit and minor API tweaks.
   54242 
   54243         I enumerated a few below.
   54244 
   54245         * platform/graphics/chromium/FontCacheChromiumWin.cpp:
   54246         fontExists has been gone since r34794.
   54247 
   54248         * platform/graphics/skia/ImageSkia.cpp:
   54249         (WebCore::paintSkBitmap):
   54250 
   54251         (WebCore::FrameData::clear):
   54252         r39751 changes this api to take and return a bool.
   54253 
   54254         (WebCore::Image::drawPattern):
   54255         * platform/graphics/skia/PathSkia.cpp:
   54256         (WebCore::Path::apply):
   54257         (WebCore::boundingBoxForCurrentStroke):
   54258         (WebCore::Path::strokeContains):
   54259         * svg/graphics/skia/RenderPathSkia.cpp: Removed due to r39805.
   54260 
   54261 2009-01-14  Jeremy Moskovich  <jeremy (a] chromium.org>
   54262 
   54263         Reviewed by Eric Seidel.
   54264 
   54265         <https://bugs.webkit.org/show_bug.cgi?id=16829>
   54266         Implement NPN_SetException()
   54267 
   54268         This mirrors the implementation in the obj-c bindings.
   54269 
   54270         Test: plugins/netscape-throw-exception.html
   54271 
   54272         * bridge/NP_jsobject.cpp:
   54273         (_NPN_SetException):
   54274         * bridge/c/c_instance.cpp:
   54275         (JSC::Bindings::getExceptionString):
   54276         (JSC::Bindings::CInstance::setGlobalException):
   54277         (JSC::Bindings::CInstance::moveGlobalExceptionToExecState):
   54278         (JSC::Bindings::CInstance::invokeMethod):
   54279         (JSC::Bindings::CInstance::invokeDefaultMethod):
   54280         (JSC::Bindings::CInstance::invokeConstruct):
   54281         (JSC::Bindings::CInstance::getPropertyNames):
   54282         * bridge/c/c_instance.h:
   54283 
   54284 2009-01-14  Pierre-Olivier Latour  <pol (a] apple.com>
   54285 
   54286         Fixed build warning when LIBXML_VERSION >= 20627.
   54287 
   54288         * dom/XMLTokenizerLibxml2.cpp:
   54289         (WebCore::hackAroundLibXMLEntityBug):
   54290 
   54291 2009-01-14  Alexey Proskuryakov  <ap (a] webkit.org>
   54292 
   54293         Reviewed by Anders Carlsson.
   54294 
   54295         https://bugs.webkit.org/show_bug.cgi?id=23326
   54296         Resources are never deleted from application cache disk database
   54297 
   54298         * loader/appcache/ApplicationCacheStorage.cpp:
   54299         (WebCore::ApplicationCacheStorage::openDatabase): Create a trigger that deletes resources when
   54300         a cache is deleted. Note that this change doesn't require bumping schema version. We should
   54301         consider switching to foreign keys and cascade delete instead of triggers in the future.
   54302         (WebCore::ApplicationCacheStorage::remove): Added a comment explaining why it's sufficient
   54303         to only remove the cache itself.
   54304         (WebCore::ApplicationCacheStorage::empty): Don't delete from CacheResources, now that this
   54305         is done automatically when a cache is deleted.
   54306 
   54307 2009-01-14  David Kilzer  <ddkilzer (a] apple.com>
   54308 
   54309         Bug 22795: favicons should be saved to webarchives
   54310 
   54311         <https://bugs.webkit.org/show_bug.cgi?id=22795>
   54312 
   54313         Reviewed by Darin Adler.
   54314 
   54315         Test: webarchive/test-link-rel-icon.html
   54316 
   54317         * html/HTMLLinkElement.cpp:
   54318         (WebCore::HTMLLinkElement::addSubresourceAttributeURLs): Do not add
   54319         favicon URLs to the list since no ArchiveResource or CachedResource
   54320         is ever created for them.
   54321         * loader/archive/cf/LegacyWebArchive.cpp:
   54322         (WebCore::LegacyWebArchive::create): Handle favicons as a special
   54323         case for all main resources.
   54324         * loader/icon/IconDatabase.cpp:
   54325         (WebCore::IconDatabase::close): Actually close the SQLite database
   54326         so that isOpen() returns false when called.  Added an ASSERT() for
   54327         good measure.
   54328 
   54329 2009-01-14  Dimitri Glazkov  <dglazkov (a] chromium.org>
   54330 
   54331         Reviewed by Eric Seidel.
   54332 
   54333         https://bugs.webkit.org/show_bug.cgi?id=23321
   54334         Upstream more bits of graphics/chromium.
   54335 
   54336         * platform/graphics/chromium/FontPlatformDataChromiumWin.cpp: Added.
   54337         (WebCore::FontPlatformData::FontPlatformData):
   54338         (WebCore::FontPlatformData::operator=):
   54339         (WebCore::FontPlatformData::~FontPlatformData):
   54340         (WebCore::FontPlatformData::RefCountedHFONT::~RefCountedHFONT):
   54341         (WebCore::FontPlatformData::hashTableDeletedFontValue):
   54342         (WebCore::FontPlatformData::scriptFontProperties):
   54343         * platform/graphics/chromium/FontPlatformDataChromiumWin.h: Added.
   54344         (WebCore::FontPlatformData::isHashTableDeletedValue):
   54345         (WebCore::FontPlatformData::hfont):
   54346         (WebCore::FontPlatformData::size):
   54347         (WebCore::FontPlatformData::hash):
   54348         (WebCore::FontPlatformData::operator==):
   54349         (WebCore::FontPlatformData::scriptCache):
   54350         (WebCore::FontPlatformData::RefCountedHFONT::create):
   54351         (WebCore::FontPlatformData::RefCountedHFONT::hfont):
   54352         (WebCore::FontPlatformData::RefCountedHFONT::hash):
   54353         (WebCore::FontPlatformData::RefCountedHFONT::operator==):
   54354         (WebCore::FontPlatformData::RefCountedHFONT::RefCountedHFONT):
   54355         * platform/graphics/chromium/FontPlatformDataLinux.cpp: Added.
   54356         (WebCore::FontPlatformData::FontPlatformData):
   54357         (WebCore::FontPlatformData::~FontPlatformData):
   54358         (WebCore::FontPlatformData::operator=):
   54359         (WebCore::FontPlatformData::setupPaint):
   54360         (WebCore::FontPlatformData::operator==):
   54361         (WebCore::FontPlatformData::hash):
   54362         (WebCore::FontPlatformData::isFixedPitch):
   54363         * platform/graphics/chromium/FontPlatformDataLinux.h: Added.
   54364         (WebCore::FontPlatformData::FontPlatformData):
   54365         (WebCore::FontPlatformData::size):
   54366         (WebCore::FontPlatformData::isHashTableDeletedValue):
   54367         (WebCore::FontPlatformData::hashTableDeletedFontValue):
   54368         * platform/graphics/chromium/FontUtilsChromiumWin.cpp: Added.
   54369         (WebCore::):
   54370         (WebCore::FontMap::getAscent):
   54371         (WebCore::FontMap::FontData::FontData):
   54372         (WebCore::getFontFamilyForScript):
   54373         (WebCore::getFallbackFamily):
   54374         (WebCore::getDerivedFontData):
   54375         (WebCore::getStyleFromLogfont):
   54376         * platform/graphics/chromium/FontUtilsChromiumWin.h: Added.
   54377         (WebCore::):
   54378 
   54379 2009-01-14  Dimitri Glazkov  <dglazkov (a] chromium.org>
   54380 
   54381         Reviewed by Eric Seidel.
   54382 
   54383         https://bugs.webkit.org/show_bug.cgi?id=23325
   54384         Upstream even more graphics/chromium bits.
   54385 
   54386         * platform/graphics/chromium/GlyphPageTreeNodeChromiumWin.cpp: Added.
   54387         (WebCore::fillEmptyGlyphs):
   54388         (WebCore::initSpaceGlyph):
   54389         (WebCore::fillBMPGlyphs):
   54390         (WebCore::fillNonBMPGlyphs):
   54391         (WebCore::GlyphPage::fill):
   54392         * platform/graphics/chromium/GlyphPageTreeNodeLinux.cpp: Added.
   54393         (WebCore::GlyphPage::fill):
   54394         * platform/graphics/chromium/IconChromiumLinux.cpp: Added.
   54395         (WebCore::Icon::Icon):
   54396         (WebCore::Icon::~Icon):
   54397         (WebCore::Icon::createIconForFile):
   54398         (WebCore::Icon::createIconForFiles):
   54399         (WebCore::Icon::paint):
   54400         * platform/graphics/chromium/IconChromiumMac.cpp: Added.
   54401         (WebCore::Icon::createIconForFile):
   54402         (WebCore::Icon::createIconForFiles):
   54403         (WebCore::Icon::~Icon):
   54404         (WebCore::Icon::paint):
   54405         * platform/graphics/chromium/IconChromiumWin.cpp: Added.
   54406         (WebCore::Icon::Icon):
   54407         (WebCore::Icon::~Icon):
   54408         (WebCore::Icon::createIconForFile):
   54409         (WebCore::Icon::createIconForFiles):
   54410         (WebCore::Icon::paint):
   54411         * platform/graphics/chromium/ImageBufferData.h: Added.
   54412         * platform/graphics/chromium/ImageChromiumMac.mm: Added.
   54413         (WebCore::Image::loadPlatformResource):
   54414         (WebCore::BitmapImage::initPlatformData):
   54415         (WebCore::BitmapImage::invalidatePlatformData):
   54416         * platform/graphics/chromium/MediaPlayerPrivateChromium.h: Added.
   54417         * platform/graphics/chromium/PlatformIcon.h: Added.
   54418 
   54419 2009-01-14  Darin Fisher  <darin (a] chromium.org>
   54420 
   54421         Reviewed by Eric Seidel.
   54422 
   54423         https://bugs.webkit.org/show_bug.cgi?id=23328
   54424         Upstream remaining files from platform/chromium/
   54425 
   54426         * platform/chromium/CursorChromium.cpp:
   54427         (WebCore::pointerCursor):
   54428         (WebCore::crossCursor):
   54429         (WebCore::handCursor):
   54430         (WebCore::iBeamCursor):
   54431         (WebCore::waitCursor):
   54432         (WebCore::helpCursor):
   54433         (WebCore::eastResizeCursor):
   54434         (WebCore::northResizeCursor):
   54435         (WebCore::northEastResizeCursor):
   54436         (WebCore::northWestResizeCursor):
   54437         (WebCore::southResizeCursor):
   54438         (WebCore::southEastResizeCursor):
   54439         (WebCore::southWestResizeCursor):
   54440         (WebCore::westResizeCursor):
   54441         (WebCore::northSouthResizeCursor):
   54442         (WebCore::eastWestResizeCursor):
   54443         (WebCore::northEastSouthWestResizeCursor):
   54444         (WebCore::northWestSouthEastResizeCursor):
   54445         (WebCore::columnResizeCursor):
   54446         (WebCore::rowResizeCursor):
   54447         (WebCore::middlePanningCursor):
   54448         (WebCore::eastPanningCursor):
   54449         (WebCore::northPanningCursor):
   54450         (WebCore::northEastPanningCursor):
   54451         (WebCore::northWestPanningCursor):
   54452         (WebCore::southPanningCursor):
   54453         (WebCore::southEastPanningCursor):
   54454         (WebCore::southWestPanningCursor):
   54455         (WebCore::westPanningCursor):
   54456         (WebCore::moveCursor):
   54457         (WebCore::verticalTextCursor):
   54458         (WebCore::cellCursor):
   54459         (WebCore::contextMenuCursor):
   54460         (WebCore::aliasCursor):
   54461         (WebCore::progressCursor):
   54462         (WebCore::noDropCursor):
   54463         (WebCore::copyCursor):
   54464         (WebCore::noneCursor):
   54465         (WebCore::notAllowedCursor):
   54466         (WebCore::zoomInCursor):
   54467         (WebCore::zoomOutCursor):
   54468         * platform/chromium/DragDataRef.h: Added.
   54469         * platform/chromium/DragImageChromium.cpp: Added.
   54470         (WebCore::dragImageSize):
   54471         (WebCore::deleteDragImage):
   54472         (WebCore::scaleDragImage):
   54473         (WebCore::dissolveDragImageToFraction):
   54474         (WebCore::createDragImageFromImage):
   54475         (WebCore::createDragImageIconForCachedImage):
   54476         * platform/chromium/DragImageRef.h:
   54477         * platform/chromium/KeyCodeConversion.h: Added.
   54478         * platform/chromium/KeyCodeConversionGtk.cpp: Added.
   54479         (WebCore::windowsKeyCodeForKeyEvent):
   54480         * platform/chromium/KeyboardCodes.h: Added.
   54481         * platform/chromium/KeyboardCodesPosix.h: Added.
   54482         (WebCore::):
   54483         * platform/chromium/KeyboardCodesWin.h: Added.
   54484         (WebCore::):
   54485         * platform/chromium/Language.cpp: Added.
   54486         (WebCore::defaultLanguage):
   54487         * platform/chromium/LinkHashChromium.cpp: Added.
   54488         (WebCore::visitedLinkHash):
   54489         * platform/chromium/MimeTypeRegistryChromium.cpp: Added.
   54490         (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
   54491         (WebCore::MIMETypeRegistry::getPreferredExtensionForMIMEType):
   54492         (WebCore::MIMETypeRegistry::getMIMETypeForPath):
   54493         (WebCore::MIMETypeRegistry::isSupportedImageMIMEType):
   54494         (WebCore::MIMETypeRegistry::isSupportedImageResourceMIMEType):
   54495         (WebCore::MIMETypeRegistry::isSupportedImageMIMETypeForEncoding):
   54496         (WebCore::MIMETypeRegistry::isSupportedJavaScriptMIMEType):
   54497         (WebCore::MIMETypeRegistry::isSupportedNonImageMIMEType):
   54498         (WebCore::MIMETypeRegistry::isSupportedMediaMIMEType):
   54499         (WebCore::MIMETypeRegistry::isJavaAppletMIMEType):
   54500         (WebCore::dummyHashSet):
   54501         (WebCore::MIMETypeRegistry::getSupportedImageMIMETypes):
   54502         (WebCore::MIMETypeRegistry::getSupportedImageResourceMIMETypes):
   54503         (WebCore::MIMETypeRegistry::getSupportedImageMIMETypesForEncoding):
   54504         (WebCore::MIMETypeRegistry::getSupportedNonImageMIMETypes):
   54505         (WebCore::MIMETypeRegistry::getSupportedMediaMIMETypes):
   54506         * platform/chromium/PasteboardChromium.cpp: Added.
   54507         (WebCore::Pasteboard::generalPasteboard):
   54508         (WebCore::Pasteboard::Pasteboard):
   54509         (WebCore::Pasteboard::clear):
   54510         (WebCore::Pasteboard::writeSelection):
   54511         (WebCore::Pasteboard::writeURL):
   54512         (WebCore::Pasteboard::writeImage):
   54513         (WebCore::Pasteboard::canSmartReplace):
   54514         (WebCore::Pasteboard::plainText):
   54515         (WebCore::Pasteboard::documentFragment):
   54516         * platform/chromium/PasteboardPrivate.h:
   54517         * platform/chromium/PlatformCursor.h: Added.
   54518         (WebCore::PlatformCursor::):
   54519         (WebCore::PlatformCursor::PlatformCursor):
   54520         (WebCore::PlatformCursor::customImage):
   54521         (WebCore::PlatformCursor::hotSpot):
   54522         (WebCore::PlatformCursor::type):
   54523         * platform/chromium/PlatformKeyboardEventChromium.cpp: Added.
   54524         (WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent):
   54525         (WebCore::PlatformKeyboardEvent::currentCapsLockState):
   54526         * platform/chromium/PlatformScreenChromium.cpp: Added.
   54527         (WebCore::screenDepth):
   54528         (WebCore::screenDepthPerComponent):
   54529         (WebCore::screenIsMonochrome):
   54530         (WebCore::screenRect):
   54531         (WebCore::screenAvailableRect):
   54532         * platform/chromium/PlatformWidget.h:
   54533         * platform/chromium/PopupMenuChromium.cpp: Added.
   54534         (WebCore::PopupListBox::selectedIndex):
   54535         (WebCore::PopupListBox::numItems):
   54536         (WebCore::PopupListBox::setBaseWidth):
   54537         (WebCore::PopupListBox::setTextOnIndexChange):
   54538         (WebCore::PopupListBox::setAcceptOnAbandon):
   54539         (WebCore::PopupListBox::):
   54540         (WebCore::PopupListBox::ListItem::ListItem):
   54541         (WebCore::PopupListBox::PopupListBox):
   54542         (WebCore::PopupListBox::~PopupListBox):
   54543         (WebCore::PopupListBox::disconnectClient):
   54544         (WebCore::PopupListBox::scrollToRevealSelection):
   54545         (WebCore::constructRelativeMouseEvent):
   54546         (WebCore::constructRelativeWheelEvent):
   54547         (WebCore::PopupContainer::create):
   54548         (WebCore::PopupContainer::PopupContainer):
   54549         (WebCore::PopupContainer::~PopupContainer):
   54550         (WebCore::PopupContainer::showPopup):
   54551         (WebCore::PopupContainer::hidePopup):
   54552         (WebCore::PopupContainer::layout):
   54553         (WebCore::PopupContainer::handleMouseDownEvent):
   54554         (WebCore::PopupContainer::handleMouseMoveEvent):
   54555         (WebCore::PopupContainer::handleMouseReleaseEvent):
   54556         (WebCore::PopupContainer::handleWheelEvent):
   54557         (WebCore::PopupContainer::handleKeyEvent):
   54558         (WebCore::PopupContainer::hide):
   54559         (WebCore::PopupContainer::paint):
   54560         (WebCore::PopupContainer::paintBorder):
   54561         (WebCore::PopupContainer::isInterestedInEventForKey):
   54562         (WebCore::PopupContainer::show):
   54563         (WebCore::PopupContainer::setTextOnIndexChange):
   54564         (WebCore::PopupContainer::setAcceptOnAbandon):
   54565         (WebCore::PopupContainer::refresh):
   54566         (WebCore::PopupListBox::handleMouseDownEvent):
   54567         (WebCore::PopupListBox::handleMouseMoveEvent):
   54568         (WebCore::PopupListBox::handleMouseReleaseEvent):
   54569         (WebCore::PopupListBox::handleWheelEvent):
   54570         (WebCore::PopupListBox::isInterestedInEventForKey):
   54571         (WebCore::PopupListBox::handleKeyEvent):
   54572         (WebCore::PopupListBox::hostWindow):
   54573         (WebCore::PopupListBox::invalidateRect):
   54574         (WebCore::stripLeadingWhiteSpace):
   54575         (WebCore::PopupListBox::typeAheadFind):
   54576         (WebCore::PopupListBox::paint):
   54577         (WebCore::PopupListBox::paintRow):
   54578         (WebCore::PopupListBox::getRowFont):
   54579         (WebCore::PopupListBox::abandon):
   54580         (WebCore::PopupListBox::pointToRowIndex):
   54581         (WebCore::PopupListBox::acceptIndex):
   54582         (WebCore::PopupListBox::selectIndex):
   54583         (WebCore::PopupListBox::setOriginalIndex):
   54584         (WebCore::PopupListBox::getRowHeight):
   54585         (WebCore::PopupListBox::getRowBounds):
   54586         (WebCore::PopupListBox::invalidateRow):
   54587         (WebCore::PopupListBox::scrollToRevealRow):
   54588         (WebCore::PopupListBox::isSelectableItem):
   54589         (WebCore::PopupListBox::adjustSelectedIndex):
   54590         (WebCore::PopupListBox::updateFromElement):
   54591         (WebCore::PopupListBox::layout):
   54592         (WebCore::PopupListBox::clear):
   54593         (WebCore::PopupListBox::isPointInBounds):
   54594         (WebCore::PopupMenu::PopupMenu):
   54595         (WebCore::PopupMenu::~PopupMenu):
   54596         (WebCore::PopupMenu::show):
   54597         (WebCore::PopupMenu::hide):
   54598         (WebCore::PopupMenu::updateFromElement):
   54599         (WebCore::PopupMenu::itemWritingDirectionIsNatural):
   54600         * platform/chromium/PopupMenuChromium.h: Added.
   54601         (WebCore::PopupContainer::listBox):
   54602         * platform/chromium/PopupMenuPrivate.h: Added.
   54603         * platform/chromium/SSLKeyGeneratorChromium.cpp: Added.
   54604         (WebCore::supportedKeySizes):
   54605         * platform/chromium/ScrollbarThemeChromium.cpp: Added.
   54606         (WebCore::ScrollbarTheme::nativeTheme):
   54607         (WebCore::ScrollbarThemeChromium::ScrollbarThemeChromium):
   54608         (WebCore::ScrollbarThemeChromium::~ScrollbarThemeChromium):
   54609         (WebCore::ScrollbarThemeChromium::themeChanged):
   54610         (WebCore::ScrollbarThemeChromium::hasThumb):
   54611         (WebCore::ScrollbarThemeChromium::backButtonRect):
   54612         (WebCore::ScrollbarThemeChromium::forwardButtonRect):
   54613         (WebCore::ScrollbarThemeChromium::trackRect):
   54614         (WebCore::ScrollbarThemeChromium::paintTrackBackground):
   54615         (WebCore::ScrollbarThemeChromium::paintTickmarks):
   54616         (WebCore::ScrollbarThemeChromium::paintScrollCorner):
   54617         (WebCore::ScrollbarThemeChromium::shouldCenterOnThumb):
   54618         (WebCore::ScrollbarThemeChromium::buttonSize):
   54619         * platform/chromium/ScrollbarThemeChromium.h: Added.
   54620         (WebCore::ScrollbarThemeChromium::hasButtons):
   54621         * platform/chromium/ScrollbarThemeChromiumLinux.cpp: Added.
   54622         (WebCore::ScrollbarThemeChromium::scrollbarThickness):
   54623         (WebCore::ScrollbarThemeChromium::invalidateOnMouseEnterExit):
   54624         (WebCore::initMozState):
   54625         (WebCore::paintScrollbarWidget):
   54626         (WebCore::ScrollbarThemeChromium::paintTrackPiece):
   54627         (WebCore::ScrollbarThemeChromium::paintButton):
   54628         (WebCore::ScrollbarThemeChromium::paintThumb):
   54629         * platform/chromium/ScrollbarThemeChromiumWin.cpp:
   54630         * platform/chromium/SearchPopupMenuChromium.cpp: Added.
   54631         (WebCore::SearchPopupMenu::SearchPopupMenu):
   54632         (WebCore::SearchPopupMenu::enabled):
   54633         (WebCore::SearchPopupMenu::saveRecentSearches):
   54634         (WebCore::SearchPopupMenu::loadRecentSearches):
   54635         * platform/chromium/SharedTimerChromium.cpp: Added.
   54636         (WebCore::setSharedTimerFiredFunction):
   54637         (WebCore::setSharedTimerFireTime):
   54638         (WebCore::stopSharedTimer):
   54639         * platform/chromium/TemporaryLinkStubs.cpp: Added.
   54640         (WebCore::signedPublicKeyAndChallengeString):
   54641         (WebCore::getSupportedKeySizes):
   54642         (WebCore::KURL::fileSystemPath):
   54643         (WebCore::SharedBuffer::createWithContentsOfFile):
   54644         (WTF::scheduleDispatchFunctionsOnMainThread):
   54645 
   54646 2009-01-14  Darin Fisher  <darin (a] chromium.org>
   54647 
   54648         Reviewed by Eric Seidel.
   54649 
   54650         https://bugs.webkit.org/show_bug.cgi?id=23323
   54651         Upstream platform/text/chromium/
   54652 
   54653         * platform/text/chromium: Added.
   54654         * platform/text/chromium/TextBreakIteratorInternalICUChromium.cpp: Added.
   54655         (WebCore::currentTextBreakLocaleID):
   54656 
   54657 2009-01-14  Steve Falkenburg  <sfalken (a] apple.com>
   54658 
   54659         Update copyright year in version resources.
   54660 
   54661         Reviewed by Adam Roben.
   54662 
   54663         * WebCore.vcproj/QTMovieWin.rc:
   54664 
   54665 2009-01-14  Darin Fisher  <darin (a] chromium.org>
   54666 
   54667         Reviewed by Darin Adler.
   54668 
   54669         https://bugs.webkit.org/show_bug.cgi?id=23324
   54670         Move platform/chromium/EditorChromium.cpp into editing/chromium/
   54671 
   54672         * editing/chromium: Added.
   54673         * editing/chromium/EditorChromium.cpp: Copied from platform/chromium/EditorChromium.cpp.
   54674         * platform/chromium/EditorChromium.cpp: Removed.
   54675 
   54676 2009-01-14  Darin Fisher  <darin (a] chromium.org>
   54677 
   54678         Reviewed by Darin Adler.
   54679 
   54680         https://bugs.webkit.org/show_bug.cgi?id=23320
   54681         Make it possible to use notImplemented outside of the WebCore namespace
   54682 
   54683         * platform/NotImplemented.h:
   54684 
   54685 2009-01-14  Nigel Tao  <nigel.tao.gnome (a] gmail.com>
   54686 
   54687         Reviewed by Darin Adler.
   54688 
   54689         - fix https://bugs.webkit.org/show_bug.cgi?id=22476
   54690         Check that the document's SecurityOrigin canLoadLocalResources,
   54691         when pages try to put NSFilenamesPboardtype data on the clipboard,
   54692         by calling event.dataTransfer.setData('URL', 'file:///foo/bar');
   54693 
   54694         Tests: http/tests/security/dataTransfer-set-data-file-url.html
   54695                platform/mac/editing/pasteboard/dataTransfer-set-data-file-url.html
   54696 
   54697         * platform/mac/ClipboardMac.mm:
   54698         (WebCore::ClipboardMac::setData):
   54699 
   54700 2009-01-14  Dan Bernstein  <mitz (a] apple.com>
   54701 
   54702         Reviewed by John Sullivan.
   54703 
   54704         - update copyright
   54705 
   54706         * Info.plist:
   54707 
   54708 2009-01-14  Alexey Proskuryakov  <ap (a] webkit.org>
   54709 
   54710         Reviewed by Darin Adler.
   54711 
   54712         https://bugs.webkit.org/show_bug.cgi?id=23316
   54713         Application cache updating always fails with an assertion
   54714 
   54715         Test: http/tests/appcache/update-cache.html
   54716 
   54717         * loader/appcache/ApplicationCacheGroup.cpp:
   54718         (WebCore::ApplicationCacheGroup::documentLoaderDestroyed): Correctly handle the case where
   54719         multiple caches survive the last DocumentLoader destruction, preventing a crash in release
   54720         builds.
   54721         (WebCore::ApplicationCacheGroup::setNewestCache): Removed a bogus assertion.
   54722 
   54723 2009-01-14  Alexey Proskuryakov  <ap (a] webkit.org>
   54724 
   54725         Release build fix.
   54726 
   54727         * loader/appcache/ApplicationCacheStorage.cpp:
   54728         (WebCore::ApplicationCacheStorage::storeUpdatedType): Use ASSERT_UNUSED.
   54729 
   54730 2009-01-13  Alexey Proskuryakov  <ap (a] webkit.org>
   54731 
   54732         Reviewed by Anders Carlsson.
   54733 
   54734         Test: http/tests/appcache/xhr-foreign-resource.html
   54735 
   54736         https://bugs.webkit.org/show_bug.cgi?id=23256
   54737         Implement application cache foreign entries
   54738 
   54739         * loader/DocumentLoader.cpp: (WebCore::DocumentLoader::shouldLoadResourceFromApplicationCache):
   54740         Removed a misplaced check for foreign resources that prevented them from being loaded altogether.
   54741 
   54742         * loader/appcache/ApplicationCacheGroup.cpp: (WebCore::ApplicationCacheGroup::selectCache):
   54743         If a document that was loaded from appcache should be associated with a different cache,
   54744         mark the resource as foreign in the original cache and start over.
   54745 
   54746         * loader/appcache/ApplicationCacheResource.cpp: (WebCore::ApplicationCacheResource::addType):
   54747         This function can now be called after a cache is stored, so it no longer asserts the opposite.
   54748 
   54749         * loader/appcache/ApplicationCacheStorage.cpp:
   54750         (WebCore::ApplicationCacheStorage::cacheGroupForURL): Fix database pass to correctly ignore
   54751         in-memory caches that were already rejected.
   54752         (WebCore::ApplicationCacheStorage::fallbackCacheGroupForURL): Ditto.
   54753         (WebCore::ApplicationCacheStorage::storeUpdatedType): Added a function that updates type of
   54754         an already stored cached resource.
   54755 
   54756         * loader/appcache/ApplicationCacheStorage.h: Added storeUpdatedType().
   54757 
   54758 2009-01-13  Mark Rowe  <mrowe (a] apple.com>
   54759 
   54760         Fix the Tiger WebCore build after r39880.
   54761 
   54762         * editing/Editor.cpp:
   54763         (WebCore::Editor::markBadGrammar):
   54764         * loader/mac/DocumentLoaderMac.cpp:
   54765         (WebCore::DocumentLoader::schedule):
   54766         (WebCore::DocumentLoader::unschedule):
   54767         * platform/mac/PasteboardMac.mm:
   54768         (WebCore::Pasteboard::writeSelection):
   54769         * platform/mac/WebCoreObjCExtras.mm:
   54770         (WebCoreObjCFinalizeOnMainThread):
   54771         * platform/network/mac/ResourceHandleMac.mm:
   54772         (WebCore::ResourceHandle::schedule):
   54773         (WebCore::ResourceHandle::unschedule):
   54774 
   54775 2009-01-13  Darin Adler  <darin (a] apple.com>
   54776 
   54777         Reviewed by Sam Weinig.
   54778 
   54779         Bug 23102: turn on unused parameter warnings in WebCore
   54780         https://bugs.webkit.org/show_bug.cgi?id=23102
   54781 
   54782         Last step: Turn on the warning and fix the last few instances.
   54783 
   54784         * Configurations/Base.xcconfig: Removed -Wno-unused-parameter from
   54785         WARNING_CFLAGS_BASE, so the unused parameter warning will fire.
   54786 
   54787         * bindings/js/JSDOMWindowBase.cpp:
   54788         (jsDOMWindowBaseMessageChannel): Separate the version for use when
   54789         CHANNEL_MESSAGING is turned off, so we can omit the argument names.
   54790         It would be better to not even have this property in that case,
   54791         rather than having the function return undefined, but I don't know
   54792         how to do that with the bindings script.
   54793 
   54794         * bindings/scripts/CodeGeneratorJS.pm: Leave out argument names in
   54795         functions where they're not used (the SVG context, and the property
   54796         name in the index getter). Use UNUSED_PARAM where arguments are
   54797         sometimes not used.
   54798 
   54799         * bridge/runtime_object.cpp:
   54800         (JSC::RuntimeObjectImp::put): Use UNUSED_PARAM for non-QT.
   54801 
   54802         * css/MediaQueryEvaluator.cpp:
   54803         (WebCore::animationMediaFeatureEval): Omit argument names for style and frame.
   54804         (WebCore::transitionMediaFeatureEval): Ditto.
   54805         (WebCore::transform_2dMediaFeatureEval): Ditto.
   54806         (WebCore::transform_3dMediaFeatureEval): Ditto.
   54807 
   54808         * dom/make_names.pl: Leave out the createdByParser property name in
   54809         cases where it's not used.
   54810 
   54811         * inspector/JavaScriptDebugServer.cpp:
   54812         (WebCore::JavaScriptDebugServer::setJavaScriptPaused): Separate the
   54813         version for the Mac platform so we can omit the argument names.
   54814 
   54815         * loader/EmptyClients.h:
   54816         (WebCore::EmptyChromeClient::contentsSizeChanged): Removed argument name.
   54817 
   54818         * loader/FrameLoaderClient.h:
   54819         (WebCore::FrameLoaderClient::shouldUsePluginDocument): Commented out
   54820         argument name.
   54821 
   54822         * loader/icon/IconFetcher.cpp:
   54823         (WebCore::IconFetcher::didReceiveResponse): Use ASSERT_UNUSED.
   54824         (WebCore::IconFetcher::didReceiveData): Ditto.
   54825         (WebCore::IconFetcher::didFinishLoading): Ditto.
   54826         (WebCore::IconFetcher::didFail): Ditto.
   54827 
   54828         * platform/KURL.cpp:
   54829         (WebCore::assertProtocolIsGood): Separate out the NDEBUG version so
   54830         we can omit the argument names.
   54831 
   54832         * platform/Timer.cpp:
   54833         (WebCore::TimerHeapIterator::checkConsistency): Use ASSERT_UNUSED.
   54834 
   54835         * platform/graphics/GlyphBuffer.h:
   54836         (WebCore::GlyphBuffer::offsetAt): Use UNUSED_PARAM in the non-WIN case.
   54837         (WebCore::GlyphBuffer::add): Use UNUSED_PARAM in the non-CAIRO case.
   54838 
   54839         * platform/graphics/cg/ImageSourceCG.cpp:
   54840         (WebCore::ImageSource::clear): Removed argument name.
   54841 
   54842         * rendering/SVGRenderSupport.cpp:
   54843         (WebCore::prepareToRenderSVGContent): Use UNUSED_PARAM when SVG_FILTERS
   54844         is not enabled.
   54845         (WebCore::finishRenderSVGContent): Ditto.
   54846 
   54847 2009-01-13  Chris Marrin  <cmarrin (a] apple.com>
   54848 
   54849         Reviewed by Darin Adler.
   54850 
   54851         Implemented https://bugs.webkit.org/show_bug.cgi?id=23298
   54852         Simple fix to convertToLength to catch style==null cases
   54853 
   54854         * css/CSSStyleSelector.cpp:
   54855         (WebCore::convertToLength):
   54856 
   54857 2009-01-13  Eric Seidel  <eric (a] webkit.org>
   54858 
   54859         Reviewed by Mark Rowe.
   54860 
   54861         Speculative fix for an Uninitialized Memory Read (UMR)
   54862         seen by purify in chormium's equivalent V8 file.
   54863 
   54864         * bindings/js/JSSVGPODTypeWrapper.h:
   54865         (WebCore::PODTypeWrapperCacheInfo::PODTypeWrapperCacheInfo):
   54866 
   54867 2009-01-13  Dimitri Glazkov  <dglazkov (a] chromium.org>
   54868 
   54869         Reviewed by Eric Seidel.
   54870 
   54871         Land portions of platform/graphics/chromium.
   54872         https://bugs.webkit.org/show_bug.cgi?id=23297
   54873 
   54874         * platform/graphics/chromium/FontCustomPlatformData.cpp: Added.
   54875         (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
   54876         (WebCore::FontCustomPlatformData::fontPlatformData):
   54877         (WebCore::EOTStream::EOTStream):
   54878         (WebCore::EOTStream::read):
   54879         (WebCore::readEmbedProc):
   54880         (WebCore::createUniqueFontName):
   54881         (WebCore::createFontCustomPlatformData):
   54882         * platform/graphics/chromium/FontCustomPlatformData.h: Added.
   54883         (WebCore::FontCustomPlatformData::FontCustomPlatformData):
   54884         * platform/graphics/chromium/FontLinux.cpp: Added.
   54885         (WebCore::Font::drawGlyphs):
   54886         (WebCore::Font::drawComplexText):
   54887         (WebCore::Font::floatWidthForComplexText):
   54888         (WebCore::Font::offsetForPositionForComplexText):
   54889         (WebCore::Font::selectionRectForComplexText):
   54890         * platform/graphics/chromium/FontPlatformData.h: Added.
   54891 
   54892 2009-01-13  Mark Rowe  <mrowe (a] apple.com>
   54893 
   54894         Rubber-stamped by Oliver Hunt.
   54895 
   54896         Don't copy DOMStringList.idl into the framework bundle.
   54897 
   54898         * WebCore.xcodeproj/project.pbxproj:
   54899 
   54900 2009-01-13  Christian Dywan  <christian (a] twotoasts.de>
   54901 
   54902         Build fix, StorageEvent is only defined if we have DOM_STORAGE
   54903 
   54904         * dom/Document.cpp:
   54905         (WebCore::Document::createEvent): Conditionalize StorageEvent
   54906 
   54907 2009-01-13  Darin Adler  <darin (a] apple.com>
   54908 
   54909         Reviewed by Adele Peterson.
   54910 
   54911         Bug 23277: space bar scrolls the page when typed in any text field
   54912         https://bugs.webkit.org/show_bug.cgi?id=23277
   54913         rdar://problem/6490249
   54914 
   54915         There's already a regression test for this, since bug 16421 was the same problem, but on
   54916         Mac. The regression test is fast/events/space-scroll-event.html, so I won't write a new one.
   54917 
   54918         This bug doesn't affect Mac because the canEdit check in -[WebHTMLView insertText:] prevents
   54919         a text input event from being generated at all. That difference may in itself be a bug, but
   54920         the only symptom is that you get text input events in more cases on platforms other than Mac.
   54921 
   54922         * page/EventHandler.cpp:
   54923         (WebCore::EventHandler::handleTextInputEvent): Return whether the event's default was
   54924         handled, not the result of the dispatchEvent function, which indicates only whether the
   54925         default behavior was prevented, not if the default behavior did some insertion. This fix
   54926         makes it so the keyboard event handler can detect that no space was inserted and know that
   54927         the space bar keypress event can be treated as a scrolling command.
   54928         (WebCore::EventHandler::defaultKeyboardEventHandler): Handle the keypress event, not the
   54929         keydown event. Without the change above, making this change would have restored the old
   54930         behavior, reintroducing bug 22913 where the space bar doesn't scroll at all on Windows.
   54931 
   54932 2009-01-13  Darin Fisher  <darin (a] chromium.org>
   54933 
   54934         Reviewed by Eric Seidel.
   54935 
   54936         Landing portions of platform/chromium/, taken from here:
   54937         http://src.chromium.org/viewvc/chrome/trunk/deps/third_party/WebKit/WebCore/platform/chromium/
   54938 
   54939         * platform/chromium/ChromiumBridge.h: Added.
   54940         * platform/chromium/ChromiumDataObject.cpp: Added.
   54941         (WebCore::ChromiumDataObject::clear):
   54942         (WebCore::ChromiumDataObject::hasData):
   54943         * platform/chromium/ChromiumDataObject.h: Added.
   54944         (WebCore::ChromiumDataObject::create):
   54945         (WebCore::ChromiumDataObject::ChromiumDataObject):
   54946         * platform/chromium/ClipboardChromium.cpp: Added.
   54947         (WebCore::):
   54948         (WebCore::clipboardTypeFromMIMEType):
   54949         (WebCore::ClipboardChromium::ClipboardChromium):
   54950         (WebCore::ClipboardChromium::create):
   54951         (WebCore::ClipboardChromium::clearData):
   54952         (WebCore::ClipboardChromium::clearAllData):
   54953         (WebCore::ClipboardChromium::getData):
   54954         (WebCore::ClipboardChromium::setData):
   54955         (WebCore::ClipboardChromium::types):
   54956         (WebCore::ClipboardChromium::setDragImage):
   54957         (WebCore::ClipboardChromium::setDragImageElement):
   54958         (WebCore::ClipboardChromium::createDragImage):
   54959         (WebCore::imageToMarkup):
   54960         (WebCore::getCachedImage):
   54961         (WebCore::writeImageToDataObject):
   54962         (WebCore::ClipboardChromium::declareAndWriteDragImage):
   54963         (WebCore::ClipboardChromium::writeURL):
   54964         (WebCore::ClipboardChromium::writeRange):
   54965         (WebCore::ClipboardChromium::hasData):
   54966         * platform/chromium/ClipboardChromium.h: Added.
   54967         (WebCore::ClipboardChromium::~ClipboardChromium):
   54968         (WebCore::ClipboardChromium::dataObject):
   54969         * platform/chromium/ClipboardUtilitiesChromium.cpp: Added.
   54970         (WebCore::replaceNewlinesWithWindowsStyleNewlines):
   54971         (WebCore::replaceNBSPWithSpace):
   54972         (WebCore::urlToMarkup):
   54973         * platform/chromium/ClipboardUtilitiesChromium.h: Added.
   54974         * platform/chromium/ContextMenuChromium.cpp: Added.
   54975         (WebCore::ContextMenu::ContextMenu):
   54976         (WebCore::ContextMenu::~ContextMenu):
   54977         (WebCore::ContextMenu::itemCount):
   54978         (WebCore::ContextMenu::insertItem):
   54979         (WebCore::ContextMenu::appendItem):
   54980         (WebCore::ContextMenu::itemWithAction):
   54981         (WebCore::ContextMenu::itemAtIndex):
   54982         (WebCore::ContextMenu::setPlatformDescription):
   54983         (WebCore::ContextMenu::platformDescription):
   54984         (WebCore::ContextMenu::releasePlatformDescription):
   54985         * platform/chromium/ContextMenuItemChromium.cpp: Added.
   54986         (WebCore::ContextMenuItem::ContextMenuItem):
   54987         (WebCore::ContextMenuItem::~ContextMenuItem):
   54988         (WebCore::ContextMenuItem::releasePlatformDescription):
   54989         (WebCore::ContextMenuItem::type):
   54990         (WebCore::ContextMenuItem::action):
   54991         (WebCore::ContextMenuItem::title):
   54992         (WebCore::ContextMenuItem::platformSubMenu):
   54993         (WebCore::ContextMenuItem::setType):
   54994         (WebCore::ContextMenuItem::setAction):
   54995         (WebCore::ContextMenuItem::setTitle):
   54996         (WebCore::ContextMenuItem::setSubMenu):
   54997         (WebCore::ContextMenuItem::setChecked):
   54998         (WebCore::ContextMenuItem::setEnabled):
   54999         (WebCore::ContextMenuItem::enabled):
   55000         * platform/chromium/CursorChromium.cpp: Added.
   55001         (WebCore::Cursor::Cursor):
   55002         (WebCore::Cursor::~Cursor):
   55003         (WebCore::Cursor::operator=):
   55004         (WebCore::pointerCursor):
   55005         (WebCore::crossCursor):
   55006         (WebCore::handCursor):
   55007         (WebCore::iBeamCursor):
   55008         (WebCore::waitCursor):
   55009         (WebCore::helpCursor):
   55010         (WebCore::eastResizeCursor):
   55011         (WebCore::northResizeCursor):
   55012         (WebCore::northEastResizeCursor):
   55013         (WebCore::northWestResizeCursor):
   55014         (WebCore::southResizeCursor):
   55015         (WebCore::southEastResizeCursor):
   55016         (WebCore::southWestResizeCursor):
   55017         (WebCore::westResizeCursor):
   55018         (WebCore::northSouthResizeCursor):
   55019         (WebCore::eastWestResizeCursor):
   55020         (WebCore::northEastSouthWestResizeCursor):
   55021         (WebCore::northWestSouthEastResizeCursor):
   55022         (WebCore::columnResizeCursor):
   55023         (WebCore::rowResizeCursor):
   55024         (WebCore::middlePanningCursor):
   55025         (WebCore::eastPanningCursor):
   55026         (WebCore::northPanningCursor):
   55027         (WebCore::northEastPanningCursor):
   55028         (WebCore::northWestPanningCursor):
   55029         (WebCore::southPanningCursor):
   55030         (WebCore::southEastPanningCursor):
   55031         (WebCore::southWestPanningCursor):
   55032         (WebCore::westPanningCursor):
   55033         (WebCore::moveCursor):
   55034         (WebCore::verticalTextCursor):
   55035         (WebCore::cellCursor):
   55036         (WebCore::contextMenuCursor):
   55037         (WebCore::aliasCursor):
   55038         (WebCore::progressCursor):
   55039         (WebCore::noDropCursor):
   55040         (WebCore::copyCursor):
   55041         (WebCore::noneCursor):
   55042         (WebCore::notAllowedCursor):
   55043         (WebCore::zoomInCursor):
   55044         (WebCore::zoomOutCursor):
   55045         (WebCore::grabCursor):
   55046         (WebCore::grabbingCursor):
   55047         * platform/chromium/DragDataChromium.cpp: Added.
   55048         (WebCore::containsHTML):
   55049         (WebCore::DragData::createClipboard):
   55050         (WebCore::DragData::containsURL):
   55051         (WebCore::DragData::asURL):
   55052         (WebCore::DragData::containsFiles):
   55053         (WebCore::DragData::asFilenames):
   55054         (WebCore::DragData::containsPlainText):
   55055         (WebCore::DragData::asPlainText):
   55056         (WebCore::DragData::containsColor):
   55057         (WebCore::DragData::canSmartReplace):
   55058         (WebCore::DragData::containsCompatibleContent):
   55059         (WebCore::DragData::asFragment):
   55060         (WebCore::DragData::asColor):
   55061         * platform/chromium/EditorChromium.cpp: Added.
   55062         (WebCore::Editor::newGeneralClipboard):
   55063         * platform/chromium/FileChooserChromium.cpp: Added.
   55064         (WebCore::FileChooser::basenameForWidth):
   55065         * platform/chromium/FileSystemChromium.cpp: Added.
   55066         (WebCore::deleteFile):
   55067         (WebCore::deleteEmptyDirectory):
   55068         (WebCore::getFileSize):
   55069         (WebCore::getFileModificationTime):
   55070         (WebCore::directoryName):
   55071         (WebCore::pathByAppendingComponent):
   55072         (WebCore::makeAllDirectories):
   55073         (WebCore::fileExists):
   55074         * platform/chromium/FileSystemChromiumLinux.cpp: Added.
   55075         (WebCore::pathGetFileName):
   55076         * platform/chromium/FileSystemChromiumMac.mm: Added.
   55077         (WebCore::pathGetFileName):
   55078         * platform/chromium/FileSystemChromiumWin.cpp: Added.
   55079         (WebCore::pathGetFileName):
   55080         * platform/chromium/FramelessScrollView.cpp: Added.
   55081         (WebCore::FramelessScrollView::~FramelessScrollView):
   55082         (WebCore::FramelessScrollView::invalidateScrollbarRect):
   55083         (WebCore::FramelessScrollView::isActive):
   55084         (WebCore::FramelessScrollView::invalidateRect):
   55085         (WebCore::FramelessScrollView::hostWindow):
   55086         (WebCore::FramelessScrollView::windowClipRect):
   55087         (WebCore::FramelessScrollView::paintContents):
   55088         (WebCore::FramelessScrollView::contentsResized):
   55089         (WebCore::FramelessScrollView::visibleContentsResized):
   55090         * platform/chromium/FramelessScrollView.h: Added.
   55091         (WebCore::FramelessScrollView::FramelessScrollView):
   55092         (WebCore::FramelessScrollView::client):
   55093         (WebCore::FramelessScrollView::setClient):
   55094         * platform/chromium/FramelessScrollViewClient.h: Added.
   55095         * platform/chromium/ScrollbarThemeChromiumWin.cpp: Added.
   55096         (WebCore::):
   55097         (WebCore::ScrollbarThemeChromium::scrollbarThickness):
   55098         (WebCore::ScrollbarThemeChromium::invalidateOnMouseEnterExit):
   55099         (WebCore::ScrollbarThemeChromium::paintTrackPiece):
   55100         (WebCore::ScrollbarThemeChromium::paintButton):
   55101         (WebCore::ScrollbarThemeChromium::paintThumb):
   55102         (WebCore::ScrollbarThemeChromium::getThemeState):
   55103         (WebCore::ScrollbarThemeChromium::getThemeArrowState):
   55104         (WebCore::ScrollbarThemeChromium::getClassicThemeState):
   55105         * platform/chromium/SoundChromiumPosix.cpp: Added.
   55106         (WebCore::systemBeep):
   55107         * platform/chromium/SoundChromiumWin.cpp: Added.
   55108         (WebCore::systemBeep):
   55109         * platform/chromium/SystemTimeChromium.cpp: Added.
   55110         (WebCore::currentTime):
   55111         (WebCore::userIdleTime):
   55112         * platform/chromium/WidgetChromium.cpp: Added.
   55113         (WebCore::Widget::Widget):
   55114         (WebCore::Widget::~Widget):
   55115         (WebCore::Widget::show):
   55116         (WebCore::Widget::hide):
   55117         (WebCore::Widget::setCursor):
   55118         (WebCore::Widget::paint):
   55119         (WebCore::Widget::setFocus):
   55120         (WebCore::Widget::setIsSelected):
   55121         (WebCore::Widget::frameRect):
   55122         (WebCore::Widget::setFrameRect):
   55123         * platform/chromium/WindowsVersion.cpp: Added.
   55124         (WebCore::isVistaOrNewer):
   55125         * platform/chromium/WindowsVersion.h: Added.
   55126 
   55127 2009-01-13  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   55128 
   55129         Reviewed by Simon Hausmann.
   55130 
   55131         [Qt] Make sure media elements dispatch the 'loaded' event
   55132 
   55133         We assume that when Phonon goes into paused state that we have the
   55134         complete media file. Once we do media loading ourselves we can
   55135         distinguish between loading the first frame and the complete media.
   55136 
   55137         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
   55138         (WebCore::MediaPlayerPrivate::updateStates):
   55139 
   55140 2009-01-13  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   55141 
   55142         Reviewed by Simon Hausmann.
   55143 
   55144         [Qt] Add more verbose error output when loading NPAPI plugins
   55145 
   55146         * plugins/qt/PluginPackageQt.cpp:
   55147         (WebCore::PluginPackage::load):
   55148 
   55149 2009-01-13  Simon Hausmann  <simon.hausmann (a] nokia.com>
   55150 
   55151         Reviewed by Tor Arne Vestb.
   55152 
   55153         Fix crash in the Qt port when deleting a popup from within a
   55154         JavaScript onchange handler.
   55155 
   55156         * platform/qt/QWebPopup.cpp:
   55157         (WebCore::QWebPopup::QWebPopup): Perform the activation of the
   55158         combobox item (i.e. the call to the JS handler) from a different
   55159         call stack by using a queued connection.
   55160 
   55161 2009-01-12  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   55162 
   55163         Reviewed by Tor Arne Vestb.
   55164 
   55165         [GIO] Make sure to untef the GFile and the GInputStream on destruction
   55166 
   55167         Make sure to call cleanupGioOperation from the ResourceHandleInternal
   55168         d'tor. Change the signature of cleanupGioOperation so we can do the
   55169         cleanup of GIO next to the cleanup of SOUP.
   55170 
   55171         This is happening with many tests from dom/html/level2/html e.g.
   55172         LayoutTests/dom/html/level2/html/HTMLBodyElement07.html.
   55173 
   55174         * platform/network/soup/ResourceHandleSoup.cpp:
   55175         (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
   55176         (WebCore::cleanupGioOperation):
   55177         (WebCore::closeCallback):
   55178         (WebCore::readCallback):
   55179         (WebCore::openCallback):
   55180         (WebCore::queryInfoCallback):
   55181 
   55182 2009-01-12  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   55183 
   55184         Reviewed by Tor Arne Vestb.
   55185 
   55186         [GIO] Attach the ResourceHandle to the GObject and get it from the GObject
   55187 
   55188         https://bugs.webkit.org/show_bug.cgi?id=23116 discussed with Benjamin Otte
   55189 
   55190         Sometimes it is not possible to cancel a pending GIO operation and the
   55191         callback might be invoked with a pointer to an already destructed
   55192         ResourceHandle. To avoid this issue we will attach the ResourceHandle
   55193         to the GObject* and in the callback attempt to get the ResourceHandle
   55194         from the GObject*. If no ResourceHandle is attached we silently fail
   55195         as the cleanup has been already done.
   55196 
   55197         This is happening with many tests from dom/html/level2/html e.g.
   55198         LayoutTests/dom/html/level2/html/HTMLBodyElement07.html.
   55199 
   55200         * platform/network/soup/ResourceHandleSoup.cpp:
   55201         (WebCore::cleanupGioOperation):
   55202         (WebCore::closeCallback):
   55203         (WebCore::readCallback):
   55204         (WebCore::openCallback):
   55205         (WebCore::queryInfoCallback):
   55206         (WebCore::ResourceHandle::startGio):
   55207 
   55208 2009-01-12  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   55209 
   55210         Reviewed by Tor Arne Vestb.
   55211 
   55212         [GIO] Invoke cleanupGioOperation before calling didFail to avoid crashes
   55213 
   55214         https://bugs.webkit.org/show_bug.cgi?id=23116
   55215 
   55216         The ResourceHandle becomes invalid (e.g. got destructed) from within
   55217         the invocation of didFail. Avoid this by cleaning up everything before
   55218         calling didFail and simply return afterwards.
   55219 
   55220         This is happening with many tests from dom/html/level2/html e.g.
   55221         LayoutTests/dom/html/level2/html/HTMLBodyElement07.html.
   55222 
   55223         * platform/network/soup/ResourceHandleSoup.cpp:
   55224         (WebCore::readCallback):
   55225         (WebCore::openCallback):
   55226         (WebCore::queryInfoCallback):
   55227 
   55228 2009-01-13  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   55229 
   55230         Reviewed by Simon Hausmann.
   55231 
   55232         Change how themes adjust mediaControls.css to match html4/quicks.css
   55233 
   55234         Instead of providing the full style sheet, the themes provide extra
   55235         overrides to the default style defined in UserAgentStyleSheetsData.
   55236 
   55237         https://bugs.webkit.org/show_bug.cgi?id=23210
   55238 
   55239         Also, merge WebKitResources.qrc and WebCoreResources.qrc to speed up
   55240         build time for the Qt port.
   55241 
   55242         * Resources/WebKitResources.qrc: Removed. Merged into WebCore.qrc
   55243         * WebCore.pro:
   55244         * WebCore.qrc: Added.
   55245         * css/CSSStyleSelector.cpp:
   55246         (WebCore::CSSStyleSelector::styleForElement):
   55247         * css/qt/mediaControls-extras.css: Rename from html4-adjustments-qt.css
   55248         * platform/qt/RenderThemeQt.cpp:
   55249         (WebCore::RenderThemeQt::extraMediaControlsStyleSheet):
   55250         * platform/qt/RenderThemeQt.h:
   55251         * platform/qt/WebCoreResources.qrc: Removed.
   55252         * platform/qt/html4-adjustments-qt.css: Rename to mediaControls-extras.css
   55253         * rendering/RenderTheme.cpp:
   55254         * rendering/RenderTheme.h:
   55255         (WebCore::RenderTheme::extraMediaControlsStyleSheet):
   55256 
   55257 2009-01-12  Gavin Barraclough  <barraclough (a] apple.com>
   55258 
   55259         Reviewed by Oliver Hunt.
   55260 
   55261         Deprecate JSValuePtr::getNumber() - two ways to get a number should  be enough.
   55262 
   55263         * bindings/js/JSSQLTransactionCustom.cpp:
   55264         (WebCore::JSSQLTransaction::executeSql):
   55265         * bindings/objc/WebScriptObject.mm:
   55266         (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
   55267 
   55268 2009-01-12  Chris Marrin  <cmarrin (a] apple.com>
   55269 
   55270         Reviewed by Dan Bernstein.
   55271 
   55272         Fixed https://bugs.webkit.org/show_bug.cgi?id=22919
   55273 
   55274         I added a common getElapsedTime() function to AnimationBase which uses a combination of
   55275         the techniques from KeyframeAnimation and AnimationBase to compute elapsedTime in all
   55276         states.
   55277 
   55278         * page/animation/AnimationBase.cpp:
   55279         (WebCore::AnimationBase::progress):
   55280         (WebCore::AnimationBase::getElapsedTime):
   55281         * page/animation/AnimationBase.h:
   55282         * page/animation/KeyframeAnimation.cpp:
   55283         (WebCore::KeyframeAnimation::animate):
   55284 
   55285 2009-01-12  Robert Blaut  <webkit (a] blaut.biz>
   55286 
   55287         Reviewed by Darin Adler
   55288 
   55289         Fix for <https://bugs.webkit.org/show_bug.cgi?id=22096>
   55290         Bug 22096: REGRESSION (r35879) scrolldelay is counted in seconds
   55291         instead of miliseconds
   55292 
   55293         Test: fast/css/webkit-marquee-speed-unit-in-quirksmode.html
   55294 
   55295         * css/CSSParser.cpp:
   55296         (WebCore::CSSParser::validUnit): treat unitless values in quirks mode
   55297         as miliseconds instead of seconds.
   55298 
   55299 2009-01-12  David Hyatt  <hyatt (a] apple.com>
   55300 
   55301         Apply the same idea as the previous fix but for matched declarations.
   55302 
   55303         Reviewed by Dan Bernstein
   55304 
   55305         * css/CSSStyleSelector.h:
   55306 
   55307 2009-01-12  Brady Eidson  <beidson (a] apple.com>
   55308 
   55309         Reviewed by Darin Adler
   55310 
   55311         <rdar://problem/6468274> - Track Non-get requests in global history
   55312 
   55313         * WebCore.base.exp:
   55314 
   55315         * history/HistoryItem.cpp:
   55316         (WebCore::HistoryItem::HistoryItem):
   55317         * history/HistoryItem.h:
   55318         (WebCore::HistoryItem::lastVisitWasHTTPNonGet):
   55319         (WebCore::HistoryItem::setLastVisitWasHTTPNonGet):
   55320 
   55321 2009-01-12  Kevin Ollivier  <kevino (a] theolliviers.com>
   55322 
   55323         !ENABLE(SVG_FONTS) build fix. Move defaultUnitsPerEm into a non-SVG header
   55324         so it can be used by all builds.
   55325 
   55326         * platform/graphics/Font.h:
   55327         * platform/graphics/SimpleFontData.cpp:
   55328         * svg/SVGFontFaceElement.cpp:
   55329         * svg/SVGFontFaceElement.h:
   55330 
   55331 2009-01-12  Kevin Ollivier  <kevino (a] theolliviers.com>
   55332 
   55333         wx build typo fix.
   55334 
   55335         * platform/graphics/wx/TransformationMatrixWx.cpp:
   55336         (WebCore::TransformationMatrix::TransformationMatrix):
   55337 
   55338 2009-01-12  David Hyatt  <hyatt (a] apple.com>
   55339 
   55340         Make sure the set of matched rules has a reserved capacity of 32.  This prevents remalloc thrash as
   55341         elements are matched, since the Vector is shrinking and growing over and over.  1% PLT speedup.
   55342 
   55343         Reviewed by Oliver Hunt
   55344 
   55345         * css/CSSStyleSelector.h:
   55346 
   55347 2009-01-12  David Hyatt  <hyatt (a] apple.com>
   55348 
   55349         Optimize Element::attributeChanged to just check if accessibility is enabled up front before looking at the
   55350         two accessibility-related attributes.  This avoids the rest of the code for all attributes on the PLT.
   55351         Tiny speedup.
   55352 
   55353         Reviewed by Oliver Hunt
   55354 
   55355         * dom/Element.cpp:
   55356         (WebCore::Element::attributeChanged):
   55357 
   55358 2009-01-12  David Hyatt  <hyatt (a] apple.com>
   55359 
   55360         Optimize the retrieval of line height.  If the document is not using any first-line rules, just immediately
   55361         default to the normal case.  Tiny speedup on PLT.
   55362 
   55363         Reviewed by Oliver Hunt
   55364 
   55365         * rendering/RenderFlow.cpp:
   55366         (WebCore::RenderFlow::lineHeight):
   55367 
   55368 2009-01-12  David Hyatt  <hyatt (a] apple.com>
   55369 
   55370         Fix 0.6% regression in PLT.  Make sure not to waste time updating NSScrollView's can blit on scroll state
   55371         in the ScrollView constructor, since this is always going to be properly updated by FrameView anyway.
   55372 
   55373         Reviewed by Oliver Hunt
   55374 
   55375         * platform/ScrollView.cpp:
   55376         (WebCore::ScrollView::ScrollView):
   55377 
   55378 2009-01-12  Simon Fraser  <simon.fraser (a] apple.com>
   55379 
   55380         Reviewed by Dan Bernstein
   55381 
   55382         https://bugs.webkit.org/show_bug.cgi?id=23273
   55383 
   55384         In RenderBox::repaintLayerRectsForImage(), the repaint rect does not have
   55385         to be computed in absolute coordintes. Instead, we compute a repaintRect
   55386         relative to the RenderObject, which can repaint itself.
   55387 
   55388         * rendering/RenderBox.cpp:
   55389         (WebCore::RenderBox::repaintLayerRectsForImage):
   55390 
   55391 2009-01-12  Simon Fraser  <simon.fraser (a] apple.com>
   55392 
   55393         Reviewed by Dan Bernstein
   55394 
   55395         https://bugs.webkit.org/show_bug.cgi?id=23220
   55396 
   55397         Merge layoutDelta into LayoutState. This requires that we
   55398         push even when layoutState is disabled, so that layoutDelta
   55399         can still be stored.
   55400 
   55401         * rendering/LayoutState.cpp:
   55402         (WebCore::LayoutState::LayoutState):
   55403         * rendering/LayoutState.h:
   55404         (WebCore::LayoutState::LayoutState):
   55405         * rendering/RenderBlock.cpp:
   55406         (WebCore::RenderBlock::layoutBlock):
   55407         (WebCore::RenderBlock::layoutBlockChildren):
   55408         (WebCore::RenderBlock::layoutOnlyPositionedObjects):
   55409         * rendering/RenderBox.cpp:
   55410         (WebCore::RenderBox::localToAbsolute):
   55411         (WebCore::RenderBox::absoluteToLocal):
   55412         (WebCore::RenderBox::computeAbsoluteRepaintRect):
   55413         * rendering/RenderFlexibleBox.cpp:
   55414         (WebCore::RenderFlexibleBox::layoutBlock):
   55415         * rendering/RenderFlow.cpp:
   55416         (WebCore::RenderFlow::absoluteClippedOverflowRect):
   55417         * rendering/RenderLayer.cpp:
   55418         (WebCore::RenderLayer::updateLayerPositions):
   55419         * rendering/RenderTableCell.cpp:
   55420         (WebCore::RenderTableCell::computeAbsoluteRepaintRect):
   55421         (WebCore::RenderTableCell::localToAbsolute):
   55422         * rendering/RenderView.cpp:
   55423         (WebCore::RenderView::pushLayoutState):
   55424         * rendering/RenderView.h:
   55425         (WebCore::RenderView::layoutDelta):
   55426         (WebCore::RenderView::addLayoutDelta):
   55427         (WebCore::RenderView::doingFullRepaint):
   55428         (WebCore::RenderView::pushLayoutState):
   55429         (WebCore::RenderView::popLayoutState):
   55430         (WebCore::RenderView::layoutStateEnabled):
   55431         (WebCore::RenderView::layoutState):
   55432         (WebCore::LayoutStateMaintainer::LayoutStateMaintainer):
   55433         (WebCore::LayoutStateMaintainer::push):
   55434         (WebCore::LayoutStateMaintainer::pop):
   55435         * rendering/bidi.cpp:
   55436         (WebCore::RenderBlock::layoutInlineChildren):
   55437 
   55438 2009-01-12  Julien Chaffraix  <jchaffraix (a] pleyo.com>
   55439 
   55440         Reviewed by Holger Freyther.
   55441 
   55442         [Qt] Build fix after turning the fontCache to a singleton
   55443         https://bugs.webkit.org/show_bug.cgi?id=23253
   55444 
   55445         Add a stub implementation for WebCore::fontCache() and FontCache::FontCache().
   55446 
   55447         * platform/graphics/qt/FontCacheQt.cpp:
   55448         (WebCore::fontCache):
   55449         (WebCore::FontCache::FontCache):
   55450 
   55451 2009-01-12  Eric Roman  <eroman (a] chromium.org>
   55452 
   55453         Reviewed by Darin Adler.
   55454 
   55455         Fix some bugs with Selection::appendTrailingWhitespace().
   55456         https://bugs.webkit.org/show_bug.cgi?id=23232
   55457 
   55458         Test: editing/selection/doubleclick-whitespace-crash.html
   55459 
   55460         * editing/Selection.cpp:
   55461         (WebCore::makeSearchRange):
   55462         (WebCore::Selection::appendTrailingWhitespace):
   55463 
   55464 2009-01-12  Dimitri Glazkov  <dglazkov (a] chromium.org>
   55465 
   55466         Reviewed by Eric Seidel.
   55467 
   55468         Add the first pieces of platform/graphics/chromium
   55469         https://bugs.webkit.org/show_bug.cgi?id=23257
   55470 
   55471         * platform/graphics/chromium/ColorChromium.cpp: Added.
   55472         (WebCore::focusRingColor):
   55473         * platform/graphics/chromium/FontCacheChromiumWin.cpp: Added.
   55474         (WebCore::FontCache::platformInit):
   55475         (WebCore::isStringASCII):
   55476         (WebCore::LookupAltName):
   55477         (WebCore::FontCodepage::):
   55478         (WebCore::FontCodepage::if):
   55479         (WebCore::createFontIndirectAndGetWinName):
   55480         (WebCore::fontContainsCharacter):
   55481         (WebCore::FontCache::getFontDataForCharacters):
   55482         (WebCore::FontCache::alternateFamilyName):
   55483         (WebCore::FontCache::getSimilarFontPlatformData):
   55484         (WebCore::FontCache::getLastResortFallbackFont):
   55485         (WebCore::toGDIFontWeight):
   55486         (WebCore::FontCache::getGenericFontForScript):
   55487         (WebCore::FillLogFont):
   55488         (WebCore::FontCache::fontExists):
   55489         (WebCore::TraitsInFamilyProcData::TraitsInFamilyProcData):
   55490         (WebCore::traitsInFamilyEnumProc):
   55491         (WebCore::FontCache::getTraitsInFamily):
   55492         (WebCore::FontCache::createFontPlatformData):
   55493         * platform/graphics/chromium/FontCacheLinux.cpp: Added.
   55494         (WebCore::FontCache::platformInit):
   55495         (WebCore::FontCache::getFontDataForCharacters):
   55496         (WebCore::FontCache::alternateFamilyName):
   55497         (WebCore::FontCache::getSimilarFontPlatformData):
   55498         (WebCore::FontCache::getLastResortFallbackFont):
   55499         (WebCore::FontCache::getTraitsInFamily):
   55500         (WebCore::FontCache::createFontPlatformData):
   55501         (WebCore::FontCache::getGenericFontForScript):
   55502         * platform/graphics/chromium/FontChromiumWin.cpp: Added.
   55503         (WebCore::windowsCanHandleTextDrawing):
   55504         (WebCore::skiaDrawText):
   55505         (WebCore::PaintSkiaText):
   55506         (WebCore::Font::drawGlyphs):
   55507         (WebCore::Font::selectionRectForComplexText):
   55508         (WebCore::Font::drawComplexText):
   55509         (WebCore::Font::floatWidthForComplexText):
   55510         (WebCore::Font::offsetForPositionForComplexText):
   55511 
   55512 2009-01-12  Darin Fisher  <darin (a] chromium.org>
   55513 
   55514         Reviewed by Eric Seidel.
   55515 
   55516         https://bugs.webkit.org/show_bug.cgi?id=23254
   55517         Upstream page/chromium/
   55518 
   55519         * page/chromium/AXObjectCacheChromium.cpp: Added.
   55520         (WebCore::AXObjectCache::detachWrapper):
   55521         (WebCore::AXObjectCache::attachWrapper):
   55522         (WebCore::AXObjectCache::postNotification):
   55523         (WebCore::AXObjectCache::postNotificationToElement):
   55524         (WebCore::AXObjectCache::handleFocusedUIElementChanged):
   55525         * page/chromium/AccessibilityObjectChromium.cpp:
   55526         * page/chromium/AccessibilityObjectWrapper.h:
   55527         * page/chromium/ChromeClientChromium.h: Added.
   55528         * page/chromium/DragControllerChromium.cpp: Added.
   55529         (WebCore::DragController::dragOperation):
   55530         (WebCore::DragController::isCopyKeyDown):
   55531         (WebCore::DragController::maxDragImageSize):
   55532         (WebCore::DragController::cleanupAfterSystemDrag):
   55533         * page/chromium/EventHandlerChromium.cpp: Added.
   55534         (WebCore::EventHandler::passMousePressEventToSubframe):
   55535         (WebCore::EventHandler::passMouseMoveEventToSubframe):
   55536         (WebCore::EventHandler::passMouseReleaseEventToSubframe):
   55537         (WebCore::EventHandler::passWheelEventToWidget):
   55538         (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
   55539         (WebCore::EventHandler::passMouseDownEventToWidget):
   55540         (WebCore::EventHandler::tabsToAllControls):
   55541         (WebCore::EventHandler::eventActivatedView):
   55542         (WebCore::EventHandler::createDraggingClipboard):
   55543         (WebCore::EventHandler::focusDocumentView):
   55544         (WebCore::EventHandler::accessKeyModifiers):
   55545         * page/chromium/FrameChromium.cpp: Added.
   55546         (WebCore::computePageRectsForFrame):
   55547         (WebCore::Frame::dragImageForSelection):
   55548         * page/chromium/FrameChromium.h: Added.
   55549 
   55550 2009-01-12  Dimitri Glazkov  <dglazkov (a] chromium.org>
   55551 
   55552         Reviewed by Darin Adler.
   55553 
   55554         https://bugs.webkit.org/show_bug.cgi?id=22936
   55555         Fix uninitialized memory read error, reported by Purify.
   55556 
   55557         * platform/graphics/SimpleFontData.cpp:
   55558         (WebCore::SimpleFontData::SimpleFontData): Added initializer for
   55559             m_unitsPerEm using cDefaultUnitsPerEm constant.
   55560         * svg/SVGFontFaceElement.cpp:
   55561         (WebCore::SVGFontFaceElement::unitsPerEm): Replaced literal value with
   55562             the constant.
   55563         * svg/SVGFontFaceElement.h: Added cDefaultUnitsPerEm constant.
   55564 
   55565 2009-01-12  Adam Treat  <adam.treat (a] torchmobile.com>
   55566 
   55567         Reviewed by George Staikos.
   55568 
   55569         Do not set fixedLayoutSize for anything other than the mainframe during
   55570         the transition as this is a page level state like the viewportSize.
   55571 
   55572         * loader/FrameLoaderClient.cpp:
   55573         (WebCore::FrameLoaderClient::transitionToCommittedForNewPage):
   55574 
   55575 2009-01-12  Julien Chaffraix  <jchaffraix (a] pleyo.com>
   55576 
   55577         Reviewed by Darin Adler.
   55578 
   55579         Bug 22861: Turn the FontCache into a singleton
   55580         https://bugs.webkit.org/show_bug.cgi?id=22861
   55581 
   55582         - Added fontCache() to get the global FontCache.
   55583 
   55584         - Made all the methods in FontCache instance method.
   55585 
   55586         - Changed FontCache:: to fontCache()-> in WebCore.
   55587 
   55588         * WebCore.base.exp: Now export fontCache().
   55589         * css/CSSFontFaceSource.cpp:
   55590         (WebCore::CSSFontFaceSource::getFontData):
   55591         * css/CSSFontSelector.cpp:
   55592         (WebCore::CSSFontSelector::CSSFontSelector):
   55593         (WebCore::CSSFontSelector::~CSSFontSelector):
   55594         (WebCore::CSSFontSelector::addFontFaceRule):
   55595         (WebCore::fontDataForGenericFamily):
   55596         * platform/graphics/Font.cpp:
   55597         (WebCore::Font::glyphDataForCharacter):
   55598         * platform/graphics/FontCache.cpp:
   55599         (WebCore::fontCache):
   55600         (WebCore::FontCache::FontCache):
   55601         * platform/graphics/FontCache.h:
   55602         * platform/graphics/FontFallbackList.cpp:
   55603         (WebCore::FontFallbackList::FontFallbackList):
   55604         (WebCore::FontFallbackList::invalidate):
   55605         (WebCore::FontFallbackList::releaseFontData):
   55606         (WebCore::FontFallbackList::fontDataAt):
   55607         (WebCore::FontFallbackList::fontDataForCharacters):
   55608         (WebCore::FontFallbackList::setPlatformFont):
   55609         * platform/graphics/SimpleFontData.cpp:
   55610         (WebCore::SimpleFontData::~SimpleFontData):
   55611         * platform/graphics/mac/FontCacheMac.mm:
   55612         (WebCore::fontCacheATSNotificationCallback):
   55613         * platform/graphics/mac/SimpleFontDataMac.mm:
   55614         (WebCore::SimpleFontData::smallCapsFontData):
   55615         * platform/graphics/win/FontCacheWin.cpp:
   55616         (WebCore::getCJKCodePageMasks):
   55617         * platform/graphics/win/SimpleFontDataWin.cpp:
   55618         (WebCore::SimpleFontData::containsCharacters):
   55619 
   55620 2009-01-11  Darin Adler  <darin (a] apple.com>
   55621 
   55622         Reviewed by Dan Bernstein.
   55623 
   55624         Bug 23247: createSVGPathSegCurvetoCubicSmoothAbs doesn't set y2 correctly
   55625         https://bugs.webkit.org/show_bug.cgi?id=23247
   55626 
   55627         Also fix problems where partially parsed paths will still have an effect
   55628         rather than failing parsing and being ignored.
   55629 
   55630         Test: dom/path-segments.html
   55631 
   55632         * platform/graphics/Path.h:
   55633         (WebCore::Path::swap): Added.
   55634 
   55635         * svg/SVGParserUtilities.cpp:
   55636         (WebCore::SVGPathParser::parseSVG): Removed unneeded special case for empty string.
   55637         (WebCore::PathBuilder::build): Changed to not modify the path if parsing fails.
   55638         (WebCore::SVGPathSegListBuilder::build): Changed to not modify the segment list if
   55639         parsing fails.
   55640         (WebCore::SVGPathSegListBuilder::svgMoveTo): Put the path element into the vector,
   55641         not directly into the segment list.
   55642         (WebCore::SVGPathSegListBuilder::svgLineTo): Ditto.
   55643         (WebCore::SVGPathSegListBuilder::svgLineToHorizontal): Ditto.
   55644         (WebCore::SVGPathSegListBuilder::svgLineToVertical): Ditto.
   55645         (WebCore::SVGPathSegListBuilder::svgCurveToCubic): Ditto.
   55646         (WebCore::SVGPathSegListBuilder::svgCurveToCubicSmooth): Ditto.
   55647         (WebCore::SVGPathSegListBuilder::svgCurveToQuadratic): Ditto.
   55648         (WebCore::SVGPathSegListBuilder::svgCurveToQuadraticSmooth): Ditto.
   55649         (WebCore::SVGPathSegListBuilder::svgArcTo): Ditto.
   55650         (WebCore::SVGPathSegListBuilder::svgClosePath): Ditto.
   55651 
   55652         * svg/SVGPathSegCurvetoCubicSmooth.h:
   55653         (WebCore::SVGPathSegCurvetoCubicSmooth::SVGPathSegCurvetoCubicSmooth):
   55654         Set y2 to y2, not to y.
   55655 
   55656 2009-01-11  Darin Adler  <darin (a] apple.com>
   55657 
   55658         Reviewed by Oliver Hunt.
   55659 
   55660         Bug 23102: turn on unused parameter warnings in WebCore
   55661         https://bugs.webkit.org/show_bug.cgi?id=23102
   55662 
   55663         Fourth step: Remove arguments entirely in the many cases where they are not
   55664         needed at all. This step is a little less mechanical than the earlier ones.
   55665 
   55666         * dom/DOMImplementation.cpp:
   55667         (WebCore::DOMImplementation::isXMLMIMEType): Pass TextCaseSensitive when creating
   55668         the regular expression, since we already specify a-zA-Z in our expression.
   55669 
   55670         * dom/Document.cpp:
   55671         (WebCore::Document::databaseThread): Don't pass in the document when creating
   55672         a DatabaseThread.
   55673 
   55674         * dom/Element.cpp:
   55675         (WebCore::Element::createRareData): Don't pass the element when creating an
   55676         ElementRareData.
   55677         (WebCore::Element::detach): Don't pass the element when calling resetComputedStyle.
   55678         (WebCore::Element::recalcStyle): Ditto.
   55679 
   55680         * dom/ElementRareData.h: Remove the unused Element* from the constructor and
   55681         the resetComputedStyle function.
   55682 
   55683         * dom/EventTargetNode.cpp:
   55684         (WebCore::EventTargetNode::dispatchEvent): Don't pass ec to dispatchGenericEvent.
   55685         (WebCore::EventTargetNode::dispatchGenericEvent): Remove the unused ec argument.
   55686         (WebCore::EventTargetNode::dispatchWindowEvent): Don't pass ec to dispatchGenericEvent.
   55687         * dom/EventTargetNode.h: Remove the ExceptionCode& argument form disaptchGenericEvent.
   55688 
   55689         * editing/ApplyStyleCommand.cpp: Remove the empty removeBlockStyle function.
   55690         (WebCore::ApplyStyleCommand::pushDownTextDecorationStyleAroundNode): Remove the unused
   55691         start and end arguments.
   55692         (WebCore::ApplyStyleCommand::pushDownTextDecorationStyleAtBoundaries): Don't pass start
   55693         and end to pushDownTextDecorationStyleAroundNode.
   55694 
   55695         * editing/ApplyStyleCommand.h: Remove the empty removeBlockStyle function. Removed the
   55696         unused start and end arguments from pushDownTextDecorationStyleAroundNode.
   55697 
   55698         * editing/htmlediting.cpp: Removed include of unused RegularExpression.h header.
   55699 
   55700         * html/HTMLTokenizer.cpp:
   55701         (WebCore::Token::addAttribute): Removed unused Document* argument.
   55702         (WebCore::HTMLTokenizer::parseTag): Don't pass document to addAttribute.
   55703 
   55704         * html/HTMLTokenizer.h: Removed unused Document* argument to to addAttribute.
   55705 
   55706         * page/DOMWindow.cpp:
   55707         (WebCore::DOMWindow::localStorage): Don't pass the frame to storageArea.
   55708 
   55709         * page/DragController.cpp:
   55710         (WebCore::DragController::dragIsMove): Removed unused DragData argument.
   55711         (WebCore::DragController::performDrag): Call concludeEditDrag rather than
   55712         concludeDrag.
   55713         (WebCore::DragController::tryDocumentDrag): Don't pass dragData to dragIsMove.
   55714         (WebCore::DragController::concludeEditDrag): Renamed to make it clear this
   55715         should only be called for edit drags. Removed the action mask argument. Also
   55716         changed dragIsMove call sites to not pass dragData.
   55717 
   55718         * page/DragController.h: Updated for above changes and tweaked comment format.
   55719 
   55720         * page/Frame.cpp:
   55721         (WebCore::createRegExpForLabels): Pass TextCaseSensitive and TextCaseInsensitive
   55722         when creating regular expressions for clarity. Call match instead of search,
   55723         since both do the same thing except for with negative start offsets, and none
   55724         used here are negative.
   55725         (WebCore::Frame::matchLabelsAgainstElement): Ditto.
   55726 
   55727         * page/Page.h: Moved TextCaseSensitivity from here to StringImpl.h in platform.
   55728 
   55729         * page/mac/AccessibilityObjectWrapper.mm:
   55730         (AXAttributeStringSetHeadingLevel): Removed unused object argument.
   55731         (AXAttributedStringAppendText): Ditto.
   55732         (-[AccessibilityObjectWrapper doAXAttributedStringForTextMarkerRange:]): Ditto.
   55733 
   55734         * page/mac/FrameMac.mm:
   55735         (WebCore::regExpForLabels): Pass TextCaseSensitive and TextCaseInsensitive
   55736         when creating regular expressions for clarity. Call match instead of search,
   55737         since both do the same thing except for with negative start offsets, and none
   55738         used here are negative.
   55739         (WebCore::Frame::matchLabelsAgainstElement): Ditto.
   55740 
   55741         * platform/graphics/SegmentedFontData.cpp:
   55742         (WebCore::SegmentedFontData::containsCharacter): Added.
   55743         (WebCore::SegmentedFontData::containsCharacters): Updated to check all characters
   55744         instead of just the first one, using containsCharacter.
   55745 
   55746         * platform/graphics/SegmentedFontData.h: Made more members private.
   55747         Added containsCharacter function member.
   55748 
   55749         * platform/mac/DragImageMac.mm:
   55750         (WebCore::dragImageSize): Changed to use RetainPtr<NSImage> directly instead of
   55751         DragImageRef for clarity, since this is platform-specific code.
   55752         (WebCore::deleteDragImage): Ditto. Also remove argument name to get rid of unused
   55753         variable warning.
   55754         (WebCore::scaleDragImage): Ditto.
   55755         (WebCore::dissolveDragImageToFraction): Ditto.
   55756         (WebCore::createDragImageFromImage): Ditto.
   55757         (WebCore::createDragImageIconForCachedImage): Ditto.
   55758 
   55759         * platform/mac/WebFontCache.mm:
   55760         (acceptableChoice): Removed the unused weight-related arguments.
   55761         (betterChoice): Ditto.
   55762         (+[WebFontCache internalFontWithFamily:traits:weight:size:]): Ditto.
   55763 
   55764         * platform/posix/FileSystemPOSIX.cpp: Removed the implementation of listDirectory
   55765         because we'd rather get a link error rather than a runtime error if we use it
   55766         for anything, and right now it's not used.
   55767 
   55768         * platform/text/RegularExpression.cpp: Removed unused private data,
   55769         including pattern, lastMatchString, lastMatchOffsets, lastMatchCount,
   55770         and lastMatchPos. Made the RegularExpression::Private::regex be private
   55771         and use an accessor function to get at it.
   55772         (WebCore::RegularExpression::RegularExpression): Removed the const char* version
   55773         of the constructor because it's not any more efficient. Changed the boolean
   55774         constructor argument to use TextCaseSensitivity instead to make it less likely
   55775         we'll use it wrong.
   55776         (WebCore::RegularExpression::operator=): Since the only member is a single RefPtr,
   55777         just use plain old assignment on it. The only reason we do this instead of using
   55778         the compiler generated assignment operator is that we want the Private structure
   55779         to be internal to the .cpp file.
   55780         (WebCore::RegularExpression::match): Added a null check so we won't crash if
   55781         we fail to compile the regular expression. Removed the code to handle multiple
   55782         match strings, since that was unused.
   55783 
   55784         * platform/text/RegularExpression.h: Changed the case sensitivity argument to use
   55785         TextCaseSensitivity and not have a default value. Removed the default constructor,
   55786         and the pattern, match, and pos functions.
   55787 
   55788         * platform/text/StringImpl.h: Moved the TextCaseSensitivity enum here from
   55789         Page.h, because we should eventually use it in all the places where we have
   55790         an argument to control case sensitivity, starting with the functions in this
   55791         class.
   55792 
   55793         * platform/text/mac/ShapeArabic.c:
   55794         (shapeUnicode): Removed the unused options and pErrorCode arguments. Even though
   55795         this is code borrowed from ICU, this seems like a simple safe change to make.
   55796         (shapeArabic): Don't pass options or pErrorCode in to shapeUnicode.
   55797 
   55798         * rendering/RenderPath.cpp:
   55799         (WebCore::RenderPath::RenderPath): Removed the unused style argument.
   55800         Also removed the type check. The argument already has the correct type,
   55801         so it's not helpful to upcast it and then check its type again, unless
   55802         we have some reason to believe the type is not reliable. And we don't.
   55803 
   55804         * rendering/RenderPath.h: Removed the RenderStyle* argument to the
   55805         constructor. Also removed the explicit declaration of the destructor.
   55806         It's not helpful or needed.
   55807 
   55808         * rendering/RenderSVGInlineText.cpp:
   55809         (WebCore::RenderSVGInlineText::localCaretRect): Updated the comment here to
   55810         make it clear that just returning an empty rect is not a good implementation.
   55811         Removed the argument names to get rid of the warning.
   55812 
   55813         * rendering/RenderTreeAsText.cpp:
   55814         (WebCore::printBorderStyle): Removed the unused RenderObject argument.
   55815         (WebCore::operator<<): Updated for the change to printBorderStyle function.
   55816 
   55817         * storage/DatabaseThread.cpp:
   55818         (WebCore::DatabaseThread::DatabaseThread): Removed the unused document argument.
   55819         * storage/DatabaseThread.h: Ditto.
   55820 
   55821         * storage/LocalStorage.cpp:
   55822         (WebCore::LocalStorage::storageArea): Removed the unused Frame* argument.
   55823         * storage/LocalStorage.h: Ditto.
   55824 
   55825         * svg/SVGElement.cpp:
   55826         (WebCore::SVGElement::sendSVGLoadEventIfPossible): Don't pass an exception
   55827         code location to dispatchGenericEvent.
   55828         * svg/SVGElementInstance.cpp:
   55829         (WebCore::SVGElementInstance::dispatchEvent): Ditto.
   55830 
   55831         * svg/SVGStyledTransformableElement.cpp: Removed include of unused RegularExpression.h.
   55832         (WebCore::SVGStyledTransformableElement::createRenderer): Don't pass style in to
   55833         the RenderPath constructor.
   55834 
   55835         * svg/SVGTransformable.cpp: Removed include of unused RegularExpression.h.
   55836 
   55837         * xml/XSLTProcessor.cpp:
   55838         (WebCore::createFragmentFromSource): Removed unused sourceNode argument.
   55839         (WebCore::XSLTProcessor::transformToFragment): Don't pass sourceNode to createFragmentFromSource.
   55840 
   55841 2009-01-11  Alexey Proskuryakov  <ap (a] webkit.org>
   55842 
   55843         Reviewed by Darin Adler.
   55844 
   55845         https://bugs.webkit.org/show_bug.cgi?id=23165
   55846         Disable application cache dynamic entries support.
   55847 
   55848         * bindings/js/JSDOMApplicationCacheCustom.cpp:
   55849         * loader/appcache/DOMApplicationCache.idl:
   55850 
   55851 2009-01-11  Adam Treat  <adam.treat (a] torchmobile.com>
   55852 
   55853         Reviewed by Darin Adler.
   55854 
   55855         Correct coordinate transformation for deeply nested frames on resizing.  This
   55856         fixes https://bugs.webkit.org/show_bug.cgi?id=20766.
   55857 
   55858         Test: fast/frames/frame-deep-nested-resize.html
   55859 
   55860         * rendering/RenderFrameSet.cpp:
   55861         (WebCore::RenderFrameSet::userResize):
   55862 
   55863 2009-01-11  Mark Rowe  <mrowe (a] apple.com>
   55864 
   55865         Tiger build fix.  The connection parameter is still used on Tiger in this method.
   55866 
   55867         * platform/network/mac/ResourceHandleMac.mm:
   55868         (-[WebCoreResourceHandleAsDelegate connection:willCacheResponse:]):
   55869 
   55870 2009-01-11  Darin Adler  <darin (a] apple.com>
   55871 
   55872         Reviewed by Dan Bernstein.
   55873 
   55874         Bug 23102: turn on unused parameter warnings in WebCore
   55875         https://bugs.webkit.org/show_bug.cgi?id=23102
   55876 
   55877         Third step: Deal with cases of arguments used only in assertions.
   55878 
   55879         * dom/MessagePort.cpp:
   55880         (WebCore::MessagePortCloseEventTask::performTask): Use ASSERT_UNUSED.
   55881         * dom/Worker.cpp:
   55882         (WebCore::Worker::notifyFinished): Ditto.
   55883         * dom/XMLTokenizer.cpp:
   55884         (WebCore::XMLTokenizer::notifyFinished): Ditto.
   55885         * loader/appcache/ApplicationCacheGroup.cpp:
   55886         (WebCore::ApplicationCacheGroup::failedLoadingMainResource): Ditto.
   55887         * loader/appcache/ApplicationCacheStorage.cpp:
   55888         (WebCore::ApplicationCacheStorage::verifySchemaVersion): Ditto.
   55889         * loader/icon/IconLoader.cpp:
   55890         (WebCore::IconLoader::didReceiveData): Since loader and size are only
   55891         used when logging, use UNUSED_PARAM when logging is disabled.
   55892         * platform/mac/WidgetMac.mm:
   55893         (WebCore::Widget::beforeMouseDown): Use ASSERT_UNUSED.
   55894         * platform/network/mac/ResourceHandleMac.mm:
   55895         (WebCore::ResourceHandle::didCancelAuthenticationChallenge): Use the
   55896         argument since it's probably a tiny bit more efficient and gets rid
   55897         of the unused argument warning.
   55898         * rendering/RenderListMarker.cpp:
   55899         (WebCore::RenderListMarker::createInlineBox): Use ASSERT_UNUSED.
   55900         * rendering/RenderObject.cpp:
   55901         (WebCore::RenderObject::createInlineBox): Ditto.
   55902         * rendering/RenderSVGInline.cpp:
   55903         (WebCore::RenderSVGInline::createInlineBox): Use UNUSED_PARAM.
   55904         I couldn't use ASSERT_UNUSED because it's a single assertion, but it's
   55905         the only use for two different arguments.
   55906         * rendering/RenderText.cpp:
   55907         (WebCore::RenderText::createInlineBox): Use ASSERT_UNUSED.
   55908         * rendering/RenderThemeMac.mm:
   55909         (-[WebCoreRenderThemeNotificationObserver systemColorsDidChange:]): Ditto.
   55910 
   55911 2009-01-11  Simon Fraser  <simon.fraser (a] apple.com>
   55912 
   55913         Reviewed by Oliver Hunt
   55914 
   55915         https://bugs.webkit.org/show_bug.cgi?id=23242
   55916 
   55917         Fix CanvasRenderingContext2D::transform to do a pre-multiply,
   55918         rather than a post-multiply into m_transform. This bug did not affect
   55919         drawing, but did cause m_transform to be incorrect, which impacted
   55920         willDraw(), and isPointInPath.
   55921 
   55922         Test: fast/canvas/canvas-incremental-repaint-2.html
   55923 
   55924         * html/CanvasRenderingContext2D.cpp:
   55925         (WebCore::CanvasRenderingContext2D::transform):
   55926 
   55927 2009-01-11  Darin Adler  <darin (a] apple.com>
   55928 
   55929         Reviewed by Dan Bernstein.
   55930 
   55931         Bug 23102: turn on unused parameter warnings in WebCore
   55932         https://bugs.webkit.org/show_bug.cgi?id=23102
   55933 
   55934         Second step: Fix simple Objective-C cases where we need to use UNUSED_PARAM.
   55935         That's because you can't omit an argument name in Objective-C methods.
   55936 
   55937         * bindings/objc/DOMObject.mm:
   55938         (-[DOMObject copyWithZone:]): Use UNUSED_PARAM. Also rename argument to include
   55939         the word "unused" so we don't just start using it without removing the macro.
   55940         * bindings/objc/WebScriptObject.mm:
   55941         (+[WebUndefined allocWithZone:]): Ditto.
   55942         (-[WebUndefined initWithCoder:]): Ditto.
   55943         (-[WebUndefined encodeWithCoder:]): Ditto.
   55944         (-[WebUndefined copyWithZone:]): Ditto.
   55945         * page/mac/WebDashboardRegion.m:
   55946         (-[WebDashboardRegion copyWithZone:]): Ditto.
   55947         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   55948         (WebCore::mainThreadSetNeedsDisplay): Omit argument name.
   55949         (-[WebCoreMovieObserver loadStateChanged:]): Use UNUSED_PARAM as above.
   55950         (-[WebCoreMovieObserver rateChanged:]): Ditto.
   55951         (-[WebCoreMovieObserver sizeChanged:]): Ditto.
   55952         (-[WebCoreMovieObserver timeChanged:]): Ditto.
   55953         (-[WebCoreMovieObserver didEnd:]): Ditto.
   55954         (-[WebCoreMovieObserver newImageAvailable:]): Ditto.
   55955         * platform/mac/ScrollbarThemeMac.mm:
   55956         (+[ScrollbarPrefsObserver appearancePrefsChanged:]): Ditto.
   55957         (+[ScrollbarPrefsObserver behaviorPrefsChanged:]): Ditto.
   55958         * platform/mac/SharedTimerMac.mm:
   55959         (-[WebCorePowerNotifier didWake:]): Ditto.
   55960         * platform/mac/WebCoreKeyGenerator.m:
   55961         (-[WebCoreKeyGenerator signedPublicKeyAndChallengeStringWithStrengthIndex:challenge:pageURL:]): Ditto.
   55962         * platform/network/mac/ResourceHandleMac.mm:
   55963         (-[WebCoreResourceHandleAsDelegate connection:willSendRequest:redirectResponse:]): Ditto.
   55964         (-[WebCoreResourceHandleAsDelegate connectionShouldUseCredentialStorage:]): Ditto.
   55965         (-[WebCoreResourceHandleAsDelegate connection:didReceiveAuthenticationChallenge:]): Ditto.
   55966         (-[WebCoreResourceHandleAsDelegate connection:didCancelAuthenticationChallenge:]): Ditto.
   55967         (-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]): Ditto.
   55968         (-[WebCoreResourceHandleAsDelegate connection:didReceiveData:lengthReceived:]): Ditto.
   55969         (-[WebCoreResourceHandleAsDelegate connection:willStopBufferingData:]): Ditto.
   55970         (-[WebCoreResourceHandleAsDelegate connection:didSendBodyData:totalBytesWritten:totalBytesExpectedToWrite:]): Ditto.
   55971         (-[WebCoreResourceHandleAsDelegate connectionDidFinishLoading:]): Ditto.
   55972         (-[WebCoreResourceHandleAsDelegate connection:didFailWithError:]): Ditto.
   55973         (-[WebCoreResourceHandleAsDelegate connection:willCacheResponse:]): Ditto.
   55974         (-[WebCoreSynchronousLoader connection:willSendRequest:redirectResponse:]): Ditto.
   55975         (-[WebCoreSynchronousLoader connection:didReceiveAuthenticationChallenge:]): Ditto.
   55976         (-[WebCoreSynchronousLoader connection:didReceiveResponse:]): Ditto.
   55977         (-[WebCoreSynchronousLoader connection:didReceiveData:]): Ditto.
   55978         (-[WebCoreSynchronousLoader connectionDidFinishLoading:]): Ditto.
   55979         (-[WebCoreSynchronousLoader connection:didFailWithError:]): Ditto.
   55980 
   55981 2009-01-11  Dirk Schulze  <krit (a] webkit.org>
   55982 
   55983         Reviewed by Darin Adler.
   55984 
   55985         Move platform dependent strokeContains back to RenderPath, Path and delete
   55986         unneeded Code in svg.
   55987 
   55988         RenderPath clean-up for strokeContains
   55989         [https://bugs.webkit.org/show_bug.cgi?id=22957]
   55990 
   55991         * GNUmakefile.am:
   55992         * WebCore.pro:
   55993         * WebCore.vcproj/WebCore.vcproj:
   55994         * WebCore.xcodeproj/project.pbxproj:
   55995         * platform/graphics/Path.h:
   55996         * platform/graphics/cairo/PathCairo.cpp:
   55997         (WebCore::Path::strokeContains):
   55998         * platform/graphics/cg/PathCG.cpp:
   55999         (WebCore::Path::strokeContains):
   56000         * platform/graphics/qt/PathQt.cpp:
   56001         (WebCore::Path::strokeContains):
   56002         * rendering/RenderPath.cpp:
   56003         (WebCore::RenderPath::strokeContains):
   56004         * svg/graphics/cairo/RenderPathCairo.cpp: Removed.
   56005         * svg/graphics/cg/CgSupport.cpp: Removed.
   56006         * svg/graphics/cg/CgSupport.h: Removed.
   56007         * svg/graphics/cg/RenderPathCg.cpp: Removed.
   56008         * svg/graphics/cg/SVGPaintServerPatternCg.cpp:
   56009         * svg/graphics/cg/SVGResourceMaskerCg.mm:
   56010         * svg/graphics/qt/RenderPathQt.cpp: Removed.
   56011 
   56012 2009-01-11  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   56013 
   56014         Reviewed by Anders Carlsson.
   56015 
   56016         [GTK] make distcheck complains that distclean is not deleting JSWorkerContextBase.lut.h
   56017 
   56018         make distcheck pass by adding JSWorkerContextBase.lut.h to the
   56019         CLEANFILES that will be cleaned on a make distclean.
   56020 
   56021         * GNUmakefile.am:
   56022 
   56023 2009-01-11  Zalan Bujtas  <zbujtas (a] gmail.com>
   56024 
   56025         Reviewed by Alexey Proskuryakov.
   56026 
   56027         https://bugs.webkit.org/show_bug.cgi?id=23235
   56028         Build fix for non-VIDEO builds.
   56029 
   56030         * rendering/RenderTheme.cpp:
   56031         * rendering/RenderTheme.h:
   56032 
   56033 2009-01-11  Gabriella Toth  <gtoth (a] inf.u-szeged.hu>
   56034 
   56035         Reviewed by Darin Adler.
   56036 
   56037         https://bugs.webkit.org/show_bug.cgi?id=19287
   56038         return value of malloc() is not checked in npruntime.cpp
   56039 
   56040         Checking whether malloc can allocate memory or not. If it can't, CRASH macro is invoked
   56041         (like in fastMalloc).
   56042 
   56043         * bridge/npruntime.cpp:
   56044         (_NPN_GetStringIdentifier):
   56045         (_NPN_GetIntIdentifier):
   56046         (NPN_InitializeVariantWithStringCopy):
   56047         (_NPN_CreateObject):
   56048 
   56049 2009-01-11  Glenn Wilson  <gwilson (a] google.com>
   56050 
   56051         Reviewed by Darin Adler.
   56052 
   56053         Changes radio buttons so they can be 'checked' even if they
   56054         don't have the name attribute set.
   56055 
   56056         See https://bugs.webkit.org/show_bug.cgi?id=21534
   56057 
   56058         Test: fast/html/select-unnamed-radio.html
   56059 
   56060         * html/HTMLInputElement.cpp:
   56061         (WebCore::HTMLInputElement::preDispatchEventHandler):
   56062 
   56063 2009-01-11  Bernhard Rosenkraenzer <bero (a] arklinux.ch>
   56064 
   56065         Reviewed by Darin Adler.
   56066 
   56067         https://bugs.webkit.org/show_bug.cgi?id=22205
   56068         Fix compatibility with bison 2.4, partially based on older patch by
   56069         Priit Laes <amd (a] store20.com>
   56070 
   56071         * WebCore/css/CSSGrammar.y: Made compatible with bison 2.4
   56072 
   56073 2009-01-11  Jeremy Moskovich  <jeremy (a] chromium.org>
   56074 
   56075         Reviewed by Darin Adler.
   56076 
   56077         https://bugs.webkit.org/show_bug.cgi?id=16001
   56078         Incorrect assumption that selection is always contiguous LTR.
   56079 
   56080         Test: editing/selection/extend-selection-bidi.html
   56081 
   56082         * rendering/RootInlineBox.cpp: (WebCore::RootInlineBox::fillLineSelectionGap):
   56083         Make this function  not assume a contiguous visual LTR selection range.
   56084 
   56085 2009-01-11  Dmitry Titov  <dimich (a] chromium.org>
   56086 
   56087         Reviewed by Darin Adler.
   56088 
   56089         https://bugs.webkit.org/show_bug.cgi?id=23207
   56090         Moved currentTime() to from WebCore to WTF.
   56091 
   56092         Most of these files only have a different header file included.
   56093         Various build files reflect removal of SystemTimeGtk, Wx, Qt and Linux
   56094         which were removed since they only implemented currentTime().
   56095 
   56096         * ForwardingHeaders/wtf/CurrentTime.h: Added.
   56097         * GNUmakefile.am:
   56098         * WebCore.base.exp:
   56099         * WebCore.pro:
   56100         * dom/ContainerNode.cpp:
   56101         * dom/Document.cpp:
   56102         * dom/Event.cpp:
   56103         * history/CachedPage.cpp:
   56104         * history/PageCache.cpp:
   56105         * html/HTMLMediaElement.cpp:
   56106         (WebCore::HTMLMediaElement::load):
   56107         (WebCore::HTMLMediaElement::progressEventTimerFired):
   56108         * html/HTMLTokenizer.cpp:
   56109         * html/PreloadScanner.cpp:
   56110         * inspector/InspectorController.cpp:
   56111         * loader/Cache.cpp:
   56112         (WebCore::Cache::pruneLiveResources):
   56113         * loader/CachedImage.cpp:
   56114         * loader/CachedResource.cpp:
   56115         * loader/FrameLoader.cpp:
   56116         * loader/ProgressTracker.cpp:
   56117         * loader/icon/IconDatabase.cpp:
   56118         * loader/icon/IconRecord.cpp:
   56119         * page/DragController.cpp:
   56120         * page/Frame.cpp:
   56121         * page/FrameView.cpp:
   56122         * page/animation/AnimationBase.cpp:
   56123         * page/animation/AnimationController.cpp:
   56124         * page/animation/KeyframeAnimation.cpp:
   56125         * platform/SystemTime.h:
   56126         * platform/Timer.cpp:
   56127         * platform/graphics/BitmapImage.cpp:
   56128         * platform/gtk/MouseEventGtk.cpp:
   56129         * platform/gtk/SharedTimerGtk.cpp:
   56130         * platform/gtk/SystemTimeGtk.cpp: Removed.
   56131         * platform/gtk/SystemTimeLinux.cpp: Removed.
   56132         * platform/mac/SystemTimeMac.cpp:
   56133         * platform/qt/PlatformMouseEventQt.cpp:
   56134         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
   56135         * platform/qt/SharedTimerQt.cpp:
   56136         * platform/qt/SharedTimerQt.h:
   56137         * platform/qt/SystemTimeQt.cpp: Removed.
   56138         * platform/win/SharedTimerWin.cpp:
   56139         * platform/win/SystemTimeWin.cpp:
   56140         * platform/wx/MouseEventWx.cpp:
   56141         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
   56142         * platform/wx/SharedTimerWx.cpp:
   56143         * platform/wx/SystemTimeWx.cpp: Removed.
   56144         * rendering/RenderImage.cpp:
   56145         * rendering/RenderMedia.cpp:
   56146         * svg/animation/SMILTimeContainer.cpp:
   56147         * webcore-wx.bkl:
   56148         * xml/XMLHttpRequest.cpp:
   56149 
   56150 2009-01-11  Dmitry Titov  <dimich (a] chromium.org>
   56151 
   56152         Reviewed by Darin Adler.
   56153 
   56154         Make ScheduledAction (Timeout callback) able to execute the callback under WorkerContext.
   56155         Part of 'Timers in Workers' work.
   56156         https://bugs.webkit.org/show_bug.cgi?id=23223
   56157 
   56158         * bindings/js/ScheduledAction.cpp:
   56159         (WebCore::ScheduledAction::execute): new method that takes WorkerContext.
   56160         (WebCore::ScheduledAction::executeFunctionInContext): Executes a JSFunction in proper context with 'this' object.
   56161         * bindings/js/ScheduledAction.h:
   56162 
   56163 2009-01-10  Eric Carlson  <eric.carlson (a] apple.com>
   56164 
   56165         Reviewed by Eric Seidel.
   56166 
   56167         https://bugs.webkit.org/show_bug.cgi?id=23210
   56168         Make it easier for ports to define custom UI for media controls
   56169 
   56170         * css/CSSStyleSelector.cpp:
   56171         (WebCore::CSSStyleSelector::styleForElement): call theme()->styleSheetForMediaControls to
   56172         get the media controller style sheet
   56173 
   56174         * rendering/MediaControlElements.cpp:
   56175         (WebCore::MediaControlInputElement::hitTest): Added
   56176         * rendering/MediaControlElements.h: Updated
   56177 
   56178         * rendering/RenderMedia.cpp:
   56179         (WebCore::RenderMedia::forwardEvent): Call element hitTest() method instead of local function
   56180         so control elements don't necessarily have to be rectangular
   56181 
   56182         * rendering/RenderTheme.cpp:
   56183         (WebCore::RenderTheme::styleSheetForMediaControls):  Added
   56184         (WebCore::RenderTheme::hitTestMediaControlPart):  Added
   56185         * rendering/RenderTheme.h: Updated
   56186 
   56187 2009-01-10  Simon Fraser  <simon.fraser (a] apple.com>
   56188 
   56189         Reviewed by Dan Bernstein
   56190 
   56191         https://bugs.webkit.org/show_bug.cgi?id=23222
   56192 
   56193         We need to disable LayoutState when an object has transforms,
   56194         because LayoutState is not transform-aware and therefore
   56195         repaint rects can be computed incorrectly.
   56196 
   56197         Test: fast/repaint/transform-disable-layoutstate.html
   56198 
   56199         * rendering/RenderBlock.cpp:
   56200         (WebCore::RenderBlock::layoutBlock):
   56201         (WebCore::RenderBlock::layoutOnlyPositionedObjects):
   56202         * rendering/RenderFlexibleBox.cpp:
   56203         (WebCore::RenderFlexibleBox::layoutBlock):
   56204 
   56205 2009-01-09  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   56206 
   56207         Reviewed by Simon Hausmann.
   56208 
   56209         [QT] Make SharedTimer use QBasicTimer
   56210 
   56211         Kill the SharedTimerQt.h and the usage of signal and slots
   56212         by using QBasicTimer.
   56213 
   56214         * WebCore.pro:
   56215         * platform/qt/SharedTimerQt.cpp:
   56216         (WebCore::SharedTimerQt::SharedTimerQt):
   56217         (WebCore::SharedTimerQt::inst):
   56218         (WebCore::SharedTimerQt::start):
   56219         (WebCore::SharedTimerQt::stop):
   56220         (WebCore::SharedTimerQt::timerEvent):
   56221         (WebCore::setSharedTimerFiredFunction):
   56222         (WebCore::setSharedTimerFireTime):
   56223         (WebCore::stopSharedTimer):
   56224         * platform/qt/SharedTimerQt.h: Removed.
   56225 
   56226 2009-01-09  Adam Bergkvist <adam.bergkvist (a] ericsson.com>
   56227 
   56228         Reviewed by Holger Freyther.
   56229 
   56230         [CURL] POST without body becomes GET
   56231         https://bugs.webkit.org/show_bug.cgi?id=23182
   56232 
   56233         Make sure that method is always set to POST even when the body is
   56234         empty. Cleaned up httpBody null check.
   56235 
   56236         * platform/network/curl/ResourceHandleManager.cpp:
   56237         (WebCore::ResourceHandleManager::setupPOST):
   56238 
   56239 2009-01-09  Adam Treat  <adam.treat (a] torchmobile.com>
   56240 
   56241         Build fix.
   56242 
   56243         * plugins/PluginView.cpp:
   56244 
   56245 2009-01-09  Adele Peterson  <adele (a] apple.com>
   56246 
   56247         Reviewed by Darin Adler.
   56248 
   56249         Fix infinite recursion in clientPaddingLeft and clientPaddingRight.  This changes the code back to
   56250         how it was before RenderTextControlSingleLine was split out from RenderTextControl.
   56251 
   56252         No test added since this code is only exercised when trying to place a search field's recent searches popup menu.
   56253 
   56254         * rendering/RenderTextControlSingleLine.cpp:
   56255         (WebCore::RenderTextControlSingleLine::clientPaddingLeft):
   56256         (WebCore::RenderTextControlSingleLine::clientPaddingRight):
   56257 
   56258 2009-01-09  Darin Adler  <darin (a] apple.com>
   56259 
   56260         Reviewed by Jon Honeycutt.
   56261 
   56262         Bug 22913: REGRESSION: Space bar doesn't scroll on windows
   56263         https://bugs.webkit.org/show_bug.cgi?id=22913
   56264         rdar://problem/6479834
   56265 
   56266         * page/EventHandler.cpp:
   56267         (WebCore::EventHandler::defaultKeyboardEventHandler): Added code to call
   56268         defaultSpaceEventHandler.
   56269         (WebCore::EventHandler::defaultSpaceEventHandler): Added. Scrolls down or up based
   56270         on the shift key.
   56271         * page/EventHandler.h: Added defaultSpaceEventHandler.
   56272 
   56273         * platform/mac/ScrollViewMac.mm:
   56274         (WebCore::ScrollView::platformScroll): Return false, because this function does
   56275         not scroll. In an earlier version of this patch, I used this to prevent the
   56276         patch from affecting the Mac, but I decided to use #if instead.
   56277 
   56278 2009-01-09  Gavin Barraclough  <barraclough (a] apple.com>
   56279 
   56280         Reviewed by Oliver Hunt.
   56281 
   56282         Delete references to JSValue, removing this class.
   56283 
   56284         * bindings/js/JSWorkerContextCustom.cpp:
   56285         (WebCore::JSWorkerContext::self):
   56286         * bindings/js/ScriptCallStack.h:
   56287 
   56288 2009-01-09  Dimitri Glazkov  <dglazkov (a] chromium.org>
   56289 
   56290         Reviewed by Eric Seidel.
   56291 
   56292         Add svg/graphics/skia files.
   56293         https://bugs.webkit.org/show_bug.cgi?id=23147
   56294 
   56295         * svg/graphics/skia/RenderPathSkia.cpp: Added.
   56296         (WebCore::RenderPath::strokeContains):
   56297         * svg/graphics/skia/SVGPaintServerPatternSkia.cpp: Added.
   56298         (WebCore::SVGPaintServerPattern::setup):
   56299         * svg/graphics/skia/SVGPaintServerSkia.cpp: Added.
   56300         (WebCore::SVGPaintServer::draw):
   56301         (WebCore::SVGPaintServer::teardown):
   56302         (WebCore::SVGPaintServer::renderPath):
   56303         * svg/graphics/skia/SVGResourceFilterSkia.cpp: Added.
   56304         (WebCore::SVGResourceFilter::createPlatformData):
   56305         (WebCore::SVGResourceFilter::prepareFilter):
   56306         (WebCore::SVGResourceFilter::applyFilter):
   56307         * svg/graphics/skia/SVGResourceMaskerSkia.cpp: Added.
   56308         (WebCore::SVGResourceMasker::applyMask):
   56309 
   56310 2009-01-09  Dimitri Glazkov  <dglazkov (a] chromium.org>
   56311 
   56312         Reviewed by Eric Seidel.
   56313 
   56314         Add SkiaFontWin to platform/graphics/chromium
   56315         https://bugs.webkit.org/show_bug.cgi?id=23215
   56316 
   56317         * platform/graphics/skia/SkiaFontWin.cpp: Added.
   56318         (WebCore::CachedOutlineKey::CachedOutlineKey):
   56319         (WebCore::operator==):
   56320         (WebCore::CachedOutlineKeyHash::hash):
   56321         (WebCore::CachedOutlineKeyHash::equal):
   56322         (WebCore::FIXEDToSkScalar):
   56323         (WebCore::deleteOutline):
   56324         (WebCore::addPolyCurveToPath):
   56325         (WebCore::getPathForGlyph):
   56326         (WebCore::SkiaWinOutlineCache::lookupOrCreatePathForGlyph):
   56327         (WebCore::SkiaWinOutlineCache::removePathsForFont):
   56328         * platform/graphics/skia/SkiaFontWin.h: Added.
   56329 
   56330 2009-01-09  Anders Carlsson  <andersca (a] apple.com>
   56331 
   56332         Fix build.
   56333 
   56334         * WebCore.LP64.exp:
   56335 
   56336 2009-01-09  Dimitri Glazkov  <dglazkov (a] chromium.org>
   56337 
   56338         Reviewed by Eric Seidel.
   56339 
   56340         Add PlatformContextSkia and PlatformGraphics.h to platform/graphics/skia
   56341         https://bugs.webkit.org/show_bug.cgi?id=23215
   56342 
   56343         * platform/graphics/skia/PlatformContextSkia.cpp: Added.
   56344         (PlatformContextSkia::State::State):
   56345         (PlatformContextSkia::State::~State):
   56346         (PlatformContextSkia::State::applyAlpha):
   56347         (PlatformContextSkia::PlatformContextSkia):
   56348         (PlatformContextSkia::~PlatformContextSkia):
   56349         (PlatformContextSkia::setCanvas):
   56350         (PlatformContextSkia::save):
   56351         (PlatformContextSkia::restore):
   56352         (PlatformContextSkia::drawRect):
   56353         (PlatformContextSkia::setupPaintCommon):
   56354         (PlatformContextSkia::setupPaintForFilling):
   56355         (PlatformContextSkia::setupPaintForStroking):
   56356         (PlatformContextSkia::setDrawLooper):
   56357         (PlatformContextSkia::setMiterLimit):
   56358         (PlatformContextSkia::setAlpha):
   56359         (PlatformContextSkia::setLineCap):
   56360         (PlatformContextSkia::setLineJoin):
   56361         (PlatformContextSkia::setPorterDuffMode):
   56362         (PlatformContextSkia::setFillColor):
   56363         (PlatformContextSkia::getDrawLooper):
   56364         (PlatformContextSkia::getStrokeStyle):
   56365         (PlatformContextSkia::setStrokeStyle):
   56366         (PlatformContextSkia::setStrokeColor):
   56367         (PlatformContextSkia::getStrokeThickness):
   56368         (PlatformContextSkia::setStrokeThickness):
   56369         (PlatformContextSkia::getTextDrawingMode):
   56370         (PlatformContextSkia::setTextDrawingMode):
   56371         (PlatformContextSkia::setUseAntialiasing):
   56372         (PlatformContextSkia::fillColor):
   56373         (PlatformContextSkia::beginPath):
   56374         (PlatformContextSkia::addPath):
   56375         (PlatformContextSkia::setFillRule):
   56376         (PlatformContextSkia::setGradient):
   56377         (PlatformContextSkia::setPattern):
   56378         (PlatformContextSkia::setDashPathEffect):
   56379         (PlatformContextSkia::paintSkPaint):
   56380         (PlatformContextSkia::bitmap):
   56381         (PlatformContextSkia::isPrinting):
   56382         * platform/graphics/skia/PlatformContextSkia.h: Added.
   56383         (PlatformContextSkia::currentPath):
   56384         (PlatformContextSkia::canvas):
   56385         (PlatformContextSkia::gdk_skia):
   56386         * platform/graphics/skia/PlatformGraphics.h: Added.
   56387 
   56388 2009-01-09  Dimitri Glazkov  <dglazkov (a] chromium.org>
   56389 
   56390         Reviewed by Eric Seidel.
   56391 
   56392         Add TransformationMatrixSkia to platform/graphics/skia
   56393         https://bugs.webkit.org/show_bug.cgi?id=23215
   56394 
   56395         * platform/graphics/skia/TransformationMatrixSkia.cpp: Added.
   56396         (WebCore::TransformationMatrix::TransformationMatrix):
   56397         (WebCore::TransformationMatrix::setMatrix):
   56398         (WebCore::TransformationMatrix::map):
   56399         (WebCore::TransformationMatrix::mapRect):
   56400         (WebCore::TransformationMatrix::isIdentity):
   56401         (WebCore::TransformationMatrix::reset):
   56402         (WebCore::TransformationMatrix::scale):
   56403         (WebCore::TransformationMatrix::rotate):
   56404         (WebCore::TransformationMatrix::translate):
   56405         (WebCore::TransformationMatrix::shear):
   56406         (WebCore::TransformationMatrix::det):
   56407         (WebCore::TransformationMatrix::inverse):
   56408         (WebCore::TransformationMatrix::operator SkMatrix):
   56409         (WebCore::TransformationMatrix::operator==):
   56410         (WebCore::TransformationMatrix::operator*=):
   56411         (WebCore::TransformationMatrix::operator*):
   56412         (WebCore::TransformationMatrix::a):
   56413         (WebCore::TransformationMatrix::setA):
   56414         (WebCore::TransformationMatrix::b):
   56415         (WebCore::TransformationMatrix::setB):
   56416         (WebCore::TransformationMatrix::c):
   56417         (WebCore::TransformationMatrix::setC):
   56418         (WebCore::TransformationMatrix::d):
   56419         (WebCore::TransformationMatrix::setD):
   56420         (WebCore::TransformationMatrix::e):
   56421         (WebCore::TransformationMatrix::setE):
   56422         (WebCore::TransformationMatrix::f):
   56423         (WebCore::TransformationMatrix::setF):
   56424 
   56425 2009-01-09  Alexey Proskuryakov  <ap (a] webkit.org>
   56426 
   56427         Reviewed by Darin Adler.
   56428 
   56429         <rdar://problem/6477502> Repro crash reloading page using HTML5 AppCache on Windows
   56430 
   56431         Test: http/tests/appcache/reload.html
   56432 
   56433         On Windows, reloading resulted in the following sequence of events:
   56434         1) A new main resource loader was created and associated with the cache. Its document loader
   56435         was not associated with the cache yet.
   56436         2) The old document loader was destroyed, and since it was the last one, ApplicationCacheGroup
   56437         teardown started, with newestCache being zeroed out.
   56438         3) The new document loader was associated with the cache group, and cache update started.
   56439         4) Since newestCache was null, this caused many problems.
   56440 
   56441         * loader/appcache/ApplicationCacheGroup.cpp:
   56442         (WebCore::ApplicationCacheGroup::documentLoaderDestroyed): Improve comments and assertions,
   56443         no functional changes.
   56444         (WebCore::ApplicationCacheGroup::associateDocumentLoaderWithCache): Revive the cache group
   56445         if its newest cache pointer is already saved for teardown. Note that the cache pointer
   56446         validity is ensured by MainResourceLoader that holds a reference to it.
   56447 
   56448 2009-01-09  Darin Fisher  <darin (a] chromium.org>
   56449 
   56450         Reviewed by Eric Seidel.
   56451 
   56452         https://bugs.webkit.org/show_bug.cgi?id=23214
   56453         Upstream platform/network/chromium/
   56454 
   56455         * platform/network/chromium/AuthenticationChallenge.h: Added.
   56456         (WebCore::AuthenticationChallenge::AuthenticationChallenge):
   56457         (WebCore::AuthenticationChallenge::sourceHandle):
   56458         * platform/network/chromium/AuthenticationChallengeChromium.cpp: Added.
   56459         (WebCore::AuthenticationChallenge::platformCompare):
   56460         * platform/network/chromium/CookieJarChromium.cpp: Added.
   56461         (WebCore::setCookies):
   56462         (WebCore::cookies):
   56463         (WebCore::cookiesEnabled):
   56464         * platform/network/chromium/DNSChromium.cpp: Added.
   56465         (WebCore::prefetchDNS):
   56466         * platform/network/chromium/NetworkStateNotifierChromium.cpp: Added.
   56467         (WebCore::NetworkStateNotifier::updateState):
   56468         (WebCore::NetworkStateNotifier::NetworkStateNotifier):
   56469         * platform/network/chromium/NetworkStateNotifierPrivate.h: Added.
   56470         * platform/network/chromium/ResourceError.h: Added.
   56471         (WebCore::ResourceError::ResourceError):
   56472         * platform/network/chromium/ResourceRequest.h: Added.
   56473         (WebCore::ResourceRequest::):
   56474         (WebCore::ResourceRequest::ResourceRequest):
   56475         (WebCore::ResourceRequest::frame):
   56476         (WebCore::ResourceRequest::setFrame):
   56477         (WebCore::ResourceRequest::setTargetType):
   56478         (WebCore::ResourceRequest::targetType):
   56479         (WebCore::ResourceRequest::originPid):
   56480         (WebCore::ResourceRequest::setOriginPid):
   56481         (WebCore::ResourceRequest::securityInfo):
   56482         (WebCore::ResourceRequest::setSecurityInfo):
   56483         (WebCore::ResourceRequest::doUpdatePlatformRequest):
   56484         (WebCore::ResourceRequest::doUpdateResourceRequest):
   56485         * platform/network/chromium/ResourceResponse.h:
   56486         (WebCore::ResourceResponse::ResourceResponse):
   56487         (WebCore::ResourceResponse::getSecurityInfo):
   56488         (WebCore::ResourceResponse::setSecurityInfo):
   56489         (WebCore::ResourceResponse::isContentFiltered):
   56490         (WebCore::ResourceResponse::setIsContentFiltered):
   56491         (WebCore::ResourceResponse::doUpdateResourceResponse):
   56492 
   56493 2009-01-09  Peter Kasting  <pkasting (a] google.com>
   56494 
   56495         Reviewed by David Hyatt.
   56496 
   56497         https://bugs.webkit.org/show_bug.cgi?id=22995
   56498         Fix flaky image animation by resetting the metadata for a frame when
   56499         we get new data for that frame.  This fixes animations that halted
   56500         when the next frame of the animation wasn't complete by the time the
   56501         current frame's duration expired.
   56502 
   56503         * platform/graphics/BitmapImage.cpp:
   56504         (WebCore::BitmapImage::destroyDecodedData):
   56505         (WebCore::BitmapImage::dataChanged):
   56506         * platform/graphics/BitmapImage.h:
   56507         (WebCore::FrameData::~FrameData):
   56508         * platform/graphics/cairo/ImageCairo.cpp:
   56509         (WebCore::FrameData::clear):
   56510         * platform/graphics/cg/ImageCG.cpp:
   56511         (WebCore::FrameData::clear):
   56512         * platform/graphics/qt/ImageQt.cpp:
   56513         (WebCore::FrameData::clear):
   56514         * platform/graphics/wx/ImageWx.cpp:
   56515         (WebCore::FrameData::clear):
   56516 
   56517 2009-01-09  Simon Hausmann  <simon.hausmann (a] nokia.com>
   56518 
   56519         Rubber-stamped by Tor Arne Vestb.
   56520 
   56521         Swap the .h and the .cpp output in the Qt build for the
   56522         UserAgentStyleSheetData files, to put the definition in the .cpp file
   56523         and the declaration in the header file.
   56524 
   56525         * WebCore.pro:
   56526 
   56527 2009-01-09  David Levin  <levin (a] chromium.org>
   56528 
   56529         Reviewed by Oliver Hunt.
   56530 
   56531         https://bugs.webkit.org/show_bug.cgi?id=23175
   56532 
   56533         Added forwarding header.
   56534 
   56535         * ForwardingHeaders/wtf/PtrAndFlags.h: Added.
   56536 
   56537 2009-01-09  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   56538 
   56539         Reviewed by Simon Hausmann.
   56540 
   56541         Prevent qmake from generating duplicate rules for embedded stylesheets
   56542 
   56543         The STYLESHEETS_EMBED variable used to contain only one file name, but
   56544         now that it is a list of files we need to change it to be a dependency
   56545         for the stylesheet generator instead of the input.
   56546 
   56547         * WebCore.pro:
   56548 
   56549 2009-01-09  Simon Hausmann  <simon.hausmann (a] nokia.com>
   56550 
   56551         Reviewed by Tor Arne Vestb.
   56552 
   56553         Fix qmake warning about missing test function, a contains() call was
   56554         missing.
   56555 
   56556         * WebCore.pro:
   56557 
   56558 2009-01-09  Simon Hausmann  <simon.hausmann (a] nokia.com>
   56559 
   56560         Rubber-stamped by Tor Arne Vestb.
   56561 
   56562         Add the Qt API headers to HEADERS, too, for improved completion in IDEs.
   56563 
   56564         * WebCore.pro:
   56565 
   56566 2009-01-09  David Levin  <levin (a] chromium.org>
   56567 
   56568         Reviewed by Alexey Proskuryakov.
   56569 
   56570         https://bugs.webkit.org/show_bug.cgi?id=23199
   56571 
   56572         Fix deref's of string happening on two different threads.
   56573 
   56574         No observable change in behavior, so no test.  However, there are asserts
   56575         being added for https://bugs.webkit.org/show_bug.cgi?id=23175 which
   56576         will detect this issue while running the normal worker tests.
   56577 
   56578         * dom/WorkerThread.cpp:
   56579         (WebCore::WorkerThreadStartupData::create):
   56580         (WebCore::WorkerThreadStartupData::WorkerThreadStartupData):
   56581         (WebCore::WorkerThread::WorkerThread):
   56582         (WebCore::WorkerThread::workerThread):
   56583         * dom/WorkerThread.h:
   56584 
   56585 2009-01-08  Dan Bernstein  <mitz (a] apple.com>
   56586 
   56587         Reviewed by Adam Roben.
   56588 
   56589         - use native glyph support in Core Graphics when available
   56590 
   56591         * platform/graphics/win/FontCGWin.cpp:
   56592         (WebCore::Font::drawGlyphs): Changed to use drawGDIGlyphs() only if
   56593         native glyph support is not available or stroking is required. Changed
   56594         to pass the font's useGDI() flag to wkSetCGContextFontRenderingStyle to
   56595         request the use of native glyphs.
   56596         * platform/graphics/win/FontCustomPlatformData.cpp:
   56597         (WebCore::FontCustomPlatformData::fontPlatformData): Added a call to
   56598         wkSetFontPlatformInfo to attach the LOGFONT to the CGFont.
   56599         * platform/graphics/win/FontPlatformDataCGWin.cpp:
   56600         (WebCore::FontPlatformData::platformDataInit): Ditto.
   56601 
   56602 2009-01-08  Peter Kasting  <pkasting (a] google.com>
   56603 
   56604         Reviewed by Sam Weinig.
   56605 
   56606         https://bugs.webkit.org/show_bug.cgi?id=22929
   56607         Fix memory regression when decoding large animated GIFs.
   56608 
   56609         * platform/graphics/cg/ImageSourceCG.cpp:
   56610         (WebCore::ImageSource::clear):
   56611 
   56612 2009-01-08  Scott Violet  <sky (a] chromium.org>
   56613 
   56614         Reviewed by Eric Seidel (and Adam Barth).
   56615 
   56616         Fix Images to return their file extension
   56617         http://code.google.com/p/chromium/issues/detail?id=5827
   56618 
   56619         * platform/graphics/skia/ImageSourceSkia.cpp:
   56620         (WebCore::ImageSource::filenameExtension):
   56621 
   56622 2009-01-08  Dimitri Glazkov  <dglazkov (a] chromium.org>
   56623 
   56624         Reviewed by Eric Seidel.
   56625 
   56626         Add PathSkia and PatternSkia implementations to WebCore
   56627         https://bugs.webkit.org/show_bug.cgi?id=23200
   56628 
   56629         * platform/graphics/skia/PathSkia.cpp: Added.
   56630         (WebCore::Path::Path):
   56631         (WebCore::Path::~Path):
   56632         (WebCore::Path::operator=):
   56633         (WebCore::Path::isEmpty):
   56634         (WebCore::Path::contains):
   56635         (WebCore::Path::translate):
   56636         (WebCore::Path::boundingRect):
   56637         (WebCore::Path::moveTo):
   56638         (WebCore::Path::addLineTo):
   56639         (WebCore::Path::addQuadCurveTo):
   56640         (WebCore::Path::addBezierCurveTo):
   56641         (WebCore::Path::addArcTo):
   56642         (WebCore::Path::closeSubpath):
   56643         (WebCore::Path::addArc):
   56644         (WebCore::Path::addRect):
   56645         (WebCore::Path::addEllipse):
   56646         (WebCore::Path::clear):
   56647         (WebCore::convertPathPoints):
   56648         (WebCore::Path::apply):
   56649         (WebCore::Path::transform):
   56650         (WebCore::Path::debugString):
   56651         (WebCore::boundingBoxForCurrentStroke):
   56652         (WebCore::Path::strokeBoundingRect):
   56653         * platform/graphics/skia/PatternSkia.cpp: Added.
   56654         (WebCore::shaderRule):
   56655         (WebCore::Pattern::createPlatformPattern):
   56656 
   56657 2009-01-08  Dimitri Glazkov  <dglazkov (a] chromium.org>
   56658 
   56659         Reviewed by Eric Seidel.
   56660 
   56661         Add ImageSourceSkia to platform/graphics/skia
   56662         https://bugs.webkit.org/show_bug.cgi?id=23200
   56663 
   56664         ImageSourceSkia is mostly a hack to support our
   56665         ICO decoder model.  See ImageSourceSkia.h for more
   56666         explanation.  Eventually we'd like to make our ICO
   56667         decoder lazy.
   56668 
   56669         * platform/graphics/ImageSource.h: mark m_decoder as protected
   56670         * platform/graphics/skia/ImageSourceSkia.cpp: Added.
   56671         (WebCore::createDecoder):
   56672         (WebCore::ImageSource::ImageSource):
   56673         (WebCore::ImageSource::~ImageSource):
   56674         (WebCore::ImageSource::clear):
   56675         (WebCore::ImageSource::initialized):
   56676         (WebCore::ImageSource::setData):
   56677         (WebCore::ImageSource::isSizeAvailable):
   56678         (WebCore::ImageSource::size):
   56679         (WebCore::ImageSource::frameSizeAtIndex):
   56680         (WebCore::ImageSource::repetitionCount):
   56681         (WebCore::ImageSource::frameCount):
   56682         (WebCore::ImageSource::createFrameAtIndex):
   56683         (WebCore::ImageSource::frameIsCompleteAtIndex):
   56684         (WebCore::ImageSource::frameDurationAtIndex):
   56685         (WebCore::ImageSource::frameHasAlphaAtIndex):
   56686         (WebCore::ImageSourceSkia::setData):
   56687         (WebCore::ImageSource::filenameExtension):
   56688         * platform/graphics/skia/ImageSourceSkia.h: Added.
   56689 
   56690 2009-01-08  Dimitri Glazkov  <dglazkov (a] chromium.org>
   56691 
   56692         Reviewed by Eric Seidel.
   56693 
   56694         Add NativeImageSkia (PlatformImagePtr) to platform/graphics/skia
   56695         https://bugs.webkit.org/show_bug.cgi?id=23200
   56696 
   56697         * platform/graphics/skia/NativeImageSkia.cpp: Added.
   56698         (NativeImageSkia::NativeImageSkia):
   56699         (NativeImageSkia::decodedSize):
   56700         (NativeImageSkia::hasResizedBitmap):
   56701         (NativeImageSkia::resizedBitmap):
   56702         (NativeImageSkia::shouldCacheResampling):
   56703         * platform/graphics/skia/NativeImageSkia.h: Added.
   56704         (NativeImageSkia::setDataComplete):
   56705         (NativeImageSkia::isDataComplete):
   56706 
   56707 2009-01-08  Dimitri Glazkov  <dglazkov (a] chromium.org>
   56708 
   56709         Reviewed by Eric Seidel.
   56710 
   56711         Add ImageBufferSkia and ImageSkia files.
   56712         https://bugs.webkit.org/show_bug.cgi?id=23200
   56713         For now we've left BitmapImage and BitmapImageSingleFrameSkia
   56714         implementations in the ImageSkia file (like ImageCG has), but
   56715         we intend to break them out into their own files.
   56716 
   56717         * platform/graphics/skia/ImageBufferSkia.cpp: Added.
   56718         (WebCore::ImageBufferData::ImageBufferData):
   56719         (WebCore::ImageBuffer::ImageBuffer):
   56720         (WebCore::ImageBuffer::~ImageBuffer):
   56721         (WebCore::ImageBuffer::context):
   56722         (WebCore::ImageBuffer::image):
   56723         (WebCore::ImageBuffer::getImageData):
   56724         (WebCore::ImageBuffer::putImageData):
   56725         (WebCore::ImageBuffer::toDataURL):
   56726         * platform/graphics/skia/ImageSkia.cpp: Added.
   56727         (WebCore::):
   56728         (WebCore::FrameData::clear):
   56729         (WebCore::Image::loadPlatformResource):
   56730         (WebCore::Image::drawPattern):
   56731         (WebCore::BitmapImage::initPlatformData):
   56732         (WebCore::BitmapImage::invalidatePlatformData):
   56733         (WebCore::BitmapImage::checkForSolidColor):
   56734         (WebCore::BitmapImage::draw):
   56735         (WebCore::BitmapImageSingleFrameSkia::draw):
   56736         (WebCore::BitmapImageSingleFrameSkia::create):
   56737 
   56738 2009-01-08  James Robinson  <jamesr (a] google.com>
   56739 
   56740         Reviewed by Mark Rowe.
   56741         Landed by Pamela Greene.
   56742 
   56743         WebCore::Event::timeStamp() is a simple accessor and should be const
   56744 
   56745         https://bugs.webkit.org/show_bug.cgi?id=23176
   56746 
   56747         * dom/Event.h:
   56748         (WebCore::Event::timeStamp):
   56749 
   56750 2009-01-08  Antti Koivisto  <antti (a] apple.com>
   56751 
   56752         Reviewed by Oliver Hunt.
   56753 
   56754         Fix <rdar://problem/6467206>
   56755         Resources loaded from the memory cache do not get correctly inserted into the DocLoader resource map (22994)
   56756 
   56757         Use CachedResourceHandle in document resource map so resources get updated correctly when using
   56758         using cache validation conditionals.
   56759 
   56760         * loader/Cache.cpp:
   56761         (WebCore::Cache::evict):
   56762         * loader/DocLoader.cpp:
   56763         (WebCore::DocLoader::~DocLoader):
   56764         (WebCore::DocLoader::requestResource):
   56765         (WebCore::DocLoader::setAutoLoadImages):
   56766         (WebCore::DocLoader::removeCachedResource):
   56767         * loader/DocLoader.h:
   56768         (WebCore::DocLoader::cachedResource):
   56769         (WebCore::DocLoader::allCachedResources):
   56770         * loader/DocumentLoader.cpp:
   56771         (WebCore::DocumentLoader::getSubresources):
   56772         * loader/ImageLoader.cpp:
   56773         (WebCore::ImageLoader::updateFromElement):
   56774 
   56775 2009-01-08  Dimitri Glazkov  <dglazkov (a] chromium.org>
   56776 
   56777         Reviewed by Eric Seidel.
   56778 
   56779         Add a cleaned-up GraphicsContextSkia implementation to WebKit.
   56780         https://bugs.webkit.org/show_bug.cgi?id=23191
   56781 
   56782         * platform/graphics/skia/GraphicsContextSkia.cpp: Added.
   56783         (WebCore::):
   56784         (WebCore::GraphicsContext::GraphicsContext):
   56785         (WebCore::GraphicsContext::~GraphicsContext):
   56786         (WebCore::GraphicsContext::platformContext):
   56787         (WebCore::GraphicsContext::savePlatformState):
   56788         (WebCore::GraphicsContext::restorePlatformState):
   56789         (WebCore::GraphicsContext::beginTransparencyLayer):
   56790         (WebCore::GraphicsContext::endTransparencyLayer):
   56791         (WebCore::GraphicsContext::addInnerRoundedRectClip):
   56792         (WebCore::GraphicsContext::addPath):
   56793         (WebCore::GraphicsContext::beginPath):
   56794         (WebCore::GraphicsContext::clearPlatformShadow):
   56795         (WebCore::GraphicsContext::clearRect):
   56796         (WebCore::GraphicsContext::clip):
   56797         (WebCore::GraphicsContext::clipOut):
   56798         (WebCore::GraphicsContext::clipOutEllipseInRect):
   56799         (WebCore::GraphicsContext::clipPath):
   56800         (WebCore::GraphicsContext::clipToImageBuffer):
   56801         (WebCore::GraphicsContext::concatCTM):
   56802         (WebCore::GraphicsContext::drawConvexPolygon):
   56803         (WebCore::GraphicsContext::drawEllipse):
   56804         (WebCore::GraphicsContext::drawFocusRing):
   56805         (WebCore::GraphicsContext::drawLine):
   56806         (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):
   56807         (WebCore::GraphicsContext::drawLineForText):
   56808         (WebCore::GraphicsContext::drawRect):
   56809         (WebCore::GraphicsContext::fillPath):
   56810         (WebCore::GraphicsContext::fillRect):
   56811         (WebCore::GraphicsContext::fillRoundedRect):
   56812         (WebCore::GraphicsContext::getCTM):
   56813         (WebCore::GraphicsContext::roundToDevicePixels):
   56814         (WebCore::GraphicsContext::scale):
   56815         (WebCore::GraphicsContext::setAlpha):
   56816         (WebCore::GraphicsContext::setCompositeOperation):
   56817         (WebCore::GraphicsContext::setImageInterpolationQuality):
   56818         (WebCore::GraphicsContext::setLineCap):
   56819         (WebCore::GraphicsContext::setLineDash):
   56820         (WebCore::GraphicsContext::setLineJoin):
   56821         (WebCore::GraphicsContext::setMiterLimit):
   56822         (WebCore::GraphicsContext::setPlatformFillColor):
   56823         (WebCore::GraphicsContext::setPlatformShadow):
   56824         (WebCore::GraphicsContext::setPlatformStrokeColor):
   56825         (WebCore::GraphicsContext::setPlatformStrokeStyle):
   56826         (WebCore::GraphicsContext::setPlatformStrokeThickness):
   56827         (WebCore::GraphicsContext::setPlatformTextDrawingMode):
   56828         (WebCore::GraphicsContext::setURLForRect):
   56829         (WebCore::GraphicsContext::setUseAntialiasing):
   56830         (WebCore::GraphicsContext::strokeArc):
   56831         (WebCore::GraphicsContext::strokePath):
   56832         (WebCore::GraphicsContext::strokeRect):
   56833         (WebCore::GraphicsContext::rotate):
   56834         (WebCore::GraphicsContext::translate):
   56835 
   56836 2009-01-08  David Hyatt  <hyatt (a] apple.com>
   56837 
   56838         Fix for <rdar://problem/6465682> REGRESSION: In Mail, can't force a message to auto scroll.
   56839 
   56840         Make scrollRectIntoViewRecursively call out to the HostWindow to continue the recursive scroll for
   56841         any scrollable views that may contain a WebView.  Does nothing on platforms other than the Mac, but
   56842         might eventually be of interest to other platforms.
   56843 
   56844         Reviewed by Oliver Hunt
   56845 
   56846         * WebCore.base.exp:
   56847         * page/Chrome.cpp:
   56848         (WebCore::Chrome::scrollRectIntoView):
   56849         * page/Chrome.h:
   56850         * page/ChromeClient.h:
   56851         (WebCore::ChromeClient::scrollRectIntoView):
   56852         * platform/HostWindow.h:
   56853         * platform/ScrollView.cpp:
   56854         (WebCore::ScrollView::scrollRectIntoViewRecursively):
   56855 
   56856 2009-01-08  Adam Treat  <adam.treat (a] torchmobile.com>
   56857 
   56858         Reviewed by David Hyatt.
   56859 
   56860         No need to make this part of HostWindow and moreover HostWindow should
   56861         not have any reference to non-platform parts of WebCore.
   56862 
   56863         * page/Chrome.h:
   56864         * page/FrameView.cpp:
   56865         (WebCore::FrameView::setContentsSize):
   56866         * platform/HostWindow.h:
   56867 
   56868 2009-01-08  Eric Carlson  <eric.carlson (a] apple.com>
   56869 
   56870         Reviewed by Adele Peterson.
   56871 
   56872         Simplify Mac interfaces for drawing media controller elements
   56873 
   56874         <rdar://problem/6293969>
   56875 
   56876         * WebCore.base.exp: update for changed WebKitSystemInterface media controller functions
   56877 
   56878         * platform/mac/WebCoreSystemInterface.h: Ditto
   56879         * platform/mac/WebCoreSystemInterface.mm: Ditto
   56880 
   56881         * rendering/MediaControlElements.h:
   56882         (WebCore::): Add MediaControlElements enum
   56883 
   56884         * rendering/RenderThemeMac.mm:
   56885         (WebCore::RenderThemeMac::paintMediaFullscreenButton):  update for changed WebKitSystemInterface
   56886         media controller functions
   56887         (WebCore::RenderThemeMac::paintMediaMuteButton): Ditto
   56888         (WebCore::RenderThemeMac::paintMediaPlayButton): Ditto
   56889         (WebCore::RenderThemeMac::paintMediaSeekBackButton): Ditto
   56890         (WebCore::RenderThemeMac::paintMediaSeekForwardButton): Ditto
   56891         (WebCore::RenderThemeMac::paintMediaSliderTrack): Ditto
   56892         (WebCore::RenderThemeMac::paintMediaSliderThumb): Ditto
   56893 
   56894 2009-01-08  Dimitri Glazkov  <dglazkov (a] chromium.org>
   56895 
   56896         Reviewed by Eric Seidel.
   56897 
   56898         Add two more files for platform/graphics/skia.
   56899         https://bugs.webkit.org/show_bug.cgi?id=23191
   56900 
   56901         * platform/graphics/skia/GradientSkia.cpp: Added.
   56902         (WebCore::Gradient::platformDestroy):
   56903         (WebCore::F2B):
   56904         (WebCore::makeSkColor):
   56905         (WebCore::totalStopsNeeded):
   56906         (WebCore::fillStops):
   56907         (WebCore::compareStops):
   56908         (WebCore::Gradient::platformGradient):
   56909         (WebCore::Gradient::fill):
   56910         * platform/graphics/skia/GraphicsContextPlatformPrivate.h: Copied from WebCore/bindings/js/ScriptValue.h.
   56911         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
   56912         (WebCore::GraphicsContextPlatformPrivate::context):
   56913 
   56914 2009-01-08  Dimitri Glazkov  <dglazkov (a] chromium.org>
   56915 
   56916         Reviewed by Eric Seidel.
   56917 
   56918         Commit the right files this time!  (Instead of the ugly unfixed ones.)
   56919         https://bugs.webkit.org/show_bug.cgi?id=23191
   56920 
   56921         * platform/graphics/skia/BitmapImageSingleFrameSkia.h:
   56922         * platform/graphics/skia/FloatPointSkia.cpp:
   56923         * platform/graphics/skia/FloatRectSkia.cpp:
   56924         * platform/graphics/skia/IntPointSkia.cpp:
   56925         * platform/graphics/skia/IntRectSkia.cpp:
   56926         (WebCore::IntRect::operator SkRect):
   56927         * platform/graphics/skia/SkiaUtils.cpp:
   56928         (WebCore::):
   56929         (WebCore::WebCoreCompositeToSkiaComposite):
   56930         (WebCore::SkPMColorToWebCoreColor):
   56931         (WebCore::IntersectRectAndRegion):
   56932         (WebCore::ClipRectToCanvas):
   56933         (WebCore::SkPathContainsPoint):
   56934         (WebCore::scratchContext):
   56935         * platform/graphics/skia/SkiaUtils.h:
   56936         (WebCore::WebCoreFloatToSkScalar):
   56937         (WebCore::WebCoreDoubleToSkScalar):
   56938 
   56939 2009-01-08  Dimitri Glazkov  <dglazkov (a] chromium.org>
   56940 
   56941         Reviewed by Eric Seidel.
   56942 
   56943         Add the first few files from platform/graphics/skia
   56944         https://bugs.webkit.org/show_bug.cgi?id=23191
   56945 
   56946         These are all pretty simple.
   56947         Eventually BitmapImageSingleFrameSkia might grow a .cpp file, for now it's just a header.
   56948         SkiaUtils needs to die, but that can come later, no need to block up-streaming now.
   56949 
   56950         * platform/graphics/skia/BitmapImageSingleFrameSkia.h: Added.
   56951         (WebCore::BitmapImageSingleFrameSkia::isBitmapImage):
   56952         (WebCore::BitmapImageSingleFrameSkia::size):
   56953         (WebCore::BitmapImageSingleFrameSkia::destroyDecodedData):
   56954         (WebCore::BitmapImageSingleFrameSkia::decodedSize):
   56955         (WebCore::BitmapImageSingleFrameSkia::nativeImageForCurrentFrame):
   56956         (WebCore::BitmapImageSingleFrameSkia::BitmapImageSingleFrameSkia):
   56957         * platform/graphics/skia/FloatPointSkia.cpp: Copied from WebCore/platform/graphics/mac/FloatPointMac.mm.
   56958         (WebCore::FloatPoint::FloatPoint):
   56959         (WebCore::FloatPoint::operator SkPoint):
   56960         * platform/graphics/skia/FloatRectSkia.cpp: Copied from WebCore/platform/graphics/qt/IntRectQt.cpp.
   56961         (WebCore::FloatRect::FloatRect):
   56962         (WebCore::FloatRect::operator SkRect):
   56963         * platform/graphics/skia/IntPointSkia.cpp: Copied from WebCore/platform/graphics/win/IntPointWin.cpp.
   56964         (WebCore::IntPoint::IntPoint):
   56965         (WebCore::IntPoint::operator SkIPoint):
   56966         (WebCore::IntPoint::operator SkPoint):
   56967         * platform/graphics/skia/IntRectSkia.cpp: Copied from WebCore/platform/graphics/qt/IntRectQt.cpp.
   56968         (WebCore::IntRect::operator SkIRect):
   56969         (WebCore::IntRect::operator SkRect):
   56970         (WebCore::IntRect::IntRect):
   56971         * platform/graphics/skia/SkiaUtils.cpp: Added.
   56972         (WebCore::WebCorePointToSkiaPoint):
   56973         (WebCore::WebCoreRectToSkiaRect):
   56974         (WebCore::):
   56975         (WebCore::WebCoreCompositeToSkiaComposite):
   56976         (WebCore::InvScaleByte):
   56977         (WebCore::SkPMColorToColor):
   56978         (WebCore::SkPMColorToWebCoreColor):
   56979         (WebCore::IntersectRectAndRegion):
   56980         (WebCore::ClipRectToCanvas):
   56981         (WebCore::SkPathContainsPoint):
   56982         (WebCore::scratchContext):
   56983         * platform/graphics/skia/SkiaUtils.h: Added.
   56984         (WebCore::WebCoreFloatToSkScalar):
   56985         (WebCore::WebCoreDoubleToSkScalar):
   56986 
   56987 2009-01-08  Pierre-Olivier Latour  <pol (a] apple.com>
   56988 
   56989         Reviewed by Dan Bernstein.
   56990 
   56991         Fixed CSS Transitions with zero-duration but non-zero-delay not starting or ending properly.
   56992 
   56993         Also updated AnimationController::numberOfActiveAnimations() which now returns the number of "active" animations,
   56994         instead of simply the "running" ones.
   56995 
   56996         https://bugs.webkit.org/show_bug.cgi?id=23177
   56997 
   56998         Tests: transitions/zero-duration-with-non-zero-delay-end.html
   56999                transitions/zero-duration-with-non-zero-delay-start.html
   57000 
   57001         * page/animation/AnimationBase.cpp:
   57002         (WebCore::AnimationBase::fireAnimationEventsIfNeeded):
   57003         * page/animation/AnimationController.cpp:
   57004         (WebCore::AnimationControllerPrivate::animationTimerFired):
   57005         * page/animation/CompositeAnimation.cpp:
   57006         (WebCore::CompositeAnimationPrivate::numberOfActiveAnimations):
   57007 
   57008 2009-01-08  Alexey Proskuryakov  <ap (a] webkit.org>
   57009 
   57010         Reviewed by Oliver Hunt.
   57011 
   57012         <rdar://problem/6477501> Repro crash loading HTML5 AppCache manifest directly
   57013 
   57014         The crash happened whenever a cached resource was downloaded, as opposed to used directly.
   57015 
   57016         No test, as downloading cannot be tested automatically.
   57017 
   57018         * loader/MainResourceLoader.cpp: (WebCore::MainResourceLoader::continueAfterContentPolicy):
   57019         Cancel downloads that do not have an associated ResourceHandle, such as downloads from the
   57020         application cache. Activity window shows "The URL can't be shown", and the frame remains empty.
   57021 
   57022 2009-01-08  Justin McPherson <justin.mcpherson (a] nokia.com>
   57023 
   57024         Reviewed by Simon Hausmann.
   57025 
   57026         Fix the Qt build on older X11 systems with special X paths.
   57027 
   57028         * WebCore.pro: Use the x11 qmake config to pull in extra paths
   57029         needed for NPAPI.
   57030 
   57031 2009-01-08  Adam Roben  <aroben (a] apple.com>
   57032 
   57033         Windows build fix after r39699
   57034 
   57035         * DerivedSources.cpp: Added JSDOMStringList.cpp.
   57036 
   57037 2009-01-08  Kent Hansen  <khansen (a] trolltech.com>
   57038 
   57039         Reviewed by Simon Hausmann.
   57040 
   57041         Fix copy & paste of images in the Qt port.
   57042 
   57043         Store the QPixmap itself in the mimedata, not a QPixmap* converted to bool.
   57044 
   57045         * platform/qt/ClipboardQt.cpp:
   57046         (WebCore::ClipboardQt::declareAndWriteDragImage):
   57047 
   57048 2009-01-08  Hiroyuki Ikezoe  <poincare (a] ikezoe.net>
   57049 
   57050         Reviewed by Holger Freyther.
   57051 
   57052         https://bugs.webkit.org/show_bug.cgi?id=23127
   57053 
   57054         Invoke pango_coverage_get with each Unicode character.
   57055 
   57056         * platform/graphics/gtk/SimpleFontDataPango.cpp:
   57057         (WebCore::SimpleFontData::containsCharacters):
   57058 
   57059 2009-01-07  Alexey Proskuryakov  <ap (a] webkit.org>
   57060 
   57061         Reviewed by Darin Adler.
   57062 
   57063         Part one of
   57064         https://bugs.webkit.org/show_bug.cgi?id=23165
   57065         Add support for application cache dynamic entries
   57066 
   57067         Test: http/tests/appcache/dynamic-entries-no-cache.html
   57068 
   57069         * DerivedSources.make:
   57070         * GNUmakefile.am:
   57071         * WebCore.pro:
   57072         * WebCore.scons:
   57073         * WebCore.vcproj/WebCore.vcproj:
   57074         * WebCore.xcodeproj/project.pbxproj:
   57075         * WebCoreSources.bkl:
   57076         Added new files.
   57077 
   57078         * bindings/js/JSDOMApplicationCacheCustom.cpp: (WebCore::JSDOMApplicationCache::hasItem):
   57079         Added binding for hasItem(). Like other DOMApplicationCache methods, it needs to be custom
   57080         to resolve relative URLs correctly.
   57081 
   57082         * bindings/js/JSDOMStringListCustom.cpp: Added.
   57083         * dom/DOMStringList.cpp: Added.
   57084         * dom/DOMStringList.h: Added.
   57085         * dom/DOMStringList.idl: Added.
   57086         Added an implementation of DOM 3 Core DOMStringList interface, which is returned by
   57087         DOMApplicationCache items attribute.
   57088 
   57089         * dom/StaticStringList.cpp: Added.
   57090         * dom/StaticStringList.h: Added.
   57091         An implementation of DOMStringList that makes a snapshot (for DOMApplicationCache, this
   57092         matches Firefox, as the spec doesn't say whether the returned list should be live or not).
   57093 
   57094         * loader/appcache/ApplicationCache.h: Added a list of pending dynamic entry actions, to be
   57095         used in the near future.
   57096 
   57097         * loader/appcache/DOMApplicationCache.idl: Updated for spec changes. Instead of length
   57098         attribute and item(), we now have an items attribute that returns a DOMStringList, and a
   57099         hasItem convenience method.
   57100 
   57101         * loader/appcache/DOMApplicationCache.cpp:
   57102         (WebCore::DOMApplicationCache::items):
   57103         (WebCore::DOMApplicationCache::hasItem):
   57104         * loader/appcache/DOMApplicationCache.h:
   57105         Added implementations of items attribute and hasItem() (note that underlying ApplicationCache
   57106         methods are still unimplemented though).
   57107 
   57108         * page/DOMWindow.idl: Expose a DOMStringList global constructor.
   57109 
   57110 2009-01-07  Chris Marrin  <cmarrin (a] apple.com>
   57111 
   57112         Reviewed by Eric Seidel.
   57113 
   57114         https://bugs.webkit.org/show_bug.cgi?id=23122
   57115 
   57116         This completes the removal of dependencies on WebKit from the platform code
   57117 
   57118         * css/CSSComputedStyleDeclaration.cpp:
   57119         (WebCore::getDelayValue):
   57120         (WebCore::getDurationValue):
   57121         (WebCore::getTimingFunctionValue):
   57122         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   57123         * css/CSSHelper.h:
   57124         * css/CSSStyleSelector.cpp:
   57125         (WebCore::CSSStyleSelector::mapAnimationDelay):
   57126         (WebCore::CSSStyleSelector::mapAnimationDirection):
   57127         (WebCore::CSSStyleSelector::mapAnimationDuration):
   57128         (WebCore::CSSStyleSelector::mapAnimationIterationCount):
   57129         (WebCore::CSSStyleSelector::mapAnimationName):
   57130         (WebCore::CSSStyleSelector::mapAnimationPlayState):
   57131         (WebCore::CSSStyleSelector::mapAnimationProperty):
   57132         (WebCore::CSSStyleSelector::mapAnimationTimingFunction):
   57133         * platform/animation/Animation.cpp:
   57134         (WebCore::Animation::Animation):
   57135         * platform/animation/Animation.h:
   57136         (WebCore::Animation::initialAnimationDelay):
   57137         (WebCore::Animation::initialAnimationDirection):
   57138         (WebCore::Animation::initialAnimationDuration):
   57139         (WebCore::Animation::initialAnimationIterationCount):
   57140         (WebCore::Animation::initialAnimationName):
   57141         (WebCore::Animation::initialAnimationPlayState):
   57142         (WebCore::Animation::initialAnimationProperty):
   57143         (WebCore::Animation::initialAnimationTimingFunction):
   57144         * rendering/style/RenderStyle.h:
   57145 
   57146 2008-01-07  Peter Kasting  <pkasting (a] google.com>
   57147 
   57148         Reviewed by Sam Weinig.
   57149 
   57150         https://bugs.webkit.org/show_bug.cgi?id=22929
   57151 
   57152         Fix errors while decoding GIFs by not calling setData() repeatedly
   57153         when it's not necessary.  Pushes the responsibility for calling
   57154         setData() after clear() into the ImageSource which presumably knows
   57155         better than BitmapImage what needs to be done.
   57156 
   57157         NOTE: The above bug is mainly about a memory regression, which this
   57158         patch does not fix.
   57159 
   57160         * platform/graphics/BitmapImage.cpp:
   57161         (WebCore::BitmapImage::destroyDecodedData):
   57162         * platform/graphics/ImageSource.h:
   57163         * platform/graphics/cairo/ImageSourceCairo.cpp:
   57164         (WebCore::ImageSource::clear):
   57165         * platform/graphics/cg/ImageSourceCG.cpp:
   57166         (WebCore::ImageSource::clear):
   57167         * platform/graphics/qt/ImageSourceQt.cpp:
   57168         (WebCore::ImageSource::~ImageSource):
   57169         (WebCore::ImageSource::clear):
   57170         * platform/graphics/wx/ImageSourceWx.cpp:
   57171         (WebCore::ImageSource::~ImageSource):
   57172         (WebCore::ImageSource::clear):
   57173 
   57174 2009-01-07  Justin Garcia  <justin.garcia (a] apple.com>
   57175 
   57176         Reviewed by Darin Adler.
   57177 
   57178         <rdar://problem/6355786> Find fails for queries that contain a line break
   57179 
   57180         * editing/TextIterator.cpp:
   57181         (WebCore::findPlainText): Allow find with queries that contain newlines.
   57182 
   57183 2009-01-07  Dean Jackson  <dino (a] apple.com>
   57184 
   57185         Reviewed by Dan Bernstein.
   57186 
   57187         Allow removal of inline shorthand properties for
   57188         animation, transition and transform origin. Also
   57189         add getter for shorthand animation property.
   57190 
   57191         https://bugs.webkit.org/show_bug.cgi?id=22605
   57192 
   57193         Test: fast/css/transform-inline-style-remove.html
   57194 
   57195         * css/CSSMutableStyleDeclaration.cpp:
   57196         (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
   57197             Getter for animation property shorthand
   57198         (WebCore::initShorthandMap):
   57199             Adds initialisation for transform-origin, animation and transition
   57200 
   57201 2009-01-07  Benjamin Otte  <otte (a] gnome.org>
   57202 
   57203         Reviewed by Holger Freyther.
   57204 
   57205         * platform/network/ResourceHandleInternal.h:
   57206         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
   57207         * platform/network/soup/ResourceHandleSoup.cpp:
   57208         (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
   57209         (WebCore::parseDataUrl):
   57210         (WebCore::ResourceHandle::startData): keep track of the idle handler
   57211         we add and remove it in the destructor
   57212 
   57213 2009-01-07  Dean Jackson  <dino (a] apple.com>
   57214 
   57215         Reviewed by Darin Adler.
   57216 
   57217         Finish renaming of AffineTransform to TransformationMatrix, this
   57218         time ensuring that the platform implementations get the correct
   57219         name. Also, clean up some whitespace cruft in old content.
   57220 
   57221         https://bugs.webkit.org/show_bug.cgi?id=23151
   57222 
   57223         * GNUmakefile.am:
   57224         * WebCore.pro:
   57225         * WebCore.scons:
   57226         * WebCore.vcproj/WebCore.vcproj:
   57227         * WebCore.xcodeproj/project.pbxproj:
   57228         * platform/graphics/cairo/AffineTransformCairo.cpp: Removed.
   57229         * platform/graphics/cairo/TransformationMatrixCairo.cpp: Copied from WebCore/platform/graphics/cairo/AffineTransformCairo.cpp.
   57230         * platform/graphics/cg/AffineTransformCG.cpp: Removed.
   57231         * platform/graphics/cg/TransformationMatrixCG.cpp: Copied from WebCore/platform/graphics/cg/AffineTransformCG.cpp.
   57232         * platform/graphics/qt/AffineTransformQt.cpp: Removed.
   57233         * platform/graphics/qt/TransformationMatrixQt.cpp: Copied from WebCore/platform/graphics/qt/AffineTransformQt.cpp.
   57234         * platform/graphics/transforms/TransformationMatrix.cpp:
   57235         * platform/graphics/transforms/TransformationMatrix.h:
   57236         * platform/graphics/wx/AffineTransformWx.cpp: Removed.
   57237         * platform/graphics/wx/TransformationMatrixWx.cpp: Copied from WebCore/platform/graphics/wx/AffineTransformWx.cpp.
   57238         * webcore-wx.bkl:
   57239 
   57240 2009-01-07  Anders Carlsson  <andersca (a] apple.com>
   57241 
   57242         Another build fix.
   57243 
   57244         * WebCore.LP64.exp:
   57245 
   57246 2008-12-16  David Hyatt  <hyatt (a] apple.com>
   57247 
   57248         Make Safari RSS behave nicely with full page zoom.  Need to add a new value to enable resetting of zoom
   57249         back to the document-level default.
   57250 
   57251         Reviewed by Darin Adler
   57252 
   57253         * css/CSSParser.cpp:
   57254         (WebCore::CSSParser::parseValue):
   57255         * css/CSSStyleSelector.cpp:
   57256         (WebCore::CSSStyleSelector::applyProperty):
   57257         * css/CSSValueKeywords.in:
   57258 
   57259 2009-01-07  Darin Adler  <darin (a] apple.com>
   57260 
   57261         Reviewed by Oliver Hunt.
   57262 
   57263         Bug 23160: add setMemoryCacheClientCallsEnabled SPI so Safari can be faster with activity window closed
   57264         https://bugs.webkit.org/show_bug.cgi?id=23160
   57265 
   57266         * WebCore.base.exp: Added Page::setMemoryCacheClientCallsEnabled.
   57267 
   57268         * inspector/InspectorController.cpp:
   57269         (WebCore::InspectorController::didLoadResourceFromMemoryCache): Updated to take a CachedResource
   57270         so that there's no extra work the caller has to do when the inspector is disabled.
   57271         * inspector/InspectorController.h: Ditto.
   57272 
   57273         * loader/DocumentLoader.h: Added recordMemoryCacheLoadForFutureClientNotification,
   57274         takeMemoryCacheLoadsForClientNotification, and m_resourcesLoadedFromMemoryCacheForClientNotification.
   57275 
   57276         * loader/FrameLoader.cpp:
   57277         (WebCore::FrameLoader::loadedResourceFromMemoryCache): Streamlined code so less work is done when
   57278         there's no inspector or client call needed. Added code to check areMemoryCacheClientCallsEnabled
   57279         and if it's false, use recordMemoryCacheLoadForFutureClientNotification.
   57280         (WebCore::FrameLoader::tellClientAboutPastMemoryCacheLoads): Added.
   57281         * loader/FrameLoader.h: Ditto.
   57282 
   57283         * page/Page.cpp:
   57284         (WebCore::Page::Page): Initialize m_areMemoryCacheClientCallsEnabled to be compatible with old behavior.
   57285         (WebCore::Page::setMemoryCacheClientCallsEnabled): Added.
   57286         * page/Page.h: Added setMemoryCacheClientCallsEnabled, areMemoryCacheClientCallsEnabled,
   57287         and m_areMemoryCacheClientCallsEnabled.
   57288 
   57289 2009-01-07  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   57290 
   57291         Rubber-stamped by Simon Hausmann.
   57292 
   57293         Qt build fix after r39670.
   57294 
   57295         * bridge/qt/qt_class.cpp:
   57296         (JSC::Bindings::QtClass::fallbackObject):
   57297         * bridge/qt/qt_class.h:
   57298         * bridge/qt/qt_instance.cpp:
   57299         (JSC::Bindings::QtInstance::mark):
   57300         (JSC::Bindings::QtInstance::invokeMethod):
   57301         (JSC::Bindings::QtInstance::defaultValue):
   57302         (JSC::Bindings::QtInstance::stringValue):
   57303         (JSC::Bindings::QtInstance::numberValue):
   57304         (JSC::Bindings::QtInstance::booleanValue):
   57305         (JSC::Bindings::QtInstance::valueOf):
   57306         (JSC::Bindings::QtField::valueFromInstance):
   57307         (JSC::Bindings::QtField::setValueToInstance):
   57308         * bridge/qt/qt_instance.h:
   57309         * bridge/qt/qt_runtime.cpp:
   57310         (JSC::Bindings::valueRealType):
   57311         (JSC::Bindings::convertValueToQVariant):
   57312         (JSC::Bindings::convertQVariantToValue):
   57313         (JSC::Bindings::findMethodIndex):
   57314         (JSC::Bindings::QtRuntimeMetaMethod::call):
   57315         (JSC::Bindings::QtRuntimeMetaMethod::lengthGetter):
   57316         (JSC::Bindings::QtRuntimeMetaMethod::connectGetter):
   57317         (JSC::Bindings::QtRuntimeMetaMethod::disconnectGetter):
   57318         (JSC::Bindings::QtRuntimeConnectionMethod::call):
   57319         (JSC::Bindings::QtRuntimeConnectionMethod::lengthGetter):
   57320         (JSC::Bindings::::setValueAt):
   57321         (JSC::Bindings::::valueAt):
   57322         * bridge/qt/qt_runtime.h:
   57323         (JSC::Bindings::QtRuntimeMethod::createStructure):
   57324 
   57325 2009-01-06  Justin Garcia  <justin.garcia (a] apple.com>
   57326 
   57327         Reviewed by Oliver Hunt.
   57328 
   57329         <rdar://problem/6391734> SnowLeopard: Crash doing Copy Image from context menu
   57330 
   57331         Can't create an automated test case for specific contextual menu items yet and
   57332         a normal Copy doesn't cause a crash.
   57333 
   57334         * platform/mac/PasteboardMac.mm:
   57335         (WebCore::fileWrapperForImage): The SharedBuffer may not have platform data.  It may,
   57336         for example, have a purgeable or regular buffer.
   57337 
   57338 2009-01-06  Mark Rowe  <mrowe (a] apple.com>
   57339 
   57340         Reviewed by Geoff Garen.
   57341 
   57342         Fix <https://bugs.webkit.org/show_bug.cgi?id=23157>.
   57343         Bug 23157: Crashes on Acid 3
   57344 
   57345         * dom/Document.cpp:
   57346         (WebCore::Document::recalcStyle): Null-check the frame.
   57347 
   57348 2009-01-05  Gavin Barraclough  <baraclough (a] apple.com>
   57349 
   57350         Rubber Stamped by Oliver Hunt.
   57351 
   57352         Replace all uses of JSValue* with new wrapper class, JSValuePtr.
   57353         See JavaScriptCore/ChangeLog for more detailed description.
   57354 
   57355         * bindings/js/JSAttrCustom.cpp:
   57356         (WebCore::JSAttr::setValue):
   57357         * bindings/js/JSCSSRuleCustom.cpp:
   57358         (WebCore::toJS):
   57359         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
   57360         (WebCore::JSCSSStyleDeclaration::nameGetter):
   57361         (WebCore::JSCSSStyleDeclaration::customPut):
   57362         * bindings/js/JSCSSValueCustom.cpp:
   57363         (WebCore::toJS):
   57364         * bindings/js/JSCanvasPixelArrayCustom.h:
   57365         (WebCore::JSCanvasPixelArray::getByIndex):
   57366         (WebCore::JSCanvasPixelArray::indexSetter):
   57367         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
   57368         (WebCore::toJS):
   57369         (WebCore::toHTMLCanvasStyle):
   57370         (WebCore::JSCanvasRenderingContext2D::strokeStyle):
   57371         (WebCore::JSCanvasRenderingContext2D::setStrokeStyle):
   57372         (WebCore::JSCanvasRenderingContext2D::fillStyle):
   57373         (WebCore::JSCanvasRenderingContext2D::setFillStyle):
   57374         (WebCore::JSCanvasRenderingContext2D::setFillColor):
   57375         (WebCore::JSCanvasRenderingContext2D::setStrokeColor):
   57376         (WebCore::JSCanvasRenderingContext2D::strokeRect):
   57377         (WebCore::JSCanvasRenderingContext2D::drawImage):
   57378         (WebCore::JSCanvasRenderingContext2D::drawImageFromRect):
   57379         (WebCore::JSCanvasRenderingContext2D::setShadow):
   57380         (WebCore::JSCanvasRenderingContext2D::createPattern):
   57381         (WebCore::JSCanvasRenderingContext2D::putImageData):
   57382         (WebCore::JSCanvasRenderingContext2D::fillText):
   57383         (WebCore::JSCanvasRenderingContext2D::strokeText):
   57384         * bindings/js/JSClipboardCustom.cpp:
   57385         (WebCore::JSClipboard::types):
   57386         (WebCore::JSClipboard::clearData):
   57387         (WebCore::JSClipboard::getData):
   57388         (WebCore::JSClipboard::setData):
   57389         (WebCore::JSClipboard::setDragImage):
   57390         * bindings/js/JSConsoleCustom.cpp:
   57391         (WebCore::JSConsole::profiles):
   57392         * bindings/js/JSCustomPositionCallback.cpp:
   57393         (WebCore::JSCustomPositionCallback::handleEvent):
   57394         * bindings/js/JSCustomPositionErrorCallback.cpp:
   57395         (WebCore::JSCustomPositionErrorCallback::handleEvent):
   57396         * bindings/js/JSCustomSQLStatementCallback.cpp:
   57397         (WebCore::JSCustomSQLStatementCallback::handleEvent):
   57398         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
   57399         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
   57400         * bindings/js/JSCustomSQLTransactionCallback.cpp:
   57401         (WebCore::JSCustomSQLTransactionCallback::handleEvent):
   57402         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
   57403         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
   57404         * bindings/js/JSCustomVoidCallback.cpp:
   57405         (WebCore::JSCustomVoidCallback::handleEvent):
   57406         (WebCore::toVoidCallback):
   57407         * bindings/js/JSCustomVoidCallback.h:
   57408         * bindings/js/JSCustomXPathNSResolver.cpp:
   57409         (WebCore::JSCustomXPathNSResolver::create):
   57410         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
   57411         * bindings/js/JSCustomXPathNSResolver.h:
   57412         * bindings/js/JSDOMApplicationCacheCustom.cpp:
   57413         (WebCore::JSDOMApplicationCache::add):
   57414         (WebCore::JSDOMApplicationCache::remove):
   57415         (WebCore::JSDOMApplicationCache::addEventListener):
   57416         (WebCore::JSDOMApplicationCache::removeEventListener):
   57417         * bindings/js/JSDOMBinding.cpp:
   57418         (WebCore::jsStringOrNull):
   57419         (WebCore::jsOwnedStringOrNull):
   57420         (WebCore::jsStringOrUndefined):
   57421         (WebCore::jsStringOrFalse):
   57422         (WebCore::valueToStringWithNullCheck):
   57423         (WebCore::valueToStringWithUndefinedOrNullCheck):
   57424         (WebCore::reportException):
   57425         (WebCore::reportCurrentException):
   57426         (WebCore::setDOMException):
   57427         (WebCore::objectToStringFunctionGetter):
   57428         * bindings/js/JSDOMBinding.h:
   57429         (WebCore::getDOMObjectWrapper):
   57430         (WebCore::getDOMNodeWrapper):
   57431         (WebCore::toJS):
   57432         * bindings/js/JSDOMGlobalObject.cpp:
   57433         (WebCore::JSDOMGlobalObject::findJSEventListener):
   57434         (WebCore::JSDOMGlobalObject::findOrCreateJSEventListener):
   57435         (WebCore::JSDOMGlobalObject::findJSUnprotectedEventListener):
   57436         (WebCore::JSDOMGlobalObject::findOrCreateJSUnprotectedEventListener):
   57437         * bindings/js/JSDOMGlobalObject.h:
   57438         * bindings/js/JSDOMWindowBase.cpp:
   57439         (WebCore::createWindow):
   57440         (WebCore::showModalDialog):
   57441         (jsDOMWindowBaseCrypto):
   57442         (jsDOMWindowBaseEvent):
   57443         (jsDOMWindowBaseImage):
   57444         (jsDOMWindowBaseMessageChannel):
   57445         (jsDOMWindowBaseOption):
   57446         (jsDOMWindowBaseXMLHttpRequest):
   57447         (jsDOMWindowBaseAudio):
   57448         (jsDOMWindowBaseWorker):
   57449         (jsDOMWindowBaseXSLTProcessor):
   57450         (setJSDOMWindowBaseEvent):
   57451         (setJSDOMWindowBaseAudio):
   57452         (setJSDOMWindowBaseImage):
   57453         (setJSDOMWindowBaseMessageChannel):
   57454         (setJSDOMWindowBaseOption):
   57455         (setJSDOMWindowBaseWorker):
   57456         (setJSDOMWindowBaseXMLHttpRequest):
   57457         (setJSDOMWindowBaseXSLTProcessor):
   57458         (WebCore::JSDOMWindowBase::childFrameGetter):
   57459         (WebCore::JSDOMWindowBase::indexGetter):
   57460         (WebCore::JSDOMWindowBase::namedItemGetter):
   57461         (WebCore::JSDOMWindowBase::getOwnPropertySlot):
   57462         (WebCore::JSDOMWindowBase::put):
   57463         (WebCore::JSDOMWindowBase::clear):
   57464         (windowProtoFuncOpen):
   57465         (windowProtoFuncShowModalDialog):
   57466         (windowProtoFuncNotImplemented):
   57467         (WebCore::JSDOMWindowBase::setReturnValueSlot):
   57468         (WebCore::JSDOMWindowBase::installTimeout):
   57469         (WebCore::toJS):
   57470         (WebCore::toJSDOMWindow):
   57471         * bindings/js/JSDOMWindowBase.h:
   57472         * bindings/js/JSDOMWindowCustom.cpp:
   57473         (WebCore::JSDOMWindow::lookupGetter):
   57474         (WebCore::JSDOMWindow::lookupSetter):
   57475         (WebCore::JSDOMWindow::setLocation):
   57476         (WebCore::JSDOMWindow::postMessage):
   57477         (WebCore::setTimeoutOrInterval):
   57478         (WebCore::JSDOMWindow::setTimeout):
   57479         (WebCore::JSDOMWindow::clearTimeout):
   57480         (WebCore::JSDOMWindow::setInterval):
   57481         (WebCore::JSDOMWindow::clearInterval):
   57482         (WebCore::JSDOMWindow::atob):
   57483         (WebCore::JSDOMWindow::btoa):
   57484         (WebCore::JSDOMWindow::addEventListener):
   57485         (WebCore::JSDOMWindow::removeEventListener):
   57486         (WebCore::toDOMWindow):
   57487         (WebCore::nonCachingStaticCloseFunctionGetter):
   57488         (WebCore::nonCachingStaticBlurFunctionGetter):
   57489         (WebCore::nonCachingStaticFocusFunctionGetter):
   57490         (WebCore::nonCachingStaticPostMessageFunctionGetter):
   57491         * bindings/js/JSDOMWindowCustom.h:
   57492         (WebCore::JSDOMWindow::customPut):
   57493         * bindings/js/JSDOMWindowShell.cpp:
   57494         (WebCore::JSDOMWindowShell::put):
   57495         (WebCore::JSDOMWindowShell::putWithAttributes):
   57496         (WebCore::JSDOMWindowShell::lookupGetter):
   57497         (WebCore::JSDOMWindowShell::lookupSetter):
   57498         (WebCore::toJS):
   57499         * bindings/js/JSDOMWindowShell.h:
   57500         (WebCore::JSDOMWindowShell::createStructure):
   57501         * bindings/js/JSDatabaseCustom.cpp:
   57502         (WebCore::JSDatabase::changeVersion):
   57503         (WebCore::JSDatabase::transaction):
   57504         * bindings/js/JSDocumentCustom.cpp:
   57505         (WebCore::JSDocument::location):
   57506         (WebCore::JSDocument::setLocation):
   57507         (WebCore::toJS):
   57508         * bindings/js/JSElementCustom.cpp:
   57509         (WebCore::JSElement::setAttribute):
   57510         (WebCore::JSElement::setAttributeNode):
   57511         (WebCore::JSElement::setAttributeNS):
   57512         (WebCore::JSElement::setAttributeNodeNS):
   57513         (WebCore::toJSNewlyCreated):
   57514         * bindings/js/JSEventCustom.cpp:
   57515         (WebCore::JSEvent::clipboardData):
   57516         (WebCore::toJS):
   57517         * bindings/js/JSEventListener.cpp:
   57518         (WebCore::JSAbstractEventListener::handleEvent):
   57519         (WebCore::eventParameterName):
   57520         (WebCore::JSLazyEventListener::parseCode):
   57521         * bindings/js/JSEventTarget.cpp:
   57522         (WebCore::toJS):
   57523         * bindings/js/JSEventTarget.h:
   57524         * bindings/js/JSEventTargetBase.h:
   57525         * bindings/js/JSEventTargetNodeCustom.cpp:
   57526         (WebCore::JSEventTargetNode::addEventListener):
   57527         (WebCore::JSEventTargetNode::removeEventListener):
   57528         * bindings/js/JSGeolocationCustom.cpp:
   57529         (WebCore::createPositionOptions):
   57530         (WebCore::JSGeolocation::getCurrentPosition):
   57531         (WebCore::JSGeolocation::watchPosition):
   57532         * bindings/js/JSHTMLAllCollection.h:
   57533         (WebCore::JSHTMLAllCollection::createStructure):
   57534         * bindings/js/JSHTMLAppletElementCustom.cpp:
   57535         (WebCore::JSHTMLAppletElement::customPut):
   57536         (WebCore::JSHTMLAppletElement::nameGetter):
   57537         * bindings/js/JSHTMLCollectionCustom.cpp:
   57538         (WebCore::getNamedItems):
   57539         (WebCore::callHTMLCollection):
   57540         (WebCore::JSHTMLCollection::nameGetter):
   57541         (WebCore::JSHTMLCollection::item):
   57542         (WebCore::JSHTMLCollection::namedItem):
   57543         (WebCore::toJS):
   57544         * bindings/js/JSHTMLDocumentCustom.cpp:
   57545         (WebCore::JSHTMLDocument::nameGetter):
   57546         (WebCore::JSHTMLDocument::all):
   57547         (WebCore::JSHTMLDocument::setAll):
   57548         (WebCore::JSHTMLDocument::open):
   57549         (WebCore::JSHTMLDocument::write):
   57550         (WebCore::JSHTMLDocument::writeln):
   57551         * bindings/js/JSHTMLEmbedElementCustom.cpp:
   57552         (WebCore::JSHTMLEmbedElement::customPut):
   57553         (WebCore::JSHTMLEmbedElement::nameGetter):
   57554         * bindings/js/JSHTMLFormElementCustom.cpp:
   57555         (WebCore::JSHTMLFormElement::nameGetter):
   57556         * bindings/js/JSHTMLFrameElementCustom.cpp:
   57557         (WebCore::JSHTMLFrameElement::setSrc):
   57558         (WebCore::JSHTMLFrameElement::setLocation):
   57559         * bindings/js/JSHTMLFrameSetElementCustom.cpp:
   57560         (WebCore::JSHTMLFrameSetElement::nameGetter):
   57561         * bindings/js/JSHTMLIFrameElementCustom.cpp:
   57562         (WebCore::JSHTMLIFrameElement::setSrc):
   57563         * bindings/js/JSHTMLInputElementCustom.cpp:
   57564         (WebCore::JSHTMLInputElement::selectionStart):
   57565         (WebCore::JSHTMLInputElement::selectionEnd):
   57566         * bindings/js/JSHTMLObjectElementCustom.cpp:
   57567         (WebCore::JSHTMLObjectElement::customPut):
   57568         (WebCore::JSHTMLObjectElement::nameGetter):
   57569         * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
   57570         (WebCore::JSHTMLOptionsCollection::length):
   57571         (WebCore::JSHTMLOptionsCollection::setLength):
   57572         (WebCore::JSHTMLOptionsCollection::indexSetter):
   57573         (WebCore::JSHTMLOptionsCollection::add):
   57574         (WebCore::JSHTMLOptionsCollection::remove):
   57575         * bindings/js/JSHTMLSelectElementCustom.cpp:
   57576         (WebCore::JSHTMLSelectElement::remove):
   57577         (WebCore::selectIndexSetter):
   57578         (WebCore::JSHTMLSelectElement::indexSetter):
   57579         * bindings/js/JSHTMLSelectElementCustom.h:
   57580         * bindings/js/JSHistoryCustom.cpp:
   57581         (WebCore::nonCachingStaticBackFunctionGetter):
   57582         (WebCore::nonCachingStaticForwardFunctionGetter):
   57583         (WebCore::nonCachingStaticGoFunctionGetter):
   57584         (WebCore::JSHistory::customPut):
   57585         * bindings/js/JSImageDataCustom.cpp:
   57586         (WebCore::toJS):
   57587         * bindings/js/JSInspectedObjectWrapper.cpp:
   57588         (WebCore::JSInspectedObjectWrapper::wrap):
   57589         (WebCore::JSInspectedObjectWrapper::prepareIncomingValue):
   57590         * bindings/js/JSInspectedObjectWrapper.h:
   57591         (WebCore::JSInspectedObjectWrapper::wrapOutgoingValue):
   57592         * bindings/js/JSInspectorCallbackWrapper.cpp:
   57593         (WebCore::JSInspectorCallbackWrapper::wrap):
   57594         (WebCore::JSInspectorCallbackWrapper::prepareIncomingValue):
   57595         * bindings/js/JSInspectorCallbackWrapper.h:
   57596         (WebCore::JSInspectorCallbackWrapper::wrapOutgoingValue):
   57597         * bindings/js/JSJavaScriptCallFrameCustom.cpp:
   57598         (WebCore::JSJavaScriptCallFrame::evaluate):
   57599         (WebCore::JSJavaScriptCallFrame::thisObject):
   57600         (WebCore::JSJavaScriptCallFrame::type):
   57601         (WebCore::JSJavaScriptCallFrame::scopeChain):
   57602         * bindings/js/JSLocationCustom.cpp:
   57603         (WebCore::nonCachingStaticReplaceFunctionGetter):
   57604         (WebCore::nonCachingStaticReloadFunctionGetter):
   57605         (WebCore::nonCachingStaticAssignFunctionGetter):
   57606         (WebCore::JSLocation::customPut):
   57607         (WebCore::JSLocation::setHref):
   57608         (WebCore::JSLocation::setProtocol):
   57609         (WebCore::JSLocation::setHost):
   57610         (WebCore::JSLocation::setHostname):
   57611         (WebCore::JSLocation::setPort):
   57612         (WebCore::JSLocation::setPathname):
   57613         (WebCore::JSLocation::setSearch):
   57614         (WebCore::JSLocation::setHash):
   57615         (WebCore::JSLocation::replace):
   57616         (WebCore::JSLocation::reload):
   57617         (WebCore::JSLocation::assign):
   57618         (WebCore::JSLocation::toString):
   57619         * bindings/js/JSMessageChannelConstructor.h:
   57620         * bindings/js/JSMessagePortCustom.cpp:
   57621         (WebCore::JSMessagePort::startConversation):
   57622         (WebCore::JSMessagePort::addEventListener):
   57623         (WebCore::JSMessagePort::removeEventListener):
   57624         * bindings/js/JSMimeTypeArrayCustom.cpp:
   57625         (WebCore::JSMimeTypeArray::nameGetter):
   57626         * bindings/js/JSNamedNodeMapCustom.cpp:
   57627         (WebCore::JSNamedNodeMap::nameGetter):
   57628         * bindings/js/JSNamedNodesCollection.cpp:
   57629         (WebCore::JSNamedNodesCollection::lengthGetter):
   57630         (WebCore::JSNamedNodesCollection::indexGetter):
   57631         * bindings/js/JSNamedNodesCollection.h:
   57632         (WebCore::JSNamedNodesCollection::createStructure):
   57633         * bindings/js/JSNavigatorCustom.cpp:
   57634         (WebCore::needsYouTubeQuirk):
   57635         (WebCore::JSNavigator::appVersion):
   57636         * bindings/js/JSNodeCustom.cpp:
   57637         (WebCore::JSNode::insertBefore):
   57638         (WebCore::JSNode::replaceChild):
   57639         (WebCore::JSNode::removeChild):
   57640         (WebCore::JSNode::appendChild):
   57641         (WebCore::createWrapper):
   57642         (WebCore::toJSNewlyCreated):
   57643         (WebCore::toJS):
   57644         * bindings/js/JSNodeFilterCondition.cpp:
   57645         (WebCore::JSNodeFilterCondition::JSNodeFilterCondition):
   57646         (WebCore::JSNodeFilterCondition::acceptNode):
   57647         * bindings/js/JSNodeFilterCondition.h:
   57648         (WebCore::JSNodeFilterCondition::create):
   57649         * bindings/js/JSNodeFilterCustom.cpp:
   57650         (WebCore::JSNodeFilter::acceptNode):
   57651         (WebCore::toNodeFilter):
   57652         * bindings/js/JSNodeIteratorCustom.cpp:
   57653         (WebCore::JSNodeIterator::nextNode):
   57654         (WebCore::JSNodeIterator::previousNode):
   57655         * bindings/js/JSNodeListCustom.cpp:
   57656         (WebCore::callNodeList):
   57657         (WebCore::JSNodeList::nameGetter):
   57658         * bindings/js/JSPluginArrayCustom.cpp:
   57659         (WebCore::JSPluginArray::nameGetter):
   57660         * bindings/js/JSPluginCustom.cpp:
   57661         (WebCore::JSPlugin::nameGetter):
   57662         * bindings/js/JSPluginElementFunctions.cpp:
   57663         (WebCore::runtimeObjectGetter):
   57664         (WebCore::runtimeObjectPropertyGetter):
   57665         (WebCore::runtimeObjectCustomPut):
   57666         (WebCore::callPlugin):
   57667         * bindings/js/JSPluginElementFunctions.h:
   57668         * bindings/js/JSQuarantinedObjectWrapper.cpp:
   57669         (WebCore::JSQuarantinedObjectWrapper::asWrapper):
   57670         (WebCore::JSQuarantinedObjectWrapper::cachedValueGetter):
   57671         (WebCore::JSQuarantinedObjectWrapper::getOwnPropertySlot):
   57672         (WebCore::JSQuarantinedObjectWrapper::put):
   57673         (WebCore::JSQuarantinedObjectWrapper::construct):
   57674         (WebCore::JSQuarantinedObjectWrapper::hasInstance):
   57675         (WebCore::JSQuarantinedObjectWrapper::call):
   57676         * bindings/js/JSQuarantinedObjectWrapper.h:
   57677         (WebCore::JSQuarantinedObjectWrapper::createStructure):
   57678         * bindings/js/JSRGBColor.cpp:
   57679         (WebCore::getJSRGBColor):
   57680         (jsRGBColorRed):
   57681         (jsRGBColorGreen):
   57682         (jsRGBColorBlue):
   57683         * bindings/js/JSRGBColor.h:
   57684         (WebCore::JSRGBColor::createStructure):
   57685         * bindings/js/JSSQLResultSetRowListCustom.cpp:
   57686         (WebCore::JSSQLResultSetRowList::item):
   57687         * bindings/js/JSSQLTransactionCustom.cpp:
   57688         (WebCore::JSSQLTransaction::executeSql):
   57689         * bindings/js/JSSVGElementInstanceCustom.cpp:
   57690         (WebCore::JSSVGElementInstance::addEventListener):
   57691         (WebCore::JSSVGElementInstance::removeEventListener):
   57692         * bindings/js/JSSVGLengthCustom.cpp:
   57693         (WebCore::JSSVGLength::value):
   57694         (WebCore::JSSVGLength::convertToSpecifiedUnits):
   57695         * bindings/js/JSSVGMatrixCustom.cpp:
   57696         (WebCore::JSSVGMatrix::multiply):
   57697         (WebCore::JSSVGMatrix::inverse):
   57698         (WebCore::JSSVGMatrix::translate):
   57699         (WebCore::JSSVGMatrix::scale):
   57700         (WebCore::JSSVGMatrix::scaleNonUniform):
   57701         (WebCore::JSSVGMatrix::rotate):
   57702         (WebCore::JSSVGMatrix::rotateFromVector):
   57703         (WebCore::JSSVGMatrix::flipX):
   57704         (WebCore::JSSVGMatrix::flipY):
   57705         (WebCore::JSSVGMatrix::skewX):
   57706         (WebCore::JSSVGMatrix::skewY):
   57707         * bindings/js/JSSVGPathSegCustom.cpp:
   57708         (WebCore::toJS):
   57709         * bindings/js/JSSVGPathSegListCustom.cpp:
   57710         (WebCore::JSSVGPathSegList::clear):
   57711         (WebCore::JSSVGPathSegList::initialize):
   57712         (WebCore::JSSVGPathSegList::getItem):
   57713         (WebCore::JSSVGPathSegList::insertItemBefore):
   57714         (WebCore::JSSVGPathSegList::replaceItem):
   57715         (WebCore::JSSVGPathSegList::removeItem):
   57716         (WebCore::JSSVGPathSegList::appendItem):
   57717         * bindings/js/JSSVGPointListCustom.cpp:
   57718         (WebCore::finishGetter):
   57719         (WebCore::finishSetter):
   57720         (WebCore::finishSetterReadOnlyResult):
   57721         (WebCore::JSSVGPointList::clear):
   57722         (WebCore::JSSVGPointList::initialize):
   57723         (WebCore::JSSVGPointList::getItem):
   57724         (WebCore::JSSVGPointList::insertItemBefore):
   57725         (WebCore::JSSVGPointList::replaceItem):
   57726         (WebCore::JSSVGPointList::removeItem):
   57727         (WebCore::JSSVGPointList::appendItem):
   57728         * bindings/js/JSSVGTransformListCustom.cpp:
   57729         (WebCore::finishGetter):
   57730         (WebCore::finishSetter):
   57731         (WebCore::finishSetterReadOnlyResult):
   57732         (WebCore::JSSVGTransformList::clear):
   57733         (WebCore::JSSVGTransformList::initialize):
   57734         (WebCore::JSSVGTransformList::getItem):
   57735         (WebCore::JSSVGTransformList::insertItemBefore):
   57736         (WebCore::JSSVGTransformList::replaceItem):
   57737         (WebCore::JSSVGTransformList::removeItem):
   57738         (WebCore::JSSVGTransformList::appendItem):
   57739         * bindings/js/JSStorageCustom.cpp:
   57740         (WebCore::JSStorage::nameGetter):
   57741         (WebCore::JSStorage::deleteProperty):
   57742         (WebCore::JSStorage::customPut):
   57743         * bindings/js/JSStyleSheetCustom.cpp:
   57744         (WebCore::toJS):
   57745         * bindings/js/JSStyleSheetListCustom.cpp:
   57746         (WebCore::JSStyleSheetList::nameGetter):
   57747         * bindings/js/JSTextCustom.cpp:
   57748         (WebCore::toJSNewlyCreated):
   57749         * bindings/js/JSTreeWalkerCustom.cpp:
   57750         (WebCore::JSTreeWalker::parentNode):
   57751         (WebCore::JSTreeWalker::firstChild):
   57752         (WebCore::JSTreeWalker::lastChild):
   57753         (WebCore::JSTreeWalker::nextSibling):
   57754         (WebCore::JSTreeWalker::previousSibling):
   57755         (WebCore::JSTreeWalker::previousNode):
   57756         (WebCore::JSTreeWalker::nextNode):
   57757         * bindings/js/JSWorkerContextBase.cpp:
   57758         (WebCore::JSWorkerContextBase::put):
   57759         * bindings/js/JSWorkerContextBase.h:
   57760         * bindings/js/JSWorkerContextCustom.cpp:
   57761         (WebCore::JSWorkerContext::self):
   57762         (WebCore::JSWorkerContext::setSelf):
   57763         (WebCore::JSWorkerContext::addEventListener):
   57764         (WebCore::JSWorkerContext::removeEventListener):
   57765         * bindings/js/JSWorkerCustom.cpp:
   57766         (WebCore::JSWorker::addEventListener):
   57767         (WebCore::JSWorker::removeEventListener):
   57768         * bindings/js/JSXMLHttpRequestCustom.cpp:
   57769         (WebCore::JSXMLHttpRequest::open):
   57770         (WebCore::JSXMLHttpRequest::setRequestHeader):
   57771         (WebCore::JSXMLHttpRequest::send):
   57772         (WebCore::JSXMLHttpRequest::getResponseHeader):
   57773         (WebCore::JSXMLHttpRequest::overrideMimeType):
   57774         (WebCore::JSXMLHttpRequest::addEventListener):
   57775         (WebCore::JSXMLHttpRequest::removeEventListener):
   57776         (WebCore::JSXMLHttpRequest::responseText):
   57777         * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
   57778         (WebCore::JSXMLHttpRequestUpload::addEventListener):
   57779         (WebCore::JSXMLHttpRequestUpload::removeEventListener):
   57780         * bindings/js/JSXSLTProcessorCustom.cpp:
   57781         (WebCore::JSXSLTProcessor::importStylesheet):
   57782         (WebCore::JSXSLTProcessor::transformToFragment):
   57783         (WebCore::JSXSLTProcessor::transformToDocument):
   57784         (WebCore::JSXSLTProcessor::setParameter):
   57785         (WebCore::JSXSLTProcessor::getParameter):
   57786         (WebCore::JSXSLTProcessor::removeParameter):
   57787         * bindings/js/ScheduledAction.cpp:
   57788         (WebCore::ScheduledAction::ScheduledAction):
   57789         (WebCore::ScheduledAction::execute):
   57790         * bindings/js/ScheduledAction.h:
   57791         * bindings/js/ScriptCallStack.cpp:
   57792         (WebCore::ScriptCallStack::ScriptCallStack):
   57793         (WebCore::ScriptCallStack::initialize):
   57794         * bindings/js/ScriptController.cpp:
   57795         (WebCore::ScriptController::createScriptObjectForPluginElement):
   57796         * bindings/js/ScriptValue.cpp:
   57797         (WebCore::ScriptValue::getString):
   57798         (WebCore::ScriptValue::isNull):
   57799         (WebCore::ScriptValue::isUndefined):
   57800         * bindings/js/ScriptValue.h:
   57801         (WebCore::ScriptValue::ScriptValue):
   57802         (WebCore::ScriptValue::jsValue):
   57803         * bindings/objc/WebScriptObject.mm:
   57804         (-[WebScriptObject callWebScriptMethod:withArguments:]):
   57805         (-[WebScriptObject evaluateWebScript:]):
   57806         (-[WebScriptObject valueForKey:]):
   57807         (-[WebScriptObject webScriptValueAtIndex:]):
   57808         (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
   57809         * bindings/objc/WebScriptObjectPrivate.h:
   57810         * bindings/scripts/CodeGeneratorJS.pm:
   57811         * bridge/NP_jsobject.cpp:
   57812         (_NPN_InvokeDefault):
   57813         (_NPN_Invoke):
   57814         (_NPN_Evaluate):
   57815         (_NPN_GetProperty):
   57816         (_NPN_HasMethod):
   57817         (_NPN_Construct):
   57818         * bridge/c/c_instance.cpp:
   57819         (JSC::Bindings::CInstance::invokeMethod):
   57820         (JSC::Bindings::CInstance::invokeDefaultMethod):
   57821         (JSC::Bindings::CInstance::invokeConstruct):
   57822         (JSC::Bindings::CInstance::defaultValue):
   57823         (JSC::Bindings::CInstance::stringValue):
   57824         (JSC::Bindings::CInstance::numberValue):
   57825         (JSC::Bindings::CInstance::booleanValue):
   57826         (JSC::Bindings::CInstance::valueOf):
   57827         * bridge/c/c_instance.h:
   57828         * bridge/c/c_runtime.cpp:
   57829         (JSC::Bindings::CField::valueFromInstance):
   57830         (JSC::Bindings::CField::setValueToInstance):
   57831         * bridge/c/c_runtime.h:
   57832         * bridge/c/c_utility.cpp:
   57833         (JSC::Bindings::convertValueToNPVariant):
   57834         (JSC::Bindings::convertNPVariantToValue):
   57835         * bridge/c/c_utility.h:
   57836         * bridge/jni/jni_instance.cpp:
   57837         (JavaInstance::stringValue):
   57838         (JavaInstance::numberValue):
   57839         (JavaInstance::booleanValue):
   57840         (JavaInstance::invokeMethod):
   57841         (JavaInstance::defaultValue):
   57842         (JavaInstance::valueOf):
   57843         * bridge/jni/jni_instance.h:
   57844         * bridge/jni/jni_jsobject.h:
   57845         * bridge/jni/jni_jsobject.mm:
   57846         (JavaJSObject::call):
   57847         (JavaJSObject::eval):
   57848         (JavaJSObject::getMember):
   57849         (JavaJSObject::getSlot):
   57850         (JavaJSObject::convertValueToJObject):
   57851         (JavaJSObject::convertJObjectToValue):
   57852         * bridge/jni/jni_objc.mm:
   57853         (JSC::Bindings::dispatchJNICall):
   57854         * bridge/jni/jni_runtime.cpp:
   57855         (JavaArray::convertJObjectToArray):
   57856         (JavaField::dispatchValueFromInstance):
   57857         (JavaField::valueFromInstance):
   57858         (JavaField::dispatchSetValueToInstance):
   57859         (JavaField::setValueToInstance):
   57860         (JavaArray::setValueAt):
   57861         (JavaArray::valueAt):
   57862         * bridge/jni/jni_runtime.h:
   57863         * bridge/jni/jni_utility.cpp:
   57864         (JSC::Bindings::convertArrayInstanceToJavaArray):
   57865         (JSC::Bindings::convertValueToJValue):
   57866         * bridge/jni/jni_utility.h:
   57867         * bridge/objc/WebScriptObject.h:
   57868         * bridge/objc/objc_class.h:
   57869         * bridge/objc/objc_class.mm:
   57870         (JSC::Bindings::ObjcClass::fallbackObject):
   57871         * bridge/objc/objc_instance.h:
   57872         * bridge/objc/objc_instance.mm:
   57873         (ObjcInstance::invokeMethod):
   57874         (ObjcInstance::invokeDefaultMethod):
   57875         (ObjcInstance::setValueOfUndefinedField):
   57876         (ObjcInstance::getValueOfUndefinedField):
   57877         (ObjcInstance::defaultValue):
   57878         (ObjcInstance::stringValue):
   57879         (ObjcInstance::numberValue):
   57880         (ObjcInstance::booleanValue):
   57881         (ObjcInstance::valueOf):
   57882         * bridge/objc/objc_runtime.h:
   57883         (JSC::Bindings::ObjcFallbackObjectImp::createStructure):
   57884         * bridge/objc/objc_runtime.mm:
   57885         (JSC::Bindings::ObjcField::valueFromInstance):
   57886         (JSC::Bindings::convertValueToObjcObject):
   57887         (JSC::Bindings::ObjcField::setValueToInstance):
   57888         (JSC::Bindings::ObjcArray::setValueAt):
   57889         (JSC::Bindings::ObjcArray::valueAt):
   57890         (JSC::Bindings::ObjcFallbackObjectImp::put):
   57891         (JSC::Bindings::callObjCFallbackObject):
   57892         (JSC::Bindings::ObjcFallbackObjectImp::defaultValue):
   57893         * bridge/objc/objc_utility.h:
   57894         * bridge/objc/objc_utility.mm:
   57895         (JSC::Bindings::convertValueToObjcValue):
   57896         (JSC::Bindings::convertNSStringToString):
   57897         (JSC::Bindings::convertObjcValueToValue):
   57898         * bridge/runtime.cpp:
   57899         (JSC::Bindings::Instance::getValueOfField):
   57900         (JSC::Bindings::Instance::setValueOfField):
   57901         * bridge/runtime.h:
   57902         (JSC::Bindings::Class::fallbackObject):
   57903         (JSC::Bindings::Instance::getValueOfUndefinedField):
   57904         (JSC::Bindings::Instance::setValueOfUndefinedField):
   57905         (JSC::Bindings::Instance::invokeDefaultMethod):
   57906         (JSC::Bindings::Instance::invokeConstruct):
   57907         (JSC::Bindings::Instance::valueOf):
   57908         * bridge/runtime_array.cpp:
   57909         (JSC::RuntimeArray::lengthGetter):
   57910         (JSC::RuntimeArray::indexGetter):
   57911         (JSC::RuntimeArray::put):
   57912         * bridge/runtime_array.h:
   57913         (JSC::RuntimeArray::createStructure):
   57914         * bridge/runtime_method.cpp:
   57915         (JSC::RuntimeMethod::lengthGetter):
   57916         (JSC::callRuntimeMethod):
   57917         * bridge/runtime_method.h:
   57918         (JSC::RuntimeMethod::createStructure):
   57919         * bridge/runtime_object.cpp:
   57920         (JSC::RuntimeObjectImp::fallbackObjectGetter):
   57921         (JSC::RuntimeObjectImp::fieldGetter):
   57922         (JSC::RuntimeObjectImp::methodGetter):
   57923         (JSC::RuntimeObjectImp::put):
   57924         (JSC::RuntimeObjectImp::defaultValue):
   57925         (JSC::callRuntimeObject):
   57926         (JSC::callRuntimeConstructor):
   57927         * bridge/runtime_object.h:
   57928         (JSC::RuntimeObjectImp::createStructure):
   57929         * inspector/InspectorController.cpp:
   57930         * inspector/JavaScriptCallFrame.cpp:
   57931         (WebCore::JavaScriptCallFrame::evaluate):
   57932         * inspector/JavaScriptCallFrame.h:
   57933         * inspector/JavaScriptProfile.cpp:
   57934         (WebCore::toJS):
   57935         * inspector/JavaScriptProfile.h:
   57936         * inspector/JavaScriptProfileNode.cpp:
   57937         (WebCore::toJS):
   57938         * inspector/JavaScriptProfileNode.h:
   57939         * xml/XMLHttpRequest.cpp:
   57940         (WebCore::XMLHttpRequest::dropProtection):
   57941 
   57942 2009-01-06  Pierre-Olivier Latour  <pol (a] apple.com>
   57943 
   57944         Reviewed by Darin Adler.
   57945 
   57946         Added new API on AnimationController::numberOfActiveAnimations() to be used by DRT.
   57947 
   57948         https://bugs.webkit.org/show_bug.cgi?id=23126
   57949 
   57950         Test: animations/animation-controller-drt-api.html
   57951 
   57952         * WebCore.base.exp:
   57953         * page/animation/AnimationController.cpp:
   57954         (WebCore::AnimationControllerPrivate::numberOfActiveAnimations):
   57955         (WebCore::AnimationController::numberOfActiveAnimations):
   57956         * page/animation/AnimationController.h:
   57957         * page/animation/CompositeAnimation.cpp:
   57958         (WebCore::CompositeAnimationPrivate::numberOfActiveAnimations):
   57959         (WebCore::CompositeAnimation::numberOfActiveAnimations):
   57960         * page/animation/CompositeAnimation.h:
   57961 
   57962 2009-01-06  Eric Seidel  <eric (a] webkit.org>
   57963 
   57964         Reviewed by Gavin Barraclough.
   57965 
   57966         Upstream 3 more files to get the WebCore-Chromium build a bit further.
   57967 
   57968         * WebCore.scons:
   57969         * page/chromium/AccessibilityObjectChromium.cpp: Added.
   57970         (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
   57971         * page/chromium/AccessibilityObjectWrapper.h: Added.
   57972         (WebCore::AccessibilityObjectWrapper::~AccessibilityObjectWrapper):
   57973         (WebCore::AccessibilityObjectWrapper::attached):
   57974         (WebCore::AccessibilityObjectWrapper::accessibilityObject):
   57975         (WebCore::AccessibilityObjectWrapper::AccessibilityObjectWrapper):
   57976         * platform/chromium/PasteboardPrivate.h: Added.
   57977         (WebCore::PasteboardPrivate::):
   57978 
   57979 2009-01-06  Chris Marrin  <cmarrin (a] apple.com>
   57980 
   57981         Reviewed by David Hyatt.
   57982 
   57983         Tests: animations/simultaneous-start-left.html
   57984                animations/simultaneous-start-transform.html
   57985 
   57986         Fixed https://bugs.webkit.org/show_bug.cgi?id=22870
   57987 
   57988         I added calls beginAnimationUpdate() and endAnimationUpdate() calls
   57989         to AnimationController. These are called by Document at the start
   57990         and end of the recalcStyle cycle. Right now, I'm just using the
   57991         beginAnimationUpdate() method to reset an animation time value.
   57992         The first time the animation time is accessed after this reset I set
   57993         it to the currentTime. So all animations in that cycle get the same
   57994         start time.
   57995 
   57996         The test cases checked in test this, but in the case of the 'left'
   57997         test it actually doesn't make any difference in most cases. This is
   57998         because values are clamped to whole pixels, so the start times would
   57999         have to be pretty far off for the test to fail using the old
   58000         currentTime() model. Still, under really heavy load, it's possible for
   58001         the test to fail without these changes.
   58002 
   58003         The 'transform' test is another story. It animates to the full resolution
   58004         of a floating point number, so the test fails miserably without this
   58005         fix.
   58006 
   58007         * dom/Document.cpp:
   58008         (WebCore::Document::recalcStyle):
   58009         * page/animation/AnimationBase.cpp:
   58010         (WebCore::AnimationBase::updateStateMachine):
   58011         (WebCore::AnimationBase::fireAnimationEventsIfNeeded):
   58012         (WebCore::AnimationBase::willNeedService):
   58013         (WebCore::AnimationBase::progress):
   58014         (WebCore::AnimationBase::goIntoEndingOrLoopingState):
   58015         (WebCore::AnimationBase::beginAnimationUpdateTime):
   58016         * page/animation/AnimationBase.h:
   58017         * page/animation/AnimationController.cpp:
   58018         (WebCore::AnimationControllerPrivate::beginAnimationUpdateTime):
   58019         (WebCore::AnimationControllerPrivate::setBeginAnimationUpdateTime):
   58020         (WebCore::AnimationControllerPrivate::AnimationControllerPrivate):
   58021         (WebCore::AnimationController::updateAnimations):
   58022         (WebCore::AnimationController::beginAnimationUpdateTime):
   58023         (WebCore::AnimationController::beginAnimationUpdate):
   58024         (WebCore::AnimationController::endAnimationUpdate):
   58025         * page/animation/AnimationController.h:
   58026         * page/animation/KeyframeAnimation.cpp:
   58027         (WebCore::KeyframeAnimation::animate):
   58028 
   58029 2009-01-06  Julien Chaffraix  <jchaffraix (a] webkit.org>
   58030 
   58031         Reviewed by Nikolas Zimmermann.
   58032 
   58033         Bug 22858: Simplify make_names.pl code for avoiding multiple definitions or inclusions
   58034         https://bugs.webkit.org/show_bug.cgi?id=22858
   58035 
   58036         I had introduced an awkward situation using hasCustomJSWrapper and
   58037         sometimes boolean parameter in order to ensure JS wrapper generated once
   58038         or header included once.
   58039 
   58040         Simplified the code by using a %seenTag hash to detect multiple definitions
   58041         or inclusions and skipping it.
   58042 
   58043         Also cleaned up a bit make_names.pl by using more explicit names and moving
   58044         code to where it belongs.
   58045 
   58046         * dom/make_names.pl:
   58047         * html/HTMLTagNames.in: Necessary changes that were not detected by
   58048         the previous syntax but will be required for autogenerating HTMLElementFactory.
   58049 
   58050 2009-01-06  Anders Carlsson  <andersca (a] apple.com>
   58051 
   58052         Reviewed by Sam Weinig.
   58053 
   58054         Add a way for frame loader clients to always create a PluginDocument, regardless of
   58055         the real document MIME type.
   58056 
   58057         * loader/FrameLoader.cpp:
   58058         (WebCore::FrameLoader::begin):
   58059         (WebCore::FrameLoader::shouldUsePlugin):
   58060         * loader/FrameLoaderClient.h:
   58061         (WebCore::FrameLoaderClient::shouldUsePluginDocument):
   58062 
   58063 2009-01-06  Dean Jackson  <dino (a] apple.com>
   58064 
   58065         Reviewed by Dave Hyatt.
   58066 
   58067         Extend Media Queries to cover transitions,
   58068         animations, transform-2d and transform-3d
   58069         http://webkit.org/specs/MediaQueriesExtensions.html
   58070         Note that the implementation uses -webkit- prefixes
   58071         even though the spec doesn't have them.
   58072         https://bugs.webkit.org/show_bug.cgi?id=22494
   58073 
   58074         Tests: fast/media/mq-animation.html
   58075                fast/media/mq-transform-01.html
   58076                fast/media/mq-transform-02.html
   58077                fast/media/mq-transform-03.html
   58078                fast/media/mq-transform-04.html
   58079                fast/media/mq-transition.html
   58080 
   58081         * css/MediaFeatureNames.h:
   58082         * css/MediaQueryEvaluator.cpp:
   58083         (WebCore::animationMediaFeatureEval):
   58084         (WebCore::transitionMediaFeatureEval):
   58085         (WebCore::transform_2dMediaFeatureEval):
   58086         (WebCore::transform_3dMediaFeatureEval):
   58087 
   58088 2009-01-06  Eric Seidel  <eric (a] webkit.org>
   58089 
   58090         Reviewed by Oliver Hunt.
   58091 
   58092         Bring the Chromium-WebCore build closer to building
   58093         by upstreaming PlatformWidget.h add adding the JSC
   58094         plugin bridge files to the build.
   58095 
   58096         * WebCore.scons:
   58097         * platform/chromium/PlatformWidget.h: Added.
   58098 
   58099 2009-01-06  Eric Seidel  <eric (a] webkit.org>
   58100 
   58101         Build fix only, no review.
   58102 
   58103         Bring the Chromium-WebCore build back closer to building
   58104         by adding files from recent commits.
   58105 
   58106         * WebCore.scons:
   58107 
   58108 2009-01-06  Alexey Proskuryakov  <ap (a] webkit.org>
   58109 
   58110         Reviewed by Darin Adler.
   58111 
   58112         <rdar://problem/6474973> REGRESSION: PLT ~2% slower due to 39465 (consolidate thread data)
   58113 
   58114         I could not reproduce the slowdown on my PowerPC test machine, but the change should bring
   58115         performance back.
   58116 
   58117         * platform/ThreadGlobalData.cpp: (WebCore::threadGlobalData): Don't use AtomicallyInitializedStatic.
   58118         Prior to r39465, it was only used for cached converters, which was necessary because the
   58119         first access to ICU or TEC one could happen on a secondary thread, but now they are all
   58120         initialized from ThreadGlobalData constructor.
   58121 
   58122 2009-01-06  David Smith  <catfish.man (a] gmail.com>
   58123 
   58124         Reviewed by Darin Adler.
   58125 
   58126         https://bugs.webkit.org/show_bug.cgi?id=23129
   58127         Devirtualize Node::childNodes().
   58128 
   58129 2009-01-06  Simon Hausmann  <simon.hausmann (a] nokia.com>
   58130 
   58131         Unreviewed build fix.
   58132 
   58133         Fix the Qt build with Qt 4.4.x, the HTTP-only cookie support was
   58134         added in Qt 4.5.
   58135 
   58136         * platform/qt/CookieJarQt.cpp:
   58137         (WebCore::setCookies):
   58138         (WebCore::cookies):
   58139 
   58140 2009-01-06  Zalan Bujtas  <zbujtas (a] gmail.com>
   58141 
   58142         Reviewed by David Kilzer.
   58143 
   58144         https://bugs.webkit.org/show_bug.cgi?id=23133
   58145         Fix SVG disabled build. Move 'pointer-events' from SVGCSSPropertyNames.in to
   58146         CSSPropertyNames.in and move PointerEvents functions out of #if ENABLE(SVG)
   58147 
   58148         NOTE: Property name fixes landed as part of r39648.
   58149 
   58150         * css/CSSPrimitiveValueMappings.h:
   58151         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
   58152         (WebCore::CSSPrimitiveValue::operator EPointerEvents):
   58153         * css/CSSPropertyNames.in:
   58154         * css/SVGCSSPropertyNames.in:
   58155 
   58156 2009-01-06  David Kilzer  <ddkilzer (a] apple.com>
   58157 
   58158         BUILD FIX (r39634): Fix build for non-SVG builds (Wx)
   58159 
   58160         * css/CSSPropertyNames.in: Added 'pointer-events'.
   58161         * css/SVGCSSPropertyNames.in: Commented out pointer-events
   58162         since it's now a plain CSS property.
   58163 
   58164 2009-01-06  Simon Hausmann  <simon.hausmann (a] nokia.com>
   58165 
   58166         Reviewed by Lars Knoll.
   58167 
   58168         Added support for HTTP-only cookies to the Qt build.
   58169 
   58170         * platform/qt/CookieJarQt.cpp:
   58171         (WebCore::setCookies): Don't set HTTP-only cookies through the DOM.
   58172         (WebCore::cookies): Don't return HTTP-only cookies to the DOM.
   58173 
   58174 2009-01-05  David Smith  <catfish.man (a] gmail.com>
   58175 
   58176         Reviewed by Oliver Hunt.
   58177 
   58178         https://bugs.webkit.org/show_bug.cgi?id=23084
   58179         Avoid redundant AtomicString conversions
   58180 
   58181         * dom/Node.cpp: Create an AtomicString early to avoid converting twice
   58182         (WebCore::Node::getElementsByTagNameNS):
   58183         * dom/QualifiedName.h: Use the appropriate AtomicString constructor instead of converting from a String
   58184 
   58185 2009-01-05  Simon Fraser  <simon.fraser (a] apple.com>
   58186 
   58187         Reviewed by Dave Hyatt
   58188 
   58189         https://bugs.webkit.org/show_bug.cgi?id=22985
   58190 
   58191         Add an assertion that clip rects are being used when painting with the same
   58192         rootLayer that they were computed with.
   58193 
   58194         Fix two issues detected by the assertion:
   58195 
   58196         RenderLayer::updateClipRects() should not unconditionally update the clip rects
   58197         on its parent, but stop when reaching rootLayer (just like calculateClipRects()).
   58198 
   58199         We need to pass the temporaryClipRects flag down through reflection painting
   58200         to handle the case of nested reflections.
   58201 
   58202         Also use temporary clip rects in RenderTreeAsText, since that code does not
   58203         reset the painting root for transformed layers, so cached clip rects will not
   58204         match those used for painting.
   58205 
   58206         * rendering/RenderLayer.cpp:
   58207         (WebCore::RenderLayer::RenderLayer):
   58208         (WebCore::RenderLayer::paintLayer):
   58209         (WebCore::RenderLayer::updateClipRects):
   58210         (WebCore::RenderLayer::clearClipRects):
   58211         * rendering/RenderLayer.h:
   58212         * rendering/RenderTreeAsText.cpp:
   58213         (WebCore::writeLayers):
   58214 
   58215 2009-01-05  Adam Treat  <adam.treat (a] torchmobile.com>
   58216 
   58217         Fix the Qt build
   58218 
   58219         * platform/graphics/qt/AffineTransformQt.cpp:
   58220         (WebCore::TransformationMatrix::TransformationMatrix):
   58221 
   58222 2009-01-05  Mark Rowe  <mrowe (a] apple.com>
   58223 
   58224         Fix the build some more.
   58225 
   58226         * platform/graphics/cairo/AffineTransformCairo.cpp:
   58227         (WebCore::TransformationMatrix::TransformationMatrix):
   58228 
   58229 2009-01-05  Oliver Hunt  <oliver (a] apple.com>
   58230 
   58231         Reviewed by NOBODY (Build fix).
   58232 
   58233         Fix Cairo/Gtk build
   58234 
   58235         * platform/graphics/cairo/ImageBufferCairo.cpp:
   58236         (WebCore::ImageBuffer::putImageData):
   58237 
   58238 2009-01-05  Dean Jackson  <dino (a] apple.com>
   58239 
   58240         Reviewed by Darin Adler.
   58241 
   58242         Rename AffineTransform to TransformationMatrix in
   58243         preparation for future enhancements (non-affine matrices)
   58244 
   58245         https://bugs.webkit.org/show_bug.cgi?id=22943
   58246 
   58247         * GNUmakefile.am:
   58248         * WebCore.pro:
   58249         * WebCore.scons:
   58250         * WebCore.vcproj/WebCore.vcproj:
   58251         * WebCore.xcodeproj/project.pbxproj:
   58252         * WebCoreSources.bkl:
   58253         * platform/graphics/transforms/AffineTransform.cpp: Removed.
   58254         * platform/graphics/transforms/AffineTransform.h: Removed.
   58255         * platform/graphics/transforms/TransformationMatrix.cpp: Copied from WebCore/platform/graphics/transforms/AffineTransform.cpp.
   58256         * platform/graphics/transforms/TransformationMatrix.h: Copied from WebCore/platform/graphics/transforms/AffineTransform.h.
   58257         * lots of other files with s/AffineTransform/TransformationMatrix/g
   58258 
   58259 2008-01-05  Dean Jackson  <dino (a] apple.com>
   58260 
   58261         Reviewed by David Hyatt.
   58262 
   58263         Implement 'pointer-events' for HTML content. This involved
   58264         adding a new value 'auto' which behaves as 'visiblePainted'
   58265         in SVG content.
   58266 
   58267         Moved the property out of the SVG CSS code and into
   58268         the general CSS (both parsing and RenderStyle).
   58269 
   58270         Changes to the hit testing functionality of the Render tree,
   58271         specifically the nodeAtPoint methods. Where they used to
   58272         test for visibility, they now use a helper function defined
   58273         on base classes (RenderObject and InlineBox) that checks both
   58274         visibility and pointer-events.
   58275 
   58276         https://bugs.webkit.org/show_bug.cgi?id=11395
   58277 
   58278         Tests: fast/events/pointer-events-2.html
   58279                fast/events/pointer-events.html
   58280 
   58281         * css/CSSComputedStyleDeclaration.cpp:
   58282         (WebCore::):
   58283         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   58284         * css/CSSParser.cpp:
   58285         (WebCore::CSSParser::parseValue):
   58286         * css/CSSPrimitiveValueMappings.h:
   58287         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
   58288         (WebCore::CSSPrimitiveValue::operator EPointerEvents):
   58289         * css/CSSStyleSelector.cpp:
   58290         (WebCore::CSSStyleSelector::applyProperty):
   58291         * css/SVGCSSComputedStyleDeclaration.cpp:
   58292         (WebCore::CSSComputedStyleDeclaration::getSVGPropertyCSSValue):
   58293         * css/SVGCSSStyleSelector.cpp:
   58294         (WebCore::CSSStyleSelector::applySVGProperty):
   58295         * manual-tests/pointer-events.html: Added.
   58296         * rendering/EllipsisBox.cpp:
   58297         (WebCore::EllipsisBox::nodeAtPoint):
   58298         * rendering/InlineBox.h:
   58299         (WebCore::InlineBox::visibleToHitTesting):
   58300         * rendering/InlineFlowBox.cpp:
   58301         (WebCore::InlineFlowBox::nodeAtPoint):
   58302         * rendering/InlineTextBox.cpp:
   58303         (WebCore::InlineTextBox::nodeAtPoint):
   58304         * rendering/PointerEventsHitRules.cpp:
   58305         (WebCore::PointerEventsHitRules::PointerEventsHitRules):
   58306         * rendering/PointerEventsHitRules.h:
   58307         (WebCore::PointerEventsHitRules::):
   58308         * rendering/RenderBlock.cpp:
   58309         (WebCore::RenderBlock::nodeAtPoint):
   58310         * rendering/RenderBox.cpp:
   58311         (WebCore::RenderBox::nodeAtPoint):
   58312         * rendering/RenderObject.h:
   58313         (WebCore::RenderObject::visibleToHitTesting):
   58314         * rendering/RenderPath.cpp:
   58315         (WebCore::RenderPath::nodeAtPoint):
   58316         * rendering/RenderSVGImage.cpp:
   58317         (WebCore::RenderSVGImage::nodeAtPoint):
   58318         * rendering/RenderSVGText.cpp:
   58319         (WebCore::RenderSVGText::nodeAtPoint):
   58320         * rendering/RootInlineBox.cpp:
   58321         (WebCore::RootInlineBox::nodeAtPoint):
   58322         * rendering/TextControlInnerElements.cpp:
   58323         (WebCore::SearchFieldCancelButtonElement::defaultEventHandler):
   58324         * rendering/style/RenderStyle.h:
   58325         (WebCore::):
   58326         (WebCore::InheritedFlags::setBitDefaults):
   58327         (WebCore::InheritedFlags::pointerEvents):
   58328         (WebCore::InheritedFlags::setPointerEvents):
   58329         (WebCore::InheritedFlags::initialPointerEvents):
   58330         * rendering/style/RenderStyleConstants.h:
   58331         (WebCore::):
   58332         * rendering/style/SVGRenderStyle.h:
   58333         (WebCore::SVGRenderStyle::InheritedFlags::operator==):
   58334         (WebCore::SVGRenderStyle::setBitDefaults):
   58335         * rendering/style/SVGRenderStyleDefs.h:
   58336         * css/CSSValueKeywords.in:
   58337         * css/SVGCSSValueKeywords.in:
   58338 
   58339 2009-01-05  Oliver Hunt  <oliver (a] apple.com>
   58340 
   58341         Reviewed by NOBODY (Build fix).
   58342 
   58343         Fix Cairo/Gtk build
   58344 
   58345         * platform/graphics/cairo/ImageBufferCairo.cpp:
   58346         (WebCore::ImageBuffer::getImageData):
   58347 
   58348 2009-01-05  Oliver Hunt  <oliver (a] apple.com>
   58349 
   58350         Reviewed by Gavin Barraclough.
   58351 
   58352         CanvasPixelArray performance is too slow
   58353         <https://bugs.webkit.org/show_bug.cgi?id=23123>
   58354 
   58355         Remove the WebCore CanvasPixelArray implementation and replace
   58356         CPA usage with JSC::ByteArray.  Replace the JSCanvasPixelArray
   58357         wrapper with an explicitly instantiated JSByteArray put on the
   58358         JSImageData object as an ordinary ReadOnly, DontDelete property.
   58359 
   58360         * DerivedSources.make:
   58361         * ForwardingHeaders/runtime/ByteArray.h: Added.
   58362         * ForwardingHeaders/runtime/JSByteArray.h: Added.
   58363         * GNUmakefile.am:
   58364         * WebCore.pro:
   58365         * WebCore.scons:
   58366         * WebCore.vcproj/WebCore.vcproj:
   58367         * WebCore.xcodeproj/project.pbxproj:
   58368         * bindings/js/JSCanvasPixelArrayCustom.h: Removed.
   58369         * bindings/js/JSImageDataCustom.cpp:
   58370         (WebCore::toJS):
   58371         * html/CanvasPixelArray.cpp: Removed.
   58372         * html/CanvasPixelArray.h: Removed.
   58373         * html/CanvasPixelArray.idl: Removed.
   58374         * html/CanvasRenderingContext2D.cpp:
   58375         (WebCore::createEmptyImageData):
   58376         * html/ImageData.cpp:
   58377         (WebCore::ImageData::ImageData):
   58378         * html/ImageData.h:
   58379         (WebCore::ImageData::data):
   58380         * html/ImageData.idl:
   58381         * platform/graphics/cg/ImageBufferCG.cpp:
   58382         (WebCore::ImageBuffer::getImageData):
   58383         (WebCore::ImageBuffer::putImageData):
   58384 
   58385 2009-01-05  Adam Treat  <adam.treat (a] torchmobile.com>
   58386 
   58387         Reviewed by George Staikos.
   58388 
   58389         Add notification for contentsSizeChanged which the Qt API will
   58390         introduce.
   58391 
   58392         * loader/EmptyClients.h:
   58393         (WebCore::EmptyChromeClient::contentsSizeChanged):
   58394         * page/Chrome.cpp:
   58395         (WebCore::Chrome::contentsSizeChanged):
   58396         * page/Chrome.h:
   58397         * page/ChromeClient.h:
   58398         * page/FrameView.cpp:
   58399         (WebCore::FrameView::setContentsSize):
   58400         * page/FrameView.h:
   58401         * platform/HostWindow.h:
   58402         * platform/ScrollView.h:
   58403 
   58404 2009-01-05  Anders Carlsson  <andersca (a] apple.com>
   58405 
   58406         Build fix.
   58407 
   58408         * plugins/PluginView.h:
   58409         (WebCore::PluginManualLoader::~PluginManualLoader):
   58410 
   58411 2009-01-05  Anders Carlsson  <andersca (a] apple.com>
   58412 
   58413         Reviewed by Kevin Decker.
   58414 
   58415         Add an abstract PluginManualLoader class and make PluginView inherit from it.
   58416 
   58417         Add some error checking that currently exists in WebKit (but not for long!)
   58418 
   58419         * plugins/PluginView.cpp:
   58420         (WebCore::PluginView::didReceiveResponse):
   58421         (WebCore::PluginView::didReceiveData):
   58422         (WebCore::PluginView::didFinishLoading):
   58423         (WebCore::PluginView::didFail):
   58424         * plugins/PluginView.h:
   58425 
   58426 2009-01-05  Adam Treat  <adam.treat (a] torchmobile.com>
   58427 
   58428         Reviewed by George Staikos.
   58429 
   58430         Fixes FrameView to respect the state of scrollbarmode when it is explicitly
   58431         set programatically via a webkit API.
   58432 
   58433         * loader/FrameLoaderClient.cpp:
   58434         (WebCore::FrameLoaderClient::transitionToCommittedForNewPage):
   58435         * loader/FrameLoaderClient.h:
   58436         * page/FrameView.cpp:
   58437         (WebCore::FrameView::initScrollbars):
   58438         (WebCore::FrameView::updateDefaultScrollbarState):
   58439         * page/FrameView.h:
   58440 
   58441 2009-01-05  Darin Adler  <darin (a] apple.com>
   58442 
   58443         Reviewed by Dan Bernstein.
   58444 
   58445         Bug 23109: REGRESSION: Backwards search in a long document matches incorrectly
   58446         https://bugs.webkit.org/show_bug.cgi?id=23109
   58447 
   58448         Test: fast/text/find-backwards.html
   58449 
   58450         * editing/TextIterator.cpp:
   58451         (WebCore::SearchBuffer::append): Fix incorrect size passed to memcpy.
   58452         (WebCore::SearchBuffer::search): Handle case where we have an empty buffer but
   58453         we're at a break; must not try to search because ICU will give us an error.
   58454         Fix incorrect size passed to memcpy and memmove.
   58455         (WebCore::findPlainText): Fix case where we found a match and need to search
   58456         again because we want to find the last match. We need to try again without
   58457         adding any more text or handling the break before moving on.
   58458 
   58459 2009-01-05  Adam Treat  <adam.treat (a] torchmobile.com>
   58460 
   58461         Fix the Qt build
   58462 
   58463         * bridge/runtime_object.cpp:
   58464         (JSC::RuntimeObjectImp::put):
   58465 
   58466 2009-01-05  Alexey Proskuryakov  <ap (a] webkit.org>
   58467 
   58468         Reviewed by Sam Weinig.
   58469 
   58470         Fix platforms that don't have Workers enabled.
   58471 
   58472         * platform/ThreadGlobalData.cpp: (WebCore::threadGlobalData): Create ThreadGlobalData in
   58473         two stages, so that EventNames constructor can access the just-created atomic string table.
   58474         This matches what happens in ThreadSpecific case.
   58475 
   58476 2009-01-05  Alexey Proskuryakov  <ap (a] webkit.org>
   58477 
   58478         Suggested by Dave Levin.
   58479 
   58480         Mac release build fix.
   58481 
   58482         * WebCore.base.exp: Remove ThreadGlobalData::eventNames(), which is now inline.
   58483 
   58484 2009-01-05  Darin Adler  <darin (a] apple.com>
   58485 
   58486         * dom/Document.cpp: Fix build. Oops again.
   58487 
   58488 2009-01-05  Darin Adler  <darin (a] apple.com>
   58489 
   58490         Reviewed by Anders Carlsson.
   58491 
   58492         Fix hang whenever following an anchor.
   58493 
   58494         * dom/Document.cpp:
   58495         (WebCore::Document::findAnchor): Oops!
   58496 
   58497 2009-01-05  Alexey Proskuryakov  <ap (a] webkit.org>
   58498 
   58499         Reviewed by Darin Adler.
   58500 
   58501         https://bugs.webkit.org/show_bug.cgi?id=23073
   58502         <rdar://problem/6471129> Workers crash on Windows Release builds
   58503 
   58504         * platform/ThreadGlobalData.cpp: (WebCore::ThreadGlobalData::ThreadGlobalData):
   58505         * platform/ThreadGlobalData.h: (WebCore::ThreadGlobalData::eventNames):
   58506         Now that ThreadSpecific sets up the pointer before invoking data constructor, we can
   58507         initialize EventNames right away.
   58508 
   58509 2009-01-05  Darin Adler  <darin (a] apple.com>
   58510 
   58511         Reviewed by Anders Carlsson.
   58512 
   58513         Bug 23106: HTMLFormCollection::namedItem ignores caseSensitive argument
   58514         https://bugs.webkit.org/show_bug.cgi?id=23106
   58515 
   58516         This led me to a bunch of dead code. It turns out that HTML collections
   58517         were carrying the case-insensitive code just so they could be used to
   58518         find anchors, something we can do more simply and efficiently without
   58519         creating a DOM HTMLCollection object.
   58520 
   58521         No behavior change. Just adding a new function findAnchor function and
   58522         removing some dead code.
   58523 
   58524         * dom/Document.cpp:
   58525         (WebCore::Document::findAnchor): Added.
   58526         * dom/Document.h: Ditto.
   58527 
   58528         * html/HTMLAnchorElement.cpp:
   58529         (WebCore::HTMLAnchorElement::accessKey): Take and return AtomicString
   58530         references for better efficiency.
   58531         (WebCore::HTMLAnchorElement::setAccessKey): Ditto.
   58532         (WebCore::HTMLAnchorElement::charset): Ditto.
   58533         (WebCore::HTMLAnchorElement::setCharset): Ditto.
   58534         (WebCore::HTMLAnchorElement::coords): Ditto.
   58535         (WebCore::HTMLAnchorElement::setCoords): Ditto.
   58536         (WebCore::HTMLAnchorElement::setHref): Ditto.
   58537         (WebCore::HTMLAnchorElement::hreflang): Ditto.
   58538         (WebCore::HTMLAnchorElement::setHreflang): Ditto.
   58539         (WebCore::HTMLAnchorElement::name): Ditto.
   58540         (WebCore::HTMLAnchorElement::setName): Ditto.
   58541         (WebCore::HTMLAnchorElement::rel): Ditto.
   58542         (WebCore::HTMLAnchorElement::setRel): Ditto.
   58543         (WebCore::HTMLAnchorElement::rev): Ditto.
   58544         (WebCore::HTMLAnchorElement::setRev): Ditto.
   58545         (WebCore::HTMLAnchorElement::shape): Ditto.
   58546         (WebCore::HTMLAnchorElement::setShape): Ditto.
   58547         (WebCore::HTMLAnchorElement::setTarget): Ditto.
   58548         (WebCore::HTMLAnchorElement::type): Ditto.
   58549         (WebCore::HTMLAnchorElement::setType): Ditto.
   58550         * html/HTMLAnchorElement.h: Ditto.
   58551 
   58552         * html/HTMLCollection.cpp:
   58553         (WebCore::HTMLCollection::checkForNameMatch): Changed argument to an
   58554         AtomicString and removed the caseSensitive boolean, since we're now always
   58555         case sensitive.
   58556         (WebCore::HTMLCollection::namedItem): Ditto.
   58557         (WebCore::HTMLCollection::nextNamedItem): Ditto.
   58558         * html/HTMLCollection.h: Ditto.
   58559         * html/HTMLFormCollection.cpp:
   58560         (WebCore::HTMLFormCollection::getNamedItem): Ditto.
   58561         (WebCore::HTMLFormCollection::getNamedFormItem): Ditto.
   58562         (WebCore::HTMLFormCollection::nextNamedItemInternal): Ditto.
   58563         (WebCore::HTMLFormCollection::namedItem): Ditto.
   58564         (WebCore::HTMLFormCollection::nextNamedItem): Ditto.
   58565         * html/HTMLFormCollection.h: Ditto.
   58566         * html/HTMLSelectElement.cpp:
   58567         (WebCore::HTMLSelectElement::namedItem): Ditto.
   58568         * html/HTMLSelectElement.h: Ditto.
   58569 
   58570         * loader/FrameLoader.cpp:
   58571         (WebCore::FrameLoader::gotoAnchor): Use the new findAnchor function.
   58572         * page/AccessibilityRenderObject.cpp:
   58573         (WebCore::AccessibilityRenderObject::internalLinkElement): Ditto.
   58574 
   58575 2009-01-05  Darin Adler  <darin (a] apple.com>
   58576 
   58577         Reviewed by Anders Carlsson.
   58578 
   58579         Bug 23104: minor mistakes in init functions for animation and transition events
   58580         https://bugs.webkit.org/show_bug.cgi?id=23104
   58581 
   58582         Test: fast/events/init-events.html
   58583 
   58584         Also fixed two StorageEvent problems the test case uncovered:
   58585 
   58586             Made document.createEvent("StorageEvent") work.
   58587             Allow null values for StorageEvent.oldValue and StorageEvent.newValue.
   58588 
   58589         * dom/Document.cpp:
   58590         (WebCore::Document::createEvent): Sorted alphabetically by the name of the event
   58591         class. Added StorageEvent.
   58592 
   58593         * dom/UIEvent.idl: Fixed typo in a comment.
   58594 
   58595         * dom/WebKitAnimationEvent.cpp:
   58596         (WebCore::WebKitAnimationEvent::initWebKitAnimationEvent): Use all the arguments.
   58597         * dom/WebKitTransitionEvent.cpp:
   58598         (WebCore::WebKitTransitionEvent::initWebKitTransitionEvent): Ditto.
   58599 
   58600         * storage/StorageEvent.idl: Use the ConvertNullToNullString keyword on the
   58601         arguments to initStorageEvent so it can create events with null values for the
   58602         oldValue and newValue, just like the real storage events. Note that the properties
   58603         already had ConvertNullStringTo=Null, so this is just the other half of that.
   58604 
   58605 2009-01-05  Darin Adler  <darin (a] apple.com>
   58606 
   58607         Reviewed by Alexey Proskuryakov.
   58608 
   58609         Bug 23102: turn on unused parameter warnings in WebCore
   58610         https://bugs.webkit.org/show_bug.cgi?id=23102
   58611 
   58612         First step: Fix the simple cases where we can just remove an argument name.
   58613         Also made a few more things protected and private.
   58614 
   58615         * many files
   58616 
   58617 2009-01-05  Alexey Proskuryakov  <ap (a] webkit.org>
   58618 
   58619         Reviewed by Darin Adler.
   58620 
   58621         https://bugs.webkit.org/show_bug.cgi?id=23115
   58622         Create a version of ASSERT for use with otherwise unused variables
   58623 
   58624         * loader/appcache/ApplicationCacheStorage.cpp:
   58625         (WebCore::ApplicationCacheStorage::verifySchemaVersion): Use the new ASSERT_UNUSED macro.
   58626 
   58627 2009-01-05  Alexey Proskuryakov  <ap (a] webkit.org>
   58628 
   58629         Non-Mac build fix.
   58630 
   58631         * loader/appcache/ApplicationCacheStorage.cpp: Include wtf/StringExtras.h for snprintf.
   58632 
   58633 2009-01-05  Adam Treat  <adam.treat (a] torchmobile.com>
   58634 
   58635         Reviewed by George Staikos.
   58636 
   58637         Remove unnecessary methods from EmptyFrameLoaderClient
   58638 
   58639         * loader/EmptyClients.h:
   58640 
   58641 2009-01-05  Alexey Proskuryakov  <ap (a] webkit.org>
   58642 
   58643         Reviewed by Darin Adler.
   58644 
   58645         https://bugs.webkit.org/show_bug.cgi?id=23077
   58646         Make application cache use SQLite built-in user_version
   58647 
   58648         * loader/appcache/ApplicationCacheStorage.cpp:
   58649         (WebCore::ApplicationCacheStorage::verifySchemaVersion): Changed to track versions with
   58650         PRAGMA user_version.
   58651 
   58652         * loader/appcache/ApplicationCacheResource.h: (WebCore::ApplicationCacheResource::):
   58653         Used the occasion to get rid of the hole in bitmask that was a leftover from opportunistic
   58654         cache entries.
   58655 
   58656 2009-01-04  David Smith  <catfish.man (a] gmail.com>
   58657 
   58658         Reviewed by Oliver Hunt.
   58659 
   58660         https://bugs.webkit.org/show_bug.cgi?id=23084
   58661         Avoid redundant AtomicString conversions
   58662 
   58663         * dom/Node.cpp:
   58664         (WebCore::Node::getElementsByTagName): Pass starAtom instead of "*"
   58665         (WebCore::Node::getElementsByTagNameNS): Take an AtomicString for the namespace URI
   58666         (WebCore::Node::isDefaultNamespace): Ditto
   58667         (WebCore::Node::lookupPrefix): Ditto
   58668         (WebCore::Node::lookupNamespacePrefix): Ditto
   58669         * dom/Node.h: Ditto
   58670 
   58671 2009-01-04  Darin Adler  <darin (a] apple.com>
   58672 
   58673         Reviewed by Oliver Hunt.
   58674 
   58675         Bug 23105: canvas setFillColor function ignores alpha argument
   58676         https://bugs.webkit.org/show_bug.cgi?id=23105
   58677 
   58678         Test: fast/canvas/set-colors.html
   58679 
   58680         * html/CanvasRenderingContext2D.cpp:
   58681         (WebCore::CanvasRenderingContext2D::setFillColor): Pass alpha value through instead
   58682         of ignoring it and always passing 1.
   58683 
   58684         * html/CanvasStyle.cpp:
   58685         (WebCore::CanvasStyle::applyStrokeColor): Fix spelling of transparent in comments.
   58686         (WebCore::CanvasStyle::applyFillColor): Ditto.
   58687 
   58688 2009-01-04  Darin Adler  <darin (a] apple.com>
   58689 
   58690         Bug 23086: REGRESSION(r39540/r39541): Windows build fails due to ICU errors
   58691         https://bugs.webkit.org/show_bug.cgi?id=23086
   58692 
   58693         * editing/TextIterator.cpp: Check UCONFIG_NO_COLLATION and don't compile
   58694         in the new search path if it's 0.
   58695 
   58696 2009-01-04  David Kilzer  <ddkilzer (a] apple.com>
   58697 
   58698         Don't install *.idl and *.in files as resources
   58699 
   58700         Reviewed by Oliver Hunt.
   58701 
   58702         Don't install these files as resources in the WebCore framework:
   58703         - WMLAttributeNames.in
   58704         - WMLTagNames.in
   58705         - WorkerContext.idl
   58706         - WorkerLocation.idl
   58707         - WorkerNavigator.idl
   58708 
   58709         * WebCore.xcodeproj/project.pbxproj: Removed resources.
   58710 
   58711 2009-01-04  Simon Fraser  <simon.fraser (a] apple.com>
   58712 
   58713         Reviewed by Darin Adler
   58714 
   58715         https://bugs.webkit.org/show_bug.cgi?id=23090
   58716 
   58717         If an object gets a Layout hint, and the style change will result in
   58718         the creation of a RenderLayer, then we need to repaint the old position
   58719         of the object. This was done for transform, but we have to test opacity too.
   58720 
   58721         Test: fast/repaint/create-layer-repaint.html
   58722 
   58723         * rendering/RenderObject.cpp:
   58724         (WebCore::RenderObject::styleWillChange):
   58725 
   58726 2009-01-04  Darin Adler  <darin (a] apple.com>
   58727 
   58728         Reviewed by Dan Bernstein.
   58729 
   58730         Bug 23103: Safari's auto-fill no longer works for <select> elements
   58731         https://bugs.webkit.org/show_bug.cgi?id=23103
   58732         rdar://problem/6472061
   58733 
   58734         * bindings/objc/DOMHTML.mm:
   58735         (-[DOMHTMLSelectElement _activateItemAtIndex:]): Implemented this.
   58736 
   58737 2009-01-04  Adam Treat  <adam.treat (a] torchmobile.com>
   58738 
   58739         Reviewed by George Staikos.
   58740 
   58741         Add fixedLayoutSize feature to ScrollView to allow for controlling the
   58742         layout beyond the constraint of the current viewports dynamic size
   58743 
   58744         * css/MediaQueryEvaluator.cpp:
   58745         (WebCore::heightMediaFeatureEval):
   58746         (WebCore::widthMediaFeatureEval):
   58747         * dom/Element.cpp:
   58748         (WebCore::Element::clientWidth):
   58749         (WebCore::Element::clientHeight):
   58750         * loader/FrameLoaderClient.cpp:
   58751         (WebCore::FrameLoaderClient::transitionToCommittedForNewPage):
   58752         * loader/FrameLoaderClient.h:
   58753         * page/FrameView.cpp:
   58754         (WebCore::FrameView::layout):
   58755         * platform/ScrollView.cpp:
   58756         (WebCore::ScrollView::ScrollView):
   58757         (WebCore::ScrollView::layoutWidth):
   58758         (WebCore::ScrollView::layoutHeight):
   58759         (WebCore::ScrollView::fixedLayoutSize):
   58760         (WebCore::ScrollView::setFixedLayoutSize):
   58761         (WebCore::ScrollView::useFixedLayout):
   58762         (WebCore::ScrollView::setUseFixedLayout):
   58763         * platform/ScrollView.h:
   58764         * rendering/RenderView.cpp:
   58765         (WebCore::RenderView::viewHeight):
   58766         (WebCore::RenderView::viewWidth):
   58767         * rendering/RenderView.h:
   58768 
   58769 2009-01-03  Rob Buis  <rwlbuis (a] gmail.com>
   58770 
   58771         Reviewed by Darin.
   58772 
   58773         https://bugs.webkit.org/show_bug.cgi?id=22660
   58774         SVG elements that are moved are nor fully invalidated/earsed
   58775 
   58776         Mark the SVG root as needing a layout when its position changes.
   58777 
   58778         Tests: svg/custom/circle-move-invalidation.svg
   58779 
   58780         * rendering/RenderSVGRoot.cpp:
   58781         (WebCore::RenderSVGRoot::position):
   58782         * rendering/RenderSVGRoot.h:
   58783 
   58784 2009-01-03  Steve Falkenburg  <sfalken (a] apple.com>
   58785 
   58786         Build fix.
   58787 
   58788         * loader/FrameLoader.h:
   58789 
   58790 2009-01-02  Cary Clark  <caryclark (a] google.com>
   58791 
   58792         Reviewed and landed by Darin Adler.
   58793 
   58794         Bug 22963: write icons before reading them
   58795         https://bugs.webkit.org/show_bug.cgi?id=22963
   58796 
   58797         Reverse the order in the icon database main thread loop to
   58798         write the pending icons to the database before trying
   58799         to read any requested icons. This ensures that a requested icon
   58800         has the correct data when read.
   58801 
   58802         * loader/icon/IconDatabase.cpp:
   58803         (WebCore::IconDatabase::syncThreadMainLoop):
   58804 
   58805 2009-01-02  Darin Adler  <darin (a] apple.com>
   58806 
   58807         * loader/FrameLoader.cpp:
   58808         (WebCore::FrameLoader::loadItem): One small thing I forgot in my last check-in.
   58809         This cuts down on the number of hash table operations during loading.
   58810 
   58811 2009-01-02  Dmitry Titov  <dimich (a] chromium.org>
   58812 
   58813         Reviewed and landed by Darin Adler.
   58814 
   58815         https://bugs.webkit.org/show_bug.cgi?id=23025
   58816         DOMTimer lifetime cleanup: timeoutMap methods on Document now do not delete the timer.
   58817         Instead, all 3 places that delete timers do it directly calling 'delete' and then timer's dtor removes the ID from the timeoutMap.
   58818         Note that in case the context is destroyed and timers are deleted at once, the check in ~DOMTimer() prevents
   58819         unnecessary HashMap remove in case the Document is being destroyed.
   58820 
   58821         * bindings/js/DOMTimer.cpp:
   58822         (WebCore::DOMTimer::~DOMTimer): removes the id from the timeoutMap.
   58823         (WebCore::DOMTimer::install):
   58824         (WebCore::DOMTimer::removeById): simply uses 'delete this'.
   58825         (WebCore::DOMTimer::fired): same.
   58826         (WebCore::DOMTimer::contextDestroyed): same.
   58827         * dom/Document.cpp:
   58828         (WebCore::Document::removeTimeout): now it only removes the id from the map, does not delete the timer.
   58829 
   58830 2009-01-02  Darin Adler  <darin (a] apple.com>
   58831 
   58832         Reviewed by Sam Weinig.
   58833 
   58834         Bug 23072: REGRESSION (r37371): In the Dictionary application, scroll bar appears
   58835         inside its web view when resizing its window
   58836         https://bugs.webkit.org/show_bug.cgi?id=23072
   58837         rdar://problem/6368028
   58838 
   58839         The first attempt at fixing this did not work.
   58840         This time I was able to reproduce the bug and test the fix.
   58841 
   58842         Bug 11212: REGRESSION: Activity window doesn't always list all files until refresh
   58843         https://bugs.webkit.org/show_bug.cgi?id=11212
   58844         rdar://problem/4959702
   58845 
   58846         I had to fix this second bug because otherwise the WebKit code to trigger the first
   58847         fix didn't run.
   58848 
   58849         Also fixes memory use that kept growing as we maintained a set of all URLs loaded in
   58850         a particular frame. Bad idea! It's bad enough that we do it for each document, but
   58851         the old version kept the set around forever as you moved from one document to the next.
   58852 
   58853         * html/HTMLFrameElementBase.cpp:
   58854         (WebCore::HTMLFrameElementBase::parseMappedAttribute): Change this so that we allow
   58855         turning off scrolling when the quirk is enabled. We just don't allow turning it on.
   58856         This fixes one of the two problems with the initial patch; the other fix is in WebKit.
   58857 
   58858         * loader/DocumentLoader.h: Moved didTellClientAboutLoad and haveToldClientAboutLoad
   58859         here from FrameLoader. The old way meant that a given frame would forever remember
   58860         the URL of any resources loaded in that frame and never send any "loaded from cache"
   58861         client calls about those URLs.
   58862 
   58863         * loader/FrameLoader.cpp:
   58864         (WebCore::FrameLoader::loadResourceSynchronously): Removed call to didTellCientAboutLoad.
   58865         This is now handled by dispatchWillSendRequest, which is safer since that's the actual
   58866         function that tells the client about the load.
   58867         (WebCore::FrameLoader::loadedResourceFromMemoryCache): Changed calls to
   58868         haveToldClientAboutLoad and didTellClientAboutLoad to call the document loader.
   58869         Also removed the call in the case where we don't load from the cache, since
   58870         dispatchWillSendRequest now takes care of it.
   58871         (WebCore::FrameLoader::dispatchWillSendRequest): Put calls to didTellClientAboutLoad
   58872         here. Call it both on the URL we pass in and the URL the client returns; we won't
   58873         tell the client about either if it's loaded from the memory cache.
   58874 
   58875         * loader/FrameLoader.h: Removed didTellClientAboutLoad, haveToldClientAboutLoad, and
   58876         m_urlsClientKnowsAbout.
   58877 
   58878         * loader/SubresourceLoader.cpp: Removed unneeded load function that called
   58879         didTellClientAboutLoad. That's now taken care of in dispatchWillSendRequest.
   58880 
   58881         * loader/SubresourceLoader.h: Removed load function. Also made all members private
   58882         except for create and clearClient.
   58883 
   58884 2009-01-02  Simon Fraser  <simon.fraser (a] apple.com>
   58885 
   58886         Reviewed by Darin Adler
   58887 
   58888         https://bugs.webkit.org/show_bug.cgi?id=23082
   58889 
   58890         Fix GIF animation by ensuring that the signature of
   58891         startAnimation() in the base class matches the method in BitmapImage.
   58892 
   58893         Test: fast/backgrounds/animated-gif-as-background.html
   58894 
   58895         * platform/graphics/Image.h:
   58896         (WebCore::Image::startAnimation):
   58897 
   58898 2009-01-02  David Smith  <catfish.man (a] gmail.com>
   58899 
   58900         Reviewed by Darin Adler.
   58901 
   58902         https://bugs.webkit.org/show_bug.cgi?id=22699
   58903         Enable NodeList caching for getElementsByTagName
   58904 
   58905         test: fast/dom/getelementsbytagnamens-mixed-namespaces.html
   58906 
   58907         * dom/Document.cpp:
   58908         (WebCore::FormElementKeyHash::hash): Use WTF::stringHashingStartValue
   58909         * dom/Node.cpp:
   58910         (WebCore::Node::getElementsByTagNameNS): Ensure rare data and add a node list cache
   58911         (WebCore::NodeListsNodeData::invalidateCaches): Invalidate the tag name node list cache as well as the others
   58912         (WebCore::NodeListsNodeData::isEmpty): Check the tag name node list cache as well as the others
   58913         * dom/NodeRareData.h: Add m_tagNodeListCaches
   58914         * dom/QualifiedName.cpp:
   58915         * dom/QualifiedName.h: Move QNameHash to the header, make it work on QualifiedNames, and rename to QualifiedNameHash
   58916         * dom/StyledElement.cpp:
   58917         (WebCore::MappedAttributeHash::hash): Use WTF::stringHashingStartValue
   58918         * dom/TagNodeList.cpp:
   58919         (WebCore::TagNodeList::TagNodeList): Add a NodeList cache argument
   58920         * dom/TagNodeList.h:
   58921         (WebCore::TagNodeList::create): Add a NodeList cache argument
   58922         * platform/text/StringHash.h:
   58923         (WebCore::CaseFoldingHash::hash): Use WTF::stringHashingStartValue
   58924         * platform/text/TextEncodingRegistry.cpp:
   58925         (WebCore::TextEncodingNameHash::hash): Use WTF::stringHashingStartValue
   58926 
   58927 2009-01-02  Eric Carlson  <eric.carlson (a] apple.com>
   58928 
   58929         Reviewed by Darin Adler
   58930 
   58931         Fix for https://bugs.webkit.org/show_bug.cgi?id=23066 & <rdar://problem/6028417>
   58932         Full Page Zoom: a <video> element that doesn't include width/height attribute does not scale
   58933 
   58934         * rendering/RenderVideo.cpp:
   58935         (WebCore::RenderVideo::calcReplacedWidth): Multiply aspect ratio width by style()->effectiveZoom()
   58936         (WebCore::RenderVideo::calcReplacedHeight): Multiply aspect ratio height by style()->effectiveZoom()
   58937 
   58938 2009-01-02  David Kilzer  <ddkilzer (a] apple.com>
   58939 
   58940         BUILD FIX (r39552): Add mediaControls.css to other build files
   58941 
   58942         * GNUmakefile.am:
   58943         * WebCore.pro:
   58944         * WebCore.vcproj/WebCore.vcproj:
   58945 
   58946 2009-01-02  David Kilzer  <ddkilzer (a] apple.com>
   58947 
   58948         Try to fix Wx build after r39427
   58949 
   58950         * platform/graphics/wx/PathWx.cpp:
   58951         (WebCore::Path::strokeBoundingRect): Added stub.
   58952 
   58953 2009-01-02  Alexey Proskuryakov  <ap (a] webkit.org>
   58954 
   58955         Reviewed by Adele Peterson.
   58956 
   58957         <rdar://problem/6471356> Failed assertion on quit
   58958 
   58959         * platform/ThreadGlobalData.cpp: (WebCore::ThreadGlobalData::~ThreadGlobalData):
   58960         Only assert that empty string are all removed on secondary threads.
   58961 
   58962 2009-01-02  David Kilzer  <ddkilzer (a] apple.com>
   58963 
   58964         Bug 23081: These files are no longer part of the KDE libraries
   58965 
   58966         <https://bugs.webkit.org/show_bug.cgi?id=23081>
   58967 
   58968         Reviewed by Darin Adler.
   58969 
   58970         Removed "This file is part of the KDE libraries" comment from
   58971         source files.  Added or updated Apple copyrights as well.
   58972 
   58973         No tests since there are only changes to comments.
   58974 
   58975         * bridge/testbindings.cpp:
   58976         * html/HTMLEntityNames.gperf:
   58977         * loader/Cache.h:
   58978         * loader/CachedCSSStyleSheet.h:
   58979         * loader/CachedResourceClient.h:
   58980         * loader/CachedResourceClientWalker.cpp:
   58981         * loader/CachedResourceClientWalker.h:
   58982         * loader/CachedScript.cpp:
   58983         * loader/CachedScript.h:
   58984         * loader/CachedXBLDocument.cpp:
   58985         * loader/CachedXBLDocument.h:
   58986         * loader/CachedXSLStyleSheet.cpp:
   58987         * loader/CachedXSLStyleSheet.h:
   58988         * rendering/GapRects.h:
   58989         * xml/XMLSerializer.cpp:
   58990 
   58991 2009-01-02  Simon Fraser  <simon.fraser (a] apple.com>
   58992 
   58993         Reviewed by Darin Adler
   58994 
   58995         Use an OwnPtr for m_chromeClient.
   58996 
   58997         * svg/graphics/SVGImage.cpp:
   58998         (WebCore::SVGImage::~SVGImage):
   58999         (WebCore::SVGImage::dataChanged):
   59000         * svg/graphics/SVGImage.h:
   59001 
   59002 2009-01-02  Simon Fraser  <simon.fraser (a] apple.com>
   59003 
   59004         Reviewed by Darin Adler
   59005 
   59006         https://bugs.webkit.org/show_bug.cgi?id=22981
   59007 
   59008         Repaints inside of an SVGImage were thrown on the floor,
   59009         which broke incremental painting due to loading, or SVG animation.
   59010         Fix this by assigning the SVGImage a ChromeClient subclass that passes
   59011         along repaints via a new method on ImageObserver, which also takes
   59012         a rect parameter for the changed rect, allowing incremental repaints.
   59013         Fix RenderImage::imageChanged to take advantage of this changedRect to
   59014         only repaint the changed parts of the image.
   59015 
   59016         This also enables incremental painting for canvas-as-image, so
   59017         add tests for that too.
   59018 
   59019         Tests: fast/backgrounds/animated-svg-as-background.html
   59020                fast/backgrounds/animated-svg-as-mask.html
   59021                fast/canvas/canvas-as-image-incremental-repaint.html
   59022                fast/canvas/canvas-as-image.html
   59023                fast/images/animated-svg-as-image.html
   59024 
   59025         * css/CSSCanvasValue.cpp:
   59026         (WebCore::CSSCanvasValue::canvasChanged):
   59027         * loader/CachedImage.cpp:
   59028         (WebCore::CachedImage::notifyObservers):
   59029         (WebCore::CachedImage::data):
   59030         (WebCore::CachedImage::changedInRect):
   59031         * loader/CachedImage.h:
   59032         * loader/CachedResourceClient.h:
   59033         (WebCore::CachedResourceClient::imageChanged):
   59034         * platform/graphics/ImageObserver.h:
   59035         * rendering/RenderBox.cpp:
   59036         (WebCore::RenderBox::imageChanged):
   59037         * rendering/RenderBox.h:
   59038         * rendering/RenderImage.cpp:
   59039         (WebCore::RenderImage::imageChanged):
   59040         * rendering/RenderImage.h:
   59041         * rendering/RenderListMarker.cpp:
   59042         (WebCore::RenderListMarker::imageChanged):
   59043         * rendering/RenderListMarker.h:
   59044         * rendering/RenderObject.cpp:
   59045         (WebCore::RenderObject::imageChanged):
   59046         * rendering/RenderObject.h:
   59047         (WebCore::RenderObject::imageChanged):
   59048         * rendering/RenderSVGImage.cpp:
   59049         (WebCore::RenderSVGImage::imageChanged):
   59050         * rendering/RenderSVGImage.h:
   59051         * rendering/RenderScrollbarPart.cpp:
   59052         (WebCore::RenderScrollbarPart::imageChanged):
   59053         * rendering/RenderScrollbarPart.h:
   59054         * rendering/RenderTableCol.cpp:
   59055         (WebCore::RenderTableCol::imageChanged):
   59056         * rendering/RenderTableCol.h:
   59057         * rendering/RenderTableRow.cpp:
   59058         (WebCore::RenderTableRow::imageChanged):
   59059         * rendering/RenderTableRow.h:
   59060         * rendering/RenderTableSection.cpp:
   59061         (WebCore::RenderTableSection::imageChanged):
   59062         * rendering/RenderTableSection.h:
   59063         * svg/graphics/SVGImage.cpp:
   59064         (WebCore::SVGImageChromeClient::SVGImageChromeClient):
   59065         (WebCore::SVGImageChromeClient::image):
   59066         (WebCore::SVGImageChromeClient::chromeDestroyed):
   59067         (WebCore::SVGImageChromeClient::repaint):
   59068         (WebCore::SVGImage::SVGImage):
   59069         (WebCore::SVGImage::~SVGImage):
   59070         (WebCore::SVGImage::dataChanged):
   59071         * svg/graphics/SVGImage.h:
   59072 
   59073 2009-01-02  Eric Carlson  <eric.carlson (a] apple.com>
   59074 
   59075         Reviewed by Darin Adler
   59076 
   59077         https://bugs.webkit.org/show_bug.cgi?id=23043
   59078 
   59079         Pull media controls css out of html4.css into separate file. Don't generate
   59080         wml, svg, or media css globals unless the feature is enabled.
   59081 
   59082         * DerivedSources.make:
   59083             Don't include css for unused features.
   59084 
   59085         * WebCore.xcodeproj/project.pbxproj:
   59086             include mediaControls.css
   59087 
   59088         * css/CSSStyleSelector.cpp:
   59089         (WebCore::CSSStyleSelector::styleForElement):
   59090             don't parse or add media css unless VIDEO feature is enabled and the target
   59091             element is video or audio
   59092 
   59093         * css/html4.css:
   59094             moved media controls css to mediaControls.css
   59095 
   59096         * css/mediaControls.css: Added.
   59097 
   59098 2009-01-02  Alexey Proskuryakov  <ap (a] webkit.org>
   59099 
   59100         Reviewed by Darin Adler.
   59101 
   59102         https://bugs.webkit.org/show_bug.cgi?id=23022
   59103         Fix multiple issues with appcache online whitelist handling
   59104 
   59105         Test: http/tests/appcache/online-whitelist.html
   59106 
   59107         * loader/appcache/ApplicationCache.cpp:
   59108         (WebCore::ApplicationCache::isURLInOnlineWhitelist): Test whitelist entries as prefixes,
   59109         making it possible to use them for CGI invocation (as required by HTML5).
   59110 
   59111         * loader/DocumentLoader.cpp: (WebCore::DocumentLoader::shouldLoadResourceFromApplicationCache):
   59112         Re-ordered checks, so that resources that are cached, but are also listed in online whitelist
   59113         are loaded from the cache. This is required by HTML5, although Firefox doesn't match.
   59114 
   59115         * loader/appcache/ManifestParser.cpp:
   59116         (WebCore::parseManifest):
   59117         * loader/appcache/ManifestParser.h:
   59118         * loader/appcache/ApplicationCache.h:
   59119         (WebCore::ApplicationCache::onlineWhitelist):
   59120         * loader/appcache/ApplicationCacheStorage.cpp:
   59121         (WebCore::ApplicationCacheStorage::store):
   59122         (WebCore::ApplicationCacheStorage::loadCache):
   59123         Changed online whitelist to be a vector of URLs, which is better suited for the new algorithm.
   59124 
   59125 2009-01-02  Darin Adler  <darin (a] apple.com>
   59126 
   59127         Reviewed by Oliver Hunt.
   59128 
   59129         Bug 23072: REGRESSION (r37371): In the Dictionary application, scroll bar appears inside its web view when resizing its window
   59130         https://bugs.webkit.org/show_bug.cgi?id=23072
   59131         rdar://problem/6368028
   59132 
   59133         * WebCore.base.exp: Updated.
   59134         * WebCore.xcodeproj/project.pbxproj: Mark HTMLHeadElement.h Private so it can be used in WebKit.
   59135 
   59136         * dom/Document.cpp:
   59137         (WebCore::Document::Document): Initialize m_frameElementsShouldIgnoreScrolling to false.
   59138         * dom/Document.h: Added setFrameElementsShouldIgnoreScrolling, frameElementsShouldIgnoreScrolling,
   59139         and m_frameElementsShouldIgnoreScrolling.
   59140 
   59141         * html/HTMLFrameElementBase.cpp:
   59142         (WebCore::HTMLFrameElementBase::parseMappedAttribute): Don't allow changes to the scrolling attribute
   59143         to affect the scrolling mode if frameElementsShouldIgnoreScrolling() returns true. This is only
   59144         triggered on Mac OS X when running the Dictionary application.
   59145 
   59146 2009-01-02  Alexey Proskuryakov  <ap (a] webkit.org>
   59147 
   59148         Reviewed by Darin Adler.
   59149 
   59150         https://bugs.webkit.org/show_bug.cgi?id=23036
   59151         <rdar://problem/6451666> Implement AppCache fallback entries (23036)
   59152 
   59153         Test: http/tests/appcache/fallback.html
   59154 
   59155         * loader/FrameLoader.cpp: (WebCore::FrameLoader::loadResourceSynchronously): Use fallback
   59156         entries if normal loading fails.
   59157 
   59158         * loader/DocumentLoader.cpp:
   59159         (WebCore::DocumentLoader::shouldLoadResourceFromApplicationCache): Do not prevent normal
   59160         loading for resources that match fallback namespaces - they are only loaded from the cache
   59161         if that fails.
   59162         (WebCore::DocumentLoader::getApplicationCacheFallbackResource): Get a fallback entry for
   59163         resource from associated appcache, or from passed in one, if any.
   59164         (WebCore::DocumentLoader::scheduleLoadFallbackResourceFromApplicationCache): If a fallback
   59165         entry for resourse exists, add it to pending substitute loads.
   59166 
   59167         * loader/DocumentLoader.h: Added new functions for loading fallback data for resources.
   59168 
   59169         * loader/ResourceLoader.h:
   59170         * loader/ResourceLoader.cpp:
   59171         (WebCore::ResourceLoader::scheduleLoadFallbackResourceFromApplicationCache): This function
   59172         is called when normal loading fails (which includes network failures, 4xx and 5xx responses,
   59173         and cross-origin redirects) to load appcache fallback data instead. It can use either the
   59174         cache that is associated with the browsing context, or a custom one if association is yet
   59175         to take place.
   59176         (WebCore::ResourceLoader::willSendRequest): Try using fallback data.
   59177         (WebCore::ResourceLoader::didReceiveResponse): Ditto.
   59178         (WebCore::ResourceLoader::didFail): Ditto.
   59179 
   59180         * loader/MainResourceLoader.cpp:
   59181         (WebCore::MainResourceLoader::didReceiveResponse): Locate an appropriate cache and load
   59182         fallback data from it if loading fails. The browsing context may still be associated with
   59183         its previous document here, so the cache to load from must be passed explicitly.
   59184         (WebCore::MainResourceLoader::didFail): Ditto.
   59185         (WebCore::MainResourceLoader::load): Remove unnecessary check and FIXME.
   59186 
   59187         * loader/appcache/ApplicationCache.cpp:
   59188         (WebCore::ApplicationCache::setFallbackURLs):
   59189         (WebCore::ApplicationCache::urlMatchesFallbackNamespace):
   59190         * loader/appcache/ApplicationCache.h:
   59191         (WebCore::ApplicationCache::fallbackURLs):
   59192         * loader/appcache/ApplicationCacheStorage.cpp:
   59193         (WebCore::ApplicationCacheStorage::cacheGroupForURL):
   59194         (WebCore::ApplicationCacheStorage::fallbackCacheGroupForURL):
   59195         (WebCore::ApplicationCacheStorage::store):
   59196         (WebCore::ApplicationCacheStorage::loadCache):
   59197         (WebCore::ApplicationCacheStorage::storeCopyOfCache):
   59198         * loader/appcache/ApplicationCacheStorage.h:
   59199         * loader/appcache/ApplicationCacheGroup.cpp:
   59200         (WebCore::ApplicationCacheGroup::fallbackCacheForMainRequest):
   59201         (WebCore::ApplicationCacheGroup::didFinishLoadingManifest):
   59202         * loader/appcache/ApplicationCacheGroup.h:
   59203         Implement fallback map saving and loading, pass it to the cache.
   59204 
   59205         * loader/appcache/ManifestParser.h: Use a correct data structure for fallback map - keys
   59206         are matched by prefix, so HAshMap cannot be used.
   59207 
   59208         * loader/appcache/ManifestParser.cpp: (WebCore::parseManifest): Fix bugs in fallback section
   59209         parsing.
   59210 
   59211 2009-01-01  Oliver Hunt  <oliver (a] apple.com>
   59212 
   59213         Reviewed by Dan Bernstein.
   59214 
   59215         <rdar://problem/6450530> WebCore::FontPlatformData should not leak
   59216 
   59217         Whoops, previous patch should also have fixed the font referencing in
   59218         the constructor.
   59219 
   59220         * WebCore.xcodeproj/project.pbxproj:
   59221         * platform/graphics/mac/FontPlatformDataMac.mm:
   59222         (WebCore::FontPlatformData::FontPlatformData):
   59223 
   59224 2009-01-01  Oliver Hunt  <oliver (a] apple.com>
   59225 
   59226         Reviewed by Dan Bernstein.
   59227 
   59228         <rdar://problem/6450530> WebCore::FontPlatformData should not leak
   59229 
   59230         Make sure we only adopt the new font, rather than re-referencing (and so leaking).
   59231 
   59232         * platform/graphics/mac/FontPlatformDataMac.mm:
   59233         (WebCore::FontPlatformData::setFont):
   59234 
   59235 2009-01-01  Darin Adler  <darin (a] apple.com>
   59236 
   59237         Reviewed by Dan Bernstein.
   59238 
   59239         Bug 23071: REGRESSION (r39536): New test failures after committing patch in bug 23051 (ICU search)
   59240         https://bugs.webkit.org/show_bug.cgi?id=23071
   59241 
   59242         Also fix some things that Dan suggested during review of the ICU search patch that I forgot
   59243         the first time around.
   59244 
   59245         * editing/TextIterator.cpp: Use ICU search on all platforms that use ICU, now that
   59246         we've double checked it works everywhere, removing HAVE_ICU_SEARCH entirely.
   59247         Removed unused m_atBreak data member from the non-ICU code path.
   59248         (WebCore::TextIterator::TextIterator): Move null check up.
   59249         (WebCore::TextIterator::handleTextBox): Fix mistake that made the iterator include
   59250         collapsed whitespace. This was left over from an earlier version of the patch.
   59251         (WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator):
   59252         Move null check up.
   59253 
   59254 2009-01-01  Simon Fraser  <simon.fraser (a] apple.com>
   59255 
   59256         Reviewed by Darin Adler, Oliver Hunt
   59257 
   59258         https://bugs.webkit.org/show_bug.cgi?id=23065
   59259 
   59260         Enable incremental painting of canvas. This turns incremental painting
   59261         back on, and fixes issues with stroke width and miters, calling willDraw()
   59262         for strokeText and fillText, and taking shadows into account.
   59263 
   59264         Test: fast/canvas/canvas-incremental-repaint.html
   59265 
   59266         * html/CanvasRenderingContext2D.cpp:
   59267         (WebCore::CanvasStrokeStyleApplier::CanvasStrokeStyleApplier):
   59268         (WebCore::CanvasStrokeStyleApplier::strokeStyle):
   59269         (WebCore::CanvasRenderingContext2D::stroke):
   59270         (WebCore::CanvasRenderingContext2D::willDraw):
   59271         (WebCore::CanvasRenderingContext2D::putImageData):
   59272         (WebCore::CanvasRenderingContext2D::drawTextInternal):
   59273         * html/CanvasRenderingContext2D.h:
   59274         * html/HTMLCanvasElement.cpp:
   59275         (WebCore::HTMLCanvasElement::willDraw):
   59276         * platform/graphics/FloatRect.h:
   59277         (WebCore::mapRect): new method to map a rect contained
   59278         in one rect to an equivalent rect inside another rect.
   59279 
   59280 2008-12-29  Konstantin Kfer  <kkaefer (a] gmail.com>
   59281 
   59282         Reviewed by Tim Hatcher.
   59283 
   59284         Fix for https://bugs.webkit.org/show_bug.cgi?id=17229
   59285         <rdar://problem/5732829> Inspector should show properties of all JS objects in Console
   59286 
   59287         Prints objects not as plain text but makes them expandable so that
   59288         they can be inspected.
   59289 
   59290         * inspector/front-end/Console.js:
   59291         (): added a parameter "inline" to the WebInspector.Console._format function which indicates
   59292             whether the object is printed in the context of another string (with console.log()) or
   59293             as sole element.
   59294         (.): objects and DOM nodes are now printed in an expandable form when they are printed alone
   59295             (i.e. not in the context of a console.log() string) so that they can be inspected.
   59296         * inspector/front-end/PropertiesSection.js:
   59297         (WebInspector.PropertiesSection.prototype.set title): Allow DOM Nodes as title instead of strings
   59298             in that case, the Node is inserted into the title instead of the string value of the passed
   59299             object. This is used for displaying linkified titles, for example when inspecting DOM nodes,
   59300             the syntax highlighted HTML representation is shown instead of the plain source code.
   59301         * inspector/front-end/inspector.css: correct the offsetParent for the expandable object inspector.
   59302 
   59303 2009-01-01  Darin Adler  <darin (a] apple.com>
   59304 
   59305         Reviewed by Dan Bernstein.
   59306 
   59307         Bug 23051: web page searching should use ICU's search so it can ignore diacritical differences
   59308         https://bugs.webkit.org/show_bug.cgi?id=23051
   59309         rdar://problem/3574497
   59310 
   59311         Test: editing/execCommand/findString-diacriticals.html
   59312 
   59313         * editing/TextIterator.cpp: Changed the CircularSearchBuffer class to have a new
   59314         name, since it doesn't always use a circular buffer any more. Changed the interface
   59315         so it can work well in the new chunky comparison mode for ICU search, and also
   59316         added private data members for both the ICU-search and non-ICU-search code paths.
   59317         (WebCore::TextIterator::TextIterator): Use the versions of the Range functions
   59318         that don't take an exception code.
   59319         (WebCore::TextIterator::handleTextBox): Added a special case to handle the position
   59320         of a collapsed-away space better. This is not needed for search mechanism, but was
   59321         helpful in an earlier version of this patch, and is still an improvement.
   59322         (WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator): Use the
   59323         versions of the Range functions that don't take an exception code.
   59324         (WebCore::CharacterIterator::range): Ditto.
   59325         (WebCore::characterSubrange): Added. Helper function used in both places below where
   59326         we want to convert a range and character offsets into a subrange.
   59327         (WebCore::WordAwareIterator::advance): Use the versions of the Range functions that
   59328         don't take an exception code.
   59329         (WebCore::createSearcher): Added.
   59330         (WebCore::searcher): Added.
   59331         (WebCore::lockSearcher): Added.
   59332         (WebCore::unlockSearcher): Added.
   59333         (WebCore::SearchBuffer::SearchBuffer): Added.
   59334         (WebCore::SearchBuffer::~SearchBuffer): Added.
   59335         (WebCore::SearchBuffer::append): Added.
   59336         (WebCore::SearchBuffer::atBreak): Added.
   59337         (WebCore::SearchBuffer::reachedBreak): Added.
   59338         (WebCore::SearchBuffer::search): Added.
   59339         (WebCore::SearchBuffer::length): Added.
   59340         (WebCore::TextIterator::subrange): Changed to call the characterSubrange
   59341         function above.
   59342         (WebCore::TextIterator::rangeFromLocationAndLength): Use the versions of the
   59343         Range functions that don't take an exception code. Also tweak some other details
   59344         of the code.
   59345         (WebCore::isAllCollapsibleWhitespace): Added.
   59346         (WebCore::collapsedToBoundary): Added.
   59347         (WebCore::findPlainText): Rewrote to use new interface and streamline the
   59348         logic a bit.
   59349 
   59350         Add the relevant files in the icu directory. As icu/README says, the "icu"
   59351         directory is really just for Mac OS X, where we have the ICU library but not
   59352         the headers installed. It should be moved inside platform/mac at some point
   59353         to make this more clear (and the copy in JavaScriptCore should be moved
   59354         somewhere similar for the same reason).
   59355 
   59356         * icu/unicode/ucoleitr.h: Added.
   59357         * icu/unicode/usearch.h: Added.
   59358 
   59359 2009-01-01  Oliver Hunt  <oliver (a] apple.com>
   59360 
   59361         Reviewed by Cameron Zwarich.
   59362 
   59363         CrashTracer: [REGRESSION] 1090 crashes in Safari at com.apple.JavaScriptCore: KJS::JSGlobalObject::stopTimeoutCheck + 0
   59364         <rdar://problem/5821130>
   59365 
   59366         This was caused by a plugin instance calling into JS code that removed the plugin
   59367         object.  This fix is to cache the global object locally in a ProtectedPtr so we don't
   59368         need to rely on the continued existence of the plugin instance.
   59369 
   59370         * bridge/NP_jsobject.cpp:
   59371         (_NPN_InvokeDefault):
   59372         (_NPN_Invoke):
   59373         (_NPN_Evaluate):
   59374         (_NPN_Construct):
   59375 
   59376 2008-12-31  Laszlo Gombos  <laszlo.1.gombos (a] nokia.com>
   59377 
   59378         Reviewed by Holger Freyther.
   59379 
   59380         Fixes: https://bugs.webkit.org/show_bug.cgi?id=22964
   59381 
   59382         MinGW build failure.
   59383 
   59384         * platform/graphics/qt/SimpleFontDataQt.cpp:
   59385         (WebCore::SimpleFontData::containsCharacters):
   59386 
   59387 2008-12-31  Alexander V. Butenko  <alex (a] digiqube.com>
   59388 
   59389         Reviewed by Holger Freyther.
   59390 
   59391         https://bugs.webkit.org/show_bug.cgi?id=22750
   59392         [gtk] webkit up to r39121 crash on image urls like
   59393         http:///sitename.com
   59394 
   59395         * platform/network/soup/ResourceHandleSoup.cpp:
   59396         (WebCore::ResourceHandle::start):
   59397 
   59398 2008-12-31  Hiroyuki Ikezoe  <poincare (a] ikezoe.net>
   59399 
   59400         Reviewed by Holger Freyther.
   59401 
   59402         https://bugs.webkit.org/show_bug.cgi?id=18310
   59403 
   59404         * platform/graphics/gtk/SimpleFontDataPango.cpp:
   59405         (WebCore::SimpleFontData::determinePitch): Do not invoke
   59406         isFixedPitch() when the font is a custom font.
   59407 
   59408 2008-12-31  Oliver Hunt  <oliver (a] apple.com>
   59409 
   59410         Reviewed by Cameron Zwarich.
   59411 
   59412         More work on Bug 3781: Animation via canvas could be faster
   59413         <https://bugs.webkit.org/show_bug.cgi?id=3781>
   59414 
   59415         Make use of the fast path parsing of color strings that Color
   59416         uses.  This improves performance of '#rgb', '#rrggbb', etc and
   59417         named (eg. 'green') colors.
   59418 
   59419         Improves frame rate of test by around 40%
   59420 
   59421         * html/CanvasStyle.cpp:
   59422         (WebCore::CanvasStyle::applyStrokeColor):
   59423         (WebCore::CanvasStyle::applyFillColor):
   59424 
   59425 2008-12-30  Simon Fraser  <simon.fraser (a] apple.com>
   59426 
   59427         Reviewed by Darin Adler
   59428 
   59429         https://bugs.webkit.org/show_bug.cgi?id=23042
   59430 
   59431         Rather than doing a repaint() inside of computeAbsoluteRepaintRect()
   59432         when there is a reflection, compute the location of the rect inside
   59433         the reflection and take the union of the unreflected and reflected rects.
   59434 
   59435         Test: fast/repaint/reflection-redraw.html
   59436 
   59437         * rendering/RenderBox.cpp:
   59438         (WebCore::RenderBox::computeAbsoluteRepaintRect):
   59439         * rendering/RenderObject.cpp:
   59440         (WebCore::RenderObject::reflectedRect):
   59441         * rendering/RenderObject.h:
   59442 
   59443 2008-12-30  Dan Bernstein  <mitz (a] apple.com>
   59444 
   59445         Reviewed by Adele Peterson.
   59446 
   59447         - fix <rdar://problem/6469944> REGRESSION(3.2.1-ToT): Repro crash in WebCore::HTMLInputElement::updatePlaceholderVisibility opening http://billshrink.com
   59448 
   59449         Test: fast/forms/placeholder-non-textfield.html
   59450 
   59451         * html/HTMLInputElement.cpp:
   59452         (WebCore::HTMLInputElement::parseMappedAttribute): Only call
   59453         updatePlaceholderVisibility() when the placeholder attribute changes if
   59454         the element is a text field.
   59455 
   59456 2008-12-30  Oliver Hunt  <oliver (a] apple.com>
   59457 
   59458         Reviewed by Antti Koivisto.
   59459 
   59460         First step of Bug 3781: Animation via canvas could be faster
   59461 
   59462         Amortise the cost of calling repaint by coalescing repaint rects
   59463         while the canvas is drawn to.  In a later step we'll stop calling
   59464         repaint() directly, and instead have all dirty canvases repaint
   59465         at the end of JS execution.
   59466 
   59467         * html/HTMLCanvasElement.cpp:
   59468         (WebCore::HTMLCanvasElement::willDraw):
   59469         (WebCore::HTMLCanvasElement::paint):
   59470         * html/HTMLCanvasElement.h:
   59471 
   59472 2008-12-30  Cameron Zwarich  <cwzwarich (a] uwaterloo.ca>
   59473 
   59474         Reviewed by Antti Koivisto.
   59475 
   59476         Bug 22931: Using the inspector with purgeable resources leads to assertion failures
   59477         <https://bugs.webkit.org/show_bug.cgi?id=22931>
   59478 
   59479         Change InspectorResource::sourceString() so that it doesn't attempt to
   59480         unsafely get the data of a purgeable CachedResource.
   59481 
   59482         * inspector/InspectorController.cpp:
   59483         (WebCore::InspectorResource::sourceString): Attempt to make a purgeable
   59484         resource unpurgeable, and if this not possible, return an empty string.
   59485         * loader/CachedResource.h: Make InspectorResource a friend of CachedResource.
   59486 
   59487 2008-12-29  Alexey Proskuryakov  <ap (a] webkit.org>
   59488 
   59489         Reviewed by Sam Weinig.
   59490 
   59491         https://bugs.webkit.org/show_bug.cgi?id=23023
   59492         Remove incomplete support for opportunistic appcache entries
   59493 
   59494         No change in behavior, thus no test.
   59495 
   59496         * loader/appcache/ApplicationCacheResource.h:
   59497         (WebCore::ApplicationCacheResource::Type): Removed Opportunistic bit, will re-use when schema
   59498         version changes.
   59499 
   59500         * loader/DocumentLoader.cpp:
   59501         (WebCore::DocumentLoader::scheduleApplicationCacheLoad):
   59502         * loader/appcache/ApplicationCacheGroup.cpp:
   59503         (WebCore::ApplicationCacheGroup::didFinishLoadingManifest):
   59504         * loader/appcache/ApplicationCacheResource.cpp:
   59505         (WebCore::ApplicationCacheResource::dumpType):
   59506 
   59507 2008-12-29  Dirk Schulze  <krit (a] webkit.org>
   59508 
   59509         Reviewed by Oliver Hunt.
   59510 
   59511         Add arcTo support for Cairo. This is needed by Canvas.
   59512         Cairo has no native support for arcTo. We have to make our
   59513         own implementation.
   59514 
   59515         [Canvas] Cairo needs arcTo
   59516         https://bugs.webkit.org/show_bug.cgi?id=23003
   59517 
   59518         * platform/graphics/cairo/PathCairo.cpp:
   59519         (WebCore::Path::addArcTo):
   59520 
   59521 2008-12-29  Oliver Hunt  <oliver (a] apple.com>
   59522 
   59523         Reviewed by Cameron Zwarich.
   59524 
   59525         Bug 23030: Cannot setTransform with a non-invertible ctm
   59526 
   59527         Removed a series of unnecessary and incorrect checks for an invertible
   59528         transform.
   59529 
   59530         Test: fast/canvas/canvas-set-properties-with-non-invertible-ctm.html
   59531 
   59532         * html/CanvasRenderingContext2D.cpp:
   59533         (WebCore::CanvasRenderingContext2D::setStrokeStyle):
   59534         (WebCore::CanvasRenderingContext2D::setFillStyle):
   59535             These properties are not effected by the current CTM, so there
   59536             is no need to prevent them from being assigned.
   59537 
   59538         (WebCore::CanvasRenderingContext2D::setTransform):
   59539             The whole point of tracking whether the current CTM was expected to be
   59540             non-invertible was to allow setTransform to be used when the CTM had become
   59541             non-invertible.
   59542 
   59543         (WebCore::CanvasRenderingContext2D::beginPath):
   59544         (WebCore::CanvasRenderingContext2D::closePath):
   59545             beginPath and closePath change the state of the path, but not any of
   59546             its coordinates so there is no need prevent them from being called.
   59547 
   59548 2008-12-29  Josh Roesslein  <jroesslein (a] gmail.com>
   59549 
   59550         Reviewed by Oliver Hunt.
   59551 
   59552         Fixes: https://bugs.webkit.org/show_bug.cgi?id=22968
   59553 
   59554         Context menu rendering error when full page zoomed
   59555 
   59556         * page/ContextMenuController.cpp:
   59557         (WebCore::ContextMenuController::handleContextMenuEvent):
   59558 
   59559 2008-12-29  Sam Weinig  <sam (a] webkit.org>
   59560 
   59561         Reviewed by Mark Rowe.
   59562 
   59563         Add some basic memory statistic logging for Node.
   59564 
   59565         * dom/Node.cpp:
   59566         (WebCore::Node::dumpStatistics):
   59567         (WebCore::Node::Node):
   59568         (WebCore::Node::~Node):
   59569         (WebCore::Node::setDocument):
   59570         * dom/Node.h:
   59571 
   59572 2008-12-29  Sam Weinig  <sam (a] webkit.org>
   59573 
   59574         Reviewed by Anders Carlsson.
   59575 
   59576         Remove one use of DeprecatedPtrList.
   59577 
   59578         * css/CSSRuleList.cpp:
   59579         (WebCore::CSSRuleList::~CSSRuleList):
   59580         (WebCore::CSSRuleList::length):
   59581         (WebCore::CSSRuleList::item):
   59582         (WebCore::CSSRuleList::deleteRule):
   59583         (WebCore::CSSRuleList::append):
   59584         (WebCore::CSSRuleList::insertRule):
   59585         * css/CSSRuleList.h: Change m_lstCSSRules from using DeprecatedPtrList to a Vector.
   59586         I measured no performance change and was comforted by the fact that we use a Vector
   59587         for StyleList, which serves the exact same purpose.
   59588 
   59589 2008-12-29  Adele Peterson  <adele (a] apple.com>
   59590 
   59591         Reviewed by Brady Eidson.
   59592 
   59593         Fix for https://bugs.webkit.org/show_bug.cgi?id=21797
   59594         <rdar://problem/6310682> REGRESSION: Crash in CFHTTPCookieStorageCopy beneath WebCore::cookies() when
   59595         running fast/dom/document-attribute-js-null.html and http/tests/security/cookies/create-document.html
   59596 
   59597         Return early if the document is trying to get or set a cookie with an empty cookie url.
   59598 
   59599         * dom/Document.cpp:
   59600         (WebCore::Document::cookie):
   59601         (WebCore::Document::setCookie):
   59602 
   59603 2008-12-28  Cameron Zwarich  <cwzwarich (a] uwaterloo.ca>
   59604 
   59605         Reviewed by Sam Weinig.
   59606 
   59607         Bug 23016: JavaScriptDebugServer::recompileAllJSFunctions() should not execute JS while reparsing all functions
   59608         <https://bugs.webkit.org/show_bug.cgi?id=23016>
   59609         <rdar://problem/6425077>
   59610 
   59611         JavaScriptDebugServer::recompileAllJSFunctions() calls sourceParsed() while
   59612         reparsing all JS functions, which will execute JS in the inspector. Depending
   59613         on the order in which functions are recompiled, a function could have a new
   59614         body but other functions that have not been recompiled could have an optimized
   59615         (in the sense of inline caching) call to it, bypassing the check of whether or
   59616         not there is generated bytecode. This leads to a crash caused by accessing
   59617         indices off of a null pointer.
   59618 
   59619         To fix the problem, simply delay calling sourceParsed() until after all functions
   59620         have been reparsed. The crash isn't 100% reproducible, but on the one test case
   59621         I have, this makes it impossible to reproduce after a large number of attempts,
   59622         when it used to happen every few attempts.
   59623 
   59624         * inspector/JavaScriptDebugServer.cpp:
   59625         (WebCore::JavaScriptDebugServer::recompileAllJSFunctions):
   59626 
   59627 2008-12-28  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   59628 
   59629         Rubber-stamped by Antti Koivisto.
   59630         Oops, remove some last minute ASSERTS that are obviously wrong.
   59631 
   59632         * rendering/RenderTextControlMultiLine.cpp:
   59633         (WebCore::RenderTextControlMultiLine::RenderTextControlMultiLine):
   59634         * rendering/RenderTextControlSingleLine.cpp:
   59635         (WebCore::RenderTextControlSingleLine::RenderTextControlSingleLine):
   59636 
   59637 2008-12-28  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   59638 
   59639         Reviewed by Antti Koivisto.
   59640 
   59641         Fixes: https://bugs.webkit.org/show_bug.cgi?id=23015
   59642 
   59643         Don't rely on HTMLFormControlElement in RenderTextControl.
   59644 
   59645         Introduce an abstract FormControlElement class, containing the
   59646         valueMatchesRenderer/setValueMatchesRenderer, the only HTMLFormControlElement
   59647         specific methods that RenderTextControl relies on.
   59648 
   59649         This makes it possible for WML to reuse RenderTextControl.
   59650         RenderTextControlSingleLine still relies on HTMLInputElement,
   59651         this will change if WMLInputElement is introduced.
   59652 
   59653         * GNUmakefile.am:
   59654         * WebCore.vcproj/WebCore.vcproj:
   59655         * WebCore.xcodeproj/project.pbxproj:
   59656         * dom/FormControlElement.h: Added.
   59657         (WebCore::FormControlElement::~FormControlElement):
   59658         (WebCore::FormControlElement::FormControlElement):
   59659         * html/HTMLFormControlElement.h:
   59660         (WebCore::HTMLFormControlElement::valueMatchesRenderer):
   59661         (WebCore::HTMLFormControlElement::setValueMatchesRenderer):
   59662         * html/HTMLTextAreaElement.cpp:
   59663         (WebCore::HTMLTextAreaElement::updateValue):
   59664         * rendering/RenderTextControl.cpp:
   59665         (WebCore::RenderTextControl::adjustInnerTextStyle):
   59666         (WebCore::RenderTextControl::updateFromElement):
   59667         (WebCore::RenderTextControl::setInnerTextValue):
   59668         (WebCore::RenderTextControl::selectionChanged):
   59669         (WebCore::RenderTextControl::formControlElement):
   59670         * rendering/RenderTextControl.h:
   59671         * rendering/RenderTextControlMultiLine.cpp:
   59672         (WebCore::RenderTextControlMultiLine::RenderTextControlMultiLine):
   59673         (WebCore::RenderTextControlMultiLine::subtreeHasChanged):
   59674         * rendering/RenderTextControlSingleLine.cpp:
   59675         (WebCore::RenderTextControlSingleLine::RenderTextControlSingleLine):
   59676         (WebCore::RenderTextControlSingleLine::updateFromElement):
   59677 
   59678 2008-12-28  Cameron Zwarich  <cwzwarich (a] uwaterloo.ca>
   59679 
   59680         Reviewed by Darin Adler.
   59681 
   59682         Bug 23006: Many Loader::Host member functions are not safe to use reentrantly
   59683         <https://bugs.webkit.org/show_bug.cgi?id=23006>
   59684         <rdar://problem/6216106>
   59685 
   59686         Many Loader::Host member functions set m_processingResource to true when they
   59687         begin processing a resource and set it to false when they are done. Thanks to
   59688         JavaScript and the web inspector, almost anything can happen during the
   59689         processing of a resource, including these functions being called reentrantly,
   59690         which is unsafe due to this way of using m_processingResource.
   59691 
   59692         This can theoretically cause a Loader::Host to be used after it is freed,
   59693         because when Loader::servedPendingRequests() is called, it will free Hosts
   59694         that have m_processingResource set to false.
   59695 
   59696         To fix this, we replace m_processingResource with m_numResourcesProcessing,
   59697         which is incremented and decremented using a helper object, ProcessingResource.
   59698 
   59699         There are no occurrences of crashes caused by this bug that are reproducible
   59700         by multiple people, but this fixes the problem of m_processingResource being
   59701         set to false while a Host is still alive.
   59702 
   59703         * loader/loader.cpp:
   59704         (WebCore::Loader::Host::Host):
   59705         (WebCore::Loader::Host::didFinishLoading): Change to use ProcessingResource
   59706         instead of manually setting m_processingResource.
   59707         (WebCore::Loader::Host::didFail): Ditto.
   59708         (WebCore::Loader::Host::didReceiveData): Ditto.
   59709         * loader/loader.h:
   59710         (WebCore::Loader::Host::ProcessingResource::ProcessingResource): Added.
   59711         (WebCore::Loader::Host::ProcessingResource::~ProcessingResource): Added.
   59712         (WebCore::Loader::Host::processingResource): Change to use m_numResourcesProcessing
   59713         instead of just getting m_processingResource.
   59714 
   59715 2008-12-28  Alexey Proskuryakov  <ap (a] webkit.org>
   59716 
   59717         Reviewed by Darin Adler.
   59718 
   59719         https://bugs.webkit.org/show_bug.cgi?id=23007
   59720         REGRESSION: Timer-related crash when closing Web Inspector
   59721 
   59722         Test: fast/dom/Window/remove-timeout-crash.html
   59723 
   59724         * bindings/js/DOMTimer.cpp: (WebCore::DOMTimer::fired): Besides deleting the timer, make
   59725         sure to remove it from a Document map.
   59726 
   59727 2008-12-28  Alexey Proskuryakov  <ap (a] webkit.org>
   59728 
   59729         Reviewed by Anders Carlsson.
   59730 
   59731         https://bugs.webkit.org/show_bug.cgi?id=23012
   59732         Bring application cache manifest parsing up to date
   59733 
   59734         Test: http/tests/appcache/manifest-parsing.html
   59735 
   59736         * loader/appcache/ManifestParser.cpp:
   59737         (WebCore::Mode): Added a constant for unknown sections, which are ignored when parsing. This
   59738         is necessary for future extensions.
   59739         (WebCore::parseManifest): Parse unknown sections correctly. Ignore trailing tokens in
   59740         supported sections.
   59741 
   59742 2008-12-28  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   59743 
   59744         Reviewed by Darin Adler.
   59745 
   59746         Fixes: https://bugs.webkit.org/show_bug.cgi?id=22996
   59747 
   59748         RenderTextControl heavily depends on HTMLInputElement & HTMLTextAreaElement.
   59749         It handles multi & single line text control rendering in one class. Split up
   59750         in two new classes: RenderTextControlSingleLine & RenderTextControlMultiLine.
   59751 
   59752         This has several benefits - code is more readable now, the memory usage
   59753         for RenderTextControlMultiLine is reduced, as all stuff related to search fields
   59754         lives in RenderTextControlSingleLine, and it's easier to introduce an
   59755         abstraction for input/textarea-like elements for other HTML flavours like WML.
   59756 
   59757         * GNUmakefile.am:
   59758         * WebCore.order:
   59759         * WebCore.pro:
   59760         * WebCore.scons:
   59761         * WebCore.vcproj/WebCore.vcproj:
   59762         * WebCore.xcodeproj/project.pbxproj:
   59763         * WebCoreSources.bkl:
   59764         * html/HTMLInputElement.cpp:
   59765         (WebCore::HTMLInputElement::createRenderer):
   59766         (WebCore::HTMLInputElement::defaultEventHandler):
   59767         (WebCore::HTMLInputElement::updatePlaceholderVisibility):
   59768         (WebCore::HTMLInputElement::addSearchResult):
   59769         (WebCore::HTMLInputElement::onSearch):
   59770         * html/HTMLTextAreaElement.cpp:
   59771         (WebCore::HTMLTextAreaElement::createRenderer):
   59772         (WebCore::HTMLTextAreaElement::defaultEventHandler):
   59773         * rendering/RenderTextControl.cpp:
   59774         (WebCore::RenderTextControl::RenderTextControl):
   59775         (WebCore::RenderTextControl::~RenderTextControl):
   59776         (WebCore::RenderTextControl::styleDidChange):
   59777         (WebCore::RenderTextControl::adjustInnerTextStyle):
   59778         (WebCore::RenderTextControl::createSubtreeIfNeeded):
   59779         (WebCore::RenderTextControl::textBlockHeight):
   59780         (WebCore::RenderTextControl::textBlockWidth):
   59781         (WebCore::RenderTextControl::updateFromElement):
   59782         (WebCore::RenderTextControl::setInnerTextValue):
   59783         (WebCore::RenderTextControl::setSelectionRange):
   59784         (WebCore::RenderTextControl::visiblePositionForIndex):
   59785         (WebCore::RenderTextControl::indexForVisiblePosition):
   59786         (WebCore::RenderTextControl::subtreeHasChanged):
   59787         (WebCore::RenderTextControl::scrollbarThickness):
   59788         (WebCore::RenderTextControl::calcHeight):
   59789         (WebCore::RenderTextControl::hitInnerTextBlock):
   59790         (WebCore::RenderTextControl::forwardEvent):
   59791         (WebCore::RenderTextControl::calcPrefWidths):
   59792         (WebCore::RenderTextControl::selectionChanged):
   59793         (WebCore::RenderTextControl::innerTextElement):
   59794         * rendering/RenderTextControl.h:
   59795         (WebCore::RenderTextControl::hasControlClip):
   59796         (WebCore::RenderTextControl::canHaveChildren):
   59797         (WebCore::RenderTextControl::avoidsFloats):
   59798         (WebCore::RenderTextControl::isEdited):
   59799         (WebCore::RenderTextControl::setEdited):
   59800         * rendering/RenderTextControlMultiLine.cpp: Added.
   59801         (WebCore::RenderTextControlMultiLine::RenderTextControlMultiLine):
   59802         (WebCore::RenderTextControlMultiLine::~RenderTextControlMultiLine):
   59803         (WebCore::RenderTextControlMultiLine::subtreeHasChanged):
   59804         (WebCore::RenderTextControlMultiLine::layout):
   59805         (WebCore::RenderTextControlMultiLine::nodeAtPoint):
   59806         (WebCore::RenderTextControlMultiLine::forwardEvent):
   59807         (WebCore::RenderTextControlMultiLine::preferredContentWidth):
   59808         (WebCore::RenderTextControlMultiLine::adjustControlHeightBasedOnLineHeight):
   59809         (WebCore::RenderTextControlMultiLine::baselinePosition):
   59810         (WebCore::RenderTextControlMultiLine::updateFromElement):
   59811         (WebCore::RenderTextControlMultiLine::cacheSelection):
   59812         (WebCore::RenderTextControlMultiLine::createInnerTextStyle):
   59813         * rendering/RenderTextControlMultiLine.h: Added.
   59814         (WebCore::RenderTextControlMultiLine::isTextArea):
   59815         * rendering/RenderTextControlSingleLine.cpp: Added.
   59816         (WebCore::RenderTextControlSingleLine::RenderTextControlSingleLine):
   59817         (WebCore::RenderTextControlSingleLine::~RenderTextControlSingleLine):
   59818         (WebCore::RenderTextControlSingleLine::placeholderShouldBeVisible):
   59819         (WebCore::RenderTextControlSingleLine::updatePlaceholderVisibility):
   59820         (WebCore::RenderTextControlSingleLine::addSearchResult):
   59821         (WebCore::RenderTextControlSingleLine::stopSearchEventTimer):
   59822         (WebCore::RenderTextControlSingleLine::showPopup):
   59823         (WebCore::RenderTextControlSingleLine::hidePopup):
   59824         (WebCore::RenderTextControlSingleLine::subtreeHasChanged):
   59825         (WebCore::RenderTextControlSingleLine::paint):
   59826         (WebCore::RenderTextControlSingleLine::layout):
   59827         (WebCore::RenderTextControlSingleLine::nodeAtPoint):
   59828         (WebCore::RenderTextControlSingleLine::forwardEvent):
   59829         (WebCore::RenderTextControlSingleLine::styleDidChange):
   59830         (WebCore::RenderTextControlSingleLine::capsLockStateMayHaveChanged):
   59831         (WebCore::RenderTextControlSingleLine::textBlockWidth):
   59832         (WebCore::RenderTextControlSingleLine::preferredContentWidth):
   59833         (WebCore::RenderTextControlSingleLine::adjustControlHeightBasedOnLineHeight):
   59834         (WebCore::RenderTextControlSingleLine::createSubtreeIfNeeded):
   59835         (WebCore::RenderTextControlSingleLine::updateFromElement):
   59836         (WebCore::RenderTextControlSingleLine::cacheSelection):
   59837         (WebCore::RenderTextControlSingleLine::createInnerTextStyle):
   59838         (WebCore::RenderTextControlSingleLine::createInnerBlockStyle):
   59839         (WebCore::RenderTextControlSingleLine::createResultsButtonStyle):
   59840         (WebCore::RenderTextControlSingleLine::createCancelButtonStyle):
   59841         (WebCore::RenderTextControlSingleLine::updateCancelButtonVisibility):
   59842         (WebCore::RenderTextControlSingleLine::autosaveName):
   59843         (WebCore::RenderTextControlSingleLine::startSearchEventTimer):
   59844         (WebCore::RenderTextControlSingleLine::searchEventTimerFired):
   59845         (WebCore::RenderTextControlSingleLine::valueChanged):
   59846         (WebCore::RenderTextControlSingleLine::itemText):
   59847         (WebCore::RenderTextControlSingleLine::itemIsEnabled):
   59848         (WebCore::RenderTextControlSingleLine::itemStyle):
   59849         (WebCore::RenderTextControlSingleLine::menuStyle):
   59850         (WebCore::RenderTextControlSingleLine::clientInsetLeft):
   59851         (WebCore::RenderTextControlSingleLine::clientInsetRight):
   59852         (WebCore::RenderTextControlSingleLine::clientPaddingLeft):
   59853         (WebCore::RenderTextControlSingleLine::clientPaddingRight):
   59854         (WebCore::RenderTextControlSingleLine::listSize):
   59855         (WebCore::RenderTextControlSingleLine::selectedIndex):
   59856         (WebCore::RenderTextControlSingleLine::itemIsSeparator):
   59857         (WebCore::RenderTextControlSingleLine::itemIsLabel):
   59858         (WebCore::RenderTextControlSingleLine::itemIsSelected):
   59859         (WebCore::RenderTextControlSingleLine::setTextFromItem):
   59860         (WebCore::RenderTextControlSingleLine::fontSelector):
   59861         (WebCore::RenderTextControlSingleLine::hostWindow):
   59862         (WebCore::RenderTextControlSingleLine::createScrollbar):
   59863         * rendering/RenderTextControlSingleLine.h: Added.
   59864         (WebCore::RenderTextControlSingleLine::hasControlClip):
   59865         (WebCore::RenderTextControlSingleLine::isTextField):
   59866         (WebCore::RenderTextControlSingleLine::placeholderIsVisible):
   59867         (WebCore::RenderTextControlSingleLine::popupIsVisible):
   59868         (WebCore::RenderTextControlSingleLine::shouldPopOver):
   59869         (WebCore::RenderTextControlSingleLine::valueShouldChangeOnHotTrack):
   59870         * rendering/TextControlInnerElements.cpp:
   59871         (WebCore::RenderTextControlInnerBlock::nodeAtPoint):
   59872         (WebCore::SearchFieldResultsButtonElement::defaultEventHandler):
   59873 
   59874 2008-12-28  Dmitry Titov  <dimich (a] chromium.org>
   59875 
   59876         Reviewed by Darin Adler.
   59877 
   59878         https://bugs.webkit.org/show_bug.cgi?id=22755
   59879         Prepare to add create/remove timeout methods to JSWorkerContext by moving
   59880         timer-specific code from JSDOMWindowBase to DOMTimer.
   59881         Moved everything JS-related from DOMTimer to ScheduledAction.
   59882         Now ScheduledAction is what it wanted to be all the time: a JS engine-specific
   59883         container for timer callback that knows how to invoke it.
   59884         DOMTimer is not anymore JS-specific.
   59885 
   59886         This is mostly moving the code around. No intended functional changes.
   59887 
   59888         * bindings/js/DOMTimer.cpp:
   59889         (WebCore::DOMTimer::DOMTimer):
   59890         (WebCore::DOMTimer::~DOMTimer):
   59891         (WebCore::DOMTimer::install):
   59892         (WebCore::DOMTimer::removeById):
   59893         (WebCore::DOMTimer::fired):
   59894         (WebCore::DOMTimer::stop):
   59895         * bindings/js/DOMTimer.h:
   59896         * bindings/js/JSDOMWindowBase.cpp:
   59897         (WebCore::JSDOMWindowBase::installTimeout):
   59898         (WebCore::JSDOMWindowBase::removeTimeout):
   59899         * bindings/js/JSDOMWindowBase.h:
   59900         * bindings/js/ScheduledAction.cpp:
   59901         (WebCore::ScheduledAction::execute):
   59902         * bindings/js/ScheduledAction.h:
   59903         * dom/Document.cpp:
   59904         (WebCore::Document::addTimeout):
   59905 
   59906 2008-12-26  Zalan Bujtas  <zbujtas (a] gmail.com>
   59907 
   59908         Reviewed by Darin Adler.
   59909 
   59910         https://bugs.webkit.org/show_bug.cgi?id=22999
   59911         Check if database thread exists.
   59912 
   59913         * storage/Database.cpp:
   59914         (WebCore::Database::openAndVerifyVersion):
   59915         (WebCore::Database::markAsDeletedAndClose):
   59916         (WebCore::Database::tableNames):
   59917 
   59918 2008-12-26  Alexey Proskuryakov  <ap (a] webkit.org>
   59919 
   59920         Reviewed by Darin Adler.
   59921 
   59922         https://bugs.webkit.org/show_bug.cgi?id=23001
   59923         A call to applicationCache.update() from a cached event listener should be ignored
   59924 
   59925         Test: http/tests/appcache/idempotent-update.html
   59926 
   59927         * loader/appcache/ApplicationCacheGroup.cpp:
   59928         (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete): Only reset m_status after
   59929         dispatching events.
   59930 
   59931 2008-12-26  Alexey Proskuryakov  <ap (a] webkit.org>
   59932 
   59933         Reviewed by Darin Adler.
   59934 
   59935         https://bugs.webkit.org/show_bug.cgi?id=22997
   59936         ASSERTION FAILED: !m_resources.contains(url) in ApplicationCache::addResource()
   59937 
   59938         Tests: http/tests/appcache/top-frame-1.html
   59939                http/tests/appcache/top-frame-2.html
   59940                http/tests/appcache/top-frame-3.html
   59941                http/tests/appcache/top-frame-4.html
   59942 
   59943         * loader/appcache/ApplicationCacheGroup.cpp: (WebCore::ApplicationCacheGroup::cacheForMainRequest):
   59944         Fixed one more instance of top level frame being used for caching purposes.
   59945 
   59946 2008-12-26  Dmitry Titov  <dimich (a] chromium.org>
   59947 
   59948         Reviewed by Darin Adler.
   59949 
   59950         https://bugs.webkit.org/show_bug.cgi?id=22987
   59951         Fix for broken test editing/execCommand/5763082.html
   59952 
   59953         * editing/CompositeEditCommand.cpp:
   59954         (WebCore::CompositeEditCommand::mergeIdenticalElements): Used local RefPtr to hold onto
   59955         function parameter across multiple calls.
   59956 
   59957 2008-12-25  Alexey Proskuryakov  <ap (a] webkit.org>
   59958 
   59959         Reviewed by Darin Adler.
   59960 
   59961         https://bugs.webkit.org/show_bug.cgi?id=22993
   59962         Application cache shouldn't be inherited by subframes
   59963 
   59964         <rdar://problem/6284708> AppCache crashes in ApplicationCacheResource::addType()
   59965         This crash happened because main resource for subframe was looked up in top frame's
   59966         appcache. If not for the spec change, it could have been fixed by preventing the load
   59967         altogether.
   59968 
   59969         Test: http/tests/appcache/foreign-iframe-main.html
   59970         I intend to write additional tests for the behavior change.
   59971 
   59972         * loader/DocumentLoader.cpp:
   59973         (WebCore::DocumentLoader::shouldLoadResourceFromApplicationCache):
   59974         * loader/DocumentLoader.h:
   59975         (WebCore::DocumentLoader::applicationCache):
   59976         * loader/MainResourceLoader.cpp:
   59977         (WebCore::MainResourceLoader::load):
   59978         * loader/appcache/DOMApplicationCache.cpp:
   59979         (WebCore::DOMApplicationCache::associatedCache):
   59980         Removed DocumentLoader::topLevelApplicationCache(), and changed callers accordingly.
   59981 
   59982         * loader/appcache/ApplicationCacheGroup.cpp:
   59983         (WebCore::ApplicationCacheGroup::selectCache):
   59984         (WebCore::ApplicationCacheGroup::selectCacheWithoutManifestURL):
   59985         Removed checks for the frame being top-level one, now that subframes are cached independently.
   59986 
   59987 2008-12-25  Antti Koivisto  <antti (a] apple.com>
   59988 
   59989         Reviewed by Oliver Hunt.
   59990 
   59991         <rdar://problem/6465669> Frequent !isPurgeable() assertion in WebCore::CachedResource::addClient
   59992 
   59993         Disallow turning resources that are being revalidated to purgable state.
   59994 
   59995         No test, the condition is difficult to produce in DRT.
   59996 
   59997         * loader/CachedCSSStyleSheet.cpp:
   59998         (WebCore::CachedCSSStyleSheet::allClientsRemoved):
   59999         * loader/CachedImage.cpp:
   60000         (WebCore::CachedImage::destroyDecodedData):
   60001         * loader/CachedResource.cpp:
   60002         (WebCore::CachedResource::isSafeToMakePurgeable):
   60003         (WebCore::CachedResource::makePurgeable):
   60004         * loader/CachedResource.h:
   60005         * loader/CachedScript.cpp:
   60006         (WebCore::CachedScript::destroyDecodedData):
   60007 
   60008 2008-12-25  Alexey Proskuryakov  <ap (a] webkit.org>
   60009 
   60010         Qt build fix.
   60011 
   60012         * WebCore.pro: Added ThreadGlobalData.cpp.
   60013 
   60014 2008-12-24  Mark Rowe  <mrowe (a] apple.com>
   60015 
   60016         Build fix.
   60017 
   60018         * WebCore.base.exp:  Remove a symbol from the export file now that it is no longer generated.
   60019 
   60020 2008-12-24  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   60021 
   60022         Unreviewed build fix to find addSubresourceURL
   60023 
   60024         This is needed to compile on WebKit/Gtk+
   60025 
   60026         * css/CSSFontFaceSrcValue.cpp:
   60027 
   60028 2008-12-23  Alexey Proskuryakov  <ap (a] webkit.org>
   60029 
   60030         Reviewed by Darin Adler.
   60031 
   60032         https://bugs.webkit.org/show_bug.cgi?id=22980
   60033         WebCore uses more thread specific keys than it really needs
   60034 
   60035         Consolidated ThreadSpecific data into a single ThreadGlobalData structure.
   60036 
   60037         * GNUmakefile.am:
   60038         * WebCore.base.exp:
   60039         * WebCore.scons:
   60040         * WebCore.vcproj/WebCore.vcproj:
   60041         * WebCore.xcodeproj/project.pbxproj:
   60042         * WebCoreSources.bkl:
   60043         * dom/EventNames.cpp:
   60044         * dom/EventNames.h:
   60045         (WebCore::eventNames):
   60046         * page/Frame.cpp:
   60047         (WebCore::Frame::Frame):
   60048         * platform/ThreadGlobalData.cpp: Added.
   60049         (WebCore::threadGlobalData):
   60050         (WebCore::ThreadGlobalData::ThreadGlobalData):
   60051         (WebCore::ThreadGlobalData::~ThreadGlobalData):
   60052         * platform/ThreadGlobalData.h: Added.
   60053         (WebCore::ThreadGlobalData::eventNames):
   60054         (WebCore::ThreadGlobalData::emptyString):
   60055         (WebCore::ThreadGlobalData::atomicStringTable):
   60056         (WebCore::ThreadGlobalData::cachedConverterICU):
   60057         (WebCore::ThreadGlobalData::cachedConverterTEC):
   60058         * platform/text/AtomicString.cpp:
   60059         (WebCore::stringTable):
   60060         (WebCore::AtomicString::add):
   60061         (WebCore::AtomicString::remove):
   60062         (WebCore::AtomicString::find):
   60063         (WebCore::AtomicString::init):
   60064         * platform/text/StringImpl.cpp:
   60065         (WebCore::StringImpl::empty):
   60066         * platform/text/StringImpl.h:
   60067         * platform/text/TextCodecICU.cpp:
   60068         (WebCore::ICUConverterWrapper::~ICUConverterWrapper):
   60069         (WebCore::cachedConverterICU):
   60070         * platform/text/TextCodecICU.h:
   60071         (WebCore::ICUConverterWrapper::ICUConverterWrapper):
   60072         * platform/text/mac/TextCodecMac.cpp:
   60073         (WebCore::cachedConverterTEC):
   60074         * platform/text/mac/TextCodecMac.h:
   60075         (WebCore::TECConverterWrapper::TECConverterWrapper):
   60076         (WebCore::TECConverterWrapper::~TECConverterWrapper):
   60077 
   60078 2008-12-23  Mark Rowe  <mrowe (a] apple.com>
   60079 
   60080         Build fix.
   60081 
   60082         * WebCore.xcodeproj/project.pbxproj: CSSPropertyNames.h is a generated file so it needs to be explicitly copied
   60083         into the PrivateHeaders directory, rather than relying on the automatic copying of headers which runs before the
   60084         derived sources are generated.
   60085 
   60086 2008-12-23  Simon Fraser  <simon.fraser (a] apple.com>
   60087 
   60088         Reviewed by Dan Bernstein
   60089 
   60090         https://bugs.webkit.org/show_bug.cgi?id=22941
   60091 
   60092         If the document element has opacity, we need to erase the view background to
   60093         white before painting.
   60094 
   60095         Test: fast/backgrounds/opacity-on-document-element.html
   60096 
   60097         * rendering/RenderView.cpp:
   60098         (WebCore::rendererObscuresBackground):
   60099 
   60100 2008-12-23  Simon Fraser  <simon.fraser (a] apple.com>
   60101 
   60102         Reviewed by Dan Bernstein
   60103 
   60104         https://bugs.webkit.org/show_bug.cgi?id=21910
   60105 
   60106         Fix SVGImage painting by ensuring that the SVGImage resizes its FrameView correctly.
   60107         Otherwise the FrameView is left at 0x0, and nothing paints.
   60108 
   60109         * svg/graphics/SVGImage.cpp:
   60110         (WebCore::SVGImage::draw):
   60111 
   60112 2008-12-23  Darin Adler  <darin (a] apple.com>
   60113 
   60114         Reviewed by John Sullivan.
   60115 
   60116         - improve robustness of undo/redo in HTML editing to fix the following bugs
   60117           <https://bugs.webkit.org/show_bug.cgi?id=19703> Crash in WebCore::InsertNodeBeforeCommand::doUnapply()
   60118           <rdar://problem/4059423> DOM operations performed on editable HTML can cause a crash later during Undo
   60119 
   60120         Major categories of improvements:
   60121 
   60122             1) Added null checks.
   60123             2) Eliminated type casts without corresponding type checks.
   60124             3) Avoided possible infinite loops by building up lists of nodes to operate on
   60125                before starting to make DOM changes.
   60126             4) Use more RefPtr.
   60127 
   60128         No test at this time, but test cases should follow in separate patches.
   60129 
   60130         * WebCore.xcodeproj/project.pbxproj: Set the role of CSSPropertyNames.h to Private so it
   60131         can be used in other Private headers, specifically editing ones.
   60132 
   60133         * css/CSSStyleSelector.cpp:
   60134         (WebCore::CSSStyleSelector::locateCousinList): Adopt parentElement.
   60135         (WebCore::CSSStyleSelector::locateSharedStyle): Ditto.
   60136         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): Ditto.
   60137 
   60138         * dom/Element.cpp: (WebCore::Element::cloneElement): Added.
   60139         * dom/Element.h: Added cloneElement and an implementation of parentElement.
   60140         * dom/Node.h: Moved parentElement from here to Element.h and changed its
   60141         implementation so it will return 0 when the parent is not an element
   60142         (document, document fragment, etc.).
   60143 
   60144         * editing/AppendNodeCommand.cpp:
   60145         (WebCore::AppendNodeCommand::AppendNodeCommand): Made parent be an Element.
   60146         Moved assertions from doApply in here.
   60147         (WebCore::AppendNodeCommand::doApply): Simplified to just a single unchecked
   60148         appendChild call.
   60149         (WebCore::AppendNodeCommand::doUnapply): Simplified to just a single remove call.
   60150         * editing/AppendNodeCommand.h: Updated.
   60151 
   60152         * editing/ApplyStyleCommand.cpp:
   60153         (WebCore::createStyleSpanElement): Eliminate casting by creating an element in a more
   60154         direct way with new instead of createElementNS.
   60155         (WebCore::ApplyStyleCommand::ApplyStyleCommand): Use PassRefPtr.
   60156         (WebCore::ApplyStyleCommand::removeCSSStyle): Use CSSPropertyID.
   60157         (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded): Use cloneElement.
   60158         * editing/ApplyStyleCommand.h:
   60159 
   60160         * editing/BreakBlockquoteCommand.cpp:
   60161         (WebCore::BreakBlockquoteCommand::doApply): Use Element* and cloneElement.
   60162 
   60163         * editing/CompositeEditCommand.cpp:
   60164         (WebCore::CompositeEditCommand::applyStyledElement): Use PassRefPtr and unsigned.
   60165         (WebCore::CompositeEditCommand::removeStyledElement): Ditto.
   60166         (WebCore::CompositeEditCommand::insertNodeBefore): Ditto.
   60167         (WebCore::CompositeEditCommand::insertNodeAfter): Ditto.
   60168         (WebCore::CompositeEditCommand::insertNodeAt): Ditto.
   60169         (WebCore::CompositeEditCommand::appendNode): Ditto.
   60170         (WebCore::CompositeEditCommand::removeChildrenInRange): Ditto. Also use a vector to
   60171         make the list of children in case removing them has side effects.
   60172         (WebCore::CompositeEditCommand::removeNode): Ditto.
   60173         (WebCore::CompositeEditCommand::removeNodePreservingChildren): Ditto.
   60174         (WebCore::CompositeEditCommand::removeNodeAndPruneAncestors): Ditto.
   60175         (WebCore::CompositeEditCommand::splitTextNode): Ditto.
   60176         (WebCore::CompositeEditCommand::splitElement): Ditto.
   60177         (WebCore::CompositeEditCommand::mergeIdenticalElements): Ditto.
   60178         (WebCore::CompositeEditCommand::wrapContentsInDummySpan): Ditto.
   60179         (WebCore::CompositeEditCommand::splitTextNodeContainingElement): Ditto.
   60180         (WebCore::CompositeEditCommand::joinTextNodes): Ditto.
   60181         (WebCore::CompositeEditCommand::inputText): Ditto.
   60182         (WebCore::CompositeEditCommand::insertTextIntoNode): Ditto.
   60183         (WebCore::CompositeEditCommand::deleteTextFromNode): Ditto.
   60184         (WebCore::CompositeEditCommand::replaceTextInNode): Ditto.
   60185         (WebCore::CompositeEditCommand::insertNodeAtTabSpanPosition): Ditto.
   60186         (WebCore::CompositeEditCommand::removeCSSProperty): Ditto.
   60187         (WebCore::CompositeEditCommand::removeNodeAttribute): Ditto. Implement by calling
   60188         setNodeAttribute instead of with its own SimpleEditCommand.
   60189         (WebCore::CompositeEditCommand::setNodeAttribute): Ditto.
   60190         (WebCore::CompositeEditCommand::deleteInsignificantText): Ditto.
   60191         (WebCore::CompositeEditCommand::appendBlockPlaceholder): Ditto.
   60192         (WebCore::CompositeEditCommand::addBlockPlaceholderIfNeeded): Ditto.
   60193         (WebCore::CompositeEditCommand::insertNewDefaultParagraphElementAt): Ditto. Don't
   60194         bother using an undoable operation to put the break element into the paragraph
   60195         element because there's no need to split them and redo this when doing undo/redo.
   60196         (WebCore::CompositeEditCommand::moveParagraphs): Ditto.
   60197         (WebCore::CompositeEditCommand::breakOutOfEmptyListItem): Ditto.
   60198         * editing/CompositeEditCommand.h: Ditto.
   60199 
   60200         * editing/DeleteFromTextNodeCommand.cpp:
   60201         (WebCore::DeleteFromTextNodeCommand::DeleteFromTextNodeCommand): Use unsigned.
   60202         (WebCore::DeleteFromTextNodeCommand::doApply): Eliminated inappropriate assertions.
   60203         (WebCore::DeleteFromTextNodeCommand::doUnapply): Ditto.
   60204         * editing/DeleteFromTextNodeCommand.h:
   60205 
   60206         * editing/DeleteSelectionCommand.cpp:
   60207         (WebCore::DeleteSelectionCommand::removeNode): Use PassRefPtr.
   60208         (WebCore::DeleteSelectionCommand::deleteTextFromNode): Ditto.
   60209         * editing/DeleteSelectionCommand.h:
   60210 
   60211         * editing/FormatBlockCommand.cpp:
   60212         (WebCore::FormatBlockCommand::FormatBlockCommand): Use AtomicString.
   60213         (WebCore::FormatBlockCommand::doApply): Use Element.
   60214         * editing/FormatBlockCommand.h:
   60215 
   60216         * editing/IndentOutdentCommand.cpp:
   60217         (WebCore::createIndentBlockquoteElement): Use new to create the element
   60218         instead of calling a function so we have a more specific type.
   60219         (WebCore::IndentOutdentCommand::prepareBlockquoteLevelForInsertion):
   60220         Use RefPtr and Element.
   60221         (WebCore::IndentOutdentCommand::indentRegion): Ditto.
   60222         (WebCore::IndentOutdentCommand::outdentParagraph): Ditto.
   60223         * editing/IndentOutdentCommand.h:
   60224 
   60225         * editing/InsertIntoTextNodeCommand.cpp:
   60226         (WebCore::InsertIntoTextNodeCommand::InsertIntoTextNodeCommand):
   60227         Use unsigned. Added an assertion.
   60228         (WebCore::InsertIntoTextNodeCommand::doApply): Eliminated inappropriate assertions.
   60229         (WebCore::InsertIntoTextNodeCommand::doUnapply): Ditto.
   60230         * editing/InsertIntoTextNodeCommand.h:
   60231 
   60232         * editing/InsertLineBreakCommand.cpp:
   60233         (WebCore::InsertLineBreakCommand::insertNodeAfterPosition): Use Element.
   60234         (WebCore::InsertLineBreakCommand::insertNodeBeforePosition): Ditto.
   60235 
   60236         * editing/InsertListCommand.cpp:
   60237         (WebCore::InsertListCommand::doApply): Use Element.
   60238 
   60239         * editing/InsertNodeBeforeCommand.cpp:
   60240         (WebCore::InsertNodeBeforeCommand::InsertNodeBeforeCommand): Moved assertions
   60241         here from doApply.
   60242         (WebCore::InsertNodeBeforeCommand::doApply): Eliminated inappropriate assertions.
   60243         Added a null check.
   60244         (WebCore::InsertNodeBeforeCommand::doUnapply): Simplified to just a single remove call.
   60245 
   60246         * editing/InsertParagraphSeparatorCommand.cpp:
   60247         (WebCore::InsertParagraphSeparatorCommand::doApply): Use Element and cloneElement.
   60248 
   60249         * editing/JoinTextNodesCommand.cpp:
   60250         (WebCore::JoinTextNodesCommand::doApply): Eliminated inappropriate assertions.
   60251         Added some runtime checks. Don't store anything in m_offset.
   60252         (WebCore::JoinTextNodesCommand::doUnapply): Ditto.
   60253         * editing/JoinTextNodesCommand.h:
   60254 
   60255         * editing/MergeIdenticalElementsCommand.cpp:
   60256         (WebCore::MergeIdenticalElementsCommand::MergeIdenticalElementsCommand): Moved
   60257         an assertion here from doApply.
   60258         (WebCore::MergeIdenticalElementsCommand::doApply): Eliminated inappropriate assertions.
   60259         Added a null check. Changed implementation to use remove to avoid null parent issue.
   60260         Use a vector of nodes to avoid possible infinite loop if mutation happens while iterating.
   60261         (WebCore::MergeIdenticalElementsCommand::doUnapply): Ditto.
   60262 
   60263         * editing/ModifySelectionListLevel.cpp:
   60264         (WebCore::ModifySelectionListLevelCommand::appendSiblingNodeRange): Use Element*.
   60265         (WebCore::IncreaseSelectionListLevelCommand::doApply): Ditto.
   60266         * editing/ModifySelectionListLevel.h:
   60267 
   60268         * editing/RemoveCSSPropertyCommand.cpp:
   60269         (WebCore::RemoveCSSPropertyCommand::RemoveCSSPropertyCommand): Use PassRefPtr and
   60270         CSSPropertyID. Also renamed m_decl to m_style.
   60271         (WebCore::RemoveCSSPropertyCommand::doApply): Eliminated inappropriate assertions.
   60272         (WebCore::RemoveCSSPropertyCommand::doUnapply): Ditto.
   60273 
   60274         * editing/RemoveNodeAttributeCommand.cpp: Removed contents of this file. To be deleted.
   60275         Use SetNodeAttributeCommand instead.
   60276         * editing/RemoveNodeAttributeCommand.h: Ditto.
   60277 
   60278         * editing/RemoveNodeCommand.cpp:
   60279         (WebCore::RemoveNodeCommand::RemoveNodeCommand): Moved assertions here from doApply.
   60280         Don't initialize m_refChild here; rather do it in doApply.
   60281         (WebCore::RemoveNodeCommand::doApply): Eliminated inappropriate assertions. Added
   60282         checks and streamlined implementation.
   60283         (WebCore::RemoveNodeCommand::doUnapply): Ditto.
   60284         * editing/RemoveNodeCommand.h:
   60285 
   60286         * editing/RemoveNodePreservingChildrenCommand.cpp:
   60287         (WebCore::RemoveNodePreservingChildrenCommand::doApply): Use a vector.
   60288 
   60289         * editing/ReplaceSelectionCommand.cpp:
   60290         (WebCore::ReplacementFragment::insertFragmentForTestRendering): Removed now-unneeded cast.
   60291 
   60292         * editing/SetNodeAttributeCommand.cpp:
   60293         (WebCore::SetNodeAttributeCommand::SetNodeAttributeCommand): Use AtomicString.
   60294         Removed assertion that prevents us from using this to remove an attribute.
   60295         (WebCore::SetNodeAttributeCommand::doApply): Eliminated inappropriate assertions.
   60296         (WebCore::SetNodeAttributeCommand::doUnapply): Ditto.
   60297         * editing/SetNodeAttributeCommand.h:
   60298 
   60299         * editing/SplitElementCommand.cpp:
   60300         (WebCore::SplitElementCommand::SplitElementCommand): Moved assertion here from doApply.
   60301         (WebCore::SplitElementCommand::doApply): Check some more invariants and use a vector
   60302         to avoid possible infinite loops.
   60303         (WebCore::SplitElementCommand::doUnapply): Ditto.
   60304 
   60305         * editing/SplitTextNodeCommand.cpp:
   60306         (WebCore::SplitTextNodeCommand::SplitTextNodeCommand): Moved assertions and comment
   60307         here from doApply.
   60308         (WebCore::SplitTextNodeCommand::doApply): Check for null and failures when applying.
   60309         (WebCore::SplitTextNodeCommand::doUnapply): Ditto.
   60310 
   60311         * editing/SplitTextNodeContainingElementCommand.cpp:
   60312         (WebCore::SplitTextNodeContainingElementCommand::doApply): Use Element.
   60313 
   60314         * editing/WrapContentsInDummySpanCommand.cpp:
   60315         (WebCore::WrapContentsInDummySpanCommand::doApply): Check for null and ignore failures.
   60316         Don't reuse the dummy span. Simplified logic.
   60317         (WebCore::WrapContentsInDummySpanCommand::doUnapply): Ditto.
   60318 
   60319         * editing/htmlediting.cpp:
   60320         (WebCore::isBlock): Make sure this returns true only for elements.
   60321         (WebCore::enclosingBlock): Return an Element*.
   60322         (WebCore::enclosingTableCell): Ditto.
   60323         (WebCore::enclosingList): Return an HTMLElement*.
   60324         (WebCore::outermostEnclosingList): Return an HTMLElement*.
   60325         (WebCore::createDefaultParagraphElement): Return an HTMLElement*.
   60326         (WebCore::createBreakElement): Return an HTMLElement*.
   60327         (WebCore::createOrderedListElement): Return an HTMLElement*.
   60328         (WebCore::createUnorderedListElement): Return an HTMLElement*.
   60329         (WebCore::createListItemElement): Return an HTMLElement*.
   60330         (WebCore::createHTMLElement): Return an HTMLElement*.
   60331         * editing/htmlediting.h:
   60332 
   60333         * editing/markup.cpp:
   60334         (WebCore::createFragmentFromText): Use createBreakElement and use Element*.
   60335 
   60336         * page/MouseEventWithHitTestResults.cpp:
   60337         (WebCore::MouseEventWithHitTestResults::targetNode): Use parentElement.
   60338 
   60339 2008-12-23  Darin Adler  <darin (a] apple.com>
   60340 
   60341         Reviewed by Dan Bernstein.
   60342 
   60343         * dom/Node.h: Tweak comments and order of bits that Sam moved
   60344         here last night.
   60345         * dom/Node.cpp: Ditto.
   60346 
   60347 2008-12-22  Julien Chaffraix  <jchaffraix (a] webkit.org>
   60348 
   60349         Reviewed by Darin Adler.
   60350 
   60351         Bug 11106: Some XMLHttpRequest URI resolving tests fail
   60352         https://bugs.webkit.org/show_bug.cgi?id=11106
   60353 
   60354         Use the ScriptExecutionContext to resolve the URI when calling open in JavaScript.
   60355         The previous code was using the containing DOMWindow to do so which would fail for
   60356         XMLHttpRequest object being passed between iframe.
   60357 
   60358         Tests: http/tests/xmlhttprequest/uri-resolution-opera-open-004.html
   60359                http/tests/xmlhttprequest/uri-resolution-opera-open-005.html
   60360                http/tests/xmlhttprequest/uri-resolution-opera-open-006.html
   60361                http/tests/xmlhttprequest/uri-resolution-opera-open-007.html
   60362                http/tests/xmlhttprequest/uri-resolution-opera-open-008.html
   60363                http/tests/xmlhttprequest/uri-resolution-opera-open-009.html
   60364                http/tests/xmlhttprequest/uri-resolution-opera-open-010.html
   60365 
   60366         * bindings/js/JSXMLHttpRequestCustom.cpp:
   60367         (WebCore::JSXMLHttpRequest::open): Use the ScriptExecutionContext
   60368         to resolve the URL.
   60369 
   60370         * dom/Document.cpp:
   60371         (WebCore::Document::virtualCompleteURL): Virtual method added to
   60372         avoid performance hit on completeURL call.
   60373 
   60374         * dom/Document.h:
   60375         * dom/ScriptExecutionContext.h:
   60376         (WebCore::ScriptExecutionContext::completeURL): Non-virtual method
   60377         that wrap the call to the virtual call.
   60378         * dom/WorkerContext.cpp:
   60379         (WebCore::WorkerContext::virtualCompleteURL): Pure virtual method.
   60380         * dom/WorkerContext.h:
   60381 
   60382 2008-12-23  Darin Adler  <darin (a] apple.com>
   60383 
   60384         Reviewed by Dan Bernstein.
   60385 
   60386         - https://bugs.webkit.org/show_bug.cgi?id=22978
   60387           a couple tweaks to the new strokeBoundingRect functions
   60388 
   60389         * platform/graphics/cairo/PathCairo.cpp:
   60390         (WebCore::Path::strokeBoundingRect): Only create a GraphicsContext
   60391         if the applier is non-null.
   60392 
   60393         * platform/graphics/cg/PathCG.cpp:
   60394         (WebCore::putBytesNowhere): Added.
   60395         (WebCore::createScratchContext): Changed to use a "/dev/null" type
   60396         function to discard bytes rather than using a data object. This
   60397         eliminates the possibility that memory will be used if someone draws
   60398         into the scratch context by accident. Also moved to the top of the
   60399         file; it was in a slightly strange place before.
   60400         (WebCore::Path::strokeBoundingRect): Only create a GraphicsContext
   60401         if the applier is non-null. Simplify the empty path special case.
   60402 
   60403 2008-12-22  Sam Weinig  <sam (a] webkit.org>
   60404 
   60405         Reviewed by Mark Rowe.
   60406 
   60407         Save a word in all Elements by moving the 5 loose bits to Node,
   60408         where we had 16 spare.
   60409 
   60410         * dom/Element.cpp:
   60411         (WebCore::Element::Element):
   60412         * dom/Element.h:
   60413         * dom/Node.cpp:
   60414         (WebCore::Node::Node):
   60415         * dom/Node.h:
   60416 
   60417 2008-12-22  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   60418 
   60419         Reviewed by George Staikos.
   60420 
   60421         Fixes: https://bugs.webkit.org/show_bug.cgi?id=22972
   60422 
   60423         Add WML <meta> element support. All needed functionality is present
   60424         in Document::processHttpEquiv, already covered by tests.
   60425 
   60426         * GNUmakefile.am:
   60427         * WebCore.pro:
   60428         * WebCore.vcproj/WebCore.vcproj:
   60429         * WebCore.xcodeproj/project.pbxproj:
   60430         * wml/WMLMetaElement.cpp: Added.
   60431         (WebCore::WMLMetaElement::WMLMetaElement):
   60432         (WebCore::WMLMetaElement::parseMappedAttribute):
   60433         (WebCore::WMLMetaElement::insertedIntoDocument):
   60434         * wml/WMLMetaElement.h: Added.
   60435         * wml/WMLTagNames.in:
   60436 
   60437 2008-12-22  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   60438 
   60439         Rubber-stamped by Darin Adler.
   60440 
   60441         Don't reference specific layout tests in comments.
   60442 
   60443         * html/HTMLFormElement.cpp:
   60444         (WebCore::HTMLFormElement::createFormData):
   60445 
   60446 2008-12-22  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   60447 
   60448         Reviewed by George Staikos.
   60449 
   60450         Fixes: https://bugs.webkit.org/show_bug.cgi?id=22965
   60451 
   60452         Add WML <head> element support. Doesn't require a WMLHeadElement.
   60453         No functional behaviour, as we already created a WMLElement for headTag, by default.
   60454         It's just cleaner to list <head> in WMLTagNames, forwarding to a WMLElement constructor.
   60455 
   60456         * wml/WMLTagNames.in:
   60457 
   60458 2008-12-22  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   60459 
   60460         Reviewed by George Staikos.
   60461 
   60462         Fixes: https://bugs.webkit.org/show_bug.cgi?id=22971
   60463 
   60464         Fix regression caused by the HTMLFormElement refactorization.
   60465         File form elements without a name have to be included in multipart/form-data
   60466         submission. Cover this behaviour with a new test case.
   60467 
   60468         Test: http/tests/misc/empty-file-formdata.html
   60469 
   60470         * html/HTMLFormElement.cpp:
   60471         (WebCore::HTMLFormElement::createFormData):
   60472         * wml/WMLTagNames.in:
   60473 
   60474 2008-12-22  David Kilzer  <ddkilzer (a] apple.com>
   60475 
   60476         <rdar://problem/6438298> Bump schema version for app cache
   60477 
   60478         Reviewed by Alexey Proskuryakov.
   60479 
   60480         * loader/appcache/ApplicationCacheStorage.cpp: Increment
   60481         SchemaVersion from 2 to 3.
   60482 
   60483 2008-12-22  David Kilzer  <ddkilzer (a] apple.com>
   60484 
   60485         Use Deque in CSSStyleSheet::addSubresourceStyleURLs()
   60486 
   60487         Reviewed by Darin Adler.
   60488 
   60489         * css/CSSStyleSheet.cpp:
   60490         (WebCore::CSSStyleSheet::addSubresourceStyleURLs): Replaced
   60491         use of ListHashSet with more efficient Deque.
   60492 
   60493 2008-12-22  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   60494 
   60495         Reviewed by Sam Weinig.
   60496 
   60497         Fix obvious crash fix for WML enabled builds.
   60498 
   60499         * css/CSSStyleSelector.cpp:
   60500         (WebCore::CSSStyleSelector::adjustRenderStyle):
   60501 
   60502 2008-12-22  David Kilzer  <ddkilzer (a] apple.com>
   60503 
   60504         Bug 11850: Webarchive fails to save images referenced in CSS
   60505 
   60506         <https://bugs.webkit.org/show_bug.cgi?id=11850>
   60507 
   60508         Reviewed by Darin Adler.
   60509 
   60510         This entry contains two parts since the tests for adding a
   60511         completeURL() method to StyleSheet and CSSStyleSheet (part 1) depend
   60512         on Bug 11850 being fixed (part 2).
   60513 
   60514         --
   60515 
   60516         Tests: http/tests/webarchive/test-css-url-encoding-shift-jis.html
   60517                http/tests/webarchive/test-css-url-encoding-utf-8.html
   60518                http/tests/webarchive/test-css-url-encoding.html
   60519 
   60520         Added completeURL() methods to StyleSheet and CSSStyleSheet that
   60521         match the behavior of Document::completeURL().  Most notably,
   60522         CSSStyleSheet::completeURL() uses the charset of the stylesheet
   60523         (if it exists) to construct URLs, just like Document::completeURL().
   60524 
   60525         * css/CSSParser.cpp:
   60526         (WebCore::CSSParser::parseValue): Use CSSStyleSheet::completeURL().
   60527         (WebCore::CSSParser::parseContent): Ditto.
   60528         (WebCore::CSSParser::parseFillImage): Ditto.
   60529         (WebCore::CSSParser::parseFontFaceSrc): Ditto.
   60530         (WebCore::CSSParser::parseBorderImage): Ditto.
   60531 
   60532         * css/CSSStyleSheet.cpp:
   60533         (WebCore::CSSStyleSheet::completeURL): Added.
   60534         * css/CSSStyleSheet.h:
   60535         (WebCore::CSSStyleSheet::completeURL): Added declaration.
   60536 
   60537         * css/StyleSheet.cpp:
   60538         (WebCore::StyleSheet::completeURL): Added.
   60539         * css/StyleSheet.h:
   60540         (WebCore::StyleSheet::completeURL): Added declaration.
   60541 
   60542         * dom/Document.cpp:
   60543         (WebCore::Document::completeURL): Added comment referring to the new
   60544         completeURL() methods in StyleSheet and CSSStyleSheet.
   60545 
   60546         --
   60547 
   60548         Tests: webarchive/test-css-url-resources-in-stylesheets.html
   60549                webarchive/test-css-url-resources-inline-styles.html
   60550 
   60551         Walk stylesheets and inline style attributes for url() references
   60552         when building a list of URLs to include in a webarchive.  Note that
   60553         not all URLs found this way will be included in the webarchive if
   60554         they were not used (and thus not downloaded) when laying out the
   60555         page.
   60556 
   60557         The key method for CSS stylesheets is
   60558         CSSStyleSheet::addSubresourceStyleURLs() which iterates over all
   60559         CSSStyleSheet objects recursively referenced from its own stylesheet
   60560         through @import rules.  Starting with the CSSRule objects in each
   60561         sheet and continuing down through the CSSMutableStyleDeclaration and
   60562         CSSValue objects, addSubresourceStyleURLs() methods are called to
   60563         gather URLs.
   60564 
   60565         For inline style attributes in HTML DOM elements,
   60566         StyledElement::addSubresourceAttributeURLs() calls
   60567         CSSMutableStyleDeclaration::addSubresourceStyleURLs() to gather URLs
   60568         from each element, hence the need to call
   60569         addSubresourceAttributeURLs() on superclasses when the method is
   60570         implemented on the element class itself.
   60571 
   60572         * css/CSSBorderImageValue.cpp:
   60573         (WebCore::CSSBorderImageValue::addSubresourceStyleURLs): Added.
   60574         * css/CSSBorderImageValue.h:
   60575         (WebCore::CSSBorderImageValue::addSubresourceStyleURLs): Added
   60576         declaration.
   60577 
   60578         * css/CSSFontFaceRule.cpp:
   60579         (WebCore::CSSFontFaceRule::addSubresourceStyleURLs): Added.
   60580         * css/CSSFontFaceRule.h:
   60581         (WebCore::CSSFontFaceRule::addSubresourceStyleURLs): Added
   60582         declaration.
   60583 
   60584         * css/CSSFontFaceSrcValue.cpp:
   60585         (WebCore::CSSFontFaceSrcValue::addSubresourceStyleURLs): Added.
   60586         * css/CSSFontFaceSrcValue.h:
   60587         (WebCore::CSSFontFaceSrcValue::addSubresourceStyleURLs): Added
   60588         declaration.
   60589 
   60590         * css/CSSImportRule.cpp:
   60591         (WebCore::CSSImportRule::addSubresourceStyleURLs): Added.
   60592         * css/CSSImportRule.h:
   60593         (WebCore::CSSImportRule::addSubresourceStyleURLs): Added
   60594         declaration.
   60595 
   60596         * css/CSSMutableStyleDeclaration.cpp:
   60597         (WebCore::CSSMutableStyleDeclaration::addSubresourceStyleURLs): Added.
   60598         Iterates over m_properties vector of CSSProperty objects calling
   60599         addSubresourceStyleURLs() on each property's CSSValue object.
   60600         * css/CSSMutableStyleDeclaration.h:
   60601         (WebCore::CSSMutableStyleDeclaration::addSubresourceStyleURLs): Added
   60602         declaration.
   60603 
   60604         * css/CSSPrimitiveValue.cpp:
   60605         (WebCore::CSSPrimitiveValue::addSubresourceStyleURLs): Added.
   60606         * css/CSSPrimitiveValue.h:
   60607         (WebCore::CSSPrimitiveValue::addSubresourceStyleURLs): Added
   60608         declaration.
   60609 
   60610         * css/CSSReflectValue.cpp:
   60611         (WebCore::CSSReflectValue::addSubresourceStyleURLs): Added.
   60612         * css/CSSReflectValue.h:
   60613         (WebCore::CSSReflectValue::addSubresourceStyleURLs): Added
   60614         declaration.
   60615 
   60616         * css/CSSRule.h:
   60617         (WebCore::CSSRule::addSubresourceStyleURLs): Added.  Virtual
   60618         method with empty implementation that's overridden by subclasses
   60619         as needed.
   60620 
   60621         * css/CSSStyleRule.cpp:
   60622         (WebCore::CSSStyleRule::addSubresourceStyleURLs): Added.
   60623         * css/CSSStyleRule.h:
   60624         (WebCore::CSSStyleRule::addSubresourceStyleURLs): Added
   60625         declaration.
   60626 
   60627         * css/CSSStyleSheet.cpp:
   60628         (WebCore::CSSStyleSheet::addSubresourceStyleURLs): Updated to
   60629         call CSSRule::addSubresourceStyleURLs on each rule to extract
   60630         URLs.  Removed unneeded baseURL parameter now that the
   60631         completeURL() method exists.
   60632         * css/CSSStyleSheet.h:
   60633         (WebCore::CSSStyleSheet::addSubresourceStyleURLs): Updated
   60634         declaration.
   60635 
   60636         * css/CSSValue.h:
   60637         (WebCore::CSSValue::addSubresourceStyleURLs): Added.  Virtual
   60638         method with empty implementation that's overridden by subclasses
   60639         as needed.
   60640 
   60641         * css/CSSValueList.cpp:
   60642         (WebCore::CSSValueList::addSubresourceStyleURLs): Added.
   60643         Iterates over m_values vector of CSSValue objects calling
   60644         addSubresourceStyleURLs() on each.
   60645         * css/CSSValueList.h:
   60646         (WebCore::CSSValueList::addSubresourceStyleURLs): Added
   60647         declaration.
   60648 
   60649         * css/StyleSheet.h:
   60650         (WebCore::StyleSheet::addSubresourceStyleURLs): Updated
   60651         declaration to remove unneeded baseURL parameter.
   60652 
   60653         * dom/ProcessingInstruction.cpp:
   60654         (WebCore::ProcessingInstruction::addSubresourceAttributeURLs):
   60655         Fixed to use the StyleBase::baseURL() method to get the
   60656         stylesheet's URL instead of calling Document::completeURL().
   60657 
   60658         * dom/StyledElement.cpp:
   60659         (WebCore::StyledElement::addSubresourceAttributeURLs): Added method
   60660         to extract URLs from inline style declarations.
   60661         * dom/StyledElement.h:
   60662         (WebCore::StyledElement::addSubresourceAttributeURLs): Added
   60663         declaration.
   60664 
   60665         * html/HTMLBodyElement.cpp:
   60666         (WebCore::HTMLBodyElement::addSubresourceAttributeURLs): Call
   60667         addSubresourceAttributeURLs() in superclass to extract URLs
   60668         from inline style declarations.
   60669         * html/HTMLEmbedElement.cpp:
   60670         (WebCore::HTMLEmbedElement::addSubresourceAttributeURLs): Ditto.
   60671         * html/HTMLImageElement.cpp:
   60672         (WebCore::HTMLImageElement::addSubresourceAttributeURLs): Ditto.
   60673         * html/HTMLInputElement.cpp:
   60674         (WebCore::HTMLInputElement::addSubresourceAttributeURLs): Ditto.
   60675         * html/HTMLLinkElement.cpp:
   60676         (WebCore::HTMLLinkElement::addSubresourceAttributeURLs): Ditto.
   60677         * html/HTMLObjectElement.cpp:
   60678         (WebCore::HTMLObjectElement::addSubresourceAttributeURLs): Ditto.
   60679         * html/HTMLParamElement.cpp:
   60680         (WebCore::HTMLParamElement::addSubresourceAttributeURLs): Ditto.
   60681         * html/HTMLScriptElement.cpp:
   60682         (WebCore::HTMLScriptElement::addSubresourceAttributeURLs): Ditto.
   60683         * html/HTMLStyleElement.cpp:
   60684         (WebCore::HTMLStyleElement::addSubresourceAttributeURLs): Ditto.
   60685         * html/HTMLTableCellElement.cpp:
   60686         (WebCore::HTMLTableCellElement::addSubresourceAttributeURLs): Ditto.
   60687         * html/HTMLTableElement.cpp:
   60688         (WebCore::HTMLTableElement::addSubresourceAttributeURLs): Ditto.
   60689         * svg/SVGCursorElement.cpp:
   60690         (WebCore::SVGCursorElement::addSubresourceAttributeURLs): Ditto.
   60691         * svg/SVGFEImageElement.cpp:
   60692         (WebCore::SVGFEImageElement::addSubresourceAttributeURLs): Ditto.
   60693         * svg/SVGImageElement.cpp:
   60694         (WebCore::SVGImageElement::addSubresourceAttributeURLs): Ditto.
   60695         * svg/SVGScriptElement.cpp:
   60696         (WebCore::SVGScriptElement::addSubresourceAttributeURLs): Ditto.
   60697 
   60698 2008-12-22  Dhananjoy Chutia  <dhanrd (a] gmail.com>
   60699 
   60700         Reviewed by David Kilzer.
   60701 
   60702         Fixes: https://bugs.webkit.org/show_bug.cgi?id=22959
   60703         Memory leak fixes for WebKit+soup
   60704 
   60705         * platform/network/soup/ResourceHandleSoup.cpp:
   60706         (WebCore::finishedCallback):
   60707 
   60708 2008-12-22  Alexey Proskuryakov  <ap (a] webkit.org>
   60709 
   60710         Reviewed by Darin Adler.
   60711 
   60712         <rdar://problem/6277060> ASSERTION FAILED: !m_cacheBeingUpdated if the manifest is not available
   60713 
   60714         Tests: http/tests/appcache/404-manifest.html
   60715                http/tests/appcache/fail-on-update.html
   60716 
   60717         * loader/appcache/ApplicationCacheGroup.cpp: (WebCore::ApplicationCacheGroup::stopLoading):
   60718         Removed the incorrect assertion.
   60719 
   60720         * loader/appcache/ApplicationCacheGroup.h: Added an explanation of somewhat nonintuitive
   60721         m_currentHandle handling.
   60722 
   60723 2008-12-22  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   60724 
   60725         Reviewed by Alexey Proskuryakov & George Staikos.
   60726 
   60727         Fixes: https://bugs.webkit.org/show_bug.cgi?id=22961
   60728 
   60729         Add WML <fieldset> element support.
   60730         Unlike HTML's <fieldset> element, WML doesn't provide a <legend> child element
   60731         to describe the <fieldset>. WML instead offers a 'title' attribute on the <fieldset>
   60732         element. To integrate within the existing RenderFieldset code, we just create an
   60733         internal <insertedLegend> element as first child for a WML <fieldset> element, containing
   60734         the title attribute value.
   60735 
   60736         * GNUmakefile.am:
   60737         * WebCore.pro:
   60738         * WebCore.vcproj/WebCore.vcproj:
   60739         * WebCore.xcodeproj/project.pbxproj:
   60740         * css/CSSStyleSelector.cpp:
   60741         (WebCore::CSSStyleSelector::adjustRenderStyle):
   60742         * css/wml.css:
   60743         * rendering/RenderFieldset.cpp:
   60744         (WebCore::RenderFieldset::RenderFieldset):
   60745         (WebCore::RenderFieldset::findLegend):
   60746         * rendering/RenderFieldset.h:
   60747         * rendering/RenderLegend.cpp:
   60748         (WebCore::RenderLegend::RenderLegend):
   60749         * rendering/RenderLegend.h:
   60750         * wml/WMLFieldSetElement.cpp: Added.
   60751         (WebCore::WMLFieldSetElement::WMLFieldSetElement):
   60752         (WebCore::WMLFieldSetElement::~WMLFieldSetElement):
   60753         (WebCore::WMLFieldSetElement::parseMappedAttribute):
   60754         (WebCore::WMLFieldSetElement::insertedIntoDocument):
   60755         (WebCore::WMLFieldSetElement::removedFromDocument):
   60756         (WebCore::WMLFieldSetElement::createRenderer):
   60757         * wml/WMLFieldSetElement.h: Added.
   60758         * wml/WMLInsertedLegendElement.cpp: Added.
   60759         (WebCore::WMLInsertedLegendElement::WMLInsertedLegendElement):
   60760         (WebCore::WMLInsertedLegendElement::~WMLInsertedLegendElement):
   60761         (WebCore::WMLInsertedLegendElement::createRenderer):
   60762         * wml/WMLInsertedLegendElement.h: Added.
   60763         * wml/WMLTagNames.in:
   60764 
   60765 2008-12-22  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   60766 
   60767         Not reviewed. Try to fix clean Mac builds, set role=private for FormDataBuilder.h
   60768 
   60769         * WebCore.xcodeproj/project.pbxproj:
   60770 
   60771 2008-12-22  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   60772 
   60773         Rubber-stamped by George Staikos.
   60774 
   60775         Unify all TorchMobile copyright lines. Consolidate in a single line, as requested by Mark Rowe, some time ago.
   60776 
   60777         * css/CSSStyleSelector.cpp:
   60778         * css/wml.css:
   60779         * dom/DOMImplementation.cpp:
   60780         * dom/Document.cpp:
   60781         * dom/Document.h:
   60782         * dom/XMLTokenizer.cpp:
   60783         * dom/XMLTokenizerLibxml2.cpp:
   60784         * dom/XMLTokenizerQt.cpp:
   60785         * history/BackForwardList.cpp:
   60786         * history/BackForwardList.h:
   60787         * loader/FrameLoader.cpp:
   60788         * loader/FrameLoader.h:
   60789         * loader/MainResourceLoader.cpp:
   60790         * page/Page.cpp:
   60791         * page/Page.h:
   60792         * platform/MIMETypeRegistry.cpp:
   60793         * platform/network/FormDataBuilder.cpp:
   60794         * platform/network/FormDataBuilder.h:
   60795         * platform/qt/MIMETypeRegistryQt.cpp:
   60796         * wml/WMLAElement.cpp:
   60797         * wml/WMLAElement.h:
   60798         * wml/WMLAccessElement.cpp:
   60799         * wml/WMLAccessElement.h:
   60800         * wml/WMLAnchorElement.cpp:
   60801         * wml/WMLAnchorElement.h:
   60802         * wml/WMLBRElement.cpp:
   60803         * wml/WMLBRElement.h:
   60804         * wml/WMLCardElement.cpp:
   60805         * wml/WMLCardElement.h:
   60806         * wml/WMLDoElement.cpp:
   60807         * wml/WMLDoElement.h:
   60808         * wml/WMLDocument.cpp:
   60809         * wml/WMLDocument.h:
   60810         * wml/WMLElement.cpp:
   60811         * wml/WMLElement.h:
   60812         * wml/WMLErrorHandling.cpp:
   60813         * wml/WMLErrorHandling.h:
   60814         * wml/WMLEventHandlingElement.cpp:
   60815         * wml/WMLEventHandlingElement.h:
   60816         * wml/WMLGoElement.cpp:
   60817         * wml/WMLGoElement.h:
   60818         * wml/WMLImageElement.cpp:
   60819         * wml/WMLImageElement.h:
   60820         * wml/WMLImageLoader.cpp:
   60821         * wml/WMLImageLoader.h:
   60822         * wml/WMLIntrinsicEvent.cpp:
   60823         * wml/WMLIntrinsicEvent.h:
   60824         * wml/WMLIntrinsicEventHandler.cpp:
   60825         * wml/WMLIntrinsicEventHandler.h:
   60826         * wml/WMLNoopElement.cpp:
   60827         * wml/WMLNoopElement.h:
   60828         * wml/WMLOnEventElement.cpp:
   60829         * wml/WMLOnEventElement.h:
   60830         * wml/WMLPElement.cpp:
   60831         * wml/WMLPElement.h:
   60832         * wml/WMLPageState.cpp:
   60833         * wml/WMLPageState.h:
   60834         * wml/WMLPostfieldElement.cpp:
   60835         * wml/WMLPostfieldElement.h:
   60836         * wml/WMLPrevElement.cpp:
   60837         * wml/WMLPrevElement.h:
   60838         * wml/WMLRefreshElement.cpp:
   60839         * wml/WMLRefreshElement.h:
   60840         * wml/WMLSetvarElement.cpp:
   60841         * wml/WMLSetvarElement.h:
   60842         * wml/WMLTableElement.cpp:
   60843         * wml/WMLTableElement.h:
   60844         * wml/WMLTaskElement.cpp:
   60845         * wml/WMLTaskElement.h:
   60846         * wml/WMLTemplateElement.cpp:
   60847         * wml/WMLTemplateElement.h:
   60848         * wml/WMLTimerElement.cpp:
   60849         * wml/WMLTimerElement.h:
   60850         * wml/WMLVariables.cpp:
   60851         * wml/WMLVariables.h:
   60852 
   60853 2008-12-22  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   60854 
   60855         Reviewed by George Staikos.
   60856 
   60857         Fixes: https://bugs.webkit.org/show_bug.cgi?id=22638
   60858 
   60859         Add POST method support to WMLGoElement. GET & POST over HTTP
   60860         covered by a new set of WML HTTP layout tests.
   60861 
   60862         Tests: http/tests/wml/go-task-get-method-accept-charset.html
   60863                http/tests/wml/go-task-get-method.html
   60864                http/tests/wml/go-task-post-method-accept-charset.html
   60865                http/tests/wml/go-task-post-method.html
   60866 
   60867         * wml/WMLGoElement.cpp:
   60868         (WebCore::WMLGoElement::WMLGoElement):
   60869         (WebCore::WMLGoElement::registerPostfieldElement):
   60870         (WebCore::WMLGoElement::parseMappedAttribute):
   60871         (WebCore::WMLGoElement::executeTask):
   60872         (WebCore::WMLGoElement::preparePOSTRequest):
   60873         (WebCore::WMLGoElement::prepareGETRequest):
   60874         (WebCore::WMLGoElement::createFormData):
   60875         * wml/WMLGoElement.h:
   60876         * wml/WMLPostfieldElement.cpp:
   60877         (WebCore::encodedString):
   60878         (WebCore::WMLPostfieldElement::encodeData):
   60879         * wml/WMLPostfieldElement.h:
   60880 
   60881 2008-12-21  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   60882 
   60883         Reviewed by Darin Adler and George Staikos.
   60884 
   60885         Fixes: https://bugs.webkit.org/show_bug.cgi?id=22949
   60886 
   60887         Refactor HTMLFormElement to share a maximum level of code between HTMLFormElement & WMLGoElement.
   60888         Create a new helper class 'FormDataBuilder', which is hold as member variable in those classes.
   60889         It encapsulates all functionality needed to generate a FormData object, usable for HTML/WML form
   60890         submission, including boundary string generation, multi-part form handling etc.
   60891 
   60892         No functional changes, no test cases affected.
   60893         WMLGoElement will be converted in a follow-up patch.
   60894 
   60895         * GNUmakefile.am:
   60896         * WebCore.pro:
   60897         * WebCore.scons:
   60898         * WebCore.vcproj/WebCore.vcproj:
   60899         * WebCore.xcodeproj/project.pbxproj:
   60900         * WebCoreSources.bkl:
   60901         * html/HTMLFormElement.cpp:
   60902         (WebCore::HTMLFormElement::HTMLFormElement):
   60903         (WebCore::HTMLFormElement::dataEncoding):
   60904         (WebCore::HTMLFormElement::createFormData):
   60905         (WebCore::HTMLFormElement::submit):
   60906         (WebCore::HTMLFormElement::parseMappedAttribute):
   60907         * html/HTMLFormElement.h:
   60908         (WebCore::HTMLFormElement::enctype):
   60909         (WebCore::HTMLFormElement::encoding):
   60910         (WebCore::HTMLFormElement::setEncoding):
   60911         (WebCore::HTMLFormElement::acceptCharset):
   60912         * platform/network/FormDataBuilder.cpp: Added.
   60913         (WebCore::FormDataBuilder::FormDataBuilder):
   60914         (WebCore::FormDataBuilder::~FormDataBuilder):
   60915         (WebCore::FormDataBuilder::parseEncodingType):
   60916         (WebCore::FormDataBuilder::parseMethodType):
   60917         (WebCore::FormDataBuilder::dataEncoding):
   60918         (WebCore::appendString):
   60919         (WebCore::FormDataBuilder::beginMultiPartHeader):
   60920         (WebCore::FormDataBuilder::addBoundaryToMultiPartHeader):
   60921         (WebCore::FormDataBuilder::addFileNameToMultiPartHeader):
   60922         (WebCore::FormDataBuilder::addContentTypeToMultiPartHeader):
   60923         (WebCore::FormDataBuilder::finishMultiPartHeader):
   60924         (WebCore::FormDataBuilder::clear):
   60925         (WebCore::FormDataBuilder::addKeyValuePairAsFormData):
   60926         (WebCore::FormDataBuilder::encodeStringAsFormData):
   60927         (WebCore::FormDataBuilder::generateUniqueBoundaryString):
   60928         * platform/network/FormDataBuilder.h: Added.
   60929         (WebCore::FormDataBuilder::isPostMethod):
   60930         (WebCore::FormDataBuilder::setIsPostMethod):
   60931         (WebCore::FormDataBuilder::isMultiPartForm):
   60932         (WebCore::FormDataBuilder::setIsMultiPartForm):
   60933         (WebCore::FormDataBuilder::encodingType):
   60934         (WebCore::FormDataBuilder::setEncodingType):
   60935         (WebCore::FormDataBuilder::acceptCharset):
   60936         (WebCore::FormDataBuilder::setAcceptCharset):
   60937         (WebCore::FormDataBuilder::encodedData):
   60938         (WebCore::FormDataBuilder::multiPartData):
   60939 
   60940 2008-12-21  Dirk Schulze  <krit (a] webkit.org>
   60941 
   60942         Reviewed by Darin Adler, Nikolas Zimmermann.
   60943 
   60944         Move the the platform dependent strokeBBox functionality out of RenderPath
   60945         into Path with strokeBoundingRect.
   60946 
   60947         RenderPath clean-up for strokeBoundingBox
   60948         [https://bugs.webkit.org/show_bug.cgi?id=22902]
   60949 
   60950         * GNUmakefile.am:
   60951         * WebCore.xcodeproj/project.pbxproj:
   60952         * platform/graphics/GraphicsContext.h:
   60953         * platform/graphics/Path.h:
   60954         * platform/graphics/StrokeStyleApplier.h: Added.
   60955         (WebCore::StrokeStyleApplier::~StrokeStyleApplier):
   60956         * platform/graphics/cairo/PathCairo.cpp:
   60957         (WebCore::Path::strokeBoundingRect):
   60958         * platform/graphics/cg/PathCG.cpp:
   60959         (WebCore::createScratchContext):
   60960         (WebCore::scratchContext):
   60961         (WebCore::Path::strokeBoundingRect):
   60962         * platform/graphics/qt/GraphicsContextQt.cpp:
   60963         (WebCore::GraphicsContext::pen):
   60964         * platform/graphics/qt/PathQt.cpp:
   60965         (WebCore::Path::strokeBoundingRect):
   60966         * rendering/RenderPath.cpp:
   60967         (WebCore::StrokeBoundingRectStyleApplier::StrokeBoundingRectStyleApplier):
   60968         (WebCore::StrokeBoundingRectStyleApplier::strokeStyle):
   60969         (WebCore::RenderPath::relativeBBox):
   60970         * rendering/RenderPath.h:
   60971         * svg/graphics/cairo/RenderPathCairo.cpp:
   60972         * svg/graphics/cg/RenderPathCg.cpp:
   60973         * svg/graphics/qt/RenderPathQt.cpp:
   60974 
   60975 2008-12-20  David Kilzer  <ddkilzer (a] apple.com>
   60976 
   60977         Fix typo "CSSAferRuleValue" to "CSSAfterRuleValue"
   60978 
   60979         * html/PreloadScanner.cpp:
   60980         (WebCore::PreloadScanner::tokenizeCSS):
   60981         * html/PreloadScanner.h:
   60982         (WebCore::PreloadScanner::CSSState):
   60983 
   60984 2008-12-19  Alexey Proskuryakov  <ap (a] webkit.org>
   60985 
   60986         Reviewed by Geoff Garen.
   60987 
   60988         <rdar://problem/6454076> Random crashes on JS raytracer
   60989 
   60990         No test, because the crash is not readily reproducible.
   60991 
   60992         * platform/text/StringImpl.cpp:
   60993         (WebCore::StringImpl::empty):
   60994         * platform/text/StringImpl.h:
   60995         Made empty string per-thread.
   60996 
   60997 2008-12-19  Anders Carlsson  <andersca (a] apple.com>
   60998 
   60999         Reviewed by Sam Weinig.
   61000 
   61001         Replace some uses of HardRetain etc with RetainPtr.
   61002 
   61003         * platform/mac/DragImageMac.mm:
   61004         * platform/mac/SharedBufferMac.mm:
   61005         (WebCore::SharedBuffer::createCFData):
   61006         * rendering/RenderThemeMac.mm:
   61007         * svg/graphics/cg/SVGResourceFilterCg.mm:
   61008         (WebCore::SVGResourceFilter::prepareFilter):
   61009         (WebCore::SVGResourceFilter::applyFilter):
   61010         * svg/graphics/mac/SVGResourceFilterPlatformDataMac.h:
   61011         * svg/graphics/mac/SVGResourceFilterPlatformDataMac.mm:
   61012         (WebCore::SVGResourceFilterPlatformDataMac::SVGResourceFilterPlatformDataMac):
   61013 
   61014 2008-12-19  miggilin  <mr.diggilin (a] gmail.com>
   61015 
   61016         Reviewed by Kevin Ollivier.
   61017 
   61018         Add Context Menu support to wx bindings.
   61019 
   61020         https://bugs.webkit.org/show_bug.cgi?id=22675
   61021 
   61022         * platform/ContextMenu.h:
   61023         * platform/ContextMenuItem.h:
   61024         (WebCore::PlatformMenuItemDescription::PlatformMenuItemDescription):
   61025         * platform/wx/ContextMenuItemWx.cpp: Added.
   61026         * platform/wx/ContextMenuWx.cpp: Added.
   61027         * platform/wx/LocalizedStringsWx.cpp:
   61028         * platform/wx/TemporaryLinkStubs.cpp:
   61029         * webcore-wx.bkl:
   61030 
   61031 
   61032 2008-12-19  Beth Dakin  <bdakin (a] apple.com>
   61033 
   61034         Reviewed by Darin Adler.
   61035 
   61036         Temporary band-aide fix for <rdar://problem/6372481> In Gmail, a
   61037         crash occurs at
   61038         AccessibilityTable::isTableExposableThroughAccessibility() when
   61039         attempting to create a link in a rich text message
   61040 
   61041         We need to disable Accessibility Tables until we get this fixed for
   61042         real to prevent rampant crashing.
   61043 
   61044         * page/AccessibilityTable.cpp:
   61045         (WebCore::AccessibilityTable::AccessibilityTable):
   61046 
   61047 2008-12-19  Simon Fraser  <simon.fraser (a] apple.com>
   61048 
   61049         Reviewed by Darin Adler
   61050 
   61051         https://bugs.webkit.org/show_bug.cgi?id=22938
   61052 
   61053         When the document element is transformed, we need to paint
   61054         the view background to avoid unpainted areas.
   61055 
   61056         Test: fast/transforms/transformed-document-element.html
   61057 
   61058         * rendering/RenderView.cpp:
   61059         (WebCore::RenderView::paintBoxDecorations):
   61060 
   61061 2008-12-19  Steve Falkenburg  <sfalken (a] apple.com>
   61062 
   61063         Fix build.
   61064 
   61065         * WebCore.vcproj/WebCore.vcproj:
   61066 
   61067 2008-12-19  Kevin Ollivier  <kevino (a] theolliviers.com>
   61068 
   61069         wx build fixes after recent changes.
   61070 
   61071         * WebCoreSources.bkl:
   61072         * platform/graphics/wx/ImageSourceWx.cpp:
   61073         (WebCore::ImageSource::clear):
   61074         * webcore-base.bkl:
   61075 
   61076 2008-12-19  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   61077 
   61078         Reviewed by Sam Weinig.
   61079 
   61080         [GTK] Fix make distcheck again
   61081 
   61082         These files were moved to WebCore/platform/animation
   61083         and WebCore/platform/graphics/transforms.
   61084 
   61085         * GNUmakefile.am:
   61086 
   61087 2008-12-19  Gustavo Noronha Silva  <gns (a] gnome.org>
   61088 
   61089         Reviewed by Holger Freyther.
   61090 
   61091         https://bugs.webkit.org/show_bug.cgi?id=22900
   61092 
   61093         Fix AtomicString usage, so that building works.
   61094 
   61095         * platform/network/soup/ResourceHandleSoup.cpp:
   61096 
   61097 2008-12-19  Adam Roben  <aroben (a] apple.com>
   61098 
   61099         Windows build fix on older versions of CFNetwork after r39393
   61100 
   61101         * platform/network/cf/ResourceHandleCFNet.cpp:
   61102         (WebCore::highestSupportedCFURLConnectionClientVersion): Changed
   61103         preprocessor directives not to leave in unreachable code on old
   61104         versions of CFNetwork.
   61105 
   61106 2008-12-19  Antti Koivisto  <antti (a] apple.com>
   61107 
   61108         Comment fix.
   61109 
   61110         * platform/PurgeableBuffer.h:
   61111 
   61112 2008-12-19  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   61113 
   61114         [GTK] Build fix by adding the new files.
   61115 
   61116         * GNUmakefile.am:
   61117 
   61118 2008-12-19  Jade Han <jade.han (a] nokia.com>
   61119 
   61120         Reviewed by Tor Arne Vestb.
   61121 
   61122         [Qt] Allow conversion of JavaScript Number and Boolean types to Qt types
   61123 
   61124         https://bugs.webkit.org/show_bug.cgi?id=22880
   61125 
   61126         * bridge/qt/qt_runtime.cpp:
   61127         (JSC::Bindings::convertValueToQVariant):
   61128 
   61129 2008-12-19  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   61130 
   61131         Reviewed by Holger Freyther.
   61132 
   61133         Implement ImageDecoder::filenameExtension() for Qt
   61134 
   61135         * platform/graphics/qt/ImageDecoderQt.cpp:
   61136         (WebCore::ImageDecoderQt::filenameExtension):
   61137         * platform/graphics/qt/ImageDecoderQt.h:
   61138         * platform/graphics/qt/ImageSourceQt.cpp:
   61139         (WebCore::ImageSource::filenameExtension):
   61140 
   61141 2008-12-19  Adam Barth  <abarth (a] webkit.org>
   61142 
   61143         Reviewed by Darin Alder.
   61144 
   61145         Implement ImageSource::filenameExtension for Cario
   61146           https://bugs.webkit.org/show_bug.cgi?id=22905
   61147 
   61148         * platform/graphics/cairo/ImageSourceCairo.cpp:
   61149         (WebCore::ImageSource::filenameExtension):
   61150         * platform/image-decoders/ImageDecoder.h:
   61151         * platform/image-decoders/bmp/BMPImageDecoder.h:
   61152         (WebCore::BMPImageDecoder::filenameExtension):
   61153         * platform/image-decoders/gif/GIFImageDecoder.h:
   61154         (WebCore::GIFImageDecoder::filenameExtension):
   61155         * platform/image-decoders/ico/ICOImageDecoder.h:
   61156         (WebCore::ICOImageDecoder::filenameExtension):
   61157         * platform/image-decoders/jpeg/JPEGImageDecoder.h:
   61158         (WebCore::JPEGImageDecoder::filenameExtension):
   61159         * platform/image-decoders/png/PNGImageDecoder.h:
   61160         (WebCore::PNGImageDecoder::filenameExtension):
   61161         * platform/image-decoders/xbm/XBMImageDecoder.h:
   61162         (WebCore::XBMImageDecoder::filenameExtension):
   61163 
   61164 2008-12-18  Dan Bernstein  <mitz (a] apple.com>
   61165 
   61166         Reviewed by Sam Weinig.
   61167 
   61168         - avoid using the ResourceHandle-level credential storage, if any,
   61169           unless the client opts to use it; when use of the credential
   61170           storage is disallowed, all authentication challenges are sent to
   61171           the client.
   61172         - let the FrameLoaderClient decide whether to use the credential
   61173           storage.
   61174 
   61175         * loader/EmptyClients.h:
   61176         (WebCore::EmptyFrameLoaderClient::shouldUseCredentialStorage): Added.
   61177         Returns false.
   61178         * loader/FrameLoader.cpp:
   61179         (WebCore::FrameLoader::shouldUseCredentialStorage): Added. Calls through
   61180         to the FrameLoaderClient.
   61181         * loader/FrameLoader.h: Declared shouldUseCredentialStorage().
   61182         * loader/FrameLoaderClient.h: Declared shouldUseCredentialStorage().
   61183         * loader/ResourceLoader.cpp:
   61184         (WebCore::ResourceLoader::shouldUseCredentialStorage): Added. Calls
   61185         through to the FrameLoader.
   61186         * loader/ResourceLoader.h:
   61187         (WebCore::ResourceLoader::shouldUseCredentialStorage): Implemented this
   61188         ResourceHandleClient method.
   61189         * loader/SubresourceLoader.cpp:
   61190         (WebCore::SubresourceLoader::shouldUseCredentialStorage): Added.
   61191         Overrides the ResourceLoader implementation by letting the client
   61192         supply the return value. If the client does not do this, continues
   61193         with the ResourceLoader behavior of asking the FrameLoader.
   61194         * loader/SubresourceLoader.h: Removed an unused #include and declared
   61195         shouldUseCredentialStorage().
   61196         * loader/SubresourceLoaderClient.h:
   61197         (WebCore::SubresourceLoaderClient::getShouldUseCredentialStorage):
   61198         Added a default implementation which returns false, meaning the client
   61199         does not wish to decide whether the credential storage should be used.
   61200         * platform/network/ResourceHandle.h: Removed unused forward declarations.
   61201         Declared a new member function, shouldUseCredentialStorage(), on Mac and
   61202         CFNetwork-using builds.
   61203         * platform/network/ResourceHandleClient.h:
   61204         (WebCore::ResourceHandleClient::shouldUseCredentialStorage): Added this
   61205         default implementation that returns false.
   61206         * platform/network/cf/ResourceHandleCFNet.cpp:
   61207         (WebCore::findCFNetworkModule): Added. Returns a handle to the CFNetwork
   61208         module.
   61209         (WebCore::cfNetworkVersion): Added. Returns the high word of the
   61210         CFNetwork library's product version.
   61211         (WebCore::highestSupportedCFURLConnectionClientVersion): Added. Returns
   61212         the highest version of the CFURLConnectionClient structure supported by
   61213         the CFNetwork library. The only reason to check this at runtime is
   61214         that WebKit may be linking at runtime against an older version of
   61215         CFNetwork than the one it was built with, as is the case with nightly
   61216         builds.
   61217         (WebCore::shouldUseCredentialStorageCallback): Added this
   61218         CFURLConnection callback which calls through to
   61219         ResourceHandle::shouldUseCredentialStorage().
   61220         (WebCore::ResourceHandle::start): Pass a version 3 CFURLConnectionClient
   61221         including the shouldUseCredentialStorage callback. At runtime, clamp the
   61222         client structure version down to the highest supported by CFNetwork.
   61223         (WebCore::ResourceHandle::shouldUseCredentialStorage): Added. Calls through
   61224         to the client if there is one. Otherwise returns false.
   61225         * platform/network/mac/ResourceHandleMac.mm:
   61226         (WebCore::ResourceHandle::shouldUseCredentialStorage): Ditto.
   61227         (-[WebCoreResourceHandleAsDelegate connectionShouldUseCredentialStorage:]):
   61228         Added this delegate method which callls through to
   61229         ResourceHandle::shouldUseCredentialStorage().
   61230 
   61231 2008-12-18  David Kilzer  <ddkilzer (a] apple.com>
   61232 
   61233         Reset role to "Private" on 6 header files to fix clean builds after r39378
   61234 
   61235         Reviewed by BUILD FIX.
   61236 
   61237         * WebCore.xcodeproj/project.pbxproj: Added back "Private" role
   61238         that was lost on 6 headers when they were "moved":
   61239         AffineTransform.h, Animation.h, AnimationList.h,
   61240         TimingFunction.h, TransformOperation.h and
   61241         TransformOperations.h.
   61242 
   61243 2008-12-18  Pamela Greene  <pam (a] chromium.org>
   61244 
   61245         Reviewed by Dan Bernstein.
   61246 
   61247         Add initializer for m_textDirectionSubmenuInclusionBehavior.
   61248         https://bugs.webkit.org/show_bug.cgi?id=22926
   61249 
   61250         * page/Settings.cpp:
   61251         (WebCore::Settings::Settings): Initialize m_textDirectionSubmenuInclusionBehavior
   61252 
   61253 2008-12-18  Sam Weinig  <sam (a] webkit.org>
   61254 
   61255         Reviewed by John Sullivan.
   61256 
   61257         Add new FrameLoaderClient method to indicate the first visually
   61258         non-empty layout based on an heuristic.  Right now that heuristic
   61259         is the first layout after an image, text or plugin has been added
   61260         to the render tree, but I can imagine it becoming much smarter.
   61261 
   61262         * loader/EmptyClients.h:
   61263         (WebCore::EmptyFrameLoaderClient::dispatchDidFirstVisuallyNonEmptyLayout):
   61264         * loader/FrameLoader.cpp:
   61265         (WebCore::FrameLoader::didFirstVisuallyNonEmptyLayout):
   61266         * loader/FrameLoader.h:
   61267         * loader/FrameLoaderClient.h:
   61268         * page/FrameView.cpp:
   61269         (WebCore::FrameViewPrivate::reset):
   61270         (WebCore::FrameView::layout):
   61271         (WebCore::FrameView::performPostLayoutTasks):
   61272         (WebCore::FrameView::setIsVisuallyNonEmpty):
   61273         * page/FrameView.h:
   61274         * rendering/RenderImage.cpp:
   61275         (WebCore::RenderImage::RenderImage):
   61276         * rendering/RenderPartObject.cpp:
   61277         (WebCore::RenderPartObject::RenderPartObject):
   61278         * rendering/RenderText.cpp:
   61279         (WebCore::RenderText::RenderText):
   61280 
   61281 2008-12-18  Darin Adler  <darin (a] apple.com>
   61282 
   61283         Reviewed by Sam Weinig.
   61284 
   61285         - fix <rdar://problem/6449841> reduce memory use of ResourceResponseBase by removing two maps
   61286 
   61287         We were parsing the cache-control and pragma header field values into maps.
   61288         I changed that so instead we only cache two bits with the data we were actually
   61289         using. Later we might want to move this responsibility out of this class entirely;
   61290         we can cache it at the higher level instead.
   61291 
   61292         * loader/CachedResource.cpp:
   61293         (WebCore::CachedResource::mustRevalidate): Changed to call a specific API to get at
   61294         the bits in quest instead of a general "cache control directives" API.
   61295 
   61296         * platform/network/ResourceResponseBase.cpp:
   61297         (WebCore::ResourceResponseBase::setHTTPHeaderField): Remove the logic for the
   61298         pragma header field since no one is using this for now.
   61299         (WebCore::ResourceResponseBase::parseCacheControlDirectives): Eliminated the return
   61300         value and made this function have side effects only. Changed it so it's the caller's
   61301         responsibility to check m_haveParsedCacheControl. Set m_cacheControlContainsNoCache
   61302         and m_cacheControlContainsMustRevalidate rather than keeping a map around.
   61303 
   61304         * platform/network/ResourceResponseBase.h:
   61305         (WebCore::ResourceResponseBase::cacheControlContainsNoCache): Added.
   61306         (WebCore::ResourceResponseBase::cacheControlContainsMustRevalidate): Added.
   61307         (WebCore::ResourceResponseBase::ResourceResponseBase): Updated since I removed
   61308         m_haveParsedCacheControl and renamed m_haveParsedCacheControlHeader to remove
   61309         the imprecise use of the term "header".
   61310 
   61311 2008-12-18  Steve Falkenburg  <sfalken (a] apple.com>
   61312 
   61313         Build fix.
   61314         Delete 2nd copy of code in these files.
   61315 
   61316         * platform/animation/Animation.cpp:
   61317         * platform/animation/Animation.h:
   61318         * platform/animation/AnimationList.cpp:
   61319         * platform/animation/AnimationList.h:
   61320         * platform/animation/TimingFunction.h:
   61321         * platform/graphics/transforms/AffineTransform.cpp:
   61322         * platform/graphics/transforms/AffineTransform.h:
   61323         * platform/graphics/transforms/IdentityTransformOperation.h:
   61324         * platform/graphics/transforms/MatrixTransformOperation.cpp:
   61325         * platform/graphics/transforms/MatrixTransformOperation.h:
   61326         * platform/graphics/transforms/RotateTransformOperation.cpp:
   61327         * platform/graphics/transforms/RotateTransformOperation.h:
   61328         * platform/graphics/transforms/ScaleTransformOperation.cpp:
   61329         * platform/graphics/transforms/ScaleTransformOperation.h:
   61330         * platform/graphics/transforms/SkewTransformOperation.cpp:
   61331         * platform/graphics/transforms/SkewTransformOperation.h:
   61332         * platform/graphics/transforms/TransformOperation.h:
   61333         * platform/graphics/transforms/TransformOperations.cpp:
   61334         * platform/graphics/transforms/TransformOperations.h:
   61335         * platform/graphics/transforms/TranslateTransformOperation.cpp:
   61336         * platform/graphics/transforms/TranslateTransformOperation.h:
   61337 
   61338 2008-12-18  Dimitri Glazkov  <dglazkov (a] chromium.org>
   61339 
   61340         Reviewed by Geoffrey Garen.
   61341 
   61342         https://bugs.webkit.org/show_bug.cgi?id=22859
   61343         Abstract away the use of JSDOMWindow in CachedPage and introduce
   61344         ScriptCachedPageData abstraction.
   61345 
   61346         * GNUmakefile.am: Added ScriptCachedPageData to project.
   61347         * WebCore.pro: Added ScriptCachedPageData to project.
   61348         * WebCore.vcproj/WebCore.vcproj: Added ScriptCachedPageData to project.
   61349         * WebCore.xcodeproj/project.pbxproj: Added ScriptCachedPageData to
   61350             project.
   61351         * bindings/js/ScriptCachedPageData.cpp: Added.
   61352         (WebCore::ScriptCachedPageData::ScriptCachedPageData):
   61353         (WebCore::ScriptCachedPageData::~ScriptCachedPageData):
   61354         (WebCore::ScriptCachedPageData::restore):
   61355         (WebCore::ScriptCachedPageData::clear):
   61356         * bindings/js/ScriptCachedPageData.h: Added.
   61357         * history/CachedPage.cpp: Replaced JSDOMWindow and ProtectedPtr with
   61358             ScriptCachedPageData.
   61359         (WebCore::CachedPage::CachedPage):
   61360         (WebCore::CachedPage::domWindow):
   61361         (WebCore::CachedPage::restore):
   61362         (WebCore::CachedPage::clear):
   61363         * history/CachedPage.h: Replaced JSDOMWindow and ProtectedPtr with
   61364             ScriptCachedPageData.
   61365 
   61366 2008-12-18  Chris Marrin  <cmarrin (a] apple.com>
   61367 
   61368         Reviewed by Dave Hyatt.
   61369 
   61370         https://bugs.webkit.org/show_bug.cgi?id=22888
   61371 
   61372         To avoid future dependency issues, all the TransformOperations and Animation related files need to be moved to platform
   61373 
   61374         * WebCore.xcodeproj/project.pbxproj:
   61375         * platform/animation: Added.
   61376         * platform/animation/Animation.cpp: Copied from WebCore/rendering/style/Animation.cpp.
   61377         * platform/animation/Animation.h: Copied from WebCore/rendering/style/Animation.h.
   61378         * platform/animation/AnimationList.cpp: Copied from WebCore/rendering/style/AnimationList.cpp.
   61379         * platform/animation/AnimationList.h: Copied from WebCore/rendering/style/AnimationList.h.
   61380         * platform/animation/TimingFunction.h: Copied from WebCore/rendering/style/TimingFunction.h.
   61381         * platform/graphics/AffineTransform.cpp: Removed.
   61382         * platform/graphics/AffineTransform.h: Removed.
   61383         * platform/graphics/transforms: Added.
   61384         * platform/graphics/transforms/AffineTransform.cpp: Copied from WebCore/platform/graphics/AffineTransform.cpp.
   61385         * platform/graphics/transforms/AffineTransform.h: Copied from WebCore/platform/graphics/AffineTransform.h.
   61386         * platform/graphics/transforms/IdentityTransformOperation.h: Copied from WebCore/rendering/style/IdentityTransformOperation.h.
   61387         * platform/graphics/transforms/MatrixTransformOperation.cpp: Copied from WebCore/rendering/style/MatrixTransformOperation.cpp.
   61388         * platform/graphics/transforms/MatrixTransformOperation.h: Copied from WebCore/rendering/style/MatrixTransformOperation.h.
   61389         * platform/graphics/transforms/RotateTransformOperation.cpp: Copied from WebCore/rendering/style/RotateTransformOperation.cpp.
   61390         * platform/graphics/transforms/RotateTransformOperation.h: Copied from WebCore/rendering/style/RotateTransformOperation.h.
   61391         * platform/graphics/transforms/ScaleTransformOperation.cpp: Copied from WebCore/rendering/style/ScaleTransformOperation.cpp.
   61392         * platform/graphics/transforms/ScaleTransformOperation.h: Copied from WebCore/rendering/style/ScaleTransformOperation.h.
   61393         * platform/graphics/transforms/SkewTransformOperation.cpp: Copied from WebCore/rendering/style/SkewTransformOperation.cpp.
   61394         * platform/graphics/transforms/SkewTransformOperation.h: Copied from WebCore/rendering/style/SkewTransformOperation.h.
   61395         * platform/graphics/transforms/TransformOperation.h: Copied from WebCore/rendering/style/TransformOperation.h.
   61396         * platform/graphics/transforms/TransformOperations.cpp: Copied from WebCore/rendering/style/TransformOperations.cpp.
   61397         * platform/graphics/transforms/TransformOperations.h: Copied from WebCore/rendering/style/TransformOperations.h.
   61398         * platform/graphics/transforms/TranslateTransformOperation.cpp: Copied from WebCore/rendering/style/TranslateTransformOperation.cpp.
   61399         * platform/graphics/transforms/TranslateTransformOperation.h: Copied from WebCore/rendering/style/TranslateTransformOperation.h.
   61400         * rendering/style/Animation.cpp: Removed.
   61401         * rendering/style/Animation.h: Removed.
   61402         * rendering/style/AnimationList.cpp: Removed.
   61403         * rendering/style/AnimationList.h: Removed.
   61404         * rendering/style/IdentityTransformOperation.h: Removed.
   61405         * rendering/style/MatrixTransformOperation.cpp: Removed.
   61406         * rendering/style/MatrixTransformOperation.h: Removed.
   61407         * rendering/style/RotateTransformOperation.cpp: Removed.
   61408         * rendering/style/RotateTransformOperation.h: Removed.
   61409         * rendering/style/ScaleTransformOperation.cpp: Removed.
   61410         * rendering/style/ScaleTransformOperation.h: Removed.
   61411         * rendering/style/SkewTransformOperation.cpp: Removed.
   61412         * rendering/style/SkewTransformOperation.h: Removed.
   61413         * rendering/style/TimingFunction.h: Removed.
   61414         * rendering/style/TransformOperation.h: Removed.
   61415         * rendering/style/TransformOperations.cpp: Removed.
   61416         * rendering/style/TransformOperations.h: Removed.
   61417         * rendering/style/TranslateTransformOperation.cpp: Removed.
   61418         * rendering/style/TranslateTransformOperation.h: Removed.
   61419 
   61420 2008-12-18  Cameron Zwarich  <zwarich (a] apple.com>
   61421 
   61422         Reviewed by Geoff Garen.
   61423 
   61424         Bug 21855: REGRESSION (r37323): Gmail complains about popup blocking when opening a link
   61425         <https://bugs.webkit.org/show_bug.cgi?id=21855>
   61426         <rdar://problem/6278244>
   61427 
   61428         If JavaScript is not currently executing, the handleEvent member function
   61429         of JSAbstractEventListener should set the dynamic global object to the
   61430         global object of the context in which the event occurred.
   61431 
   61432         If this is not set, then JavaScriptCore will simply take the global object
   61433         of the context where the event handler function was created, which may be
   61434         a different frame. This will cause the popup blocker to incorrectly block
   61435         windows opened from onclick events inside of an iframe whose handler was
   61436         created in the outer frame, as it will check the outer frame and see that
   61437         it is not processing any events.
   61438 
   61439         * bindings/js/JSEventListener.cpp:
   61440         (WebCore::JSAbstractEventListener::handleEvent):
   61441 
   61442 2008-12-17  Simon Fraser  <simon.fraser (a] apple.com>
   61443 
   61444         Reviewed by Dave Hyatt
   61445 
   61446         https://bugs.webkit.org/show_bug.cgi?id=22570
   61447 
   61448         Add the ability to compute clip rects independently from
   61449         caching them on the RenderLayer. When painting reflections, use
   61450         such temporarily computed clipRects, otherwise the layer may cache
   61451         clipRects which are invalid, since they have been computed with
   61452         a rootLayer that is not the one usually used to paint.
   61453 
   61454         Test: fast/reflections/reflection-overflow-hidden.html
   61455 
   61456         * rendering/RenderLayer.cpp:
   61457         (WebCore::RenderLayer::paintLayer):
   61458         (WebCore::RenderLayer::hitTestLayer):
   61459         (WebCore::RenderLayer::updateClipRects):
   61460         (WebCore::RenderLayer::calculateClipRects):
   61461         (WebCore::RenderLayer::calculateRects):
   61462         * rendering/RenderLayer.h:
   61463         (WebCore::ClipRects::ClipRects):
   61464         (WebCore::ClipRects::reset):
   61465         (WebCore::ClipRects::overflowClipRect):
   61466         (WebCore::ClipRects::setOverflowClipRect):
   61467         (WebCore::ClipRects::fixedClipRect):
   61468         (WebCore::ClipRects::setFixedClipRect):
   61469         (WebCore::ClipRects::posClipRect):
   61470         (WebCore::ClipRects::setPosClipRect):
   61471         (WebCore::ClipRects::setFixed):
   61472         (WebCore::ClipRects::operator==):
   61473         (WebCore::ClipRects::operator=):
   61474         * rendering/RenderReplica.cpp:
   61475         (WebCore::RenderReplica::paint):
   61476 
   61477 2008-12-17  Laszlo Gombos  <laszlo.1.gombos (a] nokia.com>
   61478 
   61479         Reviewed by Simon Hausmann.
   61480 
   61481         https://bugs.webkit.org/show_bug.cgi?id=22618
   61482 
   61483         Fix MinGW QtWebKit linking problems and also make the
   61484         QtWebKit build system more robust.
   61485 
   61486         * WebCore.pro:
   61487 
   61488 2008-12-17  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   61489 
   61490         Reviewed by Maciej Stachowiak.
   61491 
   61492         Fixes: https://bugs.webkit.org/show_bug.cgi?id=22866
   61493 
   61494         wml.css is based on an older copy of html4.css. Synchronize them.
   61495         Remove all entries, that are irrelevant for WML.
   61496 
   61497         Fix <do> appearance: should behave like HTMLs <button>.
   61498 
   61499         * css/wml.css:
   61500 
   61501 2008-12-17  Yury Semikhatsky <yurys (a] google.com>
   61502 
   61503         Reviewed by Timothy Hatcher.
   61504         Landed by Adam Barth.
   61505 
   61506         Added more checks that WebInspector.panels.{resources,scripts} are
   61507         defined where they are accessed from other panels and WebInspector
   61508         (some panels are not yet supported in Chrome).
   61509 
   61510         * inspector/front-end/Console.js:
   61511         (WebInspector.Console.prototype.addMessage):
   61512         (WebInspector.Console.prototype.clearMessages):
   61513         (WebInspector.Console.prototype.completions):
   61514         * inspector/front-end/ObjectPropertiesSection.js:
   61515         (WebInspector.ObjectPropertyTreeElement.prototype.evaluateExpression):
   61516         * inspector/front-end/ScriptsPanel.js:
   61517         (WebInspector.ScriptsPanel.prototype.get searchableViews):
   61518         (WebInspector.ScriptsPanel.prototype._sourceViewForScriptOrResource):
   61519         (WebInspector.ScriptsPanel.prototype._sourceFrameForScriptOrResource):
   61520         (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
   61521         * inspector/front-end/SourceView.js:
   61522         (WebInspector.SourceView.prototype._addBreakpoint):
   61523         * inspector/front-end/inspector.js:
   61524         (WebInspector.addResource):
   61525         (WebInspector.removeResource):
   61526         (WebInspector.showResourceForURL):
   61527 
   61528 2008-12-17  Cary Clark  < caryclark (a] google.com>
   61529 
   61530         Reviewed by Darin Adler.
   61531         Landed by Adam Barth.
   61532 
   61533         Add ENABLE_TEXT_CARET to permit the ANDROID platform
   61534         to invalidate and draw the caret in a separate thread.
   61535 
   61536         * page/Frame.cpp:
   61537         (WebCore::Frame::clearCaretRectIfNeeded): Body of
   61538         function does nothing if text caret is disabled.
   61539         (WebCore::Frame::selectionLayoutChanged): Do nothing
   61540         if text caret is disabled and the caret only blinked.
   61541         (WebCore::Frame::caretBlinkTimerFired):
   61542         (WebCore::Frame::paintCaret):
   61543         (WebCore::Frame::paintDragCaret): Body of
   61544         functions does nothing if text caret is disabled.
   61545 
   61546 2008-12-16  Darin Adler  <darin (a] apple.com>
   61547 
   61548         Reviewed and landed by Cameron Zwarich.
   61549 
   61550         Change the style of AtomicString::add() to match Identifier:add().
   61551 
   61552         * platform/text/AtomicString.cpp:
   61553         (WebCore::AtomicString::add):
   61554 
   61555 2008-12-16  Adele Peterson  <adele (a] apple.com>
   61556 
   61557         Reviewed by Darin Adler.
   61558 
   61559         Fix for https://bugs.webkit.org/show_bug.cgi?id=22827
   61560         <rdar://problem/6247724> RenderThemeWin buttons have weird heavy text
   61561 
   61562         * rendering/RenderThemeWin.cpp:
   61563         (WebCore::fillFontDescription): Add version that takes a font size.
   61564         (WebCore::RenderThemeWin::systemFont): Use the default GUI font for control fonts, but specify the size.
   61565         This will match Firefox.
   61566 
   61567 2008-12-16  Stephanie Lewis  <slewis (a] apple.com>
   61568 
   61569         Another build fix.
   61570 
   61571         * platform/text/AtomicString.h:
   61572         (WebCore::AtomicString::AtomicString):
   61573 
   61574 2008-12-16  Stephanie Lewis  <slewis (a] apple.com>
   61575 
   61576         Windows Build Fix.
   61577 
   61578         * platform/text/AtomicString.h:
   61579         (WebCore::AtomicString::AtomicString):
   61580         (WebCore::AtomicString::createCFString):
   61581 
   61582 2008-12-16  Peter Kasting  <pkasting (a] google.com>
   61583 
   61584         Reviewed by David Hyatt.
   61585 
   61586         https://bugs.webkit.org/show_bug.cgi?id=22885
   61587         Fix memory corruption in GIFImageDecoder.cpp with certain GIFs.
   61588 
   61589         * platform/image-decoders/gif/GIFImageDecoder.cpp:
   61590         (WebCore::GIFImageDecoder::frameComplete):
   61591 
   61592 2008-12-16  Stephanie Lewis  <slewis (a] apple.com>
   61593 
   61594         Reviewed by Geoff Garen.
   61595 
   61596         Change HTTPHeaderMap to use an AtomicString as its key.
   61597         Shaves ~1MB off of the Mozilla Memory Test
   61598         No functionality difference
   61599 
   61600         * WebCore.xcodeproj/project.pbxproj:
   61601         * inspector/InspectorController.cpp:
   61602         (WebCore::addHeaders):
   61603         * loader/appcache/ApplicationCacheStorage.cpp:
   61604         (WebCore::parseHeader):
   61605         * platform/network/HTTPHeaderMap.h:
   61606         * platform/network/ResourceRequestBase.cpp:
   61607         (WebCore::ResourceRequestBase::httpHeaderField):
   61608         (WebCore::ResourceRequestBase::setHTTPHeaderField):
   61609         (WebCore::ResourceRequestBase::addHTTPHeaderField):
   61610         * platform/network/ResourceRequestBase.h:
   61611         * platform/network/ResourceResponseBase.cpp:
   61612         (WebCore::ResourceResponseBase::httpHeaderField):
   61613         (WebCore::ResourceResponseBase::setHTTPHeaderField):
   61614         * platform/network/ResourceResponseBase.h:
   61615         * platform/text/StringHash.h:
   61616         (WebCore::CaseFoldingHash::hash):
   61617         (WebCore::CaseFoldingHash::equal):
   61618         * xml/XMLHttpRequest.cpp:
   61619         (WebCore::isSetCookieHeader):
   61620         (WebCore::XMLHttpRequest::setRequestHeader):
   61621         (WebCore::XMLHttpRequest::setRequestHeaderInternal):
   61622         (WebCore::XMLHttpRequest::getRequestHeader):
   61623         (WebCore::XMLHttpRequest::getResponseHeader):
   61624         * xml/XMLHttpRequest.h:
   61625 
   61626 2008-12-16  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   61627 
   61628         Reviewed by Darin Adler.
   61629 
   61630         Fixes: https://bugs.webkit.org/show_bug.cgi?id=22876
   61631 
   61632         Remove legacy randomNumber() functionality from HTMLFormElement, and use the new wtf/RandomNumber.h.
   61633         Also remove an uneeded QFileInfo include while I'm at it - there is no Qt usage in this file.
   61634 
   61635         * ForwardingHeaders/wtf/RandomNumber.h: Added.
   61636         * html/HTMLFormElement.cpp:
   61637         (WebCore::getUniqueBoundaryString):
   61638 
   61639 2008-12-16 Yael Aharon <yael.aharon (a] nokia.com>
   61640 
   61641         Reviewed by Tor Arne Vestb.
   61642 
   61643         Qt/Win build fix
   61644 
   61645         * platform/win/SystemTimeWin.cpp:
   61646 
   61647 2008-12-16  Kalle Vahlman  <kalle.vahlman (a] movial.com>
   61648 
   61649         Reviewed by Holger Freyther.
   61650 
   61651         [CURL] memory leak of ResouceHandles
   61652         http://bugs.webkit.org/show_bug.cgi?id=20777
   61653 
   61654         Fix ResourceHandle ref management to be consistent and correct.
   61655         Original patch from Marco Barisione.
   61656 
   61657         * platform/network/curl/ResourceHandleCurl.cpp:
   61658         (WebCore::ResourceHandle::start):
   61659         * platform/network/curl/ResourceHandleManager.cpp:
   61660         (WebCore::ResourceHandleManager::removeFromCurl):
   61661         (WebCore::ResourceHandleManager::add):
   61662         (WebCore::ResourceHandleManager::removeScheduledJob):
   61663 
   61664 2008-12-16  Simon Hausmann  <simon.hausmann (a] nokia.com>
   61665 
   61666         Fix the Qt build.
   61667 
   61668         * platform/graphics/qt/ImageSourceQt.cpp:
   61669         (WebCore::ImageSource::clear): Adjust to new signature.
   61670 
   61671 2008-12-15  Mark Rowe  <mrowe (a] apple.com>
   61672 
   61673         Rubber-stamped by Cameron Zwarich.
   61674 
   61675         <rdar://problem/6289933> Change WebKit-related projects to build with GCC 4.2 on Leopard.
   61676 
   61677         * Configurations/Base.xcconfig:
   61678         * Configurations/DebugRelease.xcconfig:
   61679 
   61680 2008-12-15  Adele Peterson  <adele (a] apple.com>
   61681 
   61682         Reviewed by Darin Adler.
   61683 
   61684         Fix for https://bugs.webkit.org/show_bug.cgi?id=22871
   61685         <rdar://problem/6417316> RenderThemeWin buttons are too short/thin
   61686 
   61687         * rendering/RenderButton.cpp: (WebCore::RenderButton::setupInnerStyle):
   61688         Check if the button's style (not the new inner style) has appearance set to determine whether we should set padding on the inner style.
   61689 
   61690 2008-12-15  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   61691 
   61692         Reviewed by Oliver Hunt.
   61693 
   61694         Fixes: https://bugs.webkit.org/show_bug.cgi?id=22865
   61695 
   61696         Add complete WML <table> / <tr> / <td> element support.
   61697         Proper handling of all table related attributes, including tests.
   61698 
   61699         Tests: fast/wml/table-element-align-attribute-invalid.wml (variable reference in 'align' attribute, raises error)
   61700                fast/wml/table-element-columns-attribute-invalid-number.wml (columns='0', raises error)
   61701                fast/wml/table-element-columns-attribute-invalid.wml (non-numeric 'columns' attribute value, raises error)
   61702                fast/wml/table-element-columns-attribute-missing.wml (missing 'columns')
   61703                fast/wml/table-element-columns-attribute.wml (test 'columns' attribute and <td> count mismatches)
   61704 
   61705         * GNUmakefile.am:
   61706         * WebCore.pro:
   61707         * WebCore.vcproj/WebCore.vcproj:
   61708         * WebCore.xcodeproj/project.pbxproj:
   61709         * rendering/RenderObject.cpp:
   61710         (WebCore::RenderObject::offsetParent):
   61711         * rendering/RenderTableRow.cpp:
   61712         (WebCore::RenderTableRow::addChild):
   61713         * wml/WMLTableElement.cpp: Added.
   61714         (WebCore::WMLTableElement::WMLTableElement):
   61715         (WebCore::WMLTableElement::~WMLTableElement):
   61716         (WebCore::WMLTableElement::mapToEntry):
   61717         (WebCore::WMLTableElement::parseMappedAttribute):
   61718         (WebCore::WMLTableElement::finishParsingChildren):
   61719         * wml/WMLTableElement.h: Added.
   61720         * wml/WMLTagNames.in:
   61721 
   61722 2008-12-15  Darin Adler  <darin (a] apple.com>
   61723 
   61724         Reviewed by Sam Weinig.
   61725 
   61726         - fix <rdar://problem/6427048> crash due to infinite recursion after setting window.__proto__ = window
   61727 
   61728         Test: fast/dom/Window/window-custom-prototype.html
   61729 
   61730         Replaced toGlobalObject with the more generally useful unwrappedObject.
   61731 
   61732         * bindings/js/JSDOMWindowShell.cpp:
   61733         (WebCore::JSDOMWindowShell::unwrappedObject): Added.
   61734         * bindings/js/JSDOMWindowShell.h: Declared unwrappedObject.
   61735         * bindings/js/JSQuarantinedObjectWrapper.h:
   61736         (WebCore::JSQuarantinedObjectWrapper::unwrappedObject): Ditto.
   61737 
   61738 2008-12-15  Gustavo Noronha Silva  <kov (a] kov.eti.br>
   61739 
   61740         Reviewed by Mark Rowe.
   61741 
   61742         https://bugs.webkit.org/show_bug.cgi?id=22686
   61743 
   61744         GTK+ build fix.
   61745 
   61746         * GNUmakefile.am:
   61747 
   61748 2008-12-15  Sam Weinig  <sam (a] webkit.org>
   61749 
   61750         Reviewed by Darin Adler.
   61751 
   61752         Fix for https://bugs.webkit.org/show_bug.cgi?id=22847
   61753         Geolocation PositionOptions cannot be an arbitrary object.
   61754 
   61755         Allow the PositionOptions to be a vanilla JS object and parse it
   61756         appropriately.
   61757 
   61758         * DerivedSources.make: Remove PositionOptions.
   61759         * GNUmakefile.am: Ditto.
   61760         * WebCore.pro: Ditto.
   61761         * WebCore.vcproj/WebCore.vcproj: Ditto.
   61762         * WebCore.xcodeproj/project.pbxproj: Ditto.
   61763         * WebCoreSources.bkl: Ditto.
   61764 
   61765         * bindings/js/JSGeolocationCustom.cpp:
   61766         (WebCore::createPositionOptions): Added. Extracts the enableHighAccuracy
   61767         and timeout fields from a vanilla JS object in order to create the
   61768         PositionOptions object, checking for exceptions as necessary.
   61769         (WebCore::JSGeolocation::getCurrentPosition): Use createPositionOptions
   61770         instead of toPositionOptions.
   61771         (WebCore::JSGeolocation::watchPosition): Ditto.
   61772         * page/PositionOptions.idl: Removed
   61773 
   61774 2008-12-15  Peter Kasting  <pkasting (a] google.com>
   61775 
   61776         Reviewed by David Hyatt.
   61777 
   61778         https://bugs.webkit.org/show_bug.cgi?id=22108
   61779         Large animated GIFs weren't always animating.  The code that deleted
   61780         the entire decoder after each frame of a large image was resulting in
   61781         us forgetting the loop count, breaking animations intermittently.
   61782 
   61783         Instead of throwing the whole decoder away, we're more careful to just
   61784         delete frames we don't care about.  This additionally addresses
   61785         problems in the Cairo and Chromium ports with excessive peak memory
   61786         use and CPU use when decoding large animated GIFs because it leads to
   61787         much less redecoding (O(n) instead of O(n^2) CPU, and O(1) instead of
   61788         O(n) memory).
   61789 
   61790         This change has less impact on the CG decoder, which seems to throw
   61791         away frames automatically when their external references are dropped;
   61792         this means the CG decoder didn't suffer from the peak memory usage
   61793         issue before (and still doesn't), but it also still burns excessive
   61794         CPU redecoding earlier frames, that in theory it wouldn't need to
   61795         redecode if it would judiciously save the most recent frames.  At
   61796         least this patch plumbs some useful info to the ImageSource so it can
   61797         help guide the CG decoder heuristics in the future.
   61798 
   61799         * platform/graphics/BitmapImage.cpp:
   61800         (WebCore::frameBytes):
   61801         (WebCore::BitmapImage::destroyDecodedData):
   61802         (WebCore::BitmapImage::destroyDecodedDataIfNecessary):
   61803         (WebCore::BitmapImage::destroyMetadataAndNotify):
   61804         (WebCore::BitmapImage::clearFrame):
   61805         (WebCore::BitmapImage::cacheFrame):
   61806         (WebCore::BitmapImage::dataChanged):
   61807         (WebCore::BitmapImage::startAnimation):
   61808         (WebCore::BitmapImage::resetAnimation):
   61809         (WebCore::BitmapImage::internalAdvanceAnimation):
   61810         * platform/graphics/BitmapImage.h:
   61811         * platform/graphics/GeneratedImage.h:
   61812         (WebCore::GeneratedImage::destroyDecodedData):
   61813         * platform/graphics/Image.h:
   61814         * platform/graphics/ImageSource.h:
   61815         * platform/graphics/cairo/ImageSourceCairo.cpp:
   61816         (WebCore::ImageSource::~ImageSource):
   61817         (WebCore::ImageSource::clear):
   61818         * platform/graphics/cg/ImageSourceCG.cpp:
   61819         (WebCore::ImageSource::~ImageSource):
   61820         (WebCore::ImageSource::clear):
   61821         * platform/graphics/cg/PDFDocumentImage.h:
   61822         (WebCore::PDFDocumentImage::destroyDecodedData):
   61823         * platform/graphics/qt/StillImageQt.h:
   61824         (WebCore::StillImage::destroyDecodedData):
   61825         * platform/image-decoders/ImageDecoder.h:
   61826         (WebCore::RGBA32Buffer::clear):
   61827         (WebCore::ImageDecoder::clearFrameBufferCache):
   61828         * platform/image-decoders/gif/GIFImageDecoder.cpp:
   61829         (WebCore::GIFImageDecoder::repetitionCount):
   61830         (WebCore::GIFImageDecoder::clearFrameBufferCache):
   61831         (WebCore::GIFImageDecoder::initFrameBuffer):
   61832         * platform/image-decoders/gif/GIFImageDecoder.h:
   61833         * platform/image-decoders/gif/GIFImageReader.h:
   61834         (GIFImageReader::GIFImageReader):
   61835         * svg/graphics/SVGImage.h:
   61836         (WebCore::SVGImage::destroyDecodedData):
   61837 
   61838 2008-12-15  Cameron Zwarich  <zwarich (a] apple.com>
   61839 
   61840         Reviewed by Darin Adler.
   61841 
   61842         Bug 22562: REGRESSION (r37971): events not firing after going back in back/forward cache
   61843         <https://bugs.webkit.org/show_bug.cgi?id=22562>
   61844         <rdar://problem/6414593>
   61845 
   61846         Restore the Frame's DOMWindow to its previous value when going back in
   61847         the back/forward cache. The fact that it was not getting set before may
   61848         have always caused some subtle bugs with the back/forward cache, but
   61849         after r37971, it causes no events to fire after restoring a page.
   61850 
   61851         Previously, ScriptController::clearScriptObjects() was calling
   61852         clearPlatformScriptObjects(), which was not actually clearing any
   61853         objects, only updating them to reflect some change in state. Since the
   61854         window shell was not updated until after the call to clearScriptObjects(),
   61855         this didn't actually make that much sense.
   61856 
   61857         We rename clearPlatformScriptObjects() to reflect its actual purpose and
   61858         call it after the window shell has been updated rather than before.
   61859 
   61860         Unfortunately, there is no way to test this with a layout test because
   61861         it involves the back/forward cache.
   61862 
   61863         * bindings/js/ScriptController.cpp:
   61864         (WebCore::ScriptController::updatePlatformScriptObjects): Renamed from
   61865         clearPlatformScriptObjects(), because the only nonempty implementation
   61866         doesn't actually clear any objects, it updates them. Also made public.
   61867         (WebCore::ScriptController::clearScriptObjects): Remove the call to
   61868         clearPlatformScriptObjects().
   61869         * bindings/js/ScriptController.h:
   61870         * bindings/js/ScriptControllerMac.mm:
   61871         (WebCore::ScriptController::updatePlatformScriptObjects):
   61872         * history/CachedPage.cpp:
   61873         (WebCore::CachedPage::domWindow): Added.
   61874         * history/CachedPage.h:
   61875         * loader/FrameLoader.cpp:
   61876         (WebCore::FrameLoader::cancelAndClear): Added call to updatePlatformScriptObjects().
   61877         (WebCore::FrameLoader::begin): Added call to updatePlatformScriptObjects().
   61878         (WebCore::FrameLoader::open): Added call to updatePlatformScriptObjects().
   61879         * page/Frame.cpp:
   61880         (WebCore::Frame::setDOMWindow): Added.
   61881         (WebCore::Frame::pageDestroyed): Added call to updatePlatformScriptObjects().
   61882         * page/Frame.h:
   61883 
   61884 2008-12-15  Antti Koivisto  <antti (a] apple.com>
   61885 
   61886         Reviewed by Darin Adler.
   61887 
   61888         When a resource is cached locally, WebKit should follow RFC 2616 "Specific end-to-end revalidation" instead of "Unspecified end-to-end revalidation"
   61889         https://bugs.webkit.org/show_bug.cgi?id=17998
   61890 
   61891         - Enable conditional revalidation for reloads by default.
   61892         - Add a parameter to FrameLoader::reload() for forcing end-to-end reload.
   61893         - To avoid duplicating state remove m_cachePolicy variables from FrameLoader and DocLoader.
   61894           Instead synthezise the policy on demand.
   61895 
   61896         This speeds up reloads and makes them use way less bandwidth.
   61897 
   61898         * WebCore.base.exp:
   61899         * loader/CachePolicy.h: Rename CachePolicyRefresh to CachePolicyRevalidate.
   61900         (WebCore::):
   61901         * loader/DocLoader.cpp:
   61902         (WebCore::DocLoader::DocLoader):
   61903         (WebCore::DocLoader::checkForReload): Support CachePolicyRevalidate.
   61904         (WebCore::DocLoader::requestResource):
   61905         (WebCore::DocLoader::cachePolicy):
   61906         * loader/DocLoader.h: Get rid of m_cachePolicy member.
   61907         * loader/FrameLoader.cpp:
   61908         (WebCore::ScheduledRedirection::ScheduledRedirection):
   61909             Add parameter to differentiate refresh from other types of redirects.
   61910             m_cachePolicy was used for signaling this before.
   61911         (WebCore::isBackForwardLoadType):
   61912         (WebCore::FrameLoader::FrameLoader):
   61913         (WebCore::FrameLoader::changeLocation):
   61914         (WebCore::FrameLoader::stopLoading):
   61915         (WebCore::FrameLoader::receivedFirstData):
   61916         (WebCore::FrameLoader::write):
   61917         (WebCore::FrameLoader::startIconLoader):
   61918         (WebCore::FrameLoader::restoreDocumentState):
   61919         (WebCore::FrameLoader::scheduleHTTPRedirection):
   61920         (WebCore::FrameLoader::scheduleLocationChange):
   61921         (WebCore::FrameLoader::scheduleRefresh):
   61922         (WebCore::FrameLoader::redirectionTimerFired):
   61923         (WebCore::FrameLoader::canCachePage):
   61924         (WebCore::FrameLoader::loadURL):
   61925         (WebCore::FrameLoader::reload):
   61926             Differentiate between revalidation and reload.
   61927             No need to use setHTTPHeaderField here, addExtraFieldsToRequest will set the headers.
   61928         (WebCore::FrameLoader::transitionToCommitted):
   61929         (WebCore::FrameLoader::cachePolicy): Determine the cache policy based on current load type.
   61930         (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
   61931         (WebCore::FrameLoader::addExtraFieldsToRequest): Set Cache-control: no-cache for FrameLoadTypeReloadFromOrigin
   61932         (WebCore::FrameLoader::shouldScrollToAnchor):
   61933         (WebCore::FrameLoader::loadItem):
   61934         (WebCore::FrameLoader::updateHistoryForReload):
   61935         (WebCore::FrameLoader::updateHistoryForCommit):
   61936         (WebCore::FrameLoader::switchOutLowBandwidthDisplayIfReady):
   61937         * loader/FrameLoader.h:
   61938         * loader/FrameLoaderTypes.h: Add FrameLoadTypeReloadFromOrigin
   61939         (WebCore::):
   61940         * loader/NavigationAction.cpp:
   61941         (WebCore::navigationType):  Support FrameLoadTypeReloadFromOrigin
   61942         * loader/loader.cpp:
   61943         (WebCore::Loader::Host::servePendingRequests):
   61944 
   61945 2008-12-15  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   61946 
   61947         Reviewed by Simon Hausmann.
   61948 
   61949         Add null checks to PlatformScreenQt
   61950 
   61951         The other ports do the null checks and JSDOMWindowBase is
   61952         at least one caller that is passing 0.
   61953 
   61954         * platform/qt/PlatformScreenQt.cpp:
   61955         (WebCore::screenDepth):
   61956         (WebCore::screenDepthPerComponent):
   61957         (WebCore::screenIsMonochrome):
   61958         (WebCore::screenRect):
   61959         (WebCore::screenAvailableRect):
   61960 
   61961 2008-12-15  Alexey Proskuryakov  <ap (a] webkit.org>
   61962 
   61963         Reviewed by Oliver Hunt.
   61964 
   61965         <rdar://problem/6444455> Worker Thread crash running multiple workers for a moderate amount of time
   61966 
   61967         * dom/WorkerThread.cpp: (WebCore::WorkerThread::workerThread):
   61968         Detach the thread. Without this, one page of its stack was never unmmaped, and fragmentation
   61969         made RegisterFile allocaiton fail after a while.
   61970 
   61971 2008-12-13  Darin Adler  <darin (a] apple.com>
   61972 
   61973         Reviewed by Sam Weinig.
   61974 
   61975         - half of https://bugs.webkit.org/show_bug.cgi?id=17425
   61976           eliminate DeprecatedPtrList
   61977 
   61978         * dom/Document.cpp:
   61979         (WebCore::Document::removeImage): Change to set slots in the vector
   61980         to 0 rather than removing items from a list.
   61981         (WebCore::Document::dispatchImageLoadEventsNow): Rewrite to process
   61982         the list. Since we now use a "set to zero" design, we don't need to
   61983         be careful about where the iterator points while iterating the list,
   61984         instead we just have to skip zeros.
   61985 
   61986         * dom/Document.h: Use Vector instead of DeprecatedPtrList.
   61987 
   61988         * dom/EventTargetNode.cpp:
   61989         (WebCore::EventTargetNode::dispatchGenericEvent): Use a Vector instead
   61990         of a DeprecatedPtrList for the list of nodes to handle. Also streamlined
   61991         the logic a bit and used goto in a couple key places.
   61992 
   61993         * dom/Node.cpp:
   61994         (WebCore::Node::eventParentNode): Moved this function into this file
   61995         because it's a virtual function so already can't be inlined. Also updated
   61996         to return a ContainerNode, so it needs to be in a place where the
   61997         definition of ContainerNode is visible, not the header file.
   61998 
   61999         * dom/Node.h: Changed return type of eventParentNode to ContainerNode
   62000         and moved its definition into the cpp file.
   62001 
   62002         * dom/XMLTokenizerLibxml2.cpp:
   62003         (WebCore::PendingCallbacks::~PendingCallbacks): Added a call to
   62004         deleteAllValues here instead of setAutoDelete in the constructor, since
   62005         we're using Deque instead of DeprecatedPtrList.
   62006         (WebCore::PendingCallbacks::callAndRemoveFirstCallback): Changed the
   62007         code to use an OwnPtr since the deque won't delete the callback object.
   62008 
   62009         * editing/ApplyStyleCommand.cpp:
   62010         (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange): Use a
   62011         Vector instead of a DeprecatedPtrList.
   62012 
   62013         * svg/SVGElement.cpp:
   62014         (WebCore::SVGElement::eventParentNode): Moved this function into this file
   62015         because it's a virtual function so already can't be inlined. Also updated
   62016         to return a ContainerNode.
   62017 
   62018         * svg/SVGElement.h: Changed setShadowParentNode to take a ContainerNode*,
   62019         made eventParentNode return a ContainerNode*, and made m_shadowParent a
   62020         ContainerNode*.
   62021 
   62022 2008-12-14  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   62023 
   62024         Reviewed by George Staikos.
   62025 
   62026         Fixes: https://bugs.webkit.org/show_bug.cgi?id=22857
   62027 
   62028         Jumps within a WML deck using <go> task elements fail. Manual reloading
   62029         is necessary to display the page - fix cache-policy in WMLGoElement::executeTask
   62030         to prevent the problem.
   62031 
   62032         Refactor setActiveCardInDocument in two new functions: findNamedCardInDocument
   62033         and determineActiveCard, to fix a side-effect of executing a <go> task:
   62034         when switching cards within a deck the active card was changed before the load
   62035         was fired which resulted in a flash effect on the screen, and doing unnecessary work.
   62036 
   62037         Test: wml/go-task-animation.html
   62038 
   62039         * wml/WMLCardElement.cpp:
   62040         (WebCore::WMLCardElement::findNamedCardInDocument):
   62041         (WebCore::WMLCardElement::determineActiveCard):
   62042         * wml/WMLCardElement.h:
   62043         * wml/WMLDocument.cpp:
   62044         (WebCore::WMLDocument::finishedParsing):
   62045         * wml/WMLGoElement.cpp:
   62046         (WebCore::WMLGoElement::executeTask):
   62047         (WebCore::WMLGoElement::prepareGETRequest):
   62048         * wml/WMLGoElement.h:
   62049 
   62050 2008-12-14  Dirk Schulze  <krit (a] webkit.org>
   62051 
   62052         Reviewed by Oliver Hunt.
   62053 
   62054         Fixes an issue in cairo. A fully transparent color can cause wrong
   62055         drawings on canvas' composite.
   62056 
   62057         https://bugs.webkit.org/show_bug.cgi?id=22846
   62058         [CAIRO] Canvas: transparent color and composite
   62059 
   62060         Test: fast/canvas/canvas-transparency-and-composite.html
   62061 
   62062         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   62063         (WebCore::GraphicsContext::fillPath):
   62064         (WebCore::GraphicsContext::strokePath):
   62065 
   62066 2008-12-13  Julien Chaffraix  <jchaffraix (a] webkit.org>
   62067 
   62068         Reviewed by Darin Adler.
   62069 
   62070         Bug 22665: Remove setCreatedByParser(bool) from the few elements that use it
   62071         https://bugs.webkit.org/show_bug.cgi?id=22665
   62072 
   62073         Remove setCreatedByParser from frame and iframe.
   62074 
   62075         * html/HTMLElementFactory.cpp:
   62076         (WebCore::frameConstructor):
   62077         (WebCore::iframeConstructor):
   62078         (WebCore::objectConstructor):
   62079         * html/HTMLFrameElement.cpp:
   62080         (WebCore::HTMLFrameElement::HTMLFrameElement):
   62081         * html/HTMLFrameElement.h:
   62082         * html/HTMLFrameElementBase.cpp:
   62083         (WebCore::HTMLFrameElementBase::HTMLFrameElementBase):
   62084         * html/HTMLFrameElementBase.h:
   62085         * html/HTMLFrameOwnerElement.cpp:
   62086         (WebCore::HTMLFrameOwnerElement::HTMLFrameOwnerElement):
   62087         * html/HTMLFrameOwnerElement.h:
   62088         (WebCore::HTMLFrameOwnerElement::createdByParser):
   62089         * html/HTMLIFrameElement.cpp:
   62090         (WebCore::HTMLIFrameElement::HTMLIFrameElement):
   62091         * html/HTMLIFrameElement.h:
   62092         * html/HTMLPlugInElement.cpp:
   62093         (WebCore::HTMLPlugInElement::HTMLPlugInElement):
   62094         * html/HTMLTagNames.in:
   62095 
   62096 2008-12-13  Alexey Proskuryakov  <ap (a] webkit.org>
   62097 
   62098         Reviewed by Darin Adler.
   62099 
   62100         https://bugs.webkit.org/show_bug.cgi?id=22843
   62101         Auto-generate JSWorkerContext
   62102 
   62103         * bindings/scripts/CodeGeneratorJS.pm:
   62104         * dom/WorkerContext.idl: Added.
   62105         * page/DOMWindow.idl:
   62106         Added ExtendsDOMGlobalObject, a new attribute for behaviors common to DOMWindow and
   62107         WorkerContext.
   62108 
   62109         * bindings/js/WorkerScriptController.cpp:
   62110         (WebCore::WorkerScriptController::initScript):
   62111         Made JSWorkerContext creation look more like JSDOMWindow creation, to work with generated code.
   62112 
   62113         * DerivedSources.make:
   62114         * GNUmakefile.am:
   62115         * WebCore.pro:
   62116         * WebCore.scons:
   62117         * WebCore.vcproj/WebCore.vcproj:
   62118         * WebCore.xcodeproj/project.pbxproj:
   62119         * bindings/js/JSWorkerContext.cpp: Removed.
   62120         * bindings/js/JSWorkerContext.h: Removed.
   62121         * bindings/js/JSWorkerContextBase.cpp: Copied from WebCore/bindings/js/JSWorkerContext.cpp.
   62122         (WebCore::JSWorkerContextBase::JSWorkerContextBase):
   62123         (WebCore::JSWorkerContextBase::~JSWorkerContextBase):
   62124         (WebCore::JSWorkerContextBase::scriptExecutionContext):
   62125         (WebCore::getJSWorkerContextBaseTable):
   62126         (WebCore::):
   62127         (WebCore::JSWorkerContextBase::put):
   62128         * bindings/js/JSWorkerContextBase.h: Copied from WebCore/bindings/js/JSWorkerContext.h.
   62129         * bindings/js/JSWorkerContextCustom.cpp: Added.
   62130         (WebCore::JSWorkerContext::customGetOwnPropertySlot):
   62131         (WebCore::JSWorkerContext::mark):
   62132         (WebCore::JSWorkerContext::self):
   62133         (WebCore::JSWorkerContext::setSelf):
   62134         (WebCore::JSWorkerContext::addEventListener):
   62135         (WebCore::JSWorkerContext::removeEventListener):
   62136         Moved code around. Note that currently, JSWorkerContextBase lookup table is empty, but we'll
   62137         need to add some global objects to it in the future, as it is done in JSDOMWindowBase.
   62138 
   62139         * page/WorkerNavigator.cpp:
   62140         * page/WorkerNavigator.h:
   62141         Added ENABLE(WORKERS) ifdefs.
   62142 
   62143 2008-12-13  Darin Adler  <darin (a] apple.com>
   62144 
   62145         - fix Release build
   62146 
   62147         * dom/Node.cpp:
   62148         (WebCore::Node::rareData): Remove inappropriate inline directive.
   62149 
   62150 2008-12-13  Darin Adler  <darin (a] apple.com>
   62151 
   62152         Reviewed by Dan Bernstein.
   62153 
   62154         - fix https://bugs.webkit.org/show_bug.cgi?id=18734
   62155           REGRESSION (r31081): Focus problems in Gmail 2/Plain text message text
   62156           <rdar://problem/5892415>
   62157 
   62158         Test: fast/forms/textarea-selection-preservation.html
   62159 
   62160         The regression reported was caused by the fact that the renderer code had
   62161         a bug where it would constantly think the newline at the end of text was
   62162         missing, and so it would replace all the text even though it wasn't changing,
   62163         which would destroy the selection.
   62164 
   62165         When writing the regression test I discovered another problem: The value
   62166         property in HTMLTextAreaElement was intentionally changing the selection
   62167         to the end of the textarea, but doing that even when the value wasn't changing.
   62168 
   62169         This patch fixes both and the test checks both.
   62170 
   62171         * html/HTMLTextAreaElement.cpp:
   62172         (WebCore::HTMLTextAreaElement::setValue): Exit early if the value is
   62173         not changing.
   62174 
   62175         * rendering/RenderTextControl.cpp:
   62176         (WebCore::RenderTextControl::text): Add a newline character for each <br>
   62177         element encountered in the control
   62178 
   62179 2008-12-13  Darin Adler  <darin (a] apple.com>
   62180 
   62181         - file deletion part of https://bugs.webkit.org/show_bug.cgi?id=17497
   62182           eliminate DeprecatedValueList
   62183 
   62184         * GNUmakefile.am: Removed references to deleted files.
   62185         * WebCore.pro: Ditto.
   62186         * WebCore.scons: Ditto.
   62187         * WebCore.vcproj/WebCore.vcproj: Ditto.
   62188         * WebCore.xcodeproj/project.pbxproj: Ditto.
   62189         * WebCoreSources.bkl: Ditto.
   62190 
   62191         * platform/DeprecatedPtrQueue.h: Removed.
   62192         * platform/DeprecatedValueList.h: Removed.
   62193         * platform/DeprecatedValueListImpl.cpp: Removed.
   62194         * platform/DeprecatedValueListImpl.h: Removed.
   62195 
   62196 2008-12-13  Darin Adler  <darin (a] apple.com>
   62197 
   62198         Reviewed by Anders Carlsson.
   62199 
   62200         - https://bugs.webkit.org/show_bug.cgi?id=17497
   62201           eliminate DeprecatedValueList
   62202 
   62203         * css/CSSStyleDeclaration.cpp: Removed unneeded include.
   62204 
   62205         * dom/Document.cpp:
   62206         (WebCore::Document::removeAllEventListenersFromAllNodes):
   62207         Set the removed flag on the window event listeners in case we
   62208         are in the middle of dispatching events on this window.
   62209         (WebCore::Document::clear): Ditto.
   62210         (WebCore::Document::handleWindowEvent): Changed to use a vector
   62211         instead of a DeprecatedPtrList.
   62212         (WebCore::Document::windowInlineEventListenerForType): Ditto.
   62213         (WebCore::Document::removeWindowInlineEventListenerForType): Ditto.
   62214         Also added a call to setRemoved, which is needed here just as in
   62215         other functions that remove.
   62216         (WebCore::Document::removeWindowEventListener): Ditto.
   62217         (WebCore::Document::hasWindowEventListener): Ditto.
   62218 
   62219         * dom/Document.h: Changed RegisteredEventListenerList to
   62220         RegisteredEventListeners.
   62221 
   62222         * dom/Element.cpp:
   62223         (WebCore::Element::attach): Use a function to access rare data instead
   62224         of getting directly at the data field.
   62225         (WebCore::Element::focus): Ditto.
   62226         (WebCore::Element::cancelFocusAppearanceUpdate): Ditto.
   62227 
   62228         * dom/ElementRareData.h: Use "using" to make things that are protected
   62229         in NodeRareData be public here.
   62230 
   62231         * dom/EventTarget.h: Removed include of DeprecatedValueList and
   62232         related declearations that weren't needed. Tweaked the definitions
   62233         of the forbidEventDispatch functions too.
   62234 
   62235         * dom/EventTargetNode.cpp:
   62236         (WebCore::EventTargetNode::EventTargetNode): Eliminated code that
   62237         was used to initialized m_regdListeners.
   62238         (WebCore::EventTargetNode::~EventTargetNode): Elminated delete of
   62239         m_regdListeners. Changed code to use eventListeners() instead of
   62240         m_regdListeners.
   62241         (WebCore::EventTargetNode::eventListeners): Added.
   62242         (WebCore::EventTargetNode::insertedIntoDocument): Use eventListeners.
   62243         (WebCore::EventTargetNode::removedFromDocument): Ditto.
   62244         (WebCore::EventTargetNode::willMoveToNewOwnerDocument): Ditto.
   62245         (WebCore::EventTargetNode::didMoveToNewOwnerDocument): Ditto.
   62246         (WebCore::EventTargetNode::addEventListener): Ditto.
   62247         (WebCore::EventTargetNode::removeEventListener): Ditto.
   62248         (WebCore::EventTargetNode::removeAllEventListeners): Ditto.
   62249         Also added code to call setRemoved on all the listeners.
   62250         (WebCore::EventTargetNode::handleLocalEvents): Ditto.
   62251         (WebCore::EventTargetNode::dispatchGenericEvent): Fixed indentation.
   62252         (WebCore::EventTargetNode::removeInlineEventListenerForType): Use
   62253         the new event listeners vector. Also added missing call to setRemoved.
   62254         (WebCore::EventTargetNode::inlineEventListenerForType): Ditto.
   62255 
   62256         * dom/EventTargetNode.h: Added a new RegisteredEventListenerVector
   62257         type and replaced the old localEventListeners function with a new
   62258         eventListeners function. Removed m_regdListeners.
   62259 
   62260         * dom/Node.cpp:
   62261         (WebCore::Node::childNodes): Removed unneeded std prefix.
   62262         (WebCore::Node::setFocus): Use function instead of going directly
   62263         at rare data.
   62264         (WebCore::Node::rareDataFocused): Ditto.
   62265         (WebCore::Node::registerDynamicNodeList): Removed unneeded std prefix.
   62266         (WebCore::Node::getElementsByName): Ditto.
   62267         (WebCore::Node::getElementsByClassName): Ditto.
   62268         (WebCore::Node::compareDocumentPosition): Ditto.
   62269 
   62270         * dom/Node.h: Removed unneeded forward declaration of
   62271         RegisteredEventListener. This is now in EventTargetNode.
   62272 
   62273         * dom/NodeRareData.h: Renamed m_focused to m_isFocused and made it
   62274         private. Made m_needsFocusAppearanceUpdateSoonAfterAttach private.
   62275         Added listeners and ensureListeners functions as well as isFocused,
   62276         setFocused, and focus-appearance functions. Made all data members private.
   62277 
   62278         * dom/RegisteredEventListener.cpp: Removed operator ==.
   62279         * dom/RegisteredEventListener.h: Removed operator == and !=.
   62280 
   62281         * svg/SVGElement.cpp:
   62282         (WebCore::hasLoadListener): Rewrote to work with the vector.
   62283         * svg/SVGUseElement.cpp:
   62284         (WebCore::SVGUseElement::transferEventListenersToShadowTree): Ditto.
   62285 
   62286 2008-12-13  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   62287 
   62288         Reviewed by Dan Bernstein.
   62289 
   62290         https://bugs.webkit.org/show_bug.cgi?id=22824
   62291 
   62292         Change ENABLE(FONT_FAST_PATH) to USE(FONT_FAST_PATH). With r39206
   62293         floatWidth always used the complex path causing a regression
   62294         in the pixel tests.
   62295 
   62296         * platform/graphics/Font.cpp:
   62297         (WebCore::Font::floatWidth): Use the fast path again
   62298 
   62299 2008-12-13  Dirk Schulze  <krit (a] webkit.org>
   62300 
   62301         Reviewed by Darin Adler.
   62302 
   62303         Fixes behavior of gradients on empty path in canvas/Cg
   62304 
   62305         https://bugs.webkit.org/show_bug.cgi?id=22844
   62306         [Cg] Canvas fill() draws gradients even without a path
   62307 
   62308         Test: fast/canvas/canvas-gradient-without-path.html
   62309 
   62310         * html/CanvasRenderingContext2D.cpp:
   62311         (WebCore::CanvasRenderingContext2D::fill):
   62312         (WebCore::CanvasRenderingContext2D::stroke):
   62313 
   62314 2008-12-13  Kevin Ollivier  <kevino (a] theolliviers.com>
   62315 
   62316         wx build fix.
   62317 
   62318         * platform/graphics/wx/ImageSourceWx.cpp:
   62319         (WebCore::ImageSource::filenameExtension):
   62320 
   62321 2008-12-12  Brent Fulgham  <bfulgham (a] gmail.com>
   62322 
   62323         Reviewed by Oliver Hunt.
   62324 
   62325         Fixes: https://bugs.webkit.org/show_bug.cgi?id=22805
   62326 
   62327         Provides implementation of image dragging logic for Windows Cairo
   62328         back-end.
   62329 
   62330         * platform/win/DragImageCGWin.cpp:
   62331         (WebCore::deallocContext): Add a generic CGContextRef destructor.
   62332         * platform/win/DragImageCairoWin.cpp:
   62333         (WebCore::deallocContext): Add a generic cairo_* destructor.
   62334         (WebCore::allocImage):  New implementation to allocate a Cairo
   62335         surface of a specified size.
   62336         (WebCore::createCairoContextFromBitmap): New implementation to
   62337         create a Cairo surface from a Windows BITMAP.
   62338         (WebCore::scaleDragImage): Replace stub with implementation to
   62339         actually create a scaled image.
   62340         (WebCore::createDragImageFromImage): Replace stub with implementation
   62341         to actually create an image.
   62342 
   62343 2008-12-12  Dean Jackson  <dino (a] apple.com>
   62344 
   62345         Reviewed by Darin Adler.
   62346 
   62347         Expose WebKitAnimationEvent, WebKitTransitionEvent,
   62348         WebKitCSSTransformValue, WebKitCSSKeyframeRule and
   62349         WebKitCSSKeyframesRule to Window object.
   62350         This required generating constructors for the event
   62351         interfaces.
   62352 
   62353         https://bugs.webkit.org/show_bug.cgi?id=20560
   62354 
   62355         * dom/WebKitAnimationEvent.idl:
   62356         * dom/WebKitTransitionEvent.idl:
   62357         * page/DOMWindow.idl:
   62358 
   62359 2008-12-12  Dave Moore  <davemoore (a] google.com>
   62360 
   62361         Reviewed by Eric Seidel.
   62362 
   62363         Fixed https://bugs.webkit.org/show_bug.cgi?id=22798
   62364 
   62365         In Font::drawTextUsingSVGFont() a variable of type SVGTextRunWalkerDrawTextData
   62366         is created on the stack (called data). One of its fields, charsConsumed, is
   62367         unitialized, leading to random values after calling walk() on the
   62368         SVGTextRunWalker created with it. I now initialize the variable
   62369 
   62370         This bug was revealed in our Purify run. I don't know of any specific incorrect
   62371         behavior caused by it but it would lead to the charsConsumed field having a
   62372         a wrong value.
   62373 
   62374         * svg/SVGFont.cpp:
   62375         (WebCore::Font::drawTextUsingSVGFont):
   62376 
   62377 2008-12-12  Beth Dakin  <bdakin (a] apple.com>
   62378 
   62379         Rubber Stamped by Steve Falkenburg.
   62380 
   62381         Build fix.
   62382 
   62383         * platform/KURL.h:
   62384 
   62385 2008-12-12  Brett Wilson  <brettw (a] chromium.org>
   62386 
   62387         Reviewed by Darin Adler.
   62388 
   62389         Add the ability so that Google-URL can optionally be used in a build
   62390         of WebKit without changing the shared header. The guts of KURL are
   62391         optionally ifdefed out, and the replacement code goes in a different
   62392         header to avoid polluting KURL.h
   62393 
   62394         * platform/KURL.cpp:
   62395         * platform/KURL.h:
   62396         (WebCore::KURL::string):
   62397         (WebCore::KURL::operator const String&):
   62398         (WebCore::KURL::operator JSC::UString):
   62399         (WebCore::KURL::operator NSString*):
   62400         (WebCore::KURL::parsed):
   62401         (WebCore::KURL::utf8String):
   62402         (WebCore::KURL::isNull):
   62403         (WebCore::KURL::isEmpty):
   62404         (WebCore::KURL::isValid):
   62405         (WebCore::KURL::hostStart):
   62406         (WebCore::KURL::hostEnd):
   62407         (WebCore::KURL::pathStart):
   62408         (WebCore::KURL::pathEnd):
   62409         (WebCore::KURL::pathAfterLastSlash):
   62410 
   62411 2008-12-11  Steve Falkenburg  <sfalken (a] apple.com>
   62412 
   62413         Delete the previous timer-queue timer in the main thread, just prior to scheduling a new timer.
   62414         The code previously called DeleteTimerQueueTimer in the timer callback proc.
   62415 
   62416         The new technique simplifies the code, since we now create and delete timers on the
   62417         same thread, and don't access the timer queue or timer handles in the callback.
   62418         This allows us to remove some mutex use, and more importantly, it solves a race
   62419         condition that was occuring between ChangeTimerQueueTimer and DeleteTimerQueueTimer.
   62420 
   62421         Since the timer callback isn't passed the timer handle, we were retrieving that handle
   62422         via a global. If the timer callback code was entered, but then a new timer was immediately
   62423         scheduled (prior to the callback acquiring the mutex and calling DeleteTimerQueueTimer),
   62424         there was a small window where the timer could be re-scheduled via ChangeTimerQueueTimer
   62425         and then immediately deleted once the already running callback acquired the mutex and
   62426         then called DeleteTimerQueueTimer. This resulted in the newly scheduled timer never firing.
   62427 
   62428         Reviewed by Oliver Hunt.
   62429 
   62430         * platform/win/SharedTimerWin.cpp:
   62431         (WebCore::queueTimerProc): Don't delete the timer in the callback.
   62432         (WebCore::setSharedTimerFireTime): Always delete and create the timer instead of using ChangeTimerQueueTimer.
   62433         (WebCore::stopSharedTimer): Call DeleteTimerQueueTimer directly.
   62434 
   62435 2008-12-12  Kai Brning  <kai (a] granus.net>
   62436 
   62437         Reviewed and tweaked by Darin Adler.
   62438 
   62439         - fix https://bugs.webkit.org/show_bug.cgi?id=18205
   62440           DOMNode objects are garbage collected although there are strong references
   62441           <rdar://problem/6441200>
   62442 
   62443         Fixes resurrection bug for wrapper objects by using an NSMapTable with zeroing weak
   62444         memory for the wrapper reference for DOMWrapperCache (DOMInternal.mm),
   62445         JSWrapperCache (WebScriptObject.mm) and wrapperCache (DOMRGBColor.mm).
   62446         BUILDING_ON_TIGER is used to create a Leopard-only NSMapTable or an old-style
   62447         procedural map table for Tiger systems.
   62448 
   62449         No regression tests yet since we don't currently run any tests in GC mode.
   62450 
   62451         * bindings/objc/DOMInternal.h: added WebCore::createWrapperCache for use by all three caches
   62452         * bindings/objc/DOMInternal.mm:
   62453         (WebCore::createWrapperCache): Contains the compile-time check for map table creation
   62454         (WebCore::getDOMWrapper): HashMap -> NSMapTable
   62455         (WebCore::addDOMWrapper): ditto
   62456         (WebCore::removeDOMWrapper): ditto
   62457         * bindings/objc/DOMObject.mm: removed [DOMObject finalize]
   62458         * bindings/objc/DOMRGBColor.mm: removed [DOMRGBColor finalize]
   62459         (WebCore::getWrapperForRGB): CFMutableDictionaryRef -> NSMapTable
   62460         (WebCore::setWrapperForRGB): ditto
   62461         (WebCore::removeWrapperForRGB): ditto
   62462         * bindings/objc/WebScriptObject.mm:
   62463         (WebCore::getJSWrapper): HashMap -> NSMapTable
   62464         (WebCore::addJSWrapper): ditto
   62465         (WebCore::removeJSWrapper): ditto
   62466         (-[WebScriptObject finalize]): removed call of removeJSWrapper()
   62467 
   62468 2008-12-12  Dimitri Glazkov  <dglazkov (a] chromium.org>
   62469 
   62470         Reviewed by Alexey Proskuryakov.
   62471 
   62472         https://bugs.webkit.org/show_bug.cgi?id=22813
   62473         Remove unused references to JSDOMBinding, CallFrame, and JSLock.
   62474 
   62475         * dom/Node.cpp: Removed CallFrame and JSLock header includes.
   62476         * loader/FrameLoader.cpp: Removed JSDOMBinding header include.
   62477 
   62478 2008-12-12  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   62479 
   62480         Reviewed by Simon Hausmann.
   62481 
   62482         Update the WebKit.qrc and add a script to automatically generate the file.
   62483 
   62484         With the way rcc and qmake work this can not be done at build time
   62485         as the WebKit.qrc must sit inside the directory that contains the files
   62486         and at build time we may not change the content of the source directory.
   62487 
   62488         * inspector/front-end/WebKit.qrc: Updated with new script
   62489 
   62490 2008-12-12  Oliver Hunt  <oliver (a] apple.com>
   62491 
   62492         Reviewed by Alexey Proskuryakov.
   62493 
   62494         REGRESSION: Canvas is broken in high dpi mode
   62495         <rdar://problem/6432739> <https://bugs.webkit.org/show_bug.cgi?id=22823>
   62496 
   62497         Simply made sure that we correctly scale the graphics context to
   62498         account for the difference between logical and buffer resolution.
   62499 
   62500         * html/HTMLCanvasElement.cpp:
   62501         (WebCore::HTMLCanvasElement::createImageBuffer):
   62502         (WebCore::HTMLCanvasElement::baseTransform):
   62503 
   62504 2008-12-12  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   62505 
   62506         Rubber-stamped by Oliver Hunt.
   62507 
   62508         Share PluginView::paintMissingPluginIcon() between ports
   62509 
   62510         Also, enable this feature for Qt/X11, Qt/Mac and GTK
   62511 
   62512         * plugins/PluginView.cpp:
   62513         (WebCore::PluginView::paintMissingPluginIcon):
   62514         * plugins/gtk/PluginViewGtk.cpp:
   62515         (WebCore::PluginView::paint):
   62516         * plugins/mac/PluginViewMac.cpp:
   62517         (WebCore::PluginView::paint):
   62518         * plugins/qt/PluginViewQt.cpp:
   62519         (WebCore::PluginView::paint):
   62520         * plugins/win/PluginViewWin.cpp:
   62521 
   62522 2008-12-12  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   62523 
   62524         Reviewed by Simon Hausmann.
   62525 
   62526         [Qt/Mac] Implement PluginView::updatePluginWidget()
   62527 
   62528         We should update the window and clip rect regardless of whether or
   62529         not the plugin has been loaded, for example to ensure that the
   62530         missing plugin image is placed correctly.
   62531 
   62532         * plugins/mac/PluginViewMac.cpp:
   62533         (WebCore::PluginView::setNPWindowIfNeeded):
   62534         (WebCore::PluginView::updatePluginWidget):
   62535 
   62536 2008-12-12  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   62537 
   62538         Rubber-stamped by Oliver Hunt.
   62539 
   62540         Make PluginView::updatePluginWidget() non-const
   62541 
   62542         We can do this now since frameRectsChanged() is no longer const. This
   62543         also allows us to get rid of the mutables in the PluginView.
   62544 
   62545         * platform/qt/TemporaryLinkStubs.cpp:
   62546         (PluginView::updatePluginWidget):
   62547         * plugins/PluginView.h:
   62548         * plugins/gtk/PluginViewGtk.cpp:
   62549         (WebCore::PluginView::updatePluginWidget):
   62550         * plugins/mac/PluginViewMac.cpp:
   62551         (WebCore::PluginView::updatePluginWidget):
   62552         * plugins/qt/PluginViewQt.cpp:
   62553         (WebCore::PluginView::updatePluginWidget):
   62554         * plugins/win/PluginViewWin.cpp:
   62555         (WebCore::PluginView::updatePluginWidget):
   62556         * plugins/wx/PluginViewWx.cpp:
   62557         (WebCore::PluginView::updatePluginWidget):
   62558 
   62559 2008-12-12  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   62560 
   62561         Reviewed by Simon Hausmann.
   62562 
   62563         Implement ImageSource::filenameExtension() for the Qt port
   62564 
   62565         We're using QImageReader::imageFormat().toLower() to check
   62566         that the image format is supported, and if it is we store
   62567         the resulting extension when creating the ImageDecoderQt.
   62568 
   62569         * platform/graphics/qt/ImageDecoderQt.cpp:
   62570         (WebCore::ImageDecoderQt::create):
   62571         (WebCore::ImageDecoderQt::ImageDecoderQt):
   62572         (WebCore::ImageDecoderQt::imageFormat):
   62573         * platform/graphics/qt/ImageDecoderQt.h:
   62574         * platform/graphics/qt/ImageSourceQt.cpp:
   62575         (WebCore::ImageSource::setData):
   62576         (WebCore::ImageSource::filenameExtension):
   62577 
   62578 2008-12-11  Stephanie Lewis  <slewis (a] apple.com>
   62579 
   62580         Reviewed by Geoff Garen
   62581 
   62582         Account for the size of the response and request headers as well as other overhead
   62583         when calculating the size a resource takes up in the cache.  Halts unbounded
   62584         growth in the cache.  Reduced stress test memory high water marks by > 50%.
   62585 
   62586         Uses estimates gathered from the stress test to set the overhead size.
   62587         A version of the patch was created that calculated most of the sizes, but it was
   62588         decided that the patch was still at a basic level an estimate.  What gains it made
   62589         in accuracy was offset by the complexity involved in creating and updating the
   62590         estimate.
   62591 
   62592         * loader/Cache.cpp:
   62593         (WebCore::Cache::resourceAccessed):
   62594         (WebCore::Cache::TypeStatistic::addResource):
   62595         (WebCore::Cache::dumpLRULists):
   62596         * loader/CachedResource.cpp:
   62597         (WebCore::CachedResource::overheadSize):
   62598         * loader/CachedResource.h:
   62599         (WebCore::CachedResource::size):
   62600 
   62601 2008-12-11  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   62602 
   62603         Reviewed by Holger Freyther.
   62604 
   62605         Fixes: https://bugs.webkit.org/show_bug.cgi?id=22814
   62606 
   62607         Add <wml> image element support. Based on HTML/SVGImage{Element/Loader}, with
   62608         the only difference that WML defines a second source attribute 'localsrc', that
   62609         takes precedence over the 'src' attribute. If loading the 'localsrc' attribute
   62610         fails, the user agent should try loading the 'src' attribute. If both fail the
   62611         'alt' fallback content will be used - just like in HTML.
   62612 
   62613         Fixes: fast/wml/img-localsrc.wml (<img> and 'localsrc' attribute)
   62614                fast/wml/img-src-localsrc-alt.wml ('localsrc'/'src' fallback handling)
   62615                fast/wml/img-src.wml (<img> and 'src' attribute)
   62616 
   62617         * GNUmakefile.am:
   62618         * WebCore.vcproj/WebCore.vcproj:
   62619         * WebCore.xcodeproj/project.pbxproj:
   62620         * rendering/HitTestResult.cpp:
   62621         (WebCore::HitTestResult::altDisplayString):
   62622         (WebCore::HitTestResult::absoluteImageURL):
   62623         * rendering/RenderImage.cpp:
   62624         (WebCore::RenderImage::updateAltText):
   62625         * wml/WMLImageElement.cpp: Added.
   62626         (WebCore::WMLImageElement::WMLImageElement):
   62627         (WebCore::WMLImageElement::~WMLImageElement):
   62628         (WebCore::WMLImageElement::mapToEntry):
   62629         (WebCore::WMLImageElement::parseMappedAttribute):
   62630         (WebCore::WMLImageElement::attach):
   62631         (WebCore::WMLImageElement::createRenderer):
   62632         (WebCore::WMLImageElement::insertedIntoDocument):
   62633         (WebCore::WMLImageElement::isURLAttribute):
   62634         (WebCore::WMLImageElement::imageSourceAttributeName):
   62635         (WebCore::WMLImageElement::altText):
   62636         * wml/WMLImageElement.h: Added.
   62637         (WebCore::WMLImageElement::useFallbackAttribute):
   62638         (WebCore::WMLImageElement::setUseFallbackAttribute):
   62639         * wml/WMLImageLoader.cpp: Added.
   62640         (WebCore::WMLImageLoader::WMLImageLoader):
   62641         (WebCore::WMLImageLoader::~WMLImageLoader):
   62642         (WebCore::WMLImageLoader::dispatchLoadEvent):
   62643         (WebCore::WMLImageLoader::sourceURI):
   62644         (WebCore::WMLImageLoader::notifyFinished):
   62645         * wml/WMLImageLoader.h: Added.
   62646         * wml/WMLTagNames.in:
   62647 
   62648 2008-12-11  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   62649 
   62650         Reviewed by Darin Adler.
   62651 
   62652         https://bugs.webkit.org/show_bug.cgi?id=22043
   62653 
   62654         Do not run into the WebCore::DocumentLoader::updateLoading
   62655         ASSERT on Gtk+/CURL when trying to load tests from our LayoutTests.
   62656 
   62657         Do not call setPrimaryLoadComplete when the
   62658         activeDocumentLoader has already been replaced. This can happen
   62659         when a script executed from within FramerLoader::didFinishLoading will
   62660         navigate to another URL.
   62661 
   62662         The assertion is caused by existing tests (e.g.
   62663         fast/history/clicked-link-is-visited.html) reproducing this with
   62664         network backends not equal to curl is tough or maybe not
   62665         even possible.
   62666 
   62667         * loader/DocumentLoader.cpp:
   62668         (WebCore::DocumentLoader::setPrimaryLoadComplete):
   62669 
   62670 2008-12-11  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   62671 
   62672         Reviewed by Eric Seidel.
   62673 
   62674         - Remove some dead, commented-out code from WMLAElement.
   62675         - Add missing virtual destructor for <noop>, as suggested by Alexey.
   62676         - Refactor addHTMLAlignment in a static helper function to share with WML.
   62677 
   62678         * html/HTMLElement.cpp:
   62679         (WebCore::HTMLElement::addHTMLAlignment):
   62680         (WebCore::HTMLElement::addHTMLAlignmentToStyledElement):
   62681         * html/HTMLElement.h:
   62682         * wml/WMLAElement.cpp:
   62683         (WebCore::WMLAElement::defaultEventHandler):
   62684         * wml/WMLNoopElement.cpp:
   62685         (WebCore::WMLNoopElement::~WMLNoopElement):
   62686         * wml/WMLNoopElement.h:
   62687 
   62688 2008-12-10  Oliver Hunt  <oliver (a] apple.com>
   62689 
   62690         Reviewed by Adele Peterson.
   62691 
   62692         <rdar://problem/6302405> Crash (null-deref) when using :before pseudoselector with content CSS rule in SVG
   62693         <https://bugs.webkit.org/show_bug.cgi?id=22804>
   62694 
   62695         This issue was caused by css generated content resulting in non-svg flowboxes
   62696         being injected into SVG content.  As SVG spec does not describe behaviour in
   62697         this case, and neither Opera nor Firefox displays such generated content, so
   62698         now we make svg text layout and rendering just ignore any such content.
   62699 
   62700         Test: svg/css/crash-css-generated-content.xhtml
   62701 
   62702         * rendering/SVGRootInlineBox.cpp:
   62703         (WebCore::SVGRootInlineBox::buildLayoutInformation):
   62704         (WebCore::SVGRootInlineBox::layoutInlineBoxes):
   62705         (WebCore::SVGRootInlineBox::buildTextChunks):
   62706 
   62707 2008-12-11  Cameron Zwarich  <zwarich (a] apple.com>
   62708 
   62709         Reviewed by Dave Hyatt.
   62710 
   62711         Bug 21256: REGRESSION (r36906): horizontally repeating image leaves ghosts when vertical scrolling
   62712         <https://bugs.webkit.org/show_bug.cgi?id=21256>
   62713         <rdar://problem/6362978>
   62714 
   62715         The ScrollView refactoring in r36906 caused the ScrollView and the
   62716         platform widget to disagree about whether optimizing scrolling via
   62717         blitting is allowed. The easiest way to fix this is to make ScrollView
   62718         simply ask the platform widget whether this is safe on platforms that
   62719         are affected.
   62720 
   62721         It is not possible to write a layout test for this bug because it
   62722         involves the back/forward cache.
   62723 
   62724         * platform/ScrollView.cpp:
   62725         (WebCore::ScrollView::ScrollView):
   62726         (WebCore::ScrollView::setCanBlitOnScroll):
   62727         (WebCore::ScrollView::canBlitOnScroll):
   62728         (WebCore::ScrollView::platformSetCanBlitOnScroll):
   62729         (WebCore::ScrollView::platformCanBlitOnScroll):
   62730         * platform/ScrollView.h:
   62731         * platform/mac/ScrollViewMac.mm:
   62732         (WebCore::ScrollView::platformSetCanBlitOnScroll):
   62733         (WebCore::ScrollView::platformCanBlitOnScroll):
   62734         * platform/wx/ScrollViewWx.cpp:
   62735         (WebCore::ScrollView::platformSetCanBlitOnScroll):
   62736         (WebCore::ScrollView::platformCanBlitOnScroll):
   62737 
   62738 2008-12-11  Brent Fulgham  <bfulgham (a] gmail.com>
   62739 
   62740         Reviewed by Adam Roben.
   62741 
   62742         https://bugs.webkit.org/show_bug.cgi?id=22808
   62743 
   62744         Correct build break due to malformed XML in Visual Studio project
   62745         following @r39205 change.
   62746 
   62747         * WebCore.vcproj/WebCore.vcproj: Correct file entry so project loads.
   62748 
   62749 2008-12-10  Chris Marrin  <cmarrin (a] apple.com>
   62750 
   62751         Reviewed by Dave Hyatt.
   62752 
   62753         Fixed https://bugs.webkit.org/show_bug.cgi?id=22738
   62754 
   62755         This gets rid of the per-animation timers which were used when an animation
   62756         started, ended and looped. Their job is now done by the main AnimationController's
   62757         timer. It is now set to fire as needed. For instance, if there is a delay, it will
   62758         fire after the delay time and then every 30ms to run the animation. The start, loop
   62759         and end events are generated as needed during the firing of this timer.
   62760 
   62761         I had to add one more bit of code. When animation timers used to fire the animation events.
   62762         This would always happen from the RunLoop, so any style changes that happened in the
   62763         event handler would get picked up on the next updateRendering() call. But now the start
   62764         event is generated during the styleIsAvailable() call, which is in the middle of the
   62765         updateRendering() cycle. And calling an event handler in the middle of updateRendering()
   62766         is not allowed and causes style changes to get missed. We already have a mechanism in
   62767         AnimationController to defer updateRendering() calls. So I added logic to defer all
   62768         event handling to there. Now, I put any request for event handling into a list and ask
   62769         for a deferred updateRendering() call. When that deferred timer fires, I go through that
   62770         list, send all the events and then call updateRendering().
   62771 
   62772         * page/animation/AnimationBase.cpp:
   62773         (WebCore::AnimationBase::AnimationBase):
   62774         (WebCore::AnimationBase::updateStateMachine):
   62775         (WebCore::AnimationBase::fireAnimationEventsIfNeeded):
   62776         (WebCore::AnimationBase::willNeedService):
   62777         (WebCore::AnimationBase::goIntoEndingOrLoopingState):
   62778         * page/animation/AnimationBase.h:
   62779         * page/animation/AnimationController.cpp:
   62780         (WebCore::AnimationControllerPrivate::updateAnimationTimer):
   62781         (WebCore::AnimationControllerPrivate::updateRenderingDispatcherFired):
   62782         (WebCore::AnimationControllerPrivate::addEventToDispatch):
   62783         (WebCore::AnimationControllerPrivate::animationTimerFired):
   62784         (WebCore::AnimationController::addEventToDispatch):
   62785         * page/animation/AnimationController.h:
   62786         * page/animation/CompositeAnimation.cpp:
   62787         (WebCore::CompositeAnimationPrivate::updateTransitions):
   62788         (WebCore::CompositeAnimationPrivate::willNeedService):
   62789         (WebCore::CompositeAnimationPrivate::getAnimationForProperty):
   62790         (WebCore::CompositeAnimation::willNeedService):
   62791         (WebCore::CompositeAnimation::getAnimationForProperty):
   62792         * page/animation/CompositeAnimation.h:
   62793         * page/animation/ImplicitAnimation.cpp:
   62794         (WebCore::ImplicitAnimation::animate):
   62795         (WebCore::ImplicitAnimation::onAnimationEnd):
   62796         (WebCore::ImplicitAnimation::sendTransitionEvent):
   62797         * page/animation/ImplicitAnimation.h:
   62798         * page/animation/KeyframeAnimation.cpp:
   62799         (WebCore::KeyframeAnimation::animate):
   62800         (WebCore::KeyframeAnimation::sendAnimationEvent):
   62801         * page/animation/KeyframeAnimation.h:
   62802         (WebCore::KeyframeAnimation::setUnanimatedStyle):
   62803 
   62804 2008-12-11  Simon Hausmann  <simon.hausmann (a] nokia.com>
   62805 
   62806         Fix the Qt build with an empty filenameExtension() implementation.
   62807 
   62808         * platform/graphics/qt/ImageSourceQt.cpp:
   62809         (WebCore::ImageSource::filenameExtension):
   62810 
   62811 2008-12-11  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   62812 
   62813         Reviewed by Simon Hausmann.
   62814 
   62815         Fix crash in the cairo implementation of the SVGPaintServer
   62816 
   62817         For SVGFonts the RenderObject can be zero. The existing SVGFont
   62818         test cases is exposing this bug. Qt and other ports have fixed
   62819         this issue by adding null checks as well.
   62820 
   62821         * svg/graphics/cairo/SVGPaintServerCairo.cpp:
   62822         (WebCore::SVGPaintServer::renderPath):
   62823 
   62824 2008-12-11  Holger Freyther  <zecke (a] selfish.org>
   62825 
   62826         Reviewed by Simon Hausmann.
   62827 
   62828         https://bugs.webkit.org/show_bug.cgi?id=20953
   62829 
   62830         Make the Qt port follow the Win, Mac, Gtk+ port in regard to Font
   62831         handling. FontQt.cpp from now on is only implementing the complex path. Create
   62832         FontFallbackListQt.cpp and FontPlatformDataQt.cpp to work within
   62833         the framework set by the Font code.
   62834 
   62835         Sharing the Font.cpp implementation allows the Qt port to support
   62836         the CSS font faces and SVG fonts.
   62837 
   62838         Split out the Qt4.3 Font handling into FonQt43.cpp to allow to more
   62839         easily deprecate it.
   62840 
   62841         This commit is removing a lot of #ifdefs from Font.h as the Qt Font
   62842         implementation is now in line with the rest of WebCore.
   62843 
   62844         * WebCore.pro:
   62845         * platform/graphics/Font.h: Remove #ifdefs
   62846         (WebCore::Font::letterSpacing):
   62847         (WebCore::Font::setLetterSpacing):
   62848         (WebCore::Font::isPlatformFont):
   62849         * platform/graphics/FontFallbackList.h:
   62850         * platform/graphics/SimpleFontData.cpp:
   62851         (WebCore::SimpleFontData::SimpleFontData):
   62852         (WebCore::SimpleFontData::platformGlyphInit): There is no GlyphCache
   62853         on Qt, move the initialisation over.
   62854         (WebCore::SimpleFontData::~SimpleFontData):
   62855         * platform/graphics/SimpleFontData.h:
   62856         (WebCore::SimpleFontData::getQtFont):
   62857         * platform/graphics/qt/FontCacheQt.cpp:
   62858         (WebCore::FontCache::getCachedFontPlatformData): Remove unused parameter
   62859         (WebCore::FontCache::releaseFontData): Add to build
   62860         * platform/graphics/qt/FontCustomPlatformData.cpp:
   62861         (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
   62862         (WebCore::FontCustomPlatformData::fontPlatformData):
   62863         (WebCore::createFontCustomPlatformData):
   62864         * platform/graphics/qt/FontCustomPlatformData.h:
   62865         * platform/graphics/qt/FontFallbackListQt.cpp: Added.
   62866         (WebCore::FontFallbackList::FontFallbackList):
   62867         (WebCore::FontFallbackList::invalidate):
   62868         (WebCore::FontFallbackList::releaseFontData):
   62869         (WebCore::FontFallbackList::determinePitch):
   62870         (WebCore::FontFallbackList::fontDataAt):
   62871         (WebCore::FontFallbackList::fontDataForCharacters):
   62872         (WebCore::FontFallbackList::setPlatformFont):
   62873         * platform/graphics/qt/FontPlatformData.h:
   62874         (WebCore::FontPlatformData::font):
   62875         (WebCore::FontPlatformData::size):
   62876         * platform/graphics/qt/FontPlatformDataQt.cpp: Added.
   62877         (WebCore::FontPlatformData::FontPlatformData):
   62878         * platform/graphics/qt/FontQt.cpp:
   62879         (WebCore::Font::drawComplexText):
   62880         (WebCore::Font::floatWidthForComplexText):
   62881         (WebCore::Font::offsetForPositionForComplexText):
   62882         (WebCore::Font::selectionRectForComplexText):
   62883         (WebCore::Font::font):
   62884         * platform/graphics/qt/FontQt43.cpp: Added. Moved Qt4.3 code from FontQt.cpp
   62885         (WebCore::Font::drawComplexText):
   62886         (WebCore::Font::floatWidthForComplexText):
   62887         (WebCore::Font::offsetForPositionForComplexText):
   62888         (WebCore::Font::selectionRectForComplexText):
   62889         * platform/graphics/qt/GlyphPageTreeNodeQt.cpp:
   62890         (WebCore::GlyphPageTreeNode::pruneTreeCustomFontData):
   62891         (WebCore::GlyphPageTreeNode::pruneTreeFontData):
   62892         * platform/graphics/qt/SimpleFontDataQt.cpp:
   62893         (WebCore::SimpleFontData::determinePitch):
   62894         (WebCore::SimpleFontData::containsCharacters):
   62895         (WebCore::SimpleFontData::platformInit):
   62896         (WebCore::SimpleFontData::platformGlyphInit):
   62897         (WebCore::SimpleFontData::platformDestroy):
   62898         * platform/qt/RenderThemeQt.cpp:
   62899         (WebCore::RenderThemeQt::adjustButtonStyle): Avoid crashes.
   62900 
   62901 2008-12-11  Holger Freyther  <zecke (a] selfish.org>
   62902 
   62903         Reviewed by Simon Hausmann.
   62904 
   62905         https://bugs.webkit.org/show_bug.cgi?id=20953
   62906 
   62907         For Qt it is not pratical to have a FontCache and GlyphPageTreeNode
   62908         implementation. This is one of the reasons why the Qt port is currently not
   62909         using WebCore/platform/graphics/Font.cpp. By allowing to not use
   62910         the simple/fast-path the Qt port will be able to use it.
   62911 
   62912         Introduce USE(FONT_FAST_PATH) and define it for every port but the
   62913         Qt one.
   62914 
   62915         * platform/graphics/Font.cpp:
   62916         (WebCore::Font::drawText):
   62917         (WebCore::Font::floatWidth):
   62918         (WebCore::Font::selectionRectForText):
   62919         (WebCore::Font::offsetForPosition):
   62920         * platform/graphics/Font.h:
   62921 
   62922 2008-12-11  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   62923 
   62924         Reviewed by Darin Adler.
   62925 
   62926         https://bugs.webkit.org/show_bug.cgi?id=20953
   62927 
   62928         Split out the font fast path from Fast.cpp into FontFastPath.cpp. This
   62929         will allow the Qt port to share most of WebCore::Font
   62930         implementation but the fast path. Qt does not provide the API to get
   62931         individual Glyphs making the fast path hard to support.
   62932 
   62933 
   62934         * GNUmakefile.am:
   62935         * WebCore.vcproj/WebCore.vcproj:
   62936         * WebCore.xcodeproj/project.pbxproj:
   62937         * WebCoreSources.bkl:
   62938         * platform/graphics/Font.cpp:
   62939         * platform/graphics/FontFastPath.cpp: Added.
   62940         (WebCore::Font::glyphDataForCharacter):
   62941 
   62942 2008-12-11  Robert Carr  <racarr (a] svn.gnome.org>
   62943 
   62944         Reviewed by Holger Freyther.
   62945 
   62946         https://bugs.webkit.org/show_bug.cgi?id=22560
   62947 
   62948         Code in PlatformScreenGtk for screenDepth and screenRect can not
   62949         assume that the platformWindow for the widget has a valid "window"
   62950         member. For example in the case of, a new browser view opening as a
   62951         child of a GtkNotebook, but never being switched to, or manually
   62952         realized. Solve by using the toplevel window of the widget, rather
   62953         than the widget itself.
   62954 
   62955         * platform/gtk/PlatformScreenGtk.cpp:
   62956         (WebCore::screenDepth):
   62957         (WebCore::screenRect):
   62958 
   62959 2008-12-08  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   62960 
   62961         Reviewed by Darin Adler and Holger Freyther.
   62962 
   62963         Make Widget::frameRectsChanged() and overrides non-const
   62964 
   62965         This will hopefully allow us to get rid of some of the mutables in
   62966         the classes that react to the callback by changing their own state.
   62967 
   62968         * platform/ScrollView.cpp:
   62969         (WebCore::ScrollView::frameRectsChanged):
   62970         * platform/ScrollView.h:
   62971         * platform/Widget.h:
   62972         (WebCore::Widget::frameRectsChanged):
   62973         * platform/gtk/ScrollbarGtk.cpp: Remove non-const version since
   62974         this was more complex and did the same thing, changed const of
   62975         the leftover frameRectsChanged() method.
   62976         (ScrollbarGtk::frameRectsChanged):
   62977         * platform/gtk/ScrollbarGtk.h:
   62978         * plugins/PluginView.cpp:
   62979         (WebCore::PluginView::frameRectsChanged):
   62980         * plugins/PluginView.h:
   62981 
   62982 2008-12-11  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   62983 
   62984         Reviewed and implemented with Tor Arne Vestb.
   62985 
   62986         Reimplement RenderTheme::caretBlinkInterval for Qt.
   62987 
   62988         The QApplication::cursorFlashTime is in milliseconds and describes
   62989         the whole cycle while WebCore expects half a cycle.
   62990 
   62991         * platform/qt/RenderThemeQt.cpp:
   62992         (WebCore::RenderThemeQt::caretBlinkInterval):
   62993         * platform/qt/RenderThemeQt.h:
   62994 
   62995 2008-12-09  Trenton Schulz <trenton.schulz (a] nokia.com>
   62996 
   62997         Reviewed by Tor Arne Vestb.
   62998 
   62999         [Qt/Mac] Don't call HIGetScaleFactor() if we're not on Tiger or better
   63000 
   63001         * plugins/mac/PluginViewMac.cpp:
   63002         (WebCore::tigerOrBetter):
   63003         (WebCore::PluginView::globalMousePosForPlugin):
   63004 
   63005 2008-12-10  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   63006 
   63007         Reviewed by Eric Seidel and George Staikos.
   63008 
   63009         Fixes: https://bugs.webkit.org/show_bug.cgi?id=22799
   63010 
   63011         Add WML <template> support. The <template> element is specified at deck-level
   63012         and declares a template for all <card> elements in the document.
   63013 
   63014         * GNUmakefile.am:
   63015         * WebCore.vcproj/WebCore.vcproj:
   63016         * WebCore.xcodeproj/project.pbxproj:
   63017         * editing/htmlediting.cpp:
   63018         (WebCore::canHaveChildrenForEditing): Treat <do> just like a <button>.
   63019         * wml/WMLCardElement.cpp:
   63020         (WebCore::WMLCardElement::WMLCardElement):
   63021         (WebCore::WMLCardElement::setTemplateElement):
   63022         (WebCore::WMLCardElement::handleIntrinsicEventIfNeeded):
   63023         (WebCore::WMLCardElement::handleDeckLevelTaskOverridesIfNeeded):
   63024         * wml/WMLCardElement.h:
   63025         (WebCore::WMLCardElement::templateElement):
   63026         * wml/WMLDoElement.cpp:
   63027         (WebCore::WMLDoElement::insertedIntoDocument):
   63028         * wml/WMLDocument.cpp:
   63029         (WebCore::WMLDocument::finishedParsing):
   63030         * wml/WMLErrorHandling.cpp:
   63031         (WebCore::errorMessageForErrorCode):
   63032         * wml/WMLErrorHandling.h:
   63033         (WebCore::):
   63034         * wml/WMLEventHandlingElement.cpp:
   63035         (WebCore::WMLEventHandlingElement::~WMLEventHandlingElement):
   63036         * wml/WMLEventHandlingElement.h:
   63037         (WebCore::WMLEventHandlingElement::doElements):
   63038         * wml/WMLTagNames.in:
   63039         * wml/WMLTemplateElement.cpp: Added.
   63040         (WebCore::WMLTemplateElement::WMLTemplateElement):
   63041         (WebCore::WMLTemplateElement::~WMLTemplateElement):
   63042         (WebCore::WMLTemplateElement::parseMappedAttribute):
   63043         (WebCore::WMLTemplateElement::registerTemplatesInDocument):
   63044         * wml/WMLTemplateElement.h: Added.
   63045         * wml/WMLTimerElement.cpp:
   63046         (WebCore::WMLTimerElement::timerFired):
   63047 
   63048 2008-12-09  Dmitry Titov  <dimich (a] chromium.org>
   63049 
   63050         Reviewed by Darin Adler.
   63051 
   63052         Fix memory leak - need to call stopActiveDOMObjects
   63053         when cached pages get destroyed.
   63054         https://bugs.webkit.org/show_bug.cgi?id=22753
   63055 
   63056         * dom/Document.cpp:
   63057         (WebCore::Document::detach):
   63058 
   63059 2008-12-10  Alice Liu  <alice.liu (a] apple.com>
   63060 
   63061         Manual test for https://bugs.webkit.org/show_bug.cgi?id=20685
   63062 
   63063         Reviewed by Darin Adler.
   63064 
   63065         * manual-tests/drag-image-to-desktop.html: Added.
   63066 
   63067 2008-12-10  Alice Liu  <alice.liu (a] apple.com>
   63068 
   63069         fixed https://bugs.webkit.org/show_bug.cgi?id=20685
   63070 
   63071         Reviewed by Darin Adler.
   63072 
   63073         Manual test case is manual-tests/drag-image-to-desktop.html
   63074 
   63075         Added new files to projects
   63076         * WebCore.vcproj/WebCore.vcproj:
   63077         * WebCore.xcodeproj/project.pbxproj:
   63078 
   63079         * page/DragController.cpp:
   63080         (WebCore::DragController::startDrag):
   63081         * platform/MIMETypeRegistry.cpp:
   63082         (WebCore::initializeSupportedImageMIMETypes):
   63083         (WebCore::initializeSupportedImageMIMETypesForEncoding):
   63084 
   63085         These changes add a method to obtain the extension for an image
   63086         * platform/graphics/BitmapImage.cpp:
   63087         (WebCore::BitmapImage::filenameExtension):
   63088         * platform/graphics/BitmapImage.h:
   63089         * platform/graphics/Image.h:
   63090         (WebCore::Image::filenameExtension):
   63091         * platform/graphics/ImageSource.h:
   63092         * platform/graphics/cairo/ImageSourceCairo.cpp:
   63093         (WebCore::ImageSource::filenameExtension):
   63094         * platform/graphics/cg/ImageSourceCG.cpp:
   63095         (WebCore::ImageSource::filenameExtension):
   63096 
   63097         These changes added a utility that returns the preferred extension for a UTI
   63098         * platform/graphics/cg/ImageSourceCG.h: Added.
   63099         * platform/graphics/cg/ImageSourceCGMac.mm: Added.
   63100         (WebCore::MIMETypeForImageSourceType):
   63101         (WebCore::preferredExtensionForImageSourceType):
   63102         * platform/graphics/cg/ImageSourceCGWin.cpp: Added.
   63103         (WebCore::MIMETypeForImageSourceType):
   63104         (WebCore::preferredExtensionForImageSourceType):
   63105 
   63106         * platform/mac/MIMETypeRegistryMac.mm:
   63107         moved getMIMETypeForUTI to ImageSourceCGMac.mm
   63108 
   63109         Ask image for its file extension instead of relying on MIME type and file path
   63110         * platform/win/ClipboardWin.cpp:
   63111         (WebCore::createGlobalImageFileDescriptor):
   63112 
   63113         Remove extraneous code from getPreferredExtensionForMIMEType.
   63114         Also moved getMIMETypeForUTI to ImageSourceCGWin.cpp
   63115         * platform/win/MIMETypeRegistryWin.cpp:
   63116         (WebCore::MIMETypeRegistry::getPreferredExtensionForMIMEType):
   63117 
   63118 2008-12-10  Simon Fraser  <simon.fraser (a] apple.com>
   63119 
   63120         Reviewed by Antti Koivisto
   63121 
   63122         <rdar://problem/6431224>
   63123 
   63124         When updating the value of a slider, don't mark the parents
   63125         as needing layout, because the size of the slider can never
   63126         change. This fixes full-page repaints in some cases.
   63127 
   63128         * rendering/RenderSlider.cpp:
   63129         (WebCore::RenderSlider::updateFromElement):
   63130 
   63131 2008-12-10  Simon Fraser  <simon.fraser (a] apple.com>
   63132 
   63133         Potential build fix. The forward declaration of FloatPoint should
   63134         be inside the WebCore namespace.
   63135 
   63136         * platform/graphics/FloatPoint3D.h:
   63137 
   63138 2008-12-10  Simon Fraser  <simon.fraser (a] apple.com>
   63139 
   63140         Reviewed by Sam Weinig.
   63141 
   63142         https://bugs.webkit.org/show_bug.cgi?id=22793
   63143 
   63144         Cleanup FloatPoint3D: inline the getters and setters,
   63145         fix a potential divide-by-zero in normalize(), and add
   63146         a FloatPoint constructor.
   63147 
   63148         * platform/graphics/FloatPoint3D.cpp:
   63149         (WebCore::FloatPoint3D::FloatPoint3D):
   63150         (WebCore::FloatPoint3D::normalize):
   63151         * platform/graphics/FloatPoint3D.h:
   63152         (WebCore::FloatPoint3D::x):
   63153         (WebCore::FloatPoint3D::setX):
   63154         (WebCore::FloatPoint3D::y):
   63155         (WebCore::FloatPoint3D::setY):
   63156         (WebCore::FloatPoint3D::z):
   63157         (WebCore::FloatPoint3D::setZ):
   63158 
   63159 2008-12-09  Julien Chaffraix  <jchaffraix (a] webkit.org>
   63160 
   63161         Reviewed by Eric Seidel.
   63162 
   63163         Bug 22665: Remove setCreatedByParser(bool) from the few elements that use it
   63164         https://bugs.webkit.org/show_bug.cgi?id=22665
   63165 
   63166         - Removed setCreatedByParser from style and link elements.
   63167 
   63168         - Removed XMLTokenizer::eventuallyMarkAsCreatedByParser.
   63169 
   63170         * dom/XMLTokenizer.cpp:
   63171         * dom/XMLTokenizer.h:
   63172         * dom/XMLTokenizerLibxml2.cpp:
   63173         (WebCore::XMLTokenizer::startElementNs):
   63174         * dom/XMLTokenizerQt.cpp:
   63175         (WebCore::XMLTokenizer::parseStartElement):
   63176         * html/HTMLElementFactory.cpp:
   63177         (WebCore::linkConstructor):
   63178         (WebCore::styleConstructor):
   63179         * html/HTMLLinkElement.cpp:
   63180         (WebCore::HTMLLinkElement::HTMLLinkElement):
   63181         * html/HTMLLinkElement.h:
   63182         * html/HTMLStyleElement.cpp:
   63183         (WebCore::HTMLStyleElement::HTMLStyleElement):
   63184         * html/HTMLStyleElement.h:
   63185         * html/HTMLTagNames.in:
   63186         * svg/SVGStyleElement.cpp:
   63187         (WebCore::SVGStyleElement::SVGStyleElement):
   63188         * svg/SVGStyleElement.h:
   63189         * svg/svgtags.in:
   63190 
   63191 2008-12-10  Brady Eidson  <beidson (a] apple.com>
   63192 
   63193         Reviewed by Darin
   63194 
   63195         https://bugs.webkit.org/show_bug.cgi?id=22194 and <rdar://problem/6388378> -
   63196         Dialog when going back to a page from whence you submitted a form
   63197 
   63198         http://trac.webkit.org/changeset/37317 changed the manner in which headers are added to
   63199         http requests, which caused the networking layer to have an incomplete set of headers
   63200         just before consulting the Policy Delegate.  This caused a cache miss and incorrectly made
   63201         us believe we'd be resubmitting the form.
   63202 
   63203         * loader/FrameLoader.cpp:
   63204         (WebCore::FrameLoader::loadItem):  Being careful to maintain the new behavior required by
   63205           the Origin header mechanism as discussed in bug 22194, restore the previous behavior of
   63206           setting all the headers before the networking layer is asked about the cache lookup.
   63207 
   63208 2008-12-10  Dimitri Glazkov  <dglazkov (a] chromium.org>
   63209 
   63210         Reviewed by Timothy Hatcher.
   63211 
   63212         Add back ability to end all profiling via console by invoking profileEnd
   63213         with no arguments.
   63214 
   63215         * page/Console.cpp:
   63216         (WebCore::Console::profileEnd): Removed title null-checking and
   63217             subsequent early exit.
   63218 
   63219 2008-12-10  Pierre-Olivier Latour  <pol (a] apple.com>
   63220 
   63221         Reviewed by Darin Adler.
   63222 
   63223         KeyframeAnimation::animate() needs to compute the elapsed animation time
   63224         properly taking into account its paused state.
   63225 
   63226         https://bugs.webkit.org/show_bug.cgi?id=22773
   63227 
   63228         Test: animations/animation-drt-api-multiple-keyframes.html
   63229 
   63230         * page/animation/KeyframeAnimation.cpp:
   63231         (WebCore::KeyframeAnimation::animate):
   63232 
   63233 2008-12-10  Simon Fraser  <simon.fraser (a] apple.com>
   63234 
   63235         Reviewed by Dan Bernstein
   63236 
   63237         Part of
   63238         https://bugs.webkit.org/show_bug.cgi?id=22570
   63239 
   63240         Rename methods on RenderLayer for clarity:
   63241             clearClipRects -> clearClipRectsIncludingDescendants
   63242             clearClipRect  -> clearClipRects
   63243 
   63244         * rendering/RenderBox.cpp:
   63245         (WebCore::RenderBox::destroy):
   63246         * rendering/RenderLayer.cpp:
   63247         (WebCore::RenderLayer::updateLayerPosition):
   63248         (WebCore::RenderLayer::removeOnlyThisLayer):
   63249         (WebCore::RenderLayer::insertOnlyThisLayer):
   63250         (WebCore::RenderLayer::clearClipRectsIncludingDescendants):
   63251         (WebCore::RenderLayer::clearClipRects):
   63252         * rendering/RenderLayer.h:
   63253         * rendering/RenderObject.cpp:
   63254         (WebCore::RenderObject::styleWillChange):
   63255         * rendering/RenderWidget.cpp:
   63256         (WebCore::RenderWidget::destroy):
   63257 
   63258 2008-12-10  Kevin Ollivier  <kevino (a] theolliviers.com>
   63259 
   63260         wx build fix after the script call stack/frame additions.
   63261 
   63262         * WebCoreSources.bkl:
   63263 
   63264 2008-12-10   Srinivasa Rao M. Hamse  <msrinirao (a] gmail.com>
   63265 
   63266         Reviewed by Holger Freyther.
   63267 
   63268         F1-F12 key mappings for WebKit Gtk Port
   63269 
   63270         * platform/gtk/KeyEventGtk.cpp:
   63271         (WebCore::windowsKeyCodeForKeyEvent):
   63272 
   63273 2008-12-10  Enrico Ros  <enrico.ros (a] m31.com>
   63274 
   63275         Reviewed by Simon Hausmann.
   63276 
   63277         Fix the Qt build when SVG is disabled. A broken dependancy caused
   63278         unnecessary rebuilds even with no changes.
   63279 
   63280         * WebCore.pro: fix a broken build dependancy
   63281 
   63282 2008-12-10  Hironori Bono  <hbono (a] chromium.org>
   63283 
   63284         Reviewed by Alexey Proskuryakov.
   63285 
   63286         Bug 21820: Unable to enter the Tamil UNICODE Characters via Thamizha Phonetic IME
   63287         https://bugs.webkit.org/show_bug.cgi?id=21820
   63288 
   63289         <rdar://problem/5683248> Typing backspace to delete a diacritical mark also deletes the character before (Arabic)
   63290         <rdar://problem/5702038> Backspace removes Thai Character in wrong sequence
   63291 
   63292         Tests: editing/deleting/delete-ligature-001.html
   63293                editing/deleting/delete-ligature-002.html
   63294                editing/deleting/delete-ligature-003.html
   63295 
   63296         * editing/TypingCommand.cpp:
   63297         (WebCore::TypingCommand::deleteKeyPressed): Delete only the last character
   63298         of a ligature which consists of multiple Unicode characters when deleting it with
   63299         a backspace key.
   63300 
   63301 2008-12-10  David Levin  <levin (a] chromium.org>
   63302 
   63303         Reviewed by Alexey Proskuryakov.
   63304 
   63305         https://bugs.webkit.org/show_bug.cgi?id=22177
   63306         Fix the windows build by removing calls to notifyFormStateChanged
   63307         where they didn't appear in the original reviewed patch.
   63308 
   63309         * html/HTMLInputElement.cpp:
   63310         (WebCore::HTMLInputElement::type):
   63311         (WebCore::HTMLInputElement::attach):
   63312 
   63313 2008-12-09  Adam Barth  <abarth (a] webkit.org>
   63314 
   63315         Reviewed by Sam Weinig.
   63316 
   63317         Add ScriptController::updateSecurityOrigin to notify the bindings
   63318         that a document's securityOrigin has been updated.  This is used by
   63319         V8 to update its security context.
   63320 
   63321         * bindings/js/ScriptController.cpp:
   63322         (WebCore::ScriptController::updateSecurityOrigin):
   63323         * bindings/js/ScriptController.h:
   63324         * dom/Document.cpp:
   63325         (WebCore::Document::setDomain):
   63326 
   63327 2008-12-09  Eric Seidel  <eric (a] webkit.org>
   63328 
   63329         No review, build fix only.
   63330 
   63331         Fix a few config issues to let the Chromium Windows WebCore build get further.
   63332 
   63333         * WebCore.scons:
   63334 
   63335 2008-12-09  Brett Wilson  <brettw (a] chromium.org>
   63336 
   63337         Reviewed by Dave Hyatt.
   63338 
   63339         https://bugs.webkit.org/show_bug.cgi?id=22177
   63340 
   63341         Add a callback on ChromeClient that the state of form elements on
   63342         the page has changed. This is to allow clients implementing session
   63343         saving to know when the current state is dirty.
   63344 
   63345         * html/HTMLInputElement.cpp:
   63346         (WebCore::notifyFormStateChanged):
   63347         (WebCore::HTMLInputElement::setInputType):
   63348         (WebCore::HTMLInputElement::type):
   63349         (WebCore::HTMLInputElement::attach):
   63350         (WebCore::HTMLInputElement::setValue):
   63351         (WebCore::HTMLInputElement::setValueFromRenderer):
   63352         (WebCore::HTMLInputElement::setFileListFromRenderer):
   63353         * html/HTMLSelectElement.cpp:
   63354         (WebCore::HTMLSelectElement::setSelectedIndex):
   63355         * html/HTMLTextAreaElement.cpp:
   63356         (WebCore::notifyFormStateChanged):
   63357         (WebCore::HTMLTextAreaElement::HTMLTextAreaElement):
   63358         (WebCore::HTMLTextAreaElement::updateValue):
   63359         (WebCore::HTMLTextAreaElement::setValue):
   63360         * loader/EmptyClients.h:
   63361         (WebCore::EmptyChromeClient::formStateDidChange):
   63362         * page/ChromeClient.h:
   63363 
   63364 2008-12-09  Sam Weinig  <sam (a] webkit.org>
   63365 
   63366         Reviewed by Darin Adler.
   63367 
   63368         https://bugs.webkit.org/show_bug.cgi?id=19762
   63369 
   63370         Fix intermittent crash in buildbot. The CSSCursorImageValues and
   63371         SVGCursorElements held onto raw SVGElement pointers without any
   63372         guarantee that the element is still around.
   63373 
   63374         We did not fix the design that resulted in this issue, we just fixed
   63375         the pointer lifetimes.
   63376 
   63377         * css/CSSCursorImageValue.cpp:
   63378         (WebCore::CSSCursorImageValue::~CSSCursorImageValue): Zero out the back pointers.
   63379         (WebCore::CSSCursorImageValue::updateIfSVGCursorIsUsed): Set up a back pointer.
   63380         (WebCore::CSSCursorImageValue::removeReferencedElement): Added. Used when the element
   63381         is destroyed.
   63382         * css/CSSCursorImageValue.h: Added removeReferencedElement.
   63383 
   63384         * svg/SVGCursorElement.cpp:
   63385         (WebCore::SVGCursorElement::~SVGCursorElement): Zero out the back pointers.
   63386         (WebCore::SVGCursorElement::addClient): Set up a back pointer.
   63387         (WebCore::SVGCursorElement::removeClient): Zero out the back pointer.
   63388 
   63389         * svg/SVGElement.cpp:
   63390         (WebCore::SVGElement::SVGElement): Initialize back pointers to zero.
   63391         (WebCore::SVGElement::~SVGElement): Call both the element and cursor image value
   63392         to remove the element from their sets.
   63393         * svg/SVGElement.h:
   63394         (WebCore::SVGElement::setCursorElement): Added.
   63395         (WebCore::SVGElement::setCursorImageValue): Added.
   63396 
   63397 2008-12-09  David Hyatt  <hyatt (a] apple.com>
   63398 
   63399         Add code that will create custom CSS scrollbars from the <body>, the document element (<html>) and the owning
   63400         frame/iframe.  If any of them set a custom style, it will be used.  The scrollbars do not update dynamically
   63401         yet as you switch from page to page (until they are destroyed and recreated).
   63402 
   63403         Reviewed by Adele
   63404 
   63405         * page/FrameView.cpp:
   63406         (WebCore::FrameView::createScrollbar):
   63407 
   63408 2008-12-09  Ojan Vafai  <ojan (a] chromium.org>
   63409 
   63410         Reviewed by Dave Hyatt.
   63411 
   63412         https://bugs.webkit.org/show_bug.cgi?id=22689
   63413         Match Firefox button metrics on Windows.
   63414 
   63415         * rendering/RenderButton.cpp:
   63416         (WebCore::RenderButton::addChild):
   63417         (WebCore::RenderButton::styleDidChange):
   63418         (WebCore::RenderButton::setupInnerStyle):
   63419         * rendering/RenderButton.h:
   63420         * rendering/RenderTheme.cpp:
   63421         (WebCore::RenderTheme::adjustButtonInnerStyle):
   63422         * rendering/RenderTheme.h:
   63423         * rendering/RenderThemeWin.cpp:
   63424         (WebCore::RenderThemeWin::adjustSliderThumbSize):
   63425         (WebCore::RenderThemeWin::adjustButtonInnerStyle):
   63426         * rendering/RenderThemeWin.h:
   63427 
   63428 2008-12-09  Darin Fisher  <darin (a] chromium.org>
   63429 
   63430         Fixes bustages.
   63431 
   63432         https://bugs.webkit.org/show_bug.cgi?id=22631
   63433         Adding missing files from previous commit.
   63434 
   63435         * bindings/js/ScriptCallFrame.cpp: Added.
   63436         (WebCore::ScriptCallFrame::ScriptCallFrame):
   63437         (WebCore::ScriptCallFrame::~ScriptCallFrame):
   63438         (WebCore::ScriptCallFrame::argumentAt):
   63439         * bindings/js/ScriptCallFrame.h: Added.
   63440         (WebCore::ScriptCallFrame::functionName):
   63441         (WebCore::ScriptCallFrame::sourceURL):
   63442         (WebCore::ScriptCallFrame::lineNumber):
   63443         (WebCore::ScriptCallFrame::argumentCount):
   63444         * bindings/js/ScriptCallStack.cpp: Added.
   63445         (WebCore::ScriptCallStack::ScriptCallStack):
   63446         (WebCore::ScriptCallStack::~ScriptCallStack):
   63447         (WebCore::ScriptCallStack::at):
   63448         (WebCore::ScriptCallStack::size):
   63449         (WebCore::ScriptCallStack::initialize):
   63450         * bindings/js/ScriptCallStack.h: Added.
   63451         (WebCore::ScriptCallStack::state):
   63452 
   63453 2008-12-09  Dimitri Glazkov  <dglazkov (a] chromium.org>
   63454 
   63455         Reviewed by Timothy Hatcher.
   63456 
   63457         https://bugs.webkit.org/show_bug.cgi?id=22631
   63458         Streamline Console.cpp, abstract out the use of JSC::ExecState and
   63459         JSC::ArgList by introducing ScriptCallFrame and ScriptCallStack
   63460         abstractions.
   63461 
   63462         * GNUmakefile.am: Added ScriptCallFrame and ScriptCallStack to build
   63463         * WebCore.pro:  Added ScriptCallFrame and ScriptCallStack to build
   63464         * WebCore.vcproj/WebCore.vcproj: Added ScriptCallFrame and
   63465         ScriptCallStack to project
   63466         * WebCore.xcodeproj/project.pbxproj: Added ScriptCallFrame and
   63467         ScriptCallStack to project
   63468         * bindings/js/JSConsoleCustom.cpp: Remove custom bindings.
   63469         * bindings/js/ScriptCallFrame.cpp: Added.
   63470         (WebCore::ScriptCallFrame::ScriptCallFrame):
   63471         (WebCore::ScriptCallFrame::~ScriptCallFrame):
   63472         (WebCore::ScriptCallFrame::argumentAt):
   63473         * bindings/js/ScriptCallFrame.h: Added.
   63474         (WebCore::ScriptCallFrame::functionName):
   63475         (WebCore::ScriptCallFrame::sourceURL):
   63476         (WebCore::ScriptCallFrame::lineNumber):
   63477         (WebCore::ScriptCallFrame::argumentCount):
   63478         * bindings/js/ScriptCallStack.cpp: Added.
   63479         (WebCore::ScriptCallStack::ScriptCallStack):
   63480         (WebCore::ScriptCallStack::~ScriptCallStack):
   63481         (WebCore::ScriptCallStack::at):
   63482         (WebCore::ScriptCallStack::size):
   63483         (WebCore::ScriptCallStack::initialize):
   63484         * bindings/js/ScriptCallStack.h: Added.
   63485         (WebCore::ScriptCallStack::ScriptCallStack):
   63486         (WebCore::ScriptCallStack::~ScriptCallStack):
   63487         (WebCore::ScriptCallStack::state):
   63488         (WebCore::ScriptCallStack::at):
   63489         (WebCore::ScriptCallStack::size):
   63490         (WebCore::ScriptCallStack::initialize):
   63491         * bindings/js/ScriptString.h: Added missing PlatformString include.
   63492         (WebCore::ScriptString::ScriptString): Added default constructor.
   63493         (WebCore::ScriptString::operator==): Added equality operator.
   63494         (WebCore::ScriptString::operator!=):
   63495         * bindings/js/ScriptValue.cpp: Added isNull and isUndefined.
   63496         (WebCore::ScriptValue::isNull):
   63497         (WebCore::ScriptValue::isUndefined):
   63498         * bindings/js/ScriptValue.h: Added isNull and isUndefined
   63499         * bindings/scripts/CodeGeneratorJS.pm: Add handling for
   63500         CustomArgumentHandling attribute.
   63501         * inspector/InspectorController.cpp: Refactored to use
   63502         ScriptCallFrame and ScriptCallStack.
   63503         (WebCore::ConsoleMessage::ConsoleMessage):
   63504         (WebCore::InspectorController::addMessageToConsole):
   63505         (WebCore::InspectorController::startGroup):
   63506         (WebCore::InspectorController::addScriptConsoleMessage):
   63507         (WebCore::InspectorController::count):
   63508         (WebCore::InspectorController::startTiming):
   63509         (WebCore::InspectorController::stopTiming):
   63510         * inspector/InspectorController.h: Refactored to use ScriptCallFrame and
   63511         ScriptCallStack.
   63512         * inspector/front-end/Console.js: Modified to use argument value itself
   63513         rather than f.name for stack trace.
   63514         * page/Console.cpp: Refactored to use ScriptCallFrame and
   63515         ScriptCallStack.
   63516         (WebCore::getFirstArgumentAsString):
   63517         (WebCore::Console::addMessage):
   63518         (WebCore::Console::debug):
   63519         (WebCore::Console::error):
   63520         (WebCore::Console::info):
   63521         (WebCore::Console::log):
   63522         (WebCore::Console::dir):
   63523         (WebCore::Console::dirxml):
   63524         (WebCore::Console::trace):
   63525         (WebCore::Console::assertCondition):
   63526         (WebCore::Console::count):
   63527         (WebCore::Console::profile):
   63528         (WebCore::Console::profileEnd):
   63529         (WebCore::Console::time):
   63530         (WebCore::Console::timeEnd):
   63531         (WebCore::Console::group):
   63532         (WebCore::Console::warn):
   63533         * page/Console.h:
   63534         * page/Console.idl: Removed Custom attributes, added
   63535         CustomArgumentHandling attributes, and tweaked argument defs.
   63536 
   63537 2008-12-09  Darin Adler  <darin (a] apple.com>
   63538 
   63539         Try to fix non-Mac builds.
   63540 
   63541         * GNUmakefile.am: Added NavigatorBase.
   63542         * WebCore.pro: Ditto.
   63543         * WebCore.scons: Ditto.
   63544         * WebCore.vcproj/WebCore.vcproj: Ditto.
   63545         * WebCoreSources.bkl: Ditto.
   63546 
   63547         Unrelated tweak sitting in my tree.
   63548 
   63549         * bindings/objc/DOMAbstractView.mm: Remove pointless override of finalize method.
   63550 
   63551 2008-12-09  Darin Adler  <darin (a] apple.com>
   63552 
   63553         Try to fix Tiger build.
   63554 
   63555         * platform/network/mac/NetworkStateNotifierMac.cpp: Declare CFRunLoopGetMain.
   63556 
   63557 2008-12-09  Alexey Proskuryakov  <ap (a] webkit.org>
   63558 
   63559         Reviewed by Darin Adler.
   63560 
   63561         https://bugs.webkit.org/show_bug.cgi?id=22719
   63562         Implement Navigator object in Workers
   63563 
   63564         Test: fast/workers/worker-navigator.html
   63565 
   63566         * DerivedSources.make:
   63567         * GNUmakefile.am:
   63568         * WebCore.pro:
   63569         * WebCore.vcproj/WebCore.vcproj:
   63570         * WebCore.xcodeproj/project.pbxproj:
   63571         Added WorkerNavigator sources.
   63572 
   63573         * bindings/js/JSWorkerContext.cpp: (WebCore::jsWorkerContextNavigator):
   63574         Worker.navigator returns a WoerkerNavigator object (it is named just Navigator in the spec,
   63575         but it is not the same interface that is available on Windows).
   63576 
   63577         * dom/Worker.cpp:
   63578         (WebCore::Worker::notifyFinished):
   63579         * dom/WorkerContext.cpp:
   63580         (WebCore::WorkerContext::WorkerContext):
   63581         (WebCore::WorkerContext::navigator):
   63582         * dom/WorkerContext.h:
   63583         (WebCore::WorkerContext::create):
   63584         * dom/WorkerThread.cpp:
   63585         (WebCore::WorkerThread::create):
   63586         (WebCore::WorkerThread::WorkerThread):
   63587         (WebCore::WorkerThread::workerThread):
   63588         * dom/WorkerThread.h:
   63589         Pass a pre-computed user agent string into worker, because it cannot call a client method
   63590         directly, and pre-computing is easier than sending a synchronous message to the main thread.
   63591 
   63592         * page/Navigator.cpp:
   63593         * page/Navigator.h:
   63594         * page/NavigatorBase.cpp: Added.
   63595         * page/NavigatorBase.h: Added.
   63596         Factor out common (and uncommon, but very similar) functionality into a base class.
   63597 
   63598         * page/WorkerNavigator.cpp: Added.
   63599         * page/WorkerNavigator.h: Added.
   63600         * page/WorkerNavigator.idl: Added.
   63601         Per Web Workers and HTML5, implement a small subset of what we currently have in Window.Navigator.
   63602 
   63603         * platform/network/NetworkStateNotifier.cpp: (WebCore::networkStateNotifier):
   63604         Make networkStateNotifier() static constructor thread safe. The object is created on the
   63605         thread it is first called from, while callbacks are registered on the main thread. Calls to
   63606         onLine() from other threads are safe, because it is just loading a boolean.
   63607 
   63608         * platform/network/mac/NetworkStateNotifierMac.cpp: (WebCore::NetworkStateNotifier::NetworkStateNotifier):
   63609         Schedule notifications on main event loop, not the current one.
   63610 
   63611 2008-12-09  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   63612 
   63613         Rubber-stamped by Alexey Proskuryakov.
   63614 
   63615         Forgot to update Qt/WML build - add some new files to the build.
   63616 
   63617         * WebCore.pro:
   63618 
   63619 2008-12-09  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   63620 
   63621         Reviewed by Alexey Proskuryakov.
   63622 
   63623         Fixes: https://bugs.webkit.org/show_bug.cgi?id=22637
   63624 
   63625         Implement the GET method for WMLGoElement, and some test covering it's behaviour.
   63626         Update all build systems supporting WML that haven't been updated since a while.
   63627 
   63628         Add WMLPostField stub implementation, needed for implementing POST method.
   63629 
   63630         Tests: wml/go-task-get-method-external-deck-with-href.html
   63631                wml/go-task-get-method-external-deck.html
   63632                wml/go-task-get-method-same-deck.html
   63633 
   63634         * GNUmakefile.am:
   63635         * WebCore.vcproj/WebCore.vcproj:
   63636         * WebCore.xcodeproj/project.pbxproj:
   63637         * dom/Document.cpp:
   63638         (WebCore::Document::resetWMLPageState):
   63639         * wml/WMLCardElement.cpp:
   63640         * wml/WMLCardElement.h:
   63641         * wml/WMLEventHandlingElement.cpp:
   63642         (WebCore::WMLCardElement::registerDoElement):
   63643         * wml/WMLEventHandlingElement.h:
   63644         * wml/WMLGoElement.cpp:
   63645         (WebCore::WMLGoElement::WMLGoElement):
   63646         (WebCore::WMLGoElement::registerPostfieldElement):
   63647         (WebCore::WMLGoElement::parseMappedAttribute):
   63648         (WebCore::WMLGoElement::executeTask):
   63649         (WebCore::WMLGoElement::parseContentType):
   63650         (WebCore::WMLGoElement::preparePOSTRequest):
   63651         (WebCore::WMLGoElement::prepareGETRequest):
   63652         * wml/WMLGoElement.h:
   63653         * wml/WMLPostfieldElement.cpp: Added.
   63654         (WebCore::WMLPostfieldElement::WMLPostfieldElement):
   63655         (WebCore::WMLPostfieldElement::parseMappedAttribute):
   63656         (WebCore::WMLPostfieldElement::insertedIntoDocument):
   63657         * wml/WMLPostfieldElement.h: Added.
   63658         (WebCore::WMLPostfieldElement::name):
   63659         (WebCore::WMLPostfieldElement::value):
   63660         * wml/WMLTagNames.in:
   63661 
   63662 2008-12-08  Peter Kasting  <pkasting (a] google.com>
   63663 
   63664         Reviewed by Anders Carlsson.
   63665 
   63666         https://bugs.webkit.org/show_bug.cgi?id=16814
   63667         Allow ports to disable ActiveX->NPAPI conversion for Media Player.
   63668         Improve handling of miscellaneous ActiveX objects.
   63669 
   63670         * rendering/RenderPartObject.cpp:
   63671         (WebCore::mapClassIdToServiceType):
   63672         (WebCore::shouldUseChildEmbedOfObject):
   63673         (WebCore::RenderPartObject::updateWidget):
   63674 
   63675 2008-12-08  Darin Adler  <darin (a] apple.com>
   63676 
   63677         Reviewed by John Sullivan.
   63678 
   63679         - fix https://bugs.webkit.org/show_bug.cgi?id=22409
   63680           REGRESSION: cmd-shift-left/right don't switch tabs, instead select text
   63681 
   63682         Tests: editing/execCommand/enabling-and-selection-2.html
   63683                editing/execCommand/enabling-and-selection.html
   63684 
   63685         * editing/EditorCommand.cpp: Updated table to use these functions by their new names.
   63686         (WebCore::enabledVisibleSelection): Renamed this to reflect its new algorithm.
   63687         An invisible selection with a position that selects no characters doesn't count
   63688         as a visible selection.
   63689         (WebCore::enabledVisibleSelectionAndMark): Ditto.
   63690 
   63691 2008-12-08  David Kilzer  <ddkilzer (a] apple.com>
   63692 
   63693         Remove duplicate entries from WebCore project.
   63694 
   63695         Reviewed by Eric Seidel.
   63696 
   63697         Bug 22555: Sort "children" sections in Xcode project files.
   63698         <https://bugs.webkit.org/show_bug.cgi?id=22555>
   63699 
   63700         Recipe for removing duplicates:
   63701         $ ./WebKitTools/Scripts/sort-Xcode-project-file project.pbxproj
   63702         $ uniq < project.pbxproj | diff -u project.pbxproj - | patch -p0 project.pbxproj
   63703 
   63704         * WebCore.xcodeproj/project.pbxproj: Removed duplicates.
   63705 
   63706 2008-12-08  Julien Chaffraix  <jchaffraix (a] webkit.org>
   63707 
   63708         Reviewed by Darin Adler.
   63709 
   63710         Bug 22665: Remove setCreatedByParser(bool) from the few elements that use it
   63711         https://bugs.webkit.org/show_bug.cgi?id=22665
   63712 
   63713         Remove setCreatedByParser from the script elements (HTML and SVG).
   63714 
   63715         * dom/XMLTokenizer.cpp:
   63716         (WebCore::XMLTokenizer::eventuallyMarkAsParserCreated): Removed
   63717         call to setCreatedByParser for the 2 elements.
   63718 
   63719         * dom/make_names.pl: Modified to call the constructor with
   63720         the createByParser parameter if 'constructorNeedsCreatedByParser'
   63721         is set.
   63722 
   63723         * html/HTMLElementFactory.cpp:
   63724         (WebCore::scriptConstructor):
   63725         * html/HTMLScriptElement.cpp:
   63726         (WebCore::HTMLScriptElement::HTMLScriptElement):
   63727         * html/HTMLScriptElement.h:
   63728         * html/HTMLTagNames.in: Added constructorNeedsCreatedByParser
   63729         to script.
   63730         * svg/SVGScriptElement.cpp:
   63731         (WebCore::SVGScriptElement::SVGScriptElement):
   63732         * svg/SVGScriptElement.h:
   63733         * svg/svgtags.in: Added constructorNeedsCreatedByParser
   63734         to script.
   63735 
   63736 2008-12-08  David Kilzer  <ddkilzer (a] apple.com>
   63737 
   63738         Bug 22555: Sort "children" sections in Xcode project files
   63739 
   63740         <https://bugs.webkit.org/show_bug.cgi?id=22555>
   63741 
   63742         Reviewed by Eric Seidel.
   63743 
   63744         * WebCore.xcodeproj/project.pbxproj: Sorted.
   63745         * manual-tests/NPN_Invoke/NPN_Invoke.xcodeproj/project.pbxproj: Sorted.
   63746 
   63747 2008-12-08  Tony Chang  <tony (a] chromium.org>
   63748 
   63749         Reviewed by Eric Seidel.
   63750 
   63751         Add a bool to GraphicsContext so that shadows can ignore
   63752         transformations.  This is needed by HTML canvas element
   63753         where the spec says shadows are applied w/o transformations.
   63754         https://bugs.webkit.org/show_bug.cgi?id=22580
   63755 
   63756         No functional changes, thus no tests.
   63757 
   63758         * html/CanvasRenderingContext2D.cpp:
   63759         (WebCore::CanvasRenderingContext2D::setShadow):
   63760         (WebCore::CanvasRenderingContext2D::applyShadow):
   63761         * html/HTMLCanvasElement.cpp:
   63762         (WebCore::HTMLCanvasElement::createImageBuffer):
   63763         * platform/graphics/GraphicsContext.cpp:
   63764         (WebCore::GraphicsContext::setShadowsIgnoreTransforms):
   63765         * platform/graphics/GraphicsContext.h:
   63766         * platform/graphics/GraphicsContextPrivate.h:
   63767         (WebCore::GraphicsContextState::GraphicsContextState):
   63768         * platform/graphics/cg/GraphicsContextCG.cpp:
   63769         (WebCore::GraphicsContext::setPlatformShadow):
   63770 
   63771 2008-12-08  Julien Chaffraix  <jchaffraix (a] webkit.org>
   63772 
   63773         Reviewed by Darin Adler.
   63774 
   63775         Bug 17897: Not Rendering Images Imported from XHTML Document
   63776         <rdar://problem/5827614>
   63777 
   63778         When we were loading document with XMLHttpRequest that contained images, the images
   63779         would not be fetched as they would not be displayed. However if we inserted such
   63780         an image element into a rendered document, we would not fetch the image and thus never
   63781         display it.
   63782 
   63783         Now we check if the image has been loaded when we insert an HTMLImageElement into a
   63784         document.
   63785         To enable this, the image loader has an error flag. To avoid doing several attempts
   63786         when we know that the image is in error, we store the failed URL.
   63787         However Firefox and Opera ignore errors when the 'src' attribute changes and thus
   63788         we also have an updateFromElementIgnoringPreviousError to match the other browser.
   63789 
   63790         Tests: http/tests/misc/image-blocked-src-change.html
   63791                http/tests/misc/image-blocked-src-no-change.html
   63792                http/tests/xmlhttprequest/xmlhttprequest-image-not-loaded-svg.svg
   63793                http/tests/xmlhttprequest/xmlhttprequest-image-not-loaded.html
   63794 
   63795         * html/HTMLEmbedElement.cpp:
   63796         (WebCore::HTMLEmbedElement::parseMappedAttribute): Changed to call updateFromElementIgnoringPreviousError.
   63797         * html/HTMLImageElement.cpp:
   63798         (WebCore::HTMLImageElement::parseMappedAttribute): Ditto.
   63799         (WebCore::HTMLImageElement::insertedIntoDocument): Call updateFromElement if we do not have
   63800         an image.
   63801 
   63802         * html/HTMLInputElement.cpp:
   63803         (WebCore::HTMLInputElement::parseMappedAttribute): Changed to call updateFromElementIgnoringPreviousError.
   63804         * html/HTMLObjectElement.cpp:
   63805         (WebCore::HTMLObjectElement::parseMappedAttribute): Ditto.
   63806         * html/HTMLVideoElement.cpp:
   63807         (WebCore::HTMLVideoElement::parseMappedAttribute): Ditto.
   63808         * loader/ImageLoader.cpp:
   63809         (WebCore::ImageLoader::setImage): Added an assertion.
   63810         (WebCore::ImageLoader::updateFromElement): Added a check for load error (to avoid displaying
   63811         multiple errors in the console for a single image load).
   63812 
   63813         (WebCore::ImageLoader::updateFromElementIgnoringPreviousError): This method clears previous error
   63814         before calling updateFromElement.
   63815 
   63816         (WebCore::ImageLoader::notifyFinished): Added an assertion.
   63817         * loader/ImageLoader.h:
   63818         * svg/SVGImageElement.cpp:
   63819         (WebCore::SVGImageElement::svgAttributeChanged): Changed to call updateFromElementIgnoringPreviousError.
   63820 
   63821 2008-12-08  David Hyatt  <hyatt (a] apple.com>
   63822 
   63823         Make scrollbar creation virtual on ScrollView so that FrameView can have the capability to create
   63824         custom CSS scrollbars.
   63825 
   63826         Reviewed by Eric Seidel
   63827 
   63828         * page/FrameView.cpp:
   63829         (WebCore::FrameView::createScrollbar):
   63830         * page/FrameView.h:
   63831         * platform/ScrollView.cpp:
   63832         (WebCore::ScrollView::setHasHorizontalScrollbar):
   63833         (WebCore::ScrollView::setHasVerticalScrollbar):
   63834         (WebCore::ScrollView::createScrollbar):
   63835         * platform/ScrollView.h:
   63836 
   63837 2008-12-08  Dan Bernstein  <mitz (a] apple.com>
   63838 
   63839         Reviewed by John Sullivan.
   63840 
   63841         - WebCore part of tracking the global history item for a WebView
   63842 
   63843         * loader/FrameLoader.cpp:
   63844         (WebCore::FrameLoader::checkLoadCompleteForThisFrame): Set the page's
   63845         global history item to the current back/forward list item, respecting
   63846         private browsing mode.
   63847         (WebCore::FrameLoader::continueLoadAfterNavigationPolicy): Ditto in this
   63848         case.
   63849         (WebCore::FrameLoader::goToItem): Ditto in this case.
   63850         (WebCore::FrameLoader::updateHistoryForStandardLoad): If this load
   63851         creates a new global history item, set the page's global history item
   63852         to it.
   63853         (WebCore::FrameLoader::updateHistoryForRedirectWithLockedHistory):
   63854         Ditto.
   63855         * page/Page.cpp:
   63856         (WebCore::Page::setGlobalHistoryItem): Added this setter.
   63857         * page/Page.h: Added a m_globalHistoryItem data member.
   63858         (WebCore::Page::globalHistoryItem): Added this getter.
   63859 
   63860 2008-12-08  Antti Koivisto  <antti (a] apple.com>
   63861 
   63862         Reviewed by Dave Kilzer.
   63863 
   63864         A few stylistic fixes suggested by Dave Kilzer.
   63865 
   63866         * css/CSSPrimitiveValue.cpp:
   63867         (WebCore::CSSPrimitiveValue::createIdentifier):
   63868         (WebCore::CSSPrimitiveValue::create):
   63869 
   63870 2008-12-08  Alexey Proskuryakov  <ap (a] webkit.org>
   63871 
   63872         Reviewed by Darin Adler.
   63873 
   63874         https://bugs.webkit.org/show_bug.cgi?id=22737
   63875         Try debug version when locating CFNetwork
   63876 
   63877         * platform/network/cf/ResourceRequestCFNet.cpp:
   63878         (WebCore::findCFNetworkModule):
   63879         (WebCore::findCFURLRequestSetContentDispositionEncodingFallbackArrayFunction):
   63880         (WebCore::findCFURLRequestCopyContentDispositionEncodingFallbackArrayFunction):
   63881         * platform/network/win/CookieJarCFNetWin.cpp:
   63882         (WebCore::findCFNetworkModule):
   63883         (WebCore::findIsHTTPOnlyFunction):
   63884 
   63885 2008-12-08  Aaron Boodman  <aa (a] chromium.org>
   63886 
   63887         Reviewed by Stephanie Lewis.
   63888 
   63889         https://bugs.webkit.org/show_bug.cgi?id=22301
   63890         Make dispatchDidFinishLoading() always fire before didFinishLoadForFrame().
   63891 
   63892         * loader/FrameLoader.cpp:
   63893         (WebCore::FrameLoader::finishedParsing):
   63894 
   63895 2008-12-08  Trenton Schulz <trenton.schulz (a] nokia.com>
   63896 
   63897         Rubber-stamped by Tor Arne Vestb.
   63898 
   63899         Fix build warning on Mac
   63900 
   63901         * platform/text/mac/StringImplMac.mm:
   63902 
   63903 2008-12-08  Simon Hausmann  <simon.hausmann (a] nokia.com>
   63904 
   63905         Fix the Qt build.
   63906 
   63907         * bridge/qt/qt_runtime.cpp:
   63908         (JSC::Bindings::convertQVariantToValue): Pass JSGlobalData to RegExp
   63909           constructor.
   63910 
   63911 2008-12-08  Oliver Hunt  <oliver (a] apple.com>
   63912 
   63913         Reviewed by Alexey Proskuryakov.
   63914 
   63915         Bug 22398: r39059: Crash when clearing webkitTransitionDuration in webkitTransitionEnd event handler
   63916         <rdar://problem/6426245> REGRESSION(r39059): Reproducible crash when clearing webkitTransitionDuration in webkitTransitionEnd event handler (22398)
   63917 
   63918         This regression was caused by r39059 replacing the protector on the active
   63919         animation with a protector on just the composition.  It turns out that both
   63920         protectors are necessary.
   63921 
   63922         Test: transitions/transition-duration-cleared-in-transitionend-crash.html
   63923 
   63924         * page/animation/AnimationBase.cpp:
   63925         (WebCore::AnimationBase::animationTimerCallbackFired):
   63926 
   63927 2008-12-08  Dmitry Titov  <dimich (a] chromium.org>
   63928 
   63929         Reviewed by Alexey Proskuryakov.
   63930 
   63931         https://bugs.webkit.org/show_bug.cgi?id=22732
   63932         Remove unused files PausedTimeouts.h,.cpp
   63933         The change that deprecated this code was https://bugs.webkit.org/show_bug.cgi?id=22620
   63934 
   63935         * GNUmakefile.am:
   63936         * WebCore.pro:
   63937         * WebCore.scons:
   63938         * WebCore.vcproj/WebCore.vcproj:
   63939         * WebCore.xcodeproj/project.pbxproj:
   63940         * WebCoreSources.bkl:
   63941           These are build files which had PausedTimeouts referenced.
   63942 
   63943         * bindings/js/PausedTimeouts.cpp: Removed.
   63944         * bindings/js/PausedTimeouts.h: Removed.
   63945         * bindings/js/ScriptController.cpp: Removed '#include'
   63946         * page/Chrome.cpp: Removed '#include' and unused variable.
   63947 
   63948 2008-12-07  Simon Fraser  <simon.fraser (a] apple.com>
   63949 
   63950         Reviewed by Dan Bernstein
   63951 
   63952         https://bugs.webkit.org/show_bug.cgi?id=22594
   63953 
   63954         Fix issues which break reading inline style for -webkit-transition
   63955         and -webkit-transform-origin.
   63956 
   63957         Test: fast/css/transform-inline-style.html
   63958 
   63959         * css/CSSMutableStyleDeclaration.cpp:
   63960         (WebCore::CSSMutableStyleDeclaration::getPropertyValue): Add cases
   63961         for CSSPropertyWebkitTransformOrigin and CSSPropertyWebkitTransition
   63962         so that these shorthand properties are returned correctly.
   63963         * css/CSSParser.cpp:
   63964         (WebCore::CSSParser::parseAnimationProperty): Create CSSPrimitiveValues
   63965         with the correct CSSValueAll and CSSValueNone identifiers, not the
   63966         RenderStyle-level cAnimateAll, cAnimateNone.
   63967         * css/CSSStyleSelector.cpp:
   63968         (WebCore::CSSStyleSelector::mapAnimationProperty): Special-case CSSValueAll
   63969         and CSSValueNone values to set cAnimateAll and cAnimateNone transition properties.
   63970 
   63971 2008-12-07  Antti Koivisto  <antti (a] apple.com>
   63972 
   63973         Reviewed by Darin Adler.
   63974 
   63975         https://bugs.webkit.org/show_bug.cgi?id=22717
   63976         Make CSS values use less memory
   63977 
   63978         Share CSSPrimitiveValue objects for commonly used values including
   63979         - idents
   63980         - colors
   63981         - small integers
   63982 
   63983         This reduces the amount CSSPrimitiveValue instances by > 80%.
   63984 
   63985         * css/CSSPrimitiveValue.cpp:
   63986         (WebCore::CSSPrimitiveValue::createIdentifier):
   63987         (WebCore::CSSPrimitiveValue::createColor):
   63988         (WebCore::CSSPrimitiveValue::create):
   63989         * css/CSSPrimitiveValue.h:
   63990         (WebCore::CSSPrimitiveValue::create):
   63991 
   63992 2008-12-07  Antti Koivisto  <antti (a] apple.com>
   63993 
   63994         Reviewed by Darin Adler.
   63995 
   63996         https://bugs.webkit.org/show_bug.cgi?id=22717
   63997         Make CSS values use less memory
   63998 
   63999         Get CSSValues off from the common StyleBase base class. They don't
   64000         need a parent pointer or anything else there and there is no real
   64001         reason to have them in same data structures with other CSSOM objects.
   64002 
   64003         Disabled (instead of refactoring around the lack of common base) the ability
   64004         to have style declaration blocks as CSS variable values. They don't exist in
   64005         the spec so I wasn't sure if they have future or not. It would not be hard to
   64006         get them back. CSS variables are in any case an experimental feature and
   64007         not enabled by default.
   64008 
   64009         * css/CSSInitialValue.h:
   64010         (WebCore::CSSInitialValue::createExplicit):
   64011         (WebCore::CSSInitialValue::createImplicit):
   64012         * css/CSSParser.cpp:
   64013         (WebCore::CSSParser::addVariableDeclarationBlock):
   64014         * css/CSSParser.h:
   64015         * css/CSSValue.h:
   64016         (WebCore::CSSValue::~CSSValue):
   64017         (WebCore::CSSValue::parserValue):
   64018         * css/CSSVariablesDeclaration.cpp:
   64019         (WebCore::CSSVariablesDeclaration::CSSVariablesDeclaration):
   64020         (WebCore::CSSVariablesDeclaration::getVariableValue):
   64021         (WebCore::CSSVariablesDeclaration::removeVariable):
   64022         (WebCore::CSSVariablesDeclaration::addParsedVariable):
   64023         (WebCore::CSSVariablesDeclaration::getParsedVariable):
   64024         (WebCore::CSSVariablesDeclaration::getParsedVariableDeclarationBlock):
   64025         * css/CSSVariablesDeclaration.h:
   64026         (WebCore::CSSVariablesDeclaration::create):
   64027         * css/StyleBase.h:
   64028 
   64029 2008-12-07  Dirk Schulze  <krit (a] webkit.org>
   64030 
   64031         Reviewed by Oliver Hunt.
   64032 
   64033         Add gradient and pattern support for strokeRect on canvas/Cg.
   64034 
   64035         Canvas strokeRect() doesn't support gradients
   64036         https://bugs.webkit.org/show_bug.cgi?id=19790
   64037 
   64038         Test: fast/canvas/canvas-strokeRect.html
   64039 
   64040         * platform/graphics/cg/GraphicsContextCG.cpp:
   64041         (WebCore::GraphicsContext::strokeRect):
   64042 
   64043 2008-12-06  Dirk Schulze  <krit (a] webkit.org>
   64044 
   64045         Reviewed by Oliver Hunt.
   64046 
   64047         Add support for setTransform() in canvas.
   64048 
   64049         <canvas> lacks transform() and setTransform()
   64050         https://bugs.webkit.org/show_bug.cgi?id=16604
   64051 
   64052         Test: fast/canvas/canvas-setTransform.html
   64053 
   64054         * html/CanvasRenderingContext2D.cpp:
   64055         (WebCore::CanvasRenderingContext2D::State::State):
   64056         (WebCore::CanvasRenderingContext2D::setStrokeStyle):
   64057         (WebCore::CanvasRenderingContext2D::setFillStyle):
   64058         (WebCore::CanvasRenderingContext2D::scale):
   64059         (WebCore::CanvasRenderingContext2D::rotate):
   64060         (WebCore::CanvasRenderingContext2D::translate):
   64061         (WebCore::CanvasRenderingContext2D::transform):
   64062         (WebCore::CanvasRenderingContext2D::setTransform):
   64063         (WebCore::CanvasRenderingContext2D::beginPath):
   64064         (WebCore::CanvasRenderingContext2D::closePath):
   64065         (WebCore::CanvasRenderingContext2D::moveTo):
   64066         (WebCore::CanvasRenderingContext2D::lineTo):
   64067         (WebCore::CanvasRenderingContext2D::quadraticCurveTo):
   64068         (WebCore::CanvasRenderingContext2D::bezierCurveTo):
   64069         (WebCore::CanvasRenderingContext2D::arcTo):
   64070         (WebCore::CanvasRenderingContext2D::arc):
   64071         (WebCore::CanvasRenderingContext2D::rect):
   64072         (WebCore::CanvasRenderingContext2D::fill):
   64073         (WebCore::CanvasRenderingContext2D::stroke):
   64074         (WebCore::CanvasRenderingContext2D::clip):
   64075         (WebCore::CanvasRenderingContext2D::isPointInPath):
   64076         (WebCore::CanvasRenderingContext2D::clearRect):
   64077         (WebCore::CanvasRenderingContext2D::fillRect):
   64078         (WebCore::CanvasRenderingContext2D::strokeRect):
   64079         (WebCore::CanvasRenderingContext2D::drawImage):
   64080         (WebCore::CanvasRenderingContext2D::drawImageFromRect):
   64081         (WebCore::CanvasRenderingContext2D::willDraw):
   64082         (WebCore::CanvasRenderingContext2D::drawTextInternal):
   64083         * html/CanvasRenderingContext2D.h:
   64084         * html/CanvasRenderingContext2D.idl:
   64085         * html/HTMLCanvasElement.cpp:
   64086         (WebCore::HTMLCanvasElement::baseTransform):
   64087         * html/HTMLCanvasElement.h:
   64088         * platform/graphics/ImageBuffer.h:
   64089         (WebCore::ImageBuffer::baseTransform):
   64090 
   64091 2008-12-06  Antti Koivisto  <antti (a] apple.com>
   64092 
   64093         Reviewed by Darin Adler.
   64094 
   64095         Also copy m_implicit field. Darin wanted this change commited separately.
   64096 
   64097         * css/CSSProperty.h:
   64098         (WebCore::CSSProperty::operator=):
   64099 
   64100 2008-12-06  Antti Koivisto  <antti (a] apple.com>
   64101 
   64102         Reviewed by Darin Adler.
   64103 
   64104         https://bugs.webkit.org/show_bug.cgi?id=22379
   64105         Make CSSOM use less memory
   64106 
   64107         Use vector instead of a double linked list for properties in CSSMutableStyleDeclaration.
   64108 
   64109         Taught setter functions to use existing slots to avoid memory moves, plus some
   64110         other optimizations.
   64111 
   64112         * WebCore.xcodeproj/project.pbxproj:
   64113         * css/CSSMutableStyleDeclaration.cpp:
   64114         (WebCore::CSSMutableStyleDeclaration::CSSMutableStyleDeclaration):
   64115         (WebCore::CSSMutableStyleDeclaration::operator=):
   64116         (WebCore::CSSMutableStyleDeclaration::getPropertyCSSValue):
   64117         (WebCore::CSSMutableStyleDeclaration::removeShorthandProperty):
   64118         (WebCore::CSSMutableStyleDeclaration::removeProperty):
   64119         (WebCore::CSSMutableStyleDeclaration::getPropertyPriority):
   64120         (WebCore::CSSMutableStyleDeclaration::getPropertyShorthand):
   64121         (WebCore::CSSMutableStyleDeclaration::isPropertyImplicit):
   64122         (WebCore::CSSMutableStyleDeclaration::setProperty):
   64123         (WebCore::CSSMutableStyleDeclaration::setPropertyInternal):
   64124         (WebCore::CSSMutableStyleDeclaration::setStringProperty):
   64125         (WebCore::CSSMutableStyleDeclaration::setImageProperty):
   64126         (WebCore::CSSMutableStyleDeclaration::parseDeclaration):
   64127         (WebCore::CSSMutableStyleDeclaration::addParsedProperties):
   64128         (WebCore::CSSMutableStyleDeclaration::addParsedProperty):
   64129         (WebCore::CSSMutableStyleDeclaration::setLengthProperty):
   64130         (WebCore::CSSMutableStyleDeclaration::length):
   64131         (WebCore::CSSMutableStyleDeclaration::item):
   64132         (WebCore::CSSMutableStyleDeclaration::cssText):
   64133         (WebCore::CSSMutableStyleDeclaration::setCssText):
   64134         (WebCore::CSSMutableStyleDeclaration::merge):
   64135         (WebCore::CSSMutableStyleDeclaration::removePropertiesInSet):
   64136         (WebCore::CSSMutableStyleDeclaration::copy):
   64137         (WebCore::CSSMutableStyleDeclaration::findPropertyWithId):
   64138         * css/CSSMutableStyleDeclaration.h:
   64139         (WebCore::CSSMutableStyleDeclarationConstIterator::operator*):
   64140         (WebCore::CSSMutableStyleDeclarationConstIterator::operator->):
   64141         (WebCore::CSSMutableStyleDeclarationConstIterator::operator!=):
   64142         (WebCore::CSSMutableStyleDeclarationConstIterator::operator==):
   64143         (WebCore::CSSMutableStyleDeclaration::create):
   64144         (WebCore::CSSMutableStyleDeclaration::begin):
   64145         (WebCore::CSSMutableStyleDeclaration::end):
   64146         (WebCore::CSSMutableStyleDeclarationConstIterator::CSSMutableStyleDeclarationConstIterator):
   64147         (WebCore::CSSMutableStyleDeclarationConstIterator::~CSSMutableStyleDeclarationConstIterator):
   64148         (WebCore::CSSMutableStyleDeclarationConstIterator::operator=):
   64149         (WebCore::CSSMutableStyleDeclarationConstIterator::operator++):
   64150         (WebCore::CSSMutableStyleDeclarationConstIterator::operator--):
   64151         * css/CSSProperty.h:
   64152         (WTF::):
   64153         * css/CSSStyleDeclaration.cpp:
   64154         (WebCore::CSSStyleDeclaration::diff):
   64155         (WebCore::CSSStyleDeclaration::copyPropertiesInSet):
   64156         * css/CSSStyleSelector.cpp:
   64157         (WebCore::CSSStyleSelector::resolveVariablesForDeclaration):
   64158         (WebCore::CSSStyleSelector::keyframeStylesForAnimation):
   64159         (WebCore::CSSStyleSelector::applyDeclarations):
   64160         * dom/EventTarget.h:
   64161         * editing/ApplyStyleCommand.cpp:
   64162         (WebCore::StyleChange::init):
   64163         (WebCore::ApplyStyleCommand::isHTMLStyleNode):
   64164         (WebCore::ApplyStyleCommand::removeHTMLFontStyle):
   64165         (WebCore::ApplyStyleCommand::removeCSSStyle):
   64166         * editing/Editor.cpp:
   64167         (WebCore::Editor::selectionStartHasStyle):
   64168         (WebCore::updateState):
   64169         * editing/ReplaceSelectionCommand.cpp:
   64170         (WebCore::ReplaceSelectionCommand::handleStyleSpans):
   64171         * editing/markup.cpp:
   64172         (WebCore::appendStartMarkup):
   64173 
   64174 2008-12-06  Simon Fraser  <simon.fraser (a] apple.com>
   64175 
   64176         Reviewed by Antti Koivisto, Dan Bernstein
   64177 
   64178         https://bugs.webkit.org/show_bug.cgi?id=22088
   64179 
   64180         Fix logic related to repainting when transform changes:
   64181         If an object has a layer, and the transform changes, then we need
   64182         to do a repaintIncludingDescendants(), not just a repaint.
   64183 
   64184         Test: fast/repaint/transform-repaint-descendants.html
   64185 
   64186         * rendering/RenderObject.cpp:
   64187         (WebCore::RenderObject::styleWillChange):
   64188 
   64189 2008-12-06  Simon Fraser  <simon.fraser (a] apple.com>
   64190 
   64191         Reviewed by Dan Bernstein
   64192 
   64193         https://bugs.webkit.org/show_bug.cgi?id=15739
   64194 
   64195         When painting the selection on a replaced element, paint
   64196         using local coordinates so that the selection is correctly
   64197         painted for transformed elements.
   64198 
   64199         Test: fast/replaced/selection-rect-transform.html
   64200 
   64201         * rendering/RenderReplaced.cpp:
   64202         (WebCore::RenderReplaced::paint):
   64203 
   64204 2008-12-06  Simon Fraser  <simon.fraser (a] apple.com>
   64205 
   64206         Reviewed by Dave Hyatt
   64207 
   64208         https://bugs.webkit.org/show_bug.cgi?id=15671
   64209 
   64210         Fix caret rendering to behave correctly with transforms:
   64211         * Rename caretRect() methods to localCaretRect() and
   64212           absoluteCaretBounds() as appropriate
   64213         * Fix localCaretRect() methods to return a rect in the
   64214           appropriate coordinates.
   64215         * Pass tx, ty down through the paintCaret() methods, after fixing them
   64216           up to account for differences between contents coords, and renderer-local
   64217           coords (via RenderBlock::offsetForContents()).
   64218         * Remove m_caretPositionOnLayout from SelectionController, and instead
   64219           call invalidateSelection() from RenderLayer::scrollToOffset(), because
   64220           we can no longer assume simple x/y offsets from scrolling with transforms.
   64221         * Move the logic to compute which RenderObject actually paints the caret into
   64222           SelectionController::caretRenderer(), rather than having it in RenderBlock.
   64223         * SelectionController now computes and caches a local caret rect. For invalidation,
   64224           it computes the absolute bounds of that (possibly transformed) local rect.
   64225           The local rect is computed in the coordinate system of the RenderObject that
   64226           will paint the caret (this may require offsetting from the actual renderer
   64227           at the start of the selection).
   64228         * Fix LayoutState(RenderObject* root) to take transforms into account
   64229         * Make offsetFromContainer() a virtual method on RenderObject, and implement
   64230           the RenderObject version. It's used to map from selection start renderer
   64231           to caret renderer.
   64232 
   64233         Test: fast/transforms/transformed-caret.html
   64234 
   64235         * WebCore.base.exp:
   64236         * editing/DeleteSelectionCommand.cpp:
   64237         (WebCore::DeleteSelectionCommand::mergeParagraphs):
   64238         * editing/SelectionController.cpp:
   64239         (WebCore::SelectionController::SelectionController):
   64240         (WebCore::absoluteCaretY):
   64241         (WebCore::SelectionController::modify):
   64242         (WebCore::SelectionController::xPosForVerticalArrowNavigation):
   64243         (WebCore::SelectionController::layout):
   64244         (WebCore::SelectionController::caretRenderer):
   64245         (WebCore::SelectionController::localCaretRect):
   64246         (WebCore::SelectionController::absoluteCaretBounds):
   64247         (WebCore::SelectionController::caretRepaintRect):
   64248         (WebCore::SelectionController::recomputeCaretRect):
   64249         (WebCore::SelectionController::invalidateCaretRect):
   64250         (WebCore::SelectionController::paintCaret):
   64251         (WebCore::SelectionController::caretRendersInsideNode):
   64252         * editing/SelectionController.h:
   64253         * editing/VisiblePosition.cpp:
   64254         (WebCore::VisiblePosition::localCaretRect):
   64255         (WebCore::VisiblePosition::absoluteCaretBounds):
   64256         (WebCore::VisiblePosition::xOffsetForVerticalNavigation):
   64257         * editing/VisiblePosition.h:
   64258         * editing/mac/SelectionControllerMac.mm:
   64259         (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
   64260         * html/HTMLElement.cpp:
   64261         (WebCore::HTMLElement::isContentEditable):
   64262         * page/AccessibilityRenderObject.cpp:
   64263         (WebCore::AccessibilityRenderObject::boundsForVisiblePositionRange):
   64264         * page/Frame.cpp:
   64265         (WebCore::Frame::firstRectForRange):
   64266         (WebCore::Frame::selectionLayoutChanged):
   64267         (WebCore::Frame::paintCaret):
   64268         (WebCore::Frame::paintDragCaret):
   64269         (WebCore::Frame::revealSelection):
   64270         (WebCore::Frame::revealCaret):
   64271         * page/Frame.h:
   64272         * rendering/LayoutState.cpp:
   64273         (WebCore::LayoutState::LayoutState):
   64274         * rendering/RenderBlock.cpp:
   64275         (WebCore::RenderBlock::paintCaret):
   64276         (WebCore::RenderBlock::paintObject):
   64277         (WebCore::RenderBlock::positionForCoordinates):
   64278         (WebCore::RenderBlock::offsetForContents):
   64279         * rendering/RenderBlock.h:
   64280         * rendering/RenderBox.cpp:
   64281         (WebCore::RenderBox::localCaretRect):
   64282         * rendering/RenderBox.h:
   64283         * rendering/RenderFlow.cpp:
   64284         (WebCore::RenderFlow::localCaretRect):
   64285         * rendering/RenderFlow.h:
   64286         * rendering/RenderLayer.cpp:
   64287         (WebCore::RenderLayer::scrollToOffset):
   64288         * rendering/RenderObject.cpp:
   64289         (WebCore::RenderObject::localCaretRect):
   64290         * rendering/RenderObject.h:
   64291         * rendering/RenderSVGInlineText.cpp:
   64292         (WebCore::RenderSVGInlineText::localCaretRect):
   64293         * rendering/RenderSVGInlineText.h:
   64294         * rendering/RenderText.cpp:
   64295         (WebCore::RenderText::RenderText):
   64296         (WebCore::RenderText::localCaretRect):
   64297         * rendering/RenderText.h:
   64298 
   64299 2008-12-06  David Kilzer  <ddkilzer (a] apple.com>
   64300 
   64301         Bug 22711: Current svn (build 39065) fails to compile
   64302 
   64303         <https://bugs.webkit.org/show_bug.cgi?id=22711>
   64304 
   64305         BUILD FIX for r39065: Forgot parentheses after "document".
   64306 
   64307         Bug 22666: Clean up data structures used when collecting URLs of subresources for webarchives
   64308         <https://bugs.webkit.org/show_bug.cgi?id=22666>
   64309 
   64310         * svg/SVGFEImageElement.cpp:
   64311         (WebCore::SVGFEImageElement::addSubresourceAttributeURLs): Changed
   64312         document to document().
   64313 
   64314 2008-12-06  Dmitry Titov  <dimich (a] chromium.org>
   64315 
   64316         Reviewed by Alexey Proskuryakov.
   64317 
   64318         https://bugs.webkit.org/show_bug.cgi?id=22710
   64319         Memory leak due to circular reference Document->DOMTimer->ScheduledAction->[JS objects]->Document
   64320 
   64321         * bindings/js/DOMTimer.cpp:
   64322         (WebCore::DOMTimer::stop): Delete ScheduledAction, which contains a protected object.
   64323 
   64324 2008-12-06  David Kilzer  <ddkilzer (a] apple.com>
   64325 
   64326         Bug 22666: Clean up data structures used when collecting URLs of subresources for webarchives
   64327 
   64328         <https://bugs.webkit.org/show_bug.cgi?id=22666>
   64329 
   64330         Reviewed by Darin Adler.
   64331 
   64332         When creating a webarchive from WebCore::LegacyWebArchive::create(),
   64333         HashSet<String>, Vector<KURL> and Vector<String> were all used to
   64334         store a list of URLs for resources found in the document.  Instead
   64335         use a single ListHashSet<KURL> to store the list and resolve the
   64336         relative URLs as they're added.  We use a new inline method called
   64337         WebCore::addSubresourceURL() to add KURL objects to the ListHashSet
   64338         to prevent "null" KURL objects from crashing in the KURL hashing
   64339         function.
   64340 
   64341         * WebCore.base.exp: Changed export of
   64342         WebCore::Node::getSubresourceURLs() to take a ListHashSet<KURL>
   64343         argument instead of a Vector<KURL>.
   64344 
   64345         * WebCore.xcodeproj/project.pbxproj: Marked KURLHash.h as a private
   64346         header for use in WebKit.
   64347 
   64348         * css/CSSStyleSheet.cpp:
   64349         (WebCore::CSSStyleSheet::addSubresourceStyleURLs): Renamed from
   64350         addSubresourceURLStrings().  Changed to use ListHashSet<KURL>
   64351         instead of HashSet<String>.  Cleaned up code.
   64352         * css/CSSStyleSheet.h:
   64353         (WebCore::CSSStyleSheet::addSubresourceStyleURLs): Ditto.
   64354         * css/StyleSheet.h:
   64355         (WebCore::StyleSheet::addSubresourceStyleURLs): Ditto.
   64356 
   64357         * dom/Node.cpp:
   64358         (WebCore::Node::getSubresourceURLs): Changed to use
   64359         ListHashSet<KURL> instead of Vector<KURL>.  Cleaned up code.
   64360         * dom/Node.h:
   64361         (WebCore::Node::getSubresourceURLs): Ditto.
   64362         (WebCore::Node::addSubresourceAttributeURLs): Renamed from
   64363         getSubresourceAttributeStrings().  Changed to use ListHashSet<KURL>
   64364         instead of Vector<String>.
   64365         (WebCore::addSubresourceURL): Added.  Safely adds new KURL objects
   64366         to a ListHashSet<KURL> object.  A "null" KURL object will cause the
   64367         hash function to crash since it contains a null StringImpl.  Used in
   64368         Node::addSubresourceAttributeURLs() and addSubresourceStyleURLs() in
   64369         the style subsystem.
   64370 
   64371         * dom/ProcessingInstruction.cpp:
   64372         (WebCore::ProcessingInstruction::addSubresourceAttributeURLs):
   64373         Renamed from getSubresourceAttributeStrings().  Changed to use
   64374         ListHashSet<KURL> instead of Vector<String>.  Use
   64375         WebCore::addSubresourceURL() to add new KURL objects.
   64376         * dom/ProcessingInstruction.h: Ditto.
   64377         * html/HTMLBodyElement.cpp:
   64378         (WebCore::HTMLBodyElement::addSubresourceAttributeURLs): Ditto.
   64379         * html/HTMLBodyElement.h: Ditto.
   64380         * html/HTMLEmbedElement.cpp:
   64381         (WebCore::HTMLEmbedElement::addSubresourceAttributeURLs): Ditto.
   64382         * html/HTMLEmbedElement.h: Ditto.
   64383         * html/HTMLImageElement.cpp:
   64384         (WebCore::HTMLImageElement::addSubresourceAttributeURLs): Ditto.
   64385         * html/HTMLImageElement.h: Ditto.
   64386         * html/HTMLInputElement.cpp:
   64387         (WebCore::HTMLInputElement::addSubresourceAttributeURLs): Ditto.
   64388         * html/HTMLInputElement.h: Ditto.
   64389         * html/HTMLLinkElement.cpp:
   64390         (WebCore::HTMLLinkElement::addSubresourceAttributeURLs): Ditto.
   64391         * html/HTMLLinkElement.h: Ditto.
   64392         * html/HTMLObjectElement.cpp:
   64393         (WebCore::HTMLObjectElement::addSubresourceAttributeURLs): Ditto.
   64394         * html/HTMLObjectElement.h: Ditto.
   64395         * html/HTMLParamElement.cpp:
   64396         (WebCore::HTMLParamElement::addSubresourceAttributeURLs): Ditto.
   64397         * html/HTMLParamElement.h: Ditto.
   64398         * html/HTMLScriptElement.cpp:
   64399         (WebCore::HTMLScriptElement::addSubresourceAttributeURLs): Ditto.
   64400         * html/HTMLScriptElement.h: Ditto.
   64401         * html/HTMLStyleElement.cpp:
   64402         (WebCore::HTMLStyleElement::addSubresourceAttributeURLs): Ditto.
   64403         * html/HTMLStyleElement.h: Ditto.
   64404         * html/HTMLTableCellElement.cpp:
   64405         (WebCore::HTMLTableCellElement::addSubresourceAttributeURLs): Ditto.
   64406         * html/HTMLTableCellElement.h: Ditto.
   64407         * html/HTMLTableElement.cpp:
   64408         (WebCore::HTMLTableElement::addSubresourceAttributeURLs): Ditto.
   64409         * html/HTMLTableElement.h: Ditto.
   64410 
   64411         * loader/archive/cf/LegacyWebArchive.cpp:
   64412         (WebCore::LegacyWebArchive::create): Changed from using
   64413         HashSet<String> to ListHashSet<KURL> for tracking unique
   64414         subresources.  Changed from using Vector<KURL> to ListHashSet<KURL>
   64415         when calling WebCore::Node::getSubresourceURLs().  Cleaned up code.
   64416 
   64417         * svg/SVGCursorElement.cpp:
   64418         (WebCore::SVGCursorElement::addSubresourceAttributeURLs): Renamed
   64419         from getSubresourceAttributeStrings().  Changed to use
   64420         ListHashSet<KURL> instead of Vector<String>.  Use
   64421         WebCore::addSubresourceURL() to add new KURL objects.
   64422         * svg/SVGCursorElement.h: Ditto.
   64423         * svg/SVGFEImageElement.cpp:
   64424         (WebCore::SVGFEImageElement::addSubresourceAttributeURLs): Ditto.
   64425         * svg/SVGFEImageElement.h: Ditto.
   64426         * svg/SVGImageElement.cpp:
   64427         (WebCore::SVGImageElement::addSubresourceAttributeURLs): Ditto.
   64428         * svg/SVGImageElement.h: Ditto.
   64429         * svg/SVGScriptElement.cpp:
   64430         (WebCore::SVGScriptElement::addSubresourceAttributeURLs): Ditto.
   64431         * svg/SVGScriptElement.h: Ditto.
   64432 
   64433 2008-12-05  Brett Wilson  <brettw (a] chromium.org>
   64434 
   64435         Reviewed by Darin Adler.
   64436 
   64437         Make the page group use the proper link hashing functions rather than
   64438         calling the string hash functions directly. Add Chromium-specfic ifdefs
   64439         in the visited link computation functions to allow integration.
   64440 
   64441         * page/PageGroup.cpp:
   64442         (WebCore::PageGroup::isLinkVisited):
   64443         (WebCore::PageGroup::addVisitedLink):
   64444         * platform/LinkHash.cpp:
   64445         (WebCore::visitedLinkHash):
   64446         * platform/LinkHash.h:
   64447 
   64448 2008-12-05  Chris Marrin  <cmarrin (a] apple.com>
   64449 
   64450         Reviewed by Dave Hyatt.
   64451 
   64452         Fix for https://bugs.webkit.org/show_bug.cgi?id=22635
   64453         For iteration and end events, previous fixes to prevent the deletion of
   64454         Animation objects (ref counting and hanging onto a ref during event callbacks)
   64455         was sufficient to prevent dangling pointers. But start events are sent in
   64456         the styleAvailable() call, which iterates over CompositeAnimation objects,
   64457         which are not ref counted. So that object can get destroyed in the event
   64458         handler while still active. So I added refcounting for CompositeAnimations.
   64459 
   64460         Additionally, when am iterating over the CompositingAnimation list, it can
   64461         be deleted, which mutates the list. So I now make one pass over the list
   64462         building a vector of CompositeAnimation objects that need to be called and
   64463         then iterate over that vector to make the actual calls.
   64464 
   64465         Finally, to make sure the lifetime of the CompositeAnimation exceeds that of
   64466         the Animation objects it owns, I now keep a ref to the CompositeAnimation
   64467         in the timer callback for the iteration and end events. That means I no
   64468         longer need to keep a ref to the Animation objects themselves in that timer
   64469         callback, since the CompositeAnimation already has one.
   64470 
   64471         Tests: animations/animation-iteration-event-destroy-renderer.html
   64472                animations/animation-start-event-destroy-renderer.html
   64473 
   64474         * page/animation/AnimationBase.cpp:
   64475         (WebCore::AnimationBase::updateStateMachine):
   64476         (WebCore::AnimationBase::animationTimerCallbackFired):
   64477         * page/animation/AnimationController.cpp:
   64478         (WebCore::AnimationControllerPrivate::~AnimationControllerPrivate):
   64479         (WebCore::AnimationControllerPrivate::accessCompositeAnimation):
   64480         (WebCore::AnimationControllerPrivate::clear):
   64481         (WebCore::AnimationControllerPrivate::styleAvailable):
   64482         (WebCore::AnimationControllerPrivate::updateAnimationTimer):
   64483         (WebCore::AnimationControllerPrivate::animationTimerFired):
   64484         (WebCore::AnimationControllerPrivate::isAnimatingPropertyOnRenderer):
   64485         (WebCore::AnimationControllerPrivate::suspendAnimations):
   64486         (WebCore::AnimationControllerPrivate::resumeAnimations):
   64487         (WebCore::AnimationControllerPrivate::pauseAnimationAtTime):
   64488         (WebCore::AnimationControllerPrivate::pauseTransitionAtTime):
   64489         (WebCore::AnimationController::updateAnimations):
   64490         (WebCore::AnimationController::setAnimationStartTime):
   64491         (WebCore::AnimationController::setTransitionStartTime):
   64492         * page/animation/CompositeAnimation.cpp:
   64493         (WebCore::CompositeAnimationPrivate::animationController):
   64494         (WebCore::CompositeAnimationPrivate::isWaitingForStyleAvailable):
   64495         (WebCore::CompositeAnimationPrivate::~CompositeAnimationPrivate):
   64496         (WebCore::CompositeAnimationPrivate::clearRenderer):
   64497         (WebCore::CompositeAnimation::clearRenderer):
   64498         (WebCore::CompositeAnimation::animationController):
   64499         (WebCore::CompositeAnimation::isWaitingForStyleAvailable):
   64500         * page/animation/CompositeAnimation.h:
   64501         (WebCore::CompositeAnimation::create):
   64502 
   64503 2008-12-05  David Kilzer  <ddkilzer (a] apple.com>
   64504 
   64505         Bug 22609: Provide a build-time choice when generating hash tables for properties of built-in DOM objects
   64506 
   64507         <https://bugs.webkit.org/show_bug.cgi?id=22609>
   64508         <rdar://problem/6331749>
   64509 
   64510         Reviewed by Darin Adler.
   64511 
   64512         Initial patch by Yosen Lin.  Adapted for ToT WebKit by David Kilzer.
   64513 
   64514         Added back the code that generates a "compact" hash (instead of a
   64515         perfect hash) as a build-time option using the
   64516         ENABLE(PERFECT_HASH_SIZE) macro as defined in Lookup.h.
   64517 
   64518         * bindings/scripts/CodeGeneratorJS.pm:
   64519         (GenerateImplementation): Compute the number of elements that will
   64520         be stored in each hash table and pass it to GenerateHashTable().
   64521         (GenerateHashTable): Added new second parameter representing the
   64522         number of elements to store in the compact hash table.  Added back
   64523         code to compute compact hash tables.  Generate both hash table sizes
   64524         and emit conditionalized code based on ENABLE(PERFECT_HASH_SIZE).
   64525 
   64526 2008-12-05  Brett Wilson  <brettw (a] chromium.org>
   64527 
   64528         Fix build bustage from previous patch.
   64529 
   64530         * css/CSSSelector.h:
   64531 
   64532 2008-12-05  Brett Wilson  <brettw (a] chromium.org>
   64533 
   64534         Reviewed by Eric Seidel.
   64535 
   64536         Add a missing include for OwnPtr to make CSSSelector compile without
   64537         precompiled headers.
   64538 
   64539         * css/CSSSelector.h:
   64540 
   64541 2008-12-05  Finnur Thorarinsson  <finnur.webkit (a] gmail.com>
   64542 
   64543         Reviewed by Darin Adler.
   64544 
   64545         Bug 22579: Providing a function to ScrollbarClient.h which allows us to get at the tickmarks
   64546         without relying on high-level WebCore types, as requested by Dave Hyatt.
   64547 
   64548         No functional changes, thus no test cases.
   64549 
   64550         * page/FrameView.cpp:
   64551         (WebCore::FrameView::getTickmarks):
   64552         * page/FrameView.h:
   64553         * platform/ScrollbarClient.h:
   64554 
   64555 2008-12-05  Dean Jackson  <dino (a] apple.com>
   64556 
   64557         Reviewed by David Hyatt.
   64558 
   64559         Make sure Window event listeners also tell the
   64560         Document about the event type, so noisy events
   64561         will be dispatched even if nothing in the document
   64562         is listening.
   64563         https://bugs.webkit.org/show_bug.cgi?id=20572
   64564 
   64565         * dom/Document.cpp:
   64566         (WebCore::Document::addWindowEventListener):
   64567 
   64568 2008-12-05  Adam Roben  <aroben (a] apple.com>
   64569 
   64570         Windows build fix after r39026
   64571 
   64572         * platform/network/cf/ResourceRequestCFNet.cpp:
   64573         (WebCore::ResourceRequest::doUpdatePlatformRequest):
   64574         (WebCore::ResourceRequest::doUpdateResourceRequest):
   64575         Add some missing .get()s.
   64576 
   64577 2008-12-05  Alexey Proskuryakov  <ap (a] webkit.org>
   64578 
   64579         Tiger build fix.
   64580 
   64581         * platform/network/mac/ResourceRequestMac.mm: Define NSUInteger.
   64582 
   64583 2008-12-05  Alexey Proskuryakov  <ap (a] webkit.org>
   64584 
   64585         Reviewed by Darin Adler.
   64586 
   64587         <rdar://problem/6405599> Tiger Mail crashes when using "Mail Contents of This Page"
   64588         in Safari before opening a mail message in Mail
   64589 
   64590         * platform/mac/WebCoreObjCExtras.mm:
   64591         (WebCoreObjCFinalizeOnMainThread):
   64592         Don't call initializeThreading: we now expect the caller to do it, to simplify keeping
   64593         Tiger and post-Tiger behavior in line.
   64594 
   64595         * bindings/objc/DOMRGBColor.mm:
   64596         (+[DOMRGBColor initialize]):
   64597         * bindings/objc/WebScriptObject.mm:
   64598         (+[WebScriptObject initialize]):
   64599         * page/mac/AccessibilityObjectWrapper.mm:
   64600         (+[AccessibilityObjectWrapper initialize]):
   64601         * platform/mac/SharedBufferMac.mm:
   64602         (+[WebCoreSharedBufferData initialize]):
   64603         Call JSC::initializeThreading();
   64604 
   64605 2008-12-05  Alexey Proskuryakov  <ap (a] webkit.org>
   64606 
   64607         Reviewed by Darin Adler.
   64608 
   64609         <rdar://problem/4072827> Downloaded non-ASCII file name becomes garbled
   64610 
   64611         * platform/network/ResourceRequestBase.cpp:
   64612         (WebCore::ResourceRequestBase::setResponseContentDispositionEncodingFallbackArray):
   64613         * platform/network/ResourceRequestBase.h:
   64614         * platform/network/cf/ResourceRequestCFNet.cpp:
   64615         (WebCore::findCFURLRequestSetContentDispositionEncodingFallbackArrayFunction):
   64616         (WebCore::findCFURLRequestCopyContentDispositionEncodingFallbackArrayFunction):
   64617         (WebCore::setContentDispositionEncodingFallbackArray):
   64618         (WebCore::copyContentDispositionEncodingFallbackArray):
   64619         (WebCore::ResourceRequest::doUpdatePlatformRequest):
   64620         (WebCore::ResourceRequest::doUpdateResourceRequest):
   64621         * platform/network/mac/ResourceRequestMac.mm:
   64622         (WebCore::ResourceRequest::doUpdateResourceRequest):
   64623         (WebCore::ResourceRequest::doUpdatePlatformRequest):
   64624         Added a way to specify encoding fallback list for Content-Disposition header.
   64625 
   64626         * loader/FrameLoader.cpp: (WebCore::FrameLoader::addExtraFieldsToRequest): Generate and
   64627         pass a list of encodings to try when decoding Content-Disposition header, as described
   64628         in comments.
   64629 
   64630 2008-12-05  Alexey Proskuryakov  <ap (a] webkit.org>
   64631 
   64632         Reviewed by Darin Adler.
   64633 
   64634         https://bugs.webkit.org/show_bug.cgi?id=22672
   64635         ASSERT(m_table) when xhr.onabort creates another xhr or calls setTimeout
   64636 
   64637         Test: http/tests/xmlhttprequest/send-on-abort.html
   64638 
   64639         * dom/ScriptExecutionContext.cpp:
   64640         (WebCore::ScriptExecutionContext::canSuspendActiveDOMObjects):
   64641         (WebCore::ScriptExecutionContext::suspendActiveDOMObjects):
   64642         (WebCore::ScriptExecutionContext::resumeActiveDOMObjects):
   64643         (WebCore::ScriptExecutionContext::stopActiveDOMObjects):
   64644         Add a comment explaining that ActiveDOMObject methods shouldn't execute arbitrary JS.
   64645 
   64646         * xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::stop): Don't dispatch events. This
   64647         reverts a recent change that made the behavior slightly closer to Firefox - but the
   64648         compatibility effect should be very minor if any, and Firefox itself behaves inconsistently.
   64649 
   64650 2008-12-05  Tobias Knig <tobias.koenig (a] nokia.com>
   64651 
   64652         Reviewed by Simon Hausmann.
   64653 
   64654         Record required package dependencies for the Qt build for a correct
   64655         pkg-config file.
   64656 
   64657         * WebCore.pro:
   64658 
   64659 2008-12-05  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   64660 
   64661         Rubber-stamped by Simon Hausmann.
   64662 
   64663         [Qt/Mac] Blacklist QuickTime plugin until we support the QuickDraw drawing model
   64664 
   64665         * plugins/mac/PluginPackageMac.cpp:
   64666         (WebCore::PluginPackage::fetchInfo):
   64667         (WebCore::PluginPackage::isPluginBlacklisted):
   64668 
   64669 2008-12-05  Jungshik Shin  <jshin (a] chromium.org>
   64670 
   64671         Reviewed by Alexey Proskuryakov.
   64672 
   64673         https://bugs.webkit.org/show_bug.cgi?id=22472
   64674 
   64675         Revises charset alias map for TextCodecICU.
   64676         - Uses windows-949 and windows-874 instead of windows-949-2000 and windows-874-2000
   64677         - Replaces 'windows874' in a couple of place with 'windows-874' (for the canonical name)
   64678         - Maps 'dos-874' to 'windows-874'. Currently, it's aliases to 'cp874', which is in turn
   64679           mapped to 'TIS-620'. 'TIS-620' is manually aliased to 'windows-874'. We'd better directly
   64680           alias 'dos-874' to 'windows-874'.
   64681         - Replaces 'EUC-CN' with 'GBK' when it's used as the canonical name.
   64682           Similar to the above case, we're getting rid of indirection that eventually leads to 'GBK' by
   64683           directly going to 'GBK'.
   64684         - Adds 'x-uhc' as an alias for 'windows-949'. It's used in some web pages.
   64685 
   64686         Tests: fast/encoding/char-decoding-mac.html
   64687                fast/encoding/char-decoding.html
   64688 
   64689         * platform/text/TextCodecICU.cpp:
   64690         (WebCore::TextCodecICU::registerExtendedEncodingNames):
   64691 
   64692 2008-12-04  Kevin Watters  <kevinwatters (a] gmail.com>
   64693 
   64694         Reviewed by Kevin Ollivier.
   64695 
   64696         Add a MIME mapping for the .htm extension to wx and GTK ports.
   64697 
   64698         https://bugs.webkit.org/show_bug.cgi?id=22668
   64699 
   64700         * platform/gtk/MIMETypeRegistryGtk.cpp:
   64701         (WebCore::):
   64702         * platform/wx/MimeTypeRegistryWx.cpp:
   64703         (WebCore::):
   64704 
   64705 2008-12-04  Kevin Watters  <kevinwatters (a] gmail.com>
   64706 
   64707         Reviewed by Kevin Ollivier.
   64708 
   64709         Implement basic text paste support in wx and add notImplemented stubs
   64710         to catch other methods.
   64711 
   64712         https://bugs.webkit.org/show_bug.cgi?id=22667
   64713 
   64714         * platform/wx/PasteboardWx.cpp:
   64715         (WebCore::Pasteboard::canSmartReplace):
   64716         (WebCore::Pasteboard::plainText):
   64717         (WebCore::Pasteboard::documentFragment):
   64718         (WebCore::Pasteboard::writeImage):
   64719 
   64720 2008-12-04  Kevin Ollivier  <kevino (a] theolliviers.com>
   64721 
   64722         wx build fix for !USE(WXGC) build config.
   64723 
   64724         * platform/graphics/wx/PathWx.cpp:
   64725         (WebCore::Path::contains):
   64726         (WebCore::Path::addLineTo):
   64727         (WebCore::Path::addQuadCurveTo):
   64728         (WebCore::Path::addBezierCurveTo):
   64729         (WebCore::Path::addArcTo):
   64730         (WebCore::Path::closeSubpath):
   64731         (WebCore::Path::addArc):
   64732         (WebCore::Path::addRect):
   64733         (WebCore::Path::addEllipse):
   64734         (WebCore::Path::transform):
   64735         (WebCore::Path::apply):
   64736         (WebCore::Path::isEmpty):
   64737 
   64738 2008-12-04  Kevin Watters  <kevinwatters (a] gmail.com>
   64739 
   64740         Reviewed by Kevin Ollivier.
   64741 
   64742         Turn off styled controls until we can implement them properly.
   64743 
   64744         https://bugs.webkit.org/show_bug.cgi?id=22662
   64745 
   64746         * platform/wx/RenderThemeWx.cpp:
   64747         (WebCore::RenderThemeWx::isControlStyled):
   64748 
   64749 2008-12-04  Kevin Watters  <kevinwatters (a] gmail.com>
   64750 
   64751         Reviewed by Kevin Ollivier.
   64752 
   64753         wx implementations for Path API.
   64754 
   64755         https://bugs.webkit.org/show_bug.cgi?id=22661
   64756 
   64757         * platform/graphics/wx/PathWx.cpp:
   64758         (WebCore::Path::~Path):
   64759         (WebCore::Path::contains):
   64760         (WebCore::Path::addLineTo):
   64761         (WebCore::Path::addQuadCurveTo):
   64762         (WebCore::Path::addBezierCurveTo):
   64763         (WebCore::Path::addArcTo):
   64764         (WebCore::Path::closeSubpath):
   64765         (WebCore::Path::addArc):
   64766         (WebCore::Path::addRect):
   64767         (WebCore::Path::addEllipse):
   64768         (WebCore::Path::transform):
   64769         (WebCore::Path::isEmpty):
   64770 
   64771 2008-12-04  Julien Chaffraix  <jchaffraix (a] webkit.org>
   64772 
   64773         Reviewed by Eric Seidel.
   64774 
   64775         Bug 22564: Make HTML elements' constructors take a QualifiedName
   64776         https://bugs.webkit.org/show_bug.cgi?id=22564
   64777 
   64778         Updated the remaining constructors.
   64779 
   64780         * bindings/js/JSImageConstructor.cpp:
   64781         (WebCore::constructImage):
   64782         * dom/Document.cpp:
   64783         (WebCore::Document::getCSSCanvasElement):
   64784         * editing/DeleteButton.cpp:
   64785         (WebCore::DeleteButton::DeleteButton):
   64786         * html/HTMLAppletElement.cpp:
   64787         (WebCore::HTMLAppletElement::HTMLAppletElement):
   64788         * html/HTMLAppletElement.h:
   64789         * html/HTMLAreaElement.cpp:
   64790         (WebCore::HTMLAreaElement::HTMLAreaElement):
   64791         * html/HTMLAreaElement.h:
   64792         * html/HTMLBaseFontElement.cpp:
   64793         (WebCore::HTMLBaseFontElement::HTMLBaseFontElement):
   64794         * html/HTMLBaseFontElement.h:
   64795         * html/HTMLCanvasElement.cpp:
   64796         (WebCore::HTMLCanvasElement::HTMLCanvasElement):
   64797         * html/HTMLCanvasElement.h:
   64798         * html/HTMLElementFactory.cpp:
   64799         (WebCore::hrConstructor):
   64800         (WebCore::paragraphConstructor):
   64801         (WebCore::basefontConstructor):
   64802         (WebCore::fontConstructor):
   64803         (WebCore::anchorConstructor):
   64804         (WebCore::imageConstructor):
   64805         (WebCore::mapConstructor):
   64806         (WebCore::areaConstructor):
   64807         (WebCore::canvasConstructor):
   64808         (WebCore::appletConstructor):
   64809         (WebCore::embedConstructor):
   64810         (WebCore::objectConstructor):
   64811         (WebCore::paramConstructor):
   64812         (WebCore::scriptConstructor):
   64813         (WebCore::tableConstructor):
   64814         (WebCore::tableCaptionConstructor):
   64815         (WebCore::tableRowConstructor):
   64816         * html/HTMLEmbedElement.cpp:
   64817         (WebCore::HTMLEmbedElement::HTMLEmbedElement):
   64818         * html/HTMLEmbedElement.h:
   64819         * html/HTMLFontElement.cpp:
   64820         (WebCore::HTMLFontElement::HTMLFontElement):
   64821         * html/HTMLFontElement.h:
   64822         * html/HTMLHRElement.cpp:
   64823         (WebCore::HTMLHRElement::HTMLHRElement):
   64824         * html/HTMLHRElement.h:
   64825         * html/HTMLImageElement.cpp:
   64826         (WebCore::HTMLImageElement::HTMLImageElement):
   64827         * html/HTMLImageElement.h:
   64828         * html/HTMLMapElement.cpp:
   64829         (WebCore::HTMLMapElement::HTMLMapElement):
   64830         * html/HTMLMapElement.h:
   64831         * html/HTMLObjectElement.cpp:
   64832         (WebCore::HTMLObjectElement::HTMLObjectElement):
   64833         * html/HTMLObjectElement.h:
   64834         * html/HTMLParagraphElement.cpp:
   64835         (WebCore::HTMLParagraphElement::HTMLParagraphElement):
   64836         * html/HTMLParagraphElement.h:
   64837         * html/HTMLParamElement.cpp:
   64838         (WebCore::HTMLParamElement::HTMLParamElement):
   64839         * html/HTMLParamElement.h:
   64840         * html/HTMLParser.cpp:
   64841         (WebCore::HTMLParser::handleError):
   64842         (WebCore::HTMLParser::mapCreateErrorCheck):
   64843         (WebCore::HTMLParser::handleIsindex):
   64844         * html/HTMLScriptElement.cpp:
   64845         (WebCore::HTMLScriptElement::HTMLScriptElement):
   64846         * html/HTMLScriptElement.h:
   64847         * html/HTMLTableCaptionElement.cpp:
   64848         (WebCore::HTMLTableCaptionElement::HTMLTableCaptionElement):
   64849         * html/HTMLTableCaptionElement.h:
   64850         * html/HTMLTableElement.cpp:
   64851         (WebCore::HTMLTableElement::HTMLTableElement):
   64852         (WebCore::HTMLTableElement::createCaption):
   64853         (WebCore::HTMLTableElement::insertRow):
   64854         * html/HTMLTableElement.h:
   64855         * html/HTMLTableRowElement.cpp:
   64856         (WebCore::HTMLTableRowElement::HTMLTableRowElement):
   64857         * html/HTMLTableRowElement.h:
   64858         * html/HTMLTableSectionElement.cpp:
   64859         (WebCore::HTMLTableSectionElement::insertRow):
   64860         * html/HTMLViewSourceDocument.cpp:
   64861         (WebCore::HTMLViewSourceDocument::createContainingTable):
   64862         (WebCore::HTMLViewSourceDocument::addLine):
   64863         * loader/ImageDocument.cpp:
   64864         (WebCore::ImageDocumentElement::ImageDocumentElement):
   64865 
   64866 2008-12-04  Eric Seidel  <eric (a] webkit.org>
   64867 
   64868         No review, build fix only.
   64869 
   64870         Add file missing from last commit.
   64871 
   64872         * bindings/js/ScriptState.h: Added.
   64873 
   64874 2008-12-04  Dimitri Glazkov  <dglazkov (a] chromium.org>
   64875 
   64876         Reviewed by Geoff Garen.
   64877 
   64878         Implement ScriptState abstraction (initially, a simple typedef)
   64879         as means of carrying exception information across bindings boundaries
   64880         and in a script engine-independent way.
   64881 
   64882         * WebCore.vcproj/WebCore.vcproj:
   64883         * WebCore.xcodeproj/project.pbxproj:
   64884         * bindings/js/JSDOMBinding.cpp:
   64885         (WebCore::scriptStateFromNode):
   64886         * bindings/js/JSDOMBinding.h:
   64887         * bindings/js/JSNodeFilterCondition.h:
   64888         * bindings/js/ScriptState.h: Added.
   64889         * dom/NodeFilter.cpp:
   64890         (WebCore::NodeFilter::acceptNode):
   64891         * dom/NodeFilter.h:
   64892         (WebCore::NodeFilter::acceptNode):
   64893         * dom/NodeFilterCondition.cpp:
   64894         (WebCore::NodeFilterCondition::acceptNode):
   64895         * dom/NodeFilterCondition.h:
   64896         * dom/NodeIterator.cpp:
   64897         (WebCore::NodeIterator::nextNode):
   64898         (WebCore::NodeIterator::previousNode):
   64899         * dom/NodeIterator.h:
   64900         (WebCore::NodeIterator::nextNode):
   64901         (WebCore::NodeIterator::previousNode):
   64902         * dom/Traversal.cpp:
   64903         (WebCore::Traversal::acceptNode):
   64904         * dom/Traversal.h:
   64905         * dom/TreeWalker.cpp:
   64906         (WebCore::TreeWalker::parentNode):
   64907         (WebCore::TreeWalker::firstChild):
   64908         (WebCore::TreeWalker::lastChild):
   64909         (WebCore::TreeWalker::previousSibling):
   64910         (WebCore::TreeWalker::nextSibling):
   64911         (WebCore::TreeWalker::previousNode):
   64912         (WebCore::TreeWalker::nextNode):
   64913         * dom/TreeWalker.h:
   64914         (WebCore::TreeWalker::parentNode):
   64915         (WebCore::TreeWalker::firstChild):
   64916         (WebCore::TreeWalker::lastChild):
   64917         (WebCore::TreeWalker::previousSibling):
   64918         (WebCore::TreeWalker::nextSibling):
   64919         (WebCore::TreeWalker::previousNode):
   64920         (WebCore::TreeWalker::nextNode):
   64921 
   64922 2008-12-04  Pierre-Olivier Latour  <pol (a] apple.com>
   64923 
   64924         Reviewed by Dan Bernstein.
   64925 
   64926         Fixed pauseTransitionAtTimeOnElementWithId() in DRT asserting when passed invalid property name
   64927         and potential similar issue with pauseAnimationAtTimeOnElementWithId().
   64928 
   64929         https://bugs.webkit.org/show_bug.cgi?id=22641
   64930 
   64931         * page/animation/CompositeAnimation.cpp:
   64932         (WebCore::CompositeAnimationPrivate::pauseAnimationAtTime):
   64933         (WebCore::CompositeAnimationPrivate::pauseTransitionAtTime):
   64934 
   64935 2008-12-04  Dimitri Glazkov  <dglazkov (a] chromium.org>
   64936 
   64937         Reviewed by Darin Adler.
   64938 
   64939         Remove unused Completion.h include.
   64940 
   64941         * html/CanvasRenderingContext2D.cpp: Removed Completion.h include.
   64942 
   64943 2008-11-13  David Hyatt  <hyatt (a] apple.com>
   64944 
   64945         Fix a bug in ScrollView's refactoring.  An isVisible check should have been isSelfVisible.
   64946 
   64947         Reviewed by Darin Adler
   64948 
   64949         * platform/ScrollView.cpp:
   64950         (WebCore::ScrollView::setParentVisible):
   64951 
   64952 2008-12-04  Friedemann Kleint  <friedemann.kleint (a] nokia.com>
   64953 
   64954         Reviewed by Tor Arne Vestb.
   64955 
   64956         Fix small translation glitch in the Qt file chooser.
   64957 
   64958         * platform/qt/FileChooserQt.cpp:
   64959         (WebCore::FileChooser::basenameForWidth):
   64960 
   64961 2008-12-04  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   64962 
   64963         Rubber-stamped by Simon Hausmann.
   64964 
   64965         Blacklist Silverlight plugin on Qt/Mac until supported
   64966 
   64967         Currently the plugin crashes with a corrupted stack trace, possibly
   64968         related to https://bugs.webkit.org/show_bug.cgi?id=20635
   64969 
   64970         * plugins/mac/PluginPackageMac.cpp:
   64971         (WebCore::PluginPackage::fetchInfo):
   64972         (WebCore::PluginPackage::isPluginBlacklisted):
   64973 
   64974 2008-12-03  Dmitry Titov  <dimich (a] chromium.org>
   64975 
   64976         Reviewed by Alexey Proskuryakov.
   64977 
   64978         Fix non-Mac build.
   64979 
   64980         * page/Chrome.cpp: (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
   64981 
   64982 2008-12-03  David Levin  <levin (a] chromium.org>
   64983 
   64984         Reviewed by Alexey Proskuryakov.
   64985 
   64986         Remove uses of document() in XMLHttpRequest where simple.
   64987         https://bugs.webkit.org/show_bug.cgi?id=22619
   64988 
   64989         * xml/XMLHttpRequest.cpp:
   64990         (WebCore::XMLHttpRequest::responseXML):
   64991         Return NULL in the worker case which is according to spec (and avoids using document()).
   64992 
   64993         (WebCore::XMLHttpRequest::callReadyStateChangeListener):
   64994         (WebCore::XMLHttpRequest::initSend):
   64995         Use scriptExecutionContext() instead of document().
   64996 
   64997 2008-12-03  David Levin  <levin (a] chromium.org>
   64998 
   64999         Reviewed by Alexey Proskuryakov.
   65000 
   65001         Make ScriptExecutionContextTaskWorkerTask::performTask a pure virtual function.
   65002         https://bugs.webkit.org/show_bug.cgi?id=22642
   65003 
   65004         * dom/Document.cpp:
   65005         (WebCore::ScriptExecutionContextTaskTimer::ScriptExecutionContextTaskTimer):
   65006         (WebCore::ScriptExecutionContextTaskTimer::fired):
   65007         (WebCore::PerformTaskContext::PerformTaskContext):
   65008         (WebCore::performTask):
   65009         (WebCore::Document::postTask):
   65010         * dom/Document.h:
   65011         * dom/ScriptExecutionContext.cpp:
   65012         * dom/ScriptExecutionContext.h:
   65013         * dom/WorkerContext.cpp:
   65014         (WebCore::ScriptExecutionContextTaskWorkerTask::create):
   65015         (WebCore::ScriptExecutionContextTaskWorkerTask::ScriptExecutionContextTaskWorkerTask):
   65016         (WebCore::ScriptExecutionContextTaskWorkerTask::performTask):
   65017         (WebCore::WorkerContext::postTask):
   65018         * dom/WorkerContext.h:
   65019 
   65020 2008-12-03  Dmitry Titov  <dimich (a] chromium.org>
   65021 
   65022         Reviewed by Alexey Proskuryakov.
   65023 
   65024         Using ActiveDOMObject as base class for DOMTimer.
   65025         https://bugs.webkit.org/show_bug.cgi?id=22620
   65026 
   65027         Using ActiveDOMObject simplifies the code because ActiveDOMObject
   65028         is wired for stop/pause/resume on loading/unloading/caching the page etc
   65029         so the timer-specific code that does the same can be removed.
   65030         In addition, timers can be now paused/resumed 'in place' which
   65031         makes it unnecessary to 'serialize' them into special PausedTimeouts
   65032         instance, so pause/resumeTimeouts implementation in JSDOMWindowBase can also be removed.
   65033         Also, moving TimeoutMap from JSDOMWindowBase to Document matches lifetime
   65034         of timeouts and makes it possible to not roundtrip them via PausedTimeouts
   65035         every time when JSDOMWindow wrapper is destroyed while the page is in the b/f cache.
   65036 
   65037         Timeouts are now paused with other ActiveDOMObjects:
   65038         - before creating CachedPage in FrameLoader::commitProvisionalLoad()
   65039         - in JavaScriptDebugServer::setJavaScriptPaused
   65040         - during modal UI operations in Chrome::*
   65041         this is equivalent to previous usage of JSDOMWindowBase::pauseTimeouts()
   65042 
   65043         Timeouts are stopped to prevent future firing from:
   65044         - FrameLoader::clear()
   65045         - FrameLoader::frameDetached()
   65046         this is equivalent to previous usage of JSDOMWindowBase::clearAllTimeouts()
   65047 
   65048         This is also one of the steps to having timers in Workers. See the plan of
   65049         the next steps in the bug above.
   65050 
   65051         * bindings/js/DOMTimer.cpp:
   65052         (WebCore::DOMTimer::DOMTimer):
   65053         (WebCore::DOMTimer::fired):
   65054         (WebCore::DOMTimer::hasPendingActivity):
   65055         (WebCore::DOMTimer::contextDestroyed):
   65056         (WebCore::DOMTimer::stop):
   65057         (WebCore::DOMTimer::suspend):
   65058         (WebCore::DOMTimer::resume):
   65059         (WebCore::DOMTimer::canSuspend): Implemented ActiveDOMObject methods.
   65060 
   65061         * bindings/js/DOMTimer.h:
   65062         * bindings/js/JSDOMBinding.cpp: ActiveDOMObject can have no JS wrapper
   65063         (WebCore::markActiveObjectsForContext):
   65064 
   65065         * bindings/js/JSDOMWindowBase.cpp:
   65066         (WebCore::JSDOMWindowBase::~JSDOMWindowBase):
   65067         (WebCore::JSDOMWindowBase::clear):
   65068         (WebCore::JSDOMWindowBase::installTimeout):
   65069         (WebCore::JSDOMWindowBase::removeTimeout):
   65070         (WebCore::JSDOMWindowBase::timerFired):
   65071         (WebCore::JSDOMWindowBase::disconnectFrame):
   65072         * bindings/js/JSDOMWindowBase.h:
   65073         * bindings/js/ScriptController.cpp:
   65074         * bindings/js/ScriptController.h:
   65075 
   65076         * dom/Document.cpp: Document now holds a hash map id->timeout
   65077         (WebCore::Document::addTimeout):
   65078         (WebCore::Document::removeTimeout):
   65079         (WebCore::Document::findTimeout):
   65080         * dom/Document.h:
   65081         * history/CachedPage.cpp:
   65082         (WebCore::CachedPage::CachedPage):
   65083         (WebCore::CachedPage::restore):
   65084         (WebCore::CachedPage::clear):
   65085         * history/CachedPage.h:
   65086         * inspector/JavaScriptDebugServer.cpp:
   65087         (WebCore::JavaScriptDebugServer::~JavaScriptDebugServer):
   65088         (WebCore::JavaScriptDebugServer::setJavaScriptPaused):
   65089         * inspector/JavaScriptDebugServer.h:
   65090 
   65091         * loader/FrameLoader.cpp:
   65092         (WebCore::FrameLoader::commitProvisionalLoad):
   65093         removed clearAllTimeouts since all ActiveDOMObjects will be stopped in FrameLoader::clear();
   65094         I don't see how the old comment can be correct - the code in the same method proceeds to invoke 'onunload'
   65095         and then calls into client which can be external code and can cause any active object created in onunload
   65096         to fire. We can stop them all before firing onunload but it does not make a lot of sense.
   65097         I have a test to go with the next patch which verifies that timers set in onunload do not fire.
   65098 
   65099         (WebCore::FrameLoader::open):
   65100         * page/Chrome.cpp:
   65101         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
   65102         (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
   65103 
   65104 2008-12-03  Justin Garcia  <justin.garcia (a] apple.com>
   65105 
   65106         Reviewed by Beth Dakin.
   65107 
   65108         <rdar://problem/6018653> Extra blank line when pasting paragraph in plain text
   65109 
   65110         In SnowLeopard, Mail occasionally adds an empty, unstyled paragraph at the
   65111         end of pasted content so that users don't get stuck with non-standard pargraph
   65112         spacing.  This content threw off our handling of interchange newlines.  Any interchange
   65113         newline, regardless of it's position in the incoming fragment was considered to be
   65114         "at the start" of the fragment, and would result in us inserting in a newline before
   65115         inserted content.  This patch makes the checks for interchange newlines more strict,
   65116         and treats interchange newlines found elsewhere as normal <br>s.
   65117 
   65118         * editing/ReplaceSelectionCommand.cpp:
   65119         (WebCore::ReplacementFragment::ReplacementFragment):
   65120         (WebCore::ReplacementFragment::removeInterchangeNodes):
   65121         * editing/VisiblePosition.cpp:
   65122         (WebCore::VisiblePosition::init):
   65123         (WebCore::VisiblePosition::canonicalPosition):
   65124         * editing/VisiblePosition.h:
   65125 
   65126 2008-12-03  Eric Seidel  <eric (a] webkit.org>
   65127 
   65128         Rubber-stamped by David Hyatt.
   65129 
   65130         Bring the WebCore chromium build a couple steps closer to building.
   65131 
   65132         * WebCore.scons:
   65133 
   65134 2008-12-03  Kevin Ollivier  <kevino (a] theolliviers.com>
   65135 
   65136         wx build fix.
   65137 
   65138         * WebCoreSources.bkl:
   65139 
   65140 2008-12-03  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   65141 
   65142         Reviewed by George Staikos.
   65143 
   65144         Fixes: https://bugs.webkit.org/show_bug.cgi?id=22636
   65145 
   65146         Implement WML variable substitution & validation.
   65147         Created a framework for scriptable WML layout tests, that are able to test variable substiution & validation.
   65148 
   65149         Tests: wml/variable-reference-invalid-character.html
   65150                wml/variable-reference-valid.html
   65151 
   65152         * wml/WMLVariables.cpp:
   65153         (WebCore::isValidFirstVariableNameCharacter):
   65154         (WebCore::isValidVariableNameCharacter):
   65155         (WebCore::isValidVariableEscapingModeString):
   65156         (WebCore::isValidVariableName):
   65157         (WebCore::containsVariableReference):
   65158         (WebCore::substituteVariableReferences):
   65159         * wml/WMLVariables.h:
   65160 
   65161 2008-12-03  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   65162 
   65163         Reviewed by Cameron Zwarich.
   65164 
   65165         Further preparations for WML layout tests.
   65166         - Enable variable substitution in Text.cpp - if the parent is a WMLElement derived class.
   65167         - Dump WMLMessageSource messages to the console, just like it's done for JSMessageSource
   65168         - Add helper method in Document.idl, to reset the WML page state to a well-known default state.
   65169           (will be used in the upcoming LayoutTests/wml testcases)
   65170 
   65171          * dom/Document.cpp:
   65172         (WebCore::Document::resetWMLPageState):
   65173         * dom/Document.h:
   65174         * dom/Document.idl:
   65175         * dom/Text.cpp:
   65176         (WebCore::Text::insertedIntoDocument):
   65177         * dom/Text.h:
   65178         * page/Console.cpp:
   65179         (WebCore::Console::addMessage):
   65180         * wml/WMLPageState.h: Readd heper function
   65181         (WebCore::WMLPageState::hasVariables):
   65182 
   65183 2008-12-03  Antti Koivisto  <antti (a] apple.com>
   65184 
   65185         Reviewed by Sam Weinig.
   65186 
   65187         Don't leak selectors in case selector list parsing failed.
   65188 
   65189         * css/CSSGrammar.y:
   65190         * css/CSSParser.cpp:
   65191         (WebCore::CSSParser::~CSSParser):
   65192 
   65193 2008-12-03  Chris Marrin  <cmarrin (a] apple.com>
   65194 
   65195         Reviewed by Dave Hyatt.
   65196 
   65197         Fix https://bugs.webkit.org/show_bug.cgi?id=22520
   65198 
   65199         This is a regression (causes a crash of LayoutTests/animations/transform-animation-event-destroy-element.html).
   65200         This patch fixes the testcase.
   65201 
   65202         This is another case of animations getting destroyed in the end animation callback and causing dangling
   65203         pointers on return. This one involves iterating over the CompositeAnimation, which has been destroyed.
   65204         So I now check for a null m_object pointer (which is nullified when the CompositeAnimation is destroyed)
   65205         and skip that call.
   65206 
   65207         * page/animation/AnimationBase.cpp:
   65208         (WebCore::AnimationBase::updateStateMachine):
   65209 
   65210 2008-12-03  Antti Koivisto  <antti (a] apple.com>
   65211 
   65212         Reviewed by Darin Adler.
   65213 
   65214         https://bugs.webkit.org/show_bug.cgi?id=22379
   65215         Make CSSOM use less memory
   65216 
   65217         Reduce size of the CSSSelector by one more pointer by using an array
   65218         instead of a linked list to store them.
   65219 
   65220         * WebCore.xcodeproj/project.pbxproj:
   65221         * css/CSSGrammar.y:
   65222         * css/CSSParser.cpp:
   65223         (WebCore::CSSParser::CSSParser):
   65224         (WebCore::CSSParser::parseSelector):
   65225         (WebCore::CSSParser::createStyleRule):
   65226         * css/CSSParser.h:
   65227         (WebCore::CSSParser::reusableSelectorVector):
   65228         * css/CSSSelector.h:
   65229         (WebCore::CSSSelector::CSSSelector):
   65230         (WebCore::CSSSelector::~CSSSelector):
   65231         (WebCore::CSSSelector::isLastInSelectorList):
   65232         (WebCore::CSSSelector::setLastInSelectorList):
   65233         * css/CSSStyleRule.cpp:
   65234         (WebCore::CSSStyleRule::CSSStyleRule):
   65235         (WebCore::CSSStyleRule::~CSSStyleRule):
   65236         (WebCore::CSSStyleRule::selectorText):
   65237         * css/CSSStyleRule.h:
   65238         (WebCore::CSSStyleRule::adoptSelectorVector):
   65239         (WebCore::CSSStyleRule::selectorList):
   65240         * css/CSSStyleSelector.cpp:
   65241         (WebCore::CSSRuleSet::addRulesFromSheet):
   65242         * dom/Node.cpp:
   65243         (WebCore::forEachSelector):
   65244         (WebCore::selectorNeedsNamespaceResolution):
   65245         (WebCore::Node::querySelector):
   65246         (WebCore::Node::querySelectorAll):
   65247         * dom/SelectorNodeList.cpp:
   65248         (WebCore::createSelectorNodeList):
   65249         * dom/SelectorNodeList.h:
   65250 
   65251 2008-12-03  Alexey Proskuryakov  <ap (a] webkit.org>
   65252 
   65253         Reviewed by Darin Adler.
   65254 
   65255         https://bugs.webkit.org/show_bug.cgi?id=22630
   65256         Assertion failure in XMLHttpRequest::contextDestroyed
   65257 
   65258         Test: http/tests/xmlhttprequest/close-window.html
   65259 
   65260         * loader/FrameLoader.cpp:
   65261         (WebCore::FrameLoader::clear):
   65262         (WebCore::FrameLoader::commitProvisionalLoad):
   65263         Move stopping active objects to clear(), so that closing a window is also covered.
   65264 
   65265         * xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::abort): Protect the object in abort(),
   65266         because internalAbort() deref()'s.
   65267 
   65268 2008-12-03  Dean Jackson  <dino (a] apple.com>
   65269 
   65270         Reviewed by Dan Bernstein.
   65271 
   65272         Implement CSS 3 <angle> turn unit and support it
   65273         in rotations.
   65274         https://bugs.webkit.org/show_bug.cgi?id=22497
   65275 
   65276         * css/CSSGrammar.y:
   65277         * css/CSSParser.cpp:
   65278         (WebCore::CSSParser::validUnit):
   65279         (WebCore::unitFromString):
   65280         (WebCore::CSSParser::lex):
   65281         * css/CSSPrimitiveValue.cpp:
   65282         (WebCore::CSSPrimitiveValue::cssText):
   65283         (WebCore::CSSPrimitiveValue::parserValue):
   65284         * css/CSSPrimitiveValue.h:
   65285         (WebCore::CSSPrimitiveValue::):
   65286         * css/CSSStyleSelector.cpp:
   65287         (WebCore::CSSStyleSelector::createTransformOperations):
   65288         * css/tokenizer.flex:
   65289 
   65290 2008-12-03  Dirk Schulze  <krit (a] webkit.org>
   65291 
   65292         Reviewed by Nikolas Zimmermann.
   65293 
   65294         Make use of the gradient code in GraphicsContext and get rid of most of the
   65295         platform dependent code.
   65296 
   65297         SVG should use the new Gradient support on GraphicsContext
   65298         https://bugs.webkit.org/show_bug.cgi?id=20543
   65299 
   65300         * GNUmakefile.am:
   65301         * WebCore.pro:
   65302         * WebCore.vcproj/WebCore.vcproj:
   65303         * WebCore.xcodeproj/project.pbxproj:
   65304         * platform/graphics/FloatSize.h:
   65305         (WebCore::FloatSize::shrunkTo):
   65306         * svg/SVGLinearGradientElement.cpp:
   65307         (WebCore::SVGLinearGradientElement::buildGradient):
   65308         * svg/SVGRadialGradientElement.cpp:
   65309         (WebCore::SVGRadialGradientElement::buildGradient):
   65310         * svg/graphics/SVGPaintServer.h:
   65311         * svg/graphics/SVGPaintServerGradient.cpp:
   65312         (WebCore::SVGPaintServerGradient::SVGPaintServerGradient):
   65313         (WebCore::SVGPaintServerGradient::~SVGPaintServerGradient):
   65314         (WebCore::SVGPaintServerGradient::gradient):
   65315         (WebCore::SVGPaintServerGradient::setGradient):
   65316         (WebCore::findTextRootObject):
   65317         (WebCore::createMaskAndSwapContextForTextGradient):
   65318         (WebCore::clipToTextMask):
   65319         (WebCore::SVGPaintServerGradient::setup):
   65320         (WebCore::SVGPaintServerGradient::renderPath):
   65321         (WebCore::SVGPaintServerGradient::teardown):
   65322         * svg/graphics/SVGPaintServerGradient.h:
   65323         (WebCore::SVGPaintServerGradient::setGradientStops):
   65324         (WebCore::SVGPaintServerGradient::gradientStops):
   65325         * svg/graphics/SVGPaintServerLinearGradient.h:
   65326         * svg/graphics/SVGPaintServerRadialGradient.h:
   65327         * svg/graphics/cairo/SVGPaintServerGradientCairo.cpp: Removed.
   65328         * svg/graphics/cg/SVGPaintServerCg.cpp:
   65329         * svg/graphics/cg/SVGPaintServerGradientCg.cpp: Removed.
   65330         * svg/graphics/qt/SVGPaintServerGradientQt.cpp: Removed.
   65331         * svg/graphics/qt/SVGPaintServerLinearGradientQt.cpp: Removed.
   65332         * svg/graphics/qt/SVGPaintServerRadialGradientQt.cpp: Removed.
   65333 
   65334 2008-12-03  Sam Weinig  <sam (a] webkit.org>
   65335 
   65336         Reviewed by Mark Rowe.
   65337 
   65338         Fix formatting.
   65339 
   65340         * css/CSSSelector.h:
   65341         (WebCore::CSSSelector::createRareData):
   65342 
   65343 2008-12-03  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   65344 
   65345         Reviewed by Adam Roben.
   65346 
   65347         As Adam Roben noticed, synchronize MessageSource enum with Console.js, and add a comment.
   65348 
   65349         * inspector/front-end/Console.js:
   65350         * page/Console.h:
   65351 
   65352 2008-12-03  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   65353 
   65354         Reviewed by Alexey Proskuryakov.
   65355 
   65356         Next steps to make LayoutTests work:
   65357         Never access the main frame from WMLRefreshElement/WMLCardElement, but
   65358         the current documents frame (WML layout tests will run in an <iframe>)
   65359 
   65360         Prepare WMLErrorHandling for the case that no tokenizer is available anymore
   65361         -> report errors through Console::addMessage(), so they get logged in the
   65362            expected layout test results.
   65363 
   65364         * wml/WMLCardElement.cpp:
   65365         (WebCore::WMLCardElement::setActiveCardInDocument):
   65366         * wml/WMLErrorHandling.cpp:
   65367         (WebCore::reportWMLError):
   65368         (WebCore::errorMessageForErrorCode):
   65369         * wml/WMLErrorHandling.h:
   65370         * wml/WMLRefreshElement.cpp:
   65371         (WebCore::WMLRefreshElement::executeTask):
   65372         * page/Console.cpp: Handle WMLMessageSource.
   65373         (WebCore::printMessageSourceAndLevelPrefix):
   65374         * page/Console.h: Add WMLMessageSource.
   65375         (WebCore::):
   65376 
   65377 2008-12-03  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   65378 
   65379         Reviewed by Simon Hausmann.
   65380 
   65381         Allow passing jsNull and jsUndefined to Qt plugins
   65382 
   65383         Currently limited to functions with QString and QVariant arguments,
   65384         and properties of these types. Both jsNull and jsUndefined ends up
   65385         as default-constructed QStrings and QVariants, which means you can
   65386         check for isEmpty() and isValid() in the native plugin code.
   65387 
   65388         Based on patches by Jade Han <jade.han (a] nokia.com>
   65389 
   65390         * bridge/qt/qt_runtime.cpp:
   65391         (JSC::Bindings::convertValueToQVariant):
   65392         (JSC::Bindings::findMethodIndex):
   65393 
   65394 2008-12-03  Trenton Schulz  <trenton.schulz (a] nokia.com>
   65395 
   65396         Reviewed by Simon Hausmann.
   65397 
   65398         Fix the build with Qt for Mac OS X.
   65399 
   65400         * platform/PurgeableBuffer.h: Use the dummy wrappers for now.
   65401 
   65402 2008-12-03  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   65403 
   65404         Reviewed by Alexey Proskuryakov.
   65405 
   65406         Fix error handling in WMLSetvarElement. If an invalid variable reference is contained
   65407         in the 'name' attribute of <setvar>, a 'WMLErrorInvalidVariableName' error should be
   65408         reported, instead of 'WMLErrorInvalidVariableReference'.
   65409 
   65410         * wml/WMLElement.cpp:
   65411         (WebCore::WMLElement::parseValueSubstitutingVariableReferences):
   65412         (WebCore::WMLElement::parseValueForbiddingVariableReferences):
   65413         * wml/WMLElement.h:
   65414         * wml/WMLSetvarElement.cpp:
   65415         (WebCore::WMLSetvarElement::parseMappedAttribute):
   65416         * wml/WMLSetvarElement.h:
   65417         (WebCore::WMLSetvarElement::name):
   65418         (WebCore::WMLSetvarElement::value):
   65419 
   65420 2008-12-03  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   65421 
   65422         Reviewed by Alexey Proskuryakov.
   65423 
   65424         Preparations to get WML layout tests going.
   65425         Make WMLPageState an OwnPtr to Page, and let Page create it on demand.
   65426 
   65427         * page/Page.cpp:
   65428         (WebCore::Page::Page):
   65429         (WebCore::Page::wmlPageState):
   65430         * page/Page.h:
   65431         * wml/WMLDocument.cpp:
   65432         (WebCore::WMLDocument::WMLDocument):
   65433         (WebCore::WMLDocument::finishedParsing):
   65434         (WebCore::wmlPageStateForDocument):
   65435         * wml/WMLPageState.h: Don't inherit from RefCounted anymore.
   65436         (WebCore::WMLPageState::hasVariables): Remove helper function.
   65437 
   65438 2008-12-03  Alexey Proskuryakov  <ap (a] webkit.org>
   65439 
   65440         Reviewed by Mark Rowe.
   65441 
   65442         https://bugs.webkit.org/show_bug.cgi?id=22627
   65443         fast/workers/worker-terminate.html fails randomly
   65444 
   65445         The problem is that worker termination uses script timeouts, so an InterruptedExecutionError
   65446         is raised, and it sometimes reaches the main thread.
   65447 
   65448         * dom/WorkerMessagingProxy.cpp:
   65449         (WebCore::WorkerExceptionTask::create):
   65450         (WebCore::WorkerExceptionTask::WorkerExceptionTask):
   65451         (WebCore::WorkerExceptionTask::performTask):
   65452         (WebCore::WorkerMessagingProxy::postWorkerException):
   65453         * dom/WorkerMessagingProxy.h:
   65454         Ignore exceptions that happen in terminated workers.
   65455 
   65456 2008-12-03  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   65457 
   65458         Reviewed by Alexey Proskuryakov.
   65459 
   65460         Remove some unncessary includes.
   65461 
   65462         * wml/WMLAccessElement.cpp:
   65463         * wml/WMLDocument.h:
   65464         * wml/WMLRefreshElement.cpp:
   65465 
   65466 2008-12-03  Alexey Proskuryakov  <ap (a] webkit.org>
   65467 
   65468         Rubber-stamped by Cameron Zwarich and Adam Roben.
   65469 
   65470         Fix a typo: m_executionForbidded.
   65471 
   65472         * bindings/js/WorkerScriptController.cpp:
   65473         (WebCore::WorkerScriptController::WorkerScriptController):
   65474         (WebCore::WorkerScriptController::evaluate):
   65475         (WebCore::WorkerScriptController::forbidExecution):
   65476         * bindings/js/WorkerScriptController.h:
   65477 
   65478 2008-12-03  Dean McNamee  <deanm (a] chromium.org>
   65479 
   65480         Bug 22623: Uninitialized memory access in cache parsing code
   65481         <https://bugs.webkit.org/show_bug.cgi?id=22623>
   65482 
   65483         Reviewed by David Kilzer.
   65484 
   65485         Initialize m_haveParsedCacheControlHeader and m_haveParsedPragmaHeader.
   65486 
   65487         * platform/network/ResourceResponseBase.h:
   65488         (WebCore::ResourceResponseBase::ResourceResponseBase):
   65489 
   65490 2008-12-03  Antti Koivisto  <antti (a] apple.com>
   65491 
   65492         Probable build fix.
   65493 
   65494         * WebCoreSources.bkl:
   65495 
   65496 2008-12-03  Antti Koivisto  <antti (a] apple.com>
   65497 
   65498         Forgot to commit these.
   65499 
   65500         * dom/Node.cpp:
   65501         (WebCore::forEachTagSelector):
   65502         (WebCore::SelectorNeedsNamespaceResolutionFunctor::operator()):
   65503         (WebCore::Node::querySelector):
   65504         * dom/SelectorNodeList.cpp:
   65505         (WebCore::createSelectorNodeList):
   65506 
   65507 2008-12-03  Antti Koivisto  <antti (a] apple.com>
   65508 
   65509         Reviewed by Dan Bernstein and Mark Rowe.
   65510 
   65511         https://bugs.webkit.org/show_bug.cgi?id=22379
   65512         Make CSSOM use less memory
   65513 
   65514         Reduce size of the CSSSelector by 3/8 by moving rarely used fields to a rare data
   65515         struct. Browsing around with some instrumentation showed that ~0.1% of all selectors
   65516         encountered had rare data.
   65517 
   65518         This also eliminates the CSSNthSelector subclass which will make possible to store
   65519         CSSSelectors in an array instead of a linked list for futher memory savings.
   65520 
   65521         * css/CSSGrammar.y:
   65522         * css/CSSNthSelector.cpp: Removed.
   65523         * css/CSSNthSelector.h: Removed.
   65524         * css/CSSParser.cpp:
   65525         (WebCore::CSSParser::createFloatingSelector):
   65526         * css/CSSParser.h:
   65527         * css/CSSSelector.cpp:
   65528         (WebCore::CSSSelector::specificity):
   65529         (WebCore::CSSSelector::operator==):
   65530         (WebCore::CSSSelector::selectorText):
   65531         (WebCore::CSSSelector::setTagHistory):
   65532         (WebCore::CSSSelector::attribute):
   65533         (WebCore::CSSSelector::setAttribute):
   65534         (WebCore::CSSSelector::setArgument):
   65535         (WebCore::CSSSelector::setSimpleSelector):
   65536         (WebCore::CSSSelector::parseNth):
   65537         (WebCore::CSSSelector::matchNth):
   65538         (WebCore::CSSSelector::RareData::parseNth):
   65539         (WebCore::CSSSelector::RareData::matchNth):
   65540         * css/CSSSelector.h:
   65541         (WebCore::CSSSelector::CSSSelector):
   65542         (WebCore::CSSSelector::~CSSSelector):
   65543         (WebCore::CSSSelector::tagHistory):
   65544         (WebCore::CSSSelector::hasAttribute):
   65545         (WebCore::CSSSelector::argument):
   65546         (WebCore::CSSSelector::simpleSelector):
   65547         (WebCore::CSSSelector::RareData::RareData):
   65548         (WebCore::CSSSelector::createRareData):
   65549         (WebCore::CSSSelector::):
   65550         * css/CSSStyleSelector.cpp:
   65551         (WebCore::CSSStyleSelector::SelectorChecker::checkSelector):
   65552         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
   65553 
   65554 2008-12-03  Jian Li  <jianli (a] chromium.org>
   65555 
   65556         Reviewed by Alexey Proskuryakov.
   65557 
   65558         Remove unneeded included file in WorkerThread.cpp.
   65559         https://bugs.webkit.org/show_bug.cgi?id=22613
   65560 
   65561         * dom/WorkerThread.cpp: No need to include JSWorkerContext.h.
   65562 
   65563 2008-12-02  Alexey Proskuryakov  <ap (a] webkit.org>
   65564 
   65565         Reviewed by Maciej Stachowiak.
   65566 
   65567         https://bugs.webkit.org/show_bug.cgi?id=22543
   65568         Consolidate ActiveDOMObject page cache interaction
   65569 
   65570         Test: http/tests/xmlhttprequest/abort-on-leaving-page.html
   65571 
   65572         * dom/ActiveDOMObject.cpp:
   65573         (WebCore::ActiveDOMObject::canSuspend):
   65574         (WebCore::ActiveDOMObject::suspend):
   65575         (WebCore::ActiveDOMObject::resume):
   65576         * dom/ActiveDOMObject.h:
   65577         * dom/ScriptExecutionContext.cpp:
   65578         (WebCore::ScriptExecutionContext::canSuspendActiveDOMObjects):
   65579         (WebCore::ScriptExecutionContext::suspendActiveDOMObjects):
   65580         (WebCore::ScriptExecutionContext::resumeActiveDOMObjects):
   65581         * dom/ScriptExecutionContext.h:
   65582         Added methods for suspending and resuming active objects.
   65583 
   65584         * dom/Worker.cpp:
   65585         (WebCore::Worker::canSuspend):
   65586         (WebCore::Worker::stop):
   65587         * dom/Worker.h:
   65588         Workers cannot be suspended yet. This is a change in behavior, as workers used to keep
   65589         running until their owner was destroyed.
   65590 
   65591         * loader/FrameLoader.cpp:
   65592         (WebCore::FrameLoader::stopLoading): No longer call stopActiveDOMObjects() here, because
   65593         their activity is not necessarily loading.
   65594         (WebCore::FrameLoader::canCachePage): Can only cache if all active objects can be suspended.
   65595         Previously, stopLoading() cancelled outstanding XMLHttpRequests, which made the page
   65596         uncacheable due to no-null main document error.
   65597         (WebCore::FrameLoader::commitProvisionalLoad): Suspend or stop active objects, depending on
   65598         whether the document will be cached.
   65599         (WebCore::FrameLoader::frameDetached): Stop active objects to let them clean up before their
   65600         context is destroyed.
   65601 
   65602         * xml/XMLHttpRequest.h: added canSuspend().
   65603         * xml/XMLHttpRequest.cpp:
   65604         (WebCore::XMLHttpRequest::canSuspend): Only XHRs that are not loading can be suspended.
   65605         (WebCore::XMLHttpRequest::stop): Call abort() instead of internalAbort() to dispatch events
   65606         for Firefox compatibility. This is a change in behavior that helps test that requests do
   65607         get aborted.
   65608         (WebCore::XMLHttpRequest::contextDestroyed): The request must have been stopped by now, so
   65609         assert that.
   65610 
   65611 2008-12-02  Chris Fleizach  <cfleizach (a] apple.com>
   65612 
   65613         Reviewed by Beth Dakin.
   65614 
   65615         Bug 22606: Can <th> serves as the AXTitleUIElement for <td>?
   65616 
   65617         Test: accessibility/th-as-title-ui.html
   65618 
   65619         * page/AccessibilityObject.h:
   65620         (WebCore::AccessibilityObject::isGroup):
   65621         * page/AccessibilityRenderObject.cpp:
   65622         (WebCore::AccessibilityRenderObject::isGroup):
   65623         * page/AccessibilityRenderObject.h:
   65624         * page/AccessibilityTableCell.cpp:
   65625         (WebCore::AccessibilityTableCell::rowIndexRange):
   65626         (WebCore::AccessibilityTableCell::columnIndexRange):
   65627         (WebCore::AccessibilityTableCell::titleUIElement):
   65628         * page/AccessibilityTableCell.h:
   65629         * page/mac/AccessibilityObjectWrapper.mm:
   65630         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
   65631 
   65632 2008-12-02  Simon Fraser  <simon.fraser (a] apple.com>
   65633 
   65634         Reviewed by Dave Hyatt
   65635 
   65636         https://bugs.webkit.org/show_bug.cgi?id=22472
   65637 
   65638         Override absoluteClippedOverflowRect() in RenderReplaced to return a rect
   65639         that is large enough to encompass the selection, so that the repainting of
   65640         selected replaced elements works correctly.
   65641 
   65642         Test: fast/repaint/selected-replaced.html
   65643 
   65644         * rendering/RenderReplaced.cpp:
   65645         (WebCore::RenderReplaced::selectionRect):
   65646         (WebCore::RenderReplaced::localSelectionRect):
   65647         (WebCore::RenderReplaced::absoluteClippedOverflowRect):
   65648         * rendering/RenderReplaced.h:
   65649 
   65650 2008-12-02  Gregory Hughes  <ghughes (a] apple.com>
   65651 
   65652         Reviewed by Beth Dakin.
   65653 
   65654         Bug 22513: ZOOM: text selection does not send correct zoom bounds
   65655 
   65656         When zoomed, text selection must send the zoom bounds in flipped
   65657         screen coordinates.
   65658 
   65659         * editing/mac/SelectionControllerMac.mm:
   65660         (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
   65661         * page/mac/WebCoreViewFactory.h:
   65662 
   65663 2008-12-02  Dean Jackson  <dino (a] apple.com>
   65664 
   65665         Reviewed by Sam Weinig.
   65666 
   65667         Remove support for 'now' from CSS (was
   65668         erroneously added to transition and animation delay)
   65669         https://bugs.webkit.org/show_bug.cgi?id=22571
   65670 
   65671         * css/CSSParser.cpp:
   65672         (WebCore::CSSParser::parseAnimationDelay):
   65673         * css/CSSStyleSelector.cpp:
   65674         (WebCore::CSSStyleSelector::mapAnimationDelay):
   65675         * css/CSSValueKeywords.in:
   65676 
   65677 2008-12-02  Eric Seidel  <eric (a] webkit.org>
   65678 
   65679         Build fix, no review.
   65680 
   65681         Fix the Mac and gtk builds:
   65682         Don't use a float to hold a double.
   65683         Remove a now duplicate symbol.
   65684 
   65685         * page/Frame.cpp:
   65686         (WebCore::Frame::selectionLayoutChanged):
   65687         * platform/gtk/TemporaryLinkStubs.cpp:
   65688 
   65689 2008-12-02  Chris Fleizach  <cfleizach (a] apple.com>
   65690 
   65691         Bug 22596: Some elements don't report AXBlockQuoteLevel
   65692         https://bugs.webkit.org/show_bug.cgi?id=22596
   65693 
   65694         Reviewed by John Sullivan.
   65695 
   65696         * page/mac/AccessibilityObjectWrapper.mm:
   65697         (blockquoteLevel):
   65698         (AXAttributeStringSetBlockquoteLevel):
   65699         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
   65700         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
   65701 
   65702 2008-12-02  Dean McNamee  <deanm (a] chromium.org>
   65703 
   65704         Reviewed by Eric Seidel.
   65705 
   65706         Correctly handle a theme returning a non-blinking interval.  We should
   65707         not set any timers when the interval is 0 (non-blinking), otherwise we
   65708         repeatedly set and destroy a blinking timer, causing a paint and timer
   65709         storm.  This is applicable to GTK and Windows, where a user can set a
   65710         non-blinking caret in their system preferences.
   65711 
   65712         Renamed caretBlinkFrequency to the more accurate caretBlinkInterval.
   65713 
   65714         * page/Frame.cpp:
   65715         (WebCore::Frame::selectionLayoutChanged):
   65716         * platform/Theme.h:
   65717         (WebCore::Theme::caretBlinkInterval):
   65718         * platform/gtk/RenderThemeGtk.cpp:
   65719         (WebCore::RenderThemeGtk::caretBlinkInterval):
   65720         * platform/gtk/RenderThemeGtk.h:
   65721         * rendering/RenderTheme.h:
   65722         (WebCore::RenderTheme::caretBlinkInterval):
   65723 
   65724 2008-12-02  David Levin  <levin (a] chromium.org>
   65725 
   65726         Reviewed by Eric Seidel.
   65727 
   65728         https://bugs.webkit.org/show_bug.cgi?id=22538
   65729 
   65730         startsWith uses find which searches through the whole string if no match is found.
   65731         Using reverseFind with an index of 0 has the benefit of only searching for the match
   65732         at the beginning of the string.  This may only be a small benefit in the overall program,
   65733         but it may help in some cases when the string is big.
   65734 
   65735         No observable change in behavior, so no test.
   65736 
   65737         * platform/text/StringImpl.h:
   65738         (WebCore::StringImpl::startsWith):
   65739 
   65740 2008-10-29  Eric Seidel  <eric (a] webkit.org>
   65741 
   65742         Reviewed by Darin Adler.
   65743 
   65744         Wrap a JSC-only hack in a USE(JSC) block to fix the v8 build.
   65745         https://bugs.webkit.org/show_bug.cgi?id=21951
   65746 
   65747         * svg/SVGElementInstance.cpp:
   65748         (WebCore::SVGElementInstance::forgetWrapper):
   65749 
   65750 2008-12-02  Eric Seidel  <eric (a] webkit.org>
   65751 
   65752         Reviewed by Darin Adler.
   65753 
   65754         Add an ASSERT to try and catch the root cause of:
   65755         https://bugs.webkit.org/show_bug.cgi?id=22168
   65756         http://code.google.com/p/chromium/issues/detail?id=4122
   65757 
   65758         * editing/TextIterator.cpp:
   65759         (WebCore::TextIterator::emitText):
   65760 
   65761 2008-12-02  Brent Fulgham  <bfulgham (a] gmail.com>
   65762 
   65763         Reviewed by Adam Roben.
   65764 
   65765         Remove some CG-specific code from the Windows Cairo build.
   65766         https://bugs.webkit.org/show_bug.cgi?id=22586
   65767 
   65768         No new test cases since this update should create no user-visible
   65769         changes, and should be fully covered by the existing regression
   65770         tests.
   65771 
   65772         * WebCore.vcproj/WebCore.vcproj: Remove FontDatabase from
   65773         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   65774         (WebCore::focusRingColor): Add stub method
   65775         * platform/win/TemporaryLinkStubs.cpp:
   65776         (WebCore::populateFontDatabase): Add stub method.
   65777 
   65778 2008-12-01 Laszlo Gombos <laszlo.1.gombos (a] nokia.com>
   65779 
   65780         Reviewed by Tor Arne Vestb.
   65781 
   65782         MinGW compilation fix for PluginPackageWin.cpp
   65783 
   65784         https://bugs.webkit.org/show_bug.cgi?id=22585
   65785 
   65786         * plugins/win/PluginPackageWin.cpp:
   65787         (WebCore::PluginPackage::fetchInfo):
   65788 
   65789 2008-12-02  Adam Roben  <aroben (a] apple.com>
   65790 
   65791         Build fix for Windows projects with NOMINMAX defined globally
   65792 
   65793         * platform/win/COMPtr.h: Don't redefine NOMINMAX if it's already
   65794         defined.
   65795 
   65796 2008-12-02  Simon Hausmann  <hausmann (a] webkit.org>
   65797 
   65798         Reviewed by Tor Arne Vestb.
   65799 
   65800         Build JavaScriptCore into libQtWebKit.so through a direct build
   65801         instead of a static library. When linking a static library into
   65802         a shared library qmake generates an incorrect .prl file, which
   65803         causes all sorts of different build problems when linking against
   65804         QtWebKit. Fixing this in qmake requires bigger changes that are
   65805         currently not possible, so we need to work around this limitation
   65806         for now. The advantages of the separate build did not outweight the
   65807         build problems it caused.
   65808 
   65809         * WebCore.pro: include JavaScriptCore.pri, re-enable prl support
   65810         and rename the lut generator to domlut to avoid a conflict with
   65811         JavaScriptCore.pri's lut generator.
   65812 
   65813 2008-12-02  David Levin  <levin (a] chromium.org>
   65814 
   65815         Reviewed by Alexey Proskuryakov.
   65816 
   65817         https://bugs.webkit.org/show_bug.cgi?id=22588
   65818         Move securityOrigin() from Document and WorkerContext into ScriptExecutionContext.
   65819 
   65820         No observable change in behavior, so no test.
   65821 
   65822         * dom/Document.cpp:
   65823         (WebCore::Document::open):
   65824         (WebCore::Document::domain):
   65825         (WebCore::Document::setDomain):
   65826         (WebCore::Document::initSecurityContext):
   65827         (WebCore::Document::setSecurityOrigin):
   65828         * dom/Document.h:
   65829         * dom/ScriptExecutionContext.cpp:
   65830         (WebCore::ScriptExecutionContext::setSecurityOrigin):
   65831         * dom/ScriptExecutionContext.h:
   65832         (WebCore::ScriptExecutionContext::securityOrigin):
   65833         * dom/WorkerContext.cpp:
   65834         (WebCore::WorkerContext::WorkerContext):
   65835         * dom/WorkerContext.h:
   65836         These changes are for the move of securityOrigin().
   65837 
   65838         * xml/XMLHttpRequest.cpp:
   65839         (WebCore::XMLHttpRequest::createRequest):
   65840         (WebCore::XMLHttpRequest::makeSimpleCrossSiteAccessRequest):
   65841         (WebCore::XMLHttpRequest::makeCrossSiteAccessRequestWithPreflight):
   65842         (WebCore::XMLHttpRequest::handleAsynchronousPreflightResult):
   65843         (WebCore::XMLHttpRequest::setRequestHeader):
   65844         (WebCore::XMLHttpRequest::getAllResponseHeaders):
   65845         (WebCore::XMLHttpRequest::getResponseHeader):
   65846         (WebCore::XMLHttpRequest::processSyncLoadResults):
   65847         (WebCore::XMLHttpRequest::willSendRequest):
   65848         (WebCore::XMLHttpRequest::accessControlCheck):
   65849         (WebCore::XMLHttpRequest::didReceiveResponsePreflight):
   65850         Change XMLHttpRequest to use ScriptExecutionContext instead of Document to access securityOrigin().
   65851 
   65852 2008-12-02  Andr Pnitz  <apoenitz (a] trolltech.com>
   65853 
   65854         Reviewed by Simon Hausmann.
   65855 
   65856         Disable the creation of debug information for the Qt build when done
   65857         inside Qt. With 670 mb it was slowing down gdb start significantly
   65858         for third-party applications that usually don't need it.
   65859 
   65860         * WebCore.pro:
   65861 
   65862 2008-12-01  Beth Dakin  <bdakin (a] apple.com>
   65863 
   65864         Reviewed by Dan Bernstein.
   65865 
   65866         Fix for https://bugs.webkit.org/show_bug.cgi?id=13736 REGRESSION
   65867         (r19811): Using the down arrow in a textarea gets "stuck" at the
   65868         end of a wrapped line
   65869         And corresponding: <rdar://problem/5347931>
   65870 
   65871         The basic problem here is that Position::getInlineBoxAndOffset()
   65872         failed to look beyond a single renderer. This patch looks for a
   65873         better match beyond the first renderer when the affinity is
   65874         downstream and we failed to find a "perfect" match.
   65875         * dom/Position.cpp:
   65876         (WebCore::isNonTextLeafChild):
   65877         (WebCore::searchAheadForBetterMatch):
   65878         (WebCore::Position::getInlineBoxAndOffset):
   65879 
   65880         This is a fix I made based on code inspection. It looks like the
   65881         old code here and skipped over the parent as a possible match.
   65882         * rendering/RenderObject.cpp:
   65883         (WebCore::RenderObject::nextInPreOrderAfterChildren):
   65884 
   65885 2008-12-01  Brent Fulgham  <bfulgham (a] gmail.com>
   65886 
   65887         Reviewed by Adam Roben.
   65888 
   65889         Add WML related files to Visual Studio projects.
   65890         https://bugs.webkit.org/show_bug.cgi?id=22561
   65891 
   65892         * WebCore.vcproj/WebCore.vcproj:
   65893           1. Add files from the wml directory to the set of windows files.
   65894           2. Extend include paths with new wml directory.
   65895           3. Add new autogenerated WML files to DerivedSources.
   65896           4. Alphabetize preprocesor includes (holdover from earlier debugging).
   65897 
   65898 2008-12-01  Steve Falkenburg  <sfalken (a] apple.com>
   65899 
   65900         Revise node/selection image fix.
   65901         Moved updateLayout call so selection rect is fetched after the layout.
   65902 
   65903         Reviewed by Adam Roben.
   65904 
   65905         * page/win/FrameCGWin.cpp:
   65906         (WebCore::imageFromRect):
   65907         (WebCore::imageFromSelection):
   65908         (WebCore::Frame::nodeImage):
   65909 
   65910 2008-12-01  Steve Falkenburg  <sfalken (a] apple.com>
   65911 
   65912         Support needed to implement renderedImage for Windows.
   65913         https://bugs.webkit.org/show_bug.cgi?25648
   65914 
   65915         Reviewed by Adam Roben.
   65916 
   65917         * page/Frame.h:
   65918         * page/win/FrameCGWin.cpp:
   65919         (WebCore::imageFromRect):
   65920         (WebCore::imageFromSelection):
   65921         (WebCore::Frame::nodeImage):
   65922         * page/win/FrameCairoWin.cpp:
   65923         (WebCore::imageFromNode):
   65924 
   65925 2008-12-01  Simon Fraser  <simon.fraser (a] apple.com>
   65926 
   65927         Reviewed by Dan Bernstein
   65928 
   65929         https://bugs.webkit.org/show_bug.cgi?id=22581
   65930 
   65931         Fix the painting of the caps lock indicator for transformed text inputs,
   65932         by replacing a call to absoluteContentBox() with code that computes the
   65933         painting rect for the input contents.
   65934 
   65935         * rendering/RenderTextControl.cpp:
   65936         (WebCore::RenderTextControl::paint):
   65937 
   65938 2008-12-01  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   65939 
   65940         Reviewed by George Staikos.
   65941 
   65942         Add two new helper functions to WMLElement, parseValueSubstitutingVariableReferences/parseValueForbiddingVariableReferences.
   65943 
   65944         Convert all elements to parse their attribute values using these new helper functions. This simplifies the
   65945         actual attribute parsing code in all WMLElement derived classes, as most WML attribute values either report
   65946         an error if there's a variable reference used in the attribute value, or if it's invalid.
   65947 
   65948         Split the WMLErrorInvalidVariableReference error which covered both 'invalid syntax' / 'wrong location'
   65949         in two seperated error codes: WMLErrorInvalidVariableReference / WMLErrorInvalidVariableReferenceLocation.
   65950 
   65951         * wml/WMLAccessElement.cpp:
   65952         (WebCore::WMLAccessElement::parseMappedAttribute):
   65953         * wml/WMLDoElement.cpp:
   65954         (WebCore::WMLDoElement::defaultEventHandler):
   65955         (WebCore::WMLDoElement::parseMappedAttribute):
   65956         * wml/WMLElement.cpp:
   65957         (WebCore::WMLElement::parseValueSubstitutingVariableReferences):
   65958         (WebCore::WMLElement::parseValueForbiddingVariableReferences):
   65959         * wml/WMLElement.h:
   65960         * wml/WMLErrorHandling.cpp:
   65961         (WebCore::reportWMLError):
   65962         * wml/WMLErrorHandling.h:
   65963         (WebCore::):
   65964         * wml/WMLOnEventElement.cpp:
   65965         (WebCore::WMLOnEventElement::parseMappedAttribute):
   65966         * wml/WMLPrevElement.cpp:
   65967         (WebCore::WMLPrevElement::executeTask):
   65968         * wml/WMLSetvarElement.cpp:
   65969         (WebCore::WMLSetvarElement::parseMappedAttribute):
   65970         * wml/WMLTimerElement.cpp:
   65971         (WebCore::WMLTimerElement::parseMappedAttribute):
   65972 
   65973 2008-12-01  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   65974 
   65975         Reviewed by George Staikos.
   65976 
   65977         Fix switching active cards within a document. No way to test, until <go> support is implemented.
   65978 
   65979         * wml/WMLCardElement.cpp:
   65980         (WebCore::WMLCardElement::showCard):
   65981         (WebCore::WMLCardElement::hideCard):
   65982         (WebCore::WMLCardElement::setActiveCardInDocument):
   65983         * wml/WMLCardElement.h:
   65984 
   65985 2008-12-01  David Kilzer  <ddkilzer (a] apple.com>
   65986 
   65987         Fix logic error in LegacyWebArchive::create() from r38884.
   65988 
   65989         * loader/archive/cf/LegacyWebArchive.cpp:
   65990         (WebCore::LegacyWebArchive::create): Only continue if the
   65991         subresource is actually added.
   65992 
   65993 2008-12-01  David Kilzer  <ddkilzer (a] apple.com>
   65994 
   65995         Bug 22466: REGRESSION (35867): Many resources missing when saving webarchive of webkit.org
   65996 
   65997         <https://bugs.webkit.org/show_bug.cgi?id=22466>
   65998         <rdar://problem/6403593>
   65999 
   66000         Reviewed by Brady Eidson.
   66001 
   66002         Test: http/tests/webarchive/test-preload-resources.html
   66003 
   66004         * loader/archive/cf/LegacyWebArchive.cpp:
   66005         (WebCore::LegacyWebArchive::create): Check the WebCore cache for
   66006         resources if DocumentLoader::subresource() doesn't return them.
   66007         Note that the DocumentLoader::subresource() method returned
   66008         preloaded resources before r35867, but this caused a regression in
   66009         Mail.
   66010 
   66011 2008-12-01  Julien Chaffraix  <jchaffraix (a] webkit.org>
   66012 
   66013         Reviewed by Eric Seidel.
   66014 
   66015         Bug 22564: Make HTML elements' constructors take a QualifiedName
   66016         https://bugs.webkit.org/show_bug.cgi?id=22564
   66017 
   66018         - Modified the remaining HTML elements' constructors to take a QualifiedName.
   66019 
   66020         - Added an assertion that the QualifiedName given corresponds to the element constructed.
   66021 
   66022         * bindings/js/JSAudioConstructor.cpp:
   66023         (WebCore::constructAudio):
   66024         * html/HTMLAudioElement.cpp:
   66025         (WebCore::HTMLAudioElement::HTMLAudioElement):
   66026         * html/HTMLAudioElement.h:
   66027         * html/HTMLBRElement.cpp:
   66028         (WebCore::HTMLBRElement::HTMLBRElement):
   66029         * html/HTMLBRElement.h:
   66030         * html/HTMLElement.cpp:
   66031         (WebCore::HTMLElement::setInnerText):
   66032         * html/HTMLElementFactory.cpp:
   66033         (WebCore::brConstructor):
   66034         (WebCore::quoteConstructor):
   66035         (WebCore::marqueeConstructor):
   66036         (WebCore::audioConstructor):
   66037         (WebCore::videoConstructor):
   66038         (WebCore::sourceConstructor):
   66039         * html/HTMLMarqueeElement.cpp:
   66040         (WebCore::HTMLMarqueeElement::HTMLMarqueeElement):
   66041         * html/HTMLMarqueeElement.h:
   66042         * html/HTMLQuoteElement.cpp:
   66043         (WebCore::HTMLQuoteElement::HTMLQuoteElement):
   66044         * html/HTMLQuoteElement.h:
   66045         * html/HTMLSourceElement.cpp:
   66046         (WebCore::HTMLSourceElement::HTMLSourceElement):
   66047         * html/HTMLSourceElement.h:
   66048         * html/HTMLVideoElement.cpp:
   66049         (WebCore::HTMLVideoElement::HTMLVideoElement):
   66050         * html/HTMLVideoElement.h:
   66051         * rendering/RenderTextControl.cpp:
   66052         (WebCore::RenderTextControl::updateFromElement):
   66053 
   66054 2008-12-01  Julien Chaffraix  <jchaffraix (a] webkit.org>
   66055 
   66056         Reviewed by Antti Koivisto.
   66057 
   66058         Bug 22441: Bridge the gap between the generated ElementFactory and HTMLElementFactory
   66059         https://bugs.webkit.org/show_bug.cgi?id=22441
   66060 
   66061         Add an assertion to the modified HTML elements' constructor
   66062         to check that the QualifiedName parameter is the one that
   66063         matches the Element's.
   66064 
   66065         * html/HTMLBaseElement.cpp:
   66066         (WebCore::HTMLBaseElement::HTMLBaseElement):
   66067         * html/HTMLBlockquoteElement.cpp:
   66068         (WebCore::HTMLBlockquoteElement::HTMLBlockquoteElement):
   66069         * html/HTMLBodyElement.cpp:
   66070         (WebCore::HTMLBodyElement::HTMLBodyElement):
   66071         * html/HTMLButtonElement.cpp:
   66072         (WebCore::HTMLButtonElement::HTMLButtonElement):
   66073         * html/HTMLDListElement.cpp:
   66074         (WebCore::HTMLDListElement::HTMLDListElement):
   66075         * html/HTMLDirectoryElement.cpp:
   66076         (WebCore::HTMLDirectoryElement::HTMLDirectoryElement):
   66077         * html/HTMLDivElement.cpp:
   66078         (WebCore::HTMLDivElement::HTMLDivElement):
   66079         * html/HTMLFieldSetElement.cpp:
   66080         (WebCore::HTMLFieldSetElement::HTMLFieldSetElement):
   66081         * html/HTMLFormElement.cpp:
   66082         (WebCore::HTMLFormElement::HTMLFormElement):
   66083         * html/HTMLFrameElement.cpp:
   66084         (WebCore::HTMLFrameElement::HTMLFrameElement):
   66085         * html/HTMLFrameSetElement.cpp:
   66086         (WebCore::HTMLFrameSetElement::HTMLFrameSetElement):
   66087         * html/HTMLHeadElement.cpp:
   66088         (WebCore::HTMLHeadElement::HTMLHeadElement):
   66089         * html/HTMLHtmlElement.cpp:
   66090         (WebCore::HTMLHtmlElement::HTMLHtmlElement):
   66091         * html/HTMLIFrameElement.cpp:
   66092         (WebCore::HTMLIFrameElement::HTMLIFrameElement):
   66093         * html/HTMLInputElement.cpp:
   66094         (WebCore::HTMLInputElement::HTMLInputElement):
   66095         * html/HTMLIsIndexElement.cpp:
   66096         (WebCore::HTMLIsIndexElement::HTMLIsIndexElement):
   66097         * html/HTMLKeygenElement.cpp:
   66098         (WebCore::HTMLKeygenElement::HTMLKeygenElement):
   66099         * html/HTMLLIElement.cpp:
   66100         (WebCore::HTMLLIElement::HTMLLIElement):
   66101         * html/HTMLLabelElement.cpp:
   66102         (WebCore::HTMLLabelElement::HTMLLabelElement):
   66103         * html/HTMLLegendElement.cpp:
   66104         (WebCore::HTMLLegendElement::HTMLLegendElement):
   66105         * html/HTMLLinkElement.cpp:
   66106         (WebCore::HTMLLinkElement::HTMLLinkElement):
   66107         * html/HTMLMenuElement.cpp:
   66108         (WebCore::HTMLMenuElement::HTMLMenuElement):
   66109         * html/HTMLMetaElement.cpp:
   66110         (WebCore::HTMLMetaElement::HTMLMetaElement):
   66111         * html/HTMLOListElement.cpp:
   66112         (WebCore::HTMLOListElement::HTMLOListElement):
   66113         * html/HTMLOptGroupElement.cpp:
   66114         (WebCore::HTMLOptGroupElement::HTMLOptGroupElement):
   66115         * html/HTMLOptionElement.cpp:
   66116         (WebCore::HTMLOptionElement::HTMLOptionElement):
   66117         * html/HTMLSelectElement.cpp:
   66118         (WebCore::HTMLSelectElement::HTMLSelectElement):
   66119         * html/HTMLStyleElement.cpp:
   66120         (WebCore::HTMLStyleElement::HTMLStyleElement):
   66121         * html/HTMLTextAreaElement.cpp:
   66122         (WebCore::HTMLTextAreaElement::HTMLTextAreaElement):
   66123         * html/HTMLTitleElement.cpp:
   66124         (WebCore::HTMLTitleElement::HTMLTitleElement):
   66125         * html/HTMLUListElement.cpp:
   66126         (WebCore::HTMLUListElement::HTMLUListElement):
   66127 
   66128 2008-12-01  Chris Marrin  <cmarrin (a] apple.com>
   66129 
   66130         Reviewed by Darin Adler.
   66131 
   66132         https://bugs.webkit.org/show_bug.cgi?id=22046
   66133 
   66134         Fixed another case of crashing because the animation object is getting deleted when
   66135         it's in the middle of a callback. I actually moved where I am retaining the pointer
   66136         up out of the lower level AnimationBase code and into the timer callback that calls
   66137         them. So now the pointer is valid throughout the entire sequence of callback code.
   66138 
   66139         The testcase for https://bugs.webkit.org/show_bug.cgi?id=22052 also exhibits a
   66140         crash which this patch fixes.
   66141 
   66142         * page/animation/AnimationBase.cpp:
   66143         (WebCore::AnimationBase::updateStateMachine):
   66144         (WebCore::AnimationBase::animationTimerCallbackFired):
   66145         * page/animation/CompositeAnimation.cpp:
   66146         (WebCore::CompositeAnimationPrivate::setAnimationStartTime):
   66147         (WebCore::CompositeAnimationPrivate::setTransitionStartTime):
   66148         (WebCore::CompositeAnimationPrivate::styleAvailable):
   66149         * page/animation/ImplicitAnimation.cpp:
   66150         (WebCore::ImplicitAnimation::sendTransitionEvent):
   66151         * page/animation/KeyframeAnimation.cpp:
   66152         (WebCore::KeyframeAnimation::sendAnimationEvent):
   66153         (WebCore::KeyframeAnimation::resumeOverriddenAnimations):
   66154 
   66155 2008-12-01  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   66156 
   66157         Reviewed by Simon Hausmann.
   66158 
   66159         [Qt/Mac] Initialize NPAPI plugins before getting their entry points
   66160 
   66161         The old behavior (calling NP_GetEntryPoints before NP_Initialize) was
   66162         copied from Windows, but caused Silverlight on Mac to crash when loaded.
   66163 
   66164         Apparently the call order of NP_Initialize and NP_GetEntryPoints is
   66165         reversed on Mac. See https://bugzilla.mozilla.org/show_bug.cgi?id=344425
   66166 
   66167         Reported-by: Peter Johnson <peter (a] zattoo.com>
   66168 
   66169         * plugins/mac/PluginPackageMac.cpp:
   66170         (WebCore::PluginPackage::load):
   66171 
   66172 2008-11-30  Chris Fleizach  <cfleizach (a] apple.com>
   66173 
   66174         Reviewed by John Sullivan.
   66175 
   66176         https://bugs.webkit.org/show_bug.cgi?id=22510
   66177         Crash at WebCore::AccessibilityRenderObject::activeDescendant() on Google Reader with ARIA (22510)
   66178 
   66179         A nil pointer needed to be checked
   66180 
   66181         * page/AccessibilityRenderObject.cpp:
   66182         (WebCore::AccessibilityRenderObject::activeDescendant):
   66183 
   66184 2008-11-30  Alexey Proskuryakov  <ap (a] webkit.org>
   66185 
   66186         Reviewed by Dan Bernstein.
   66187 
   66188         https://bugs.webkit.org/show_bug.cgi?id=22530
   66189         Assertion failures seen on buildbot due to uninitialized WorkerThread::m_threadID
   66190 
   66191         * dom/WorkerThread.cpp:
   66192         (WebCore::WorkerThread::start): Protect worker startup with a mutex to ensure that this
   66193         function runs to completion before the thread begins execution.
   66194         (WebCore::WorkerThread::workerThread): Updated comments.
   66195         (WebCore::WorkerThread::stop): Ditto.
   66196         * dom/WorkerThread.h: Renamed m_workerContextMutex to m_threadCreationMutex, because it now
   66197         protects startup as a whole.
   66198 
   66199         * storage/DatabaseThread.cpp:
   66200         * storage/DatabaseThread.h:
   66201         * storage/LocalStorageThread.cpp:
   66202         * storage/LocalStorageThread.h:
   66203         Fixed the same m_threadID problem.
   66204 
   66205 2008-11-29  Brent Fulgham  <bfulgham (a] gmail.com>
   66206 
   66207         Reviewed by Alexey Proskuryakov.
   66208 
   66209         Remove Visual Studio project dependencies on non-redistributable
   66210         components in the Debug_Cairo and Release_Cairo build targets.
   66211         See https://bugs.webkit.org/show_bug.cgi?id=22527
   66212 
   66213         * WebCore.vcproj/WebCore.vcproj:
   66214 
   66215 2008-11-29  Sam Weinig  <sam (a] webkit.org>
   66216 
   66217         Rubber-stamped by Alexey Proskuryakov.
   66218 
   66219         Fix some sorting
   66220 
   66221         * WebCore.xcodeproj/project.pbxproj:
   66222 
   66223 2008-11-28  Sam Weinig  <sam (a] webkit.org>
   66224 
   66225         Reviewed by Alexey Proskuryakov.
   66226 
   66227         Fix for https://bugs.webkit.org/show_bug.cgi?id=21063
   66228         NULL pointer crash in dispatchEvent(null);
   66229 
   66230         Test: fast/events/dispatchEvent-crash.html
   66231 
   66232         * dom/MessagePort.cpp:
   66233         (WebCore::MessagePort::dispatchEvent):
   66234         * dom/Worker.cpp:
   66235         (WebCore::Worker::dispatchEvent):
   66236         * dom/WorkerContext.cpp:
   66237         (WebCore::WorkerContext::dispatchEvent):
   66238         * loader/appcache/DOMApplicationCache.cpp:
   66239         (WebCore::DOMApplicationCache::dispatchEvent):
   66240         * xml/XMLHttpRequest.cpp:
   66241         (WebCore::XMLHttpRequest::dispatchEvent):
   66242         * xml/XMLHttpRequestUpload.cpp:
   66243         (WebCore::XMLHttpRequestUpload::dispatchEvent):
   66244 
   66245 2008-11-29  Dan Bernstein  <mitz (a] apple.com>
   66246 
   66247         Reviewed by Alexey Proskuryakov.
   66248 
   66249         - fix https://bugs.webkit.org/show_bug.cgi?id=22454
   66250           <rdar://problem/6405550> REGRESSION (3.2-TOT): Crash below FontFallbackList::fontDataAt on jacobian.org
   66251 
   66252         Test: http/tests/misc/font-face-in-multiple-segmented-faces.html
   66253 
   66254         The crash happened because style recalculation was invoked by
   66255         CSSFontSelector after one CSSSegmentedFontFace had pruned its tables but
   66256         before another CSSSegmentedFontFace using the same CSSFontFace had done
   66257         so. The fix is to let all CSSSegmentedFontFaces using the CSSFontFace
   66258         prune their tables before telling the CSSFontSelector to recalc style.
   66259 
   66260         * css/CSSFontFace.cpp:
   66261         (WebCore::CSSFontFace::fontLoaded):
   66262         * css/CSSFontSelector.cpp:
   66263         (WebCore::CSSFontSelector::fontLoaded):
   66264         * css/CSSFontSelector.h:
   66265         * css/CSSSegmentedFontFace.cpp:
   66266         (WebCore::CSSSegmentedFontFace::fontLoaded):
   66267 
   66268 2008-11-29  Alexey Proskuryakov  <ap (a] webkit.org>
   66269 
   66270         Reviewed by Eric Seidel.
   66271 
   66272         https://bugs.webkit.org/show_bug.cgi?id=14968
   66273         document.open() erroneously returns void instead of the new Document
   66274 
   66275         Test: fast/dom/HTMLDocument/document-open-return-value.html
   66276 
   66277         * bindings/js/JSHTMLDocumentCustom.cpp: (WebCore::JSHTMLDocument::open):
   66278         Return the document on which this method was invoked, per HTML5.
   66279 
   66280 2008-11-28  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   66281 
   66282         Reviewed by Cameron Zwarich.
   66283 
   66284         Fixes: https://bugs.webkit.org/show_bug.cgi?id=22550
   66285 
   66286         Add <timer> element support. It provides a way to execute a task with a delay.
   66287         The user is notified by firing the task associated with the <card>'s ontimer attribute.
   66288         Only one timer element is allowed per <card> (fix wrong error message in reportWMLError)
   66289 
   66290         * WebCore.xcodeproj/project.pbxproj:
   66291         * wml/WMLCardElement.cpp:
   66292         (WebCore::WMLCardElement::WMLCardElement):
   66293         (WebCore::WMLCardElement::setIntrinsicEventTimer):
   66294         (WebCore::WMLCardElement::handleIntrinsicEventIfNeeded):
   66295         * wml/WMLCardElement.h:
   66296         * wml/WMLDoElement.cpp:
   66297         (WebCore::WMLDoElement::defaultEventHandler):
   66298         * wml/WMLErrorHandling.cpp:
   66299         (WebCore::reportWMLError):
   66300         * wml/WMLPageState.h:
   66301         (WebCore::WMLPageState::getVariable):
   66302         * wml/WMLPrevElement.cpp:
   66303         (WebCore::WMLPrevElement::executeTask):
   66304         * wml/WMLRefreshElement.cpp:
   66305         (WebCore::WMLRefreshElement::executeTask):
   66306         * wml/WMLTagNames.in:
   66307         * wml/WMLTimerElement.cpp: Added.
   66308         (WebCore::WMLTimerElement::WMLTimerElement):
   66309         (WebCore::WMLTimerElement::parseMappedAttribute):
   66310         (WebCore::WMLTimerElement::insertedIntoDocument):
   66311         (WebCore::WMLTimerElement::timerFired):
   66312         (WebCore::WMLTimerElement::start):
   66313         (WebCore::WMLTimerElement::stop):
   66314         (WebCore::WMLTimerElement::storeIntervalToPageState):
   66315         * wml/WMLTimerElement.h: Added.
   66316 
   66317 2008-11-28  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   66318 
   66319         Reviewed by Holger Freyther.
   66320 
   66321         Fixes: https://bugs.webkit.org/show_bug.cgi?id=22549
   66322 
   66323         Add <do> element support. It provides a way to bind a task element to a <template>/<card> element.
   66324         Changes numerous of layout tests which contain <do> elements, as they render as buttons now.
   66325 
   66326         * WebCore.xcodeproj/project.pbxproj:
   66327         * rendering/RenderButton.cpp:
   66328         (WebCore::RenderButton::updateFromElement):
   66329         * wml/WMLCardElement.cpp:
   66330         (WebCore::WMLCardElement::registerDoElement):
   66331         * wml/WMLCardElement.h:
   66332         * wml/WMLDoElement.cpp: Added.
   66333         (WebCore::WMLDoElement::WMLDoElement):
   66334         (WebCore::WMLDoElement::defaultEventHandler):
   66335         (WebCore::WMLDoElement::parseMappedAttribute):
   66336         (WebCore::WMLDoElement::insertedIntoDocument):
   66337         (WebCore::WMLDoElement::createRenderer):
   66338         (WebCore::WMLDoElement::recalcStyle):
   66339         * wml/WMLDoElement.h: Added.
   66340         (WebCore::WMLDoElement::registerTask):
   66341         (WebCore::WMLDoElement::isActive):
   66342         (WebCore::WMLDoElement::label):
   66343         (WebCore::WMLDoElement::name):
   66344         (WebCore::WMLDoElement::setActive):
   66345         (WebCore::WMLDoElement::setNoop):
   66346         * wml/WMLNoopElement.cpp:
   66347         (WebCore::WMLNoopElement::insertedIntoDocument):
   66348         * wml/WMLTagNames.in:
   66349         * wml/WMLTaskElement.cpp:
   66350         (WebCore::WMLTaskElement::insertedIntoDocument):
   66351 
   66352 2008-11-28  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   66353 
   66354         Reviewed by Sam Weinig.
   66355 
   66356         Fixes: https://bugs.webkit.org/show_bug.cgi?id=22545
   66357 
   66358         Add onenterforward/onenterbackward/ontimer support for <card> elements.
   66359 
   66360         No testing possible at the moment because WMLGoElement is not yet implemented.
   66361         After that we can add tests covering the <card> event handling.
   66362 
   66363         * wml/WMLCardElement.cpp:
   66364         (WebCore::WMLCardElement::WMLCardElement):
   66365         (WebCore::WMLCardElement::handleIntrinsicEventIfNeeded):
   66366         (WebCore::WMLCardElement::parseMappedAttribute):
   66367         (WebCore::WMLCardElement::setActiveCardInDocument):
   66368         * wml/WMLCardElement.h:
   66369         (WebCore::WMLCardElement::isNewContext):
   66370         (WebCore::WMLCardElement::isOrdered):
   66371         * wml/WMLDocument.cpp:
   66372         (WebCore::WMLDocument::finishedParsing):
   66373         * wml/WMLIntrinsicEvent.cpp:
   66374         (WebCore::WMLIntrinsicEvent::WMLIntrinsicEvent):
   66375         * wml/WMLIntrinsicEvent.h:
   66376         (WebCore::WMLIntrinsicEvent::create):
   66377 
   66378 2008-11-27  Laszlo Gombos  <laszlo.1.gombos (a] nokia.com>
   66379 
   66380         Reviewed by Tor Arne Vestb.
   66381 
   66382         Regression seen on QtWebKit - causes a build failure on Win using MinGW
   66383 
   66384         https://bugs.webkit.org/show_bug.cgi?id=22536
   66385 
   66386         * WebCore.pro:
   66387 
   66388 2008-11-28  Simon Hausmann  <hausmann (a] webkit.org>
   66389 
   66390         Reviewed by Tor Arne Vestb.
   66391 
   66392         Fix compilation and linking on Windows CE.
   66393 
   66394         Use WIN_OS instead of WIN and therefore exclude determineModuleVersionFromDescription()
   66395         from the Windows'ish build.
   66396 
   66397         Link against the newly required mmtimer.
   66398 
   66399         * WebCore.pro:
   66400         * plugins/PluginPackage.cpp:
   66401 
   66402 2008-11-28  David Levin  <levin (a] chromium.org>
   66403 
   66404         Reviewed by Alexey Proskuryakov.
   66405 
   66406         http://bugs.webkit.org/show_bug.cgi?id=22524
   66407 
   66408         Made static initializations in XMLHttpRequest.cpp thread-safe in preparation for usage
   66409         of XMLHttpRequest by Workers (on threads).
   66410 
   66411         No observable change in behavior, so no test.
   66412 
   66413         * xml/XMLHttpRequest.cpp:
   66414         (WebCore::XMLHttpRequestStaticData::XMLHttpRequestStaticData):
   66415         (WebCore::PreflightResultCacheItem::allowsCrossSiteMethod):
   66416         (WebCore::PreflightResultCacheItem::allowsCrossSiteHeaders):
   66417         (WebCore::PreflightResultCacheItem::allowsRequest):
   66418         (WebCore::createXMLHttpRequestStaticData):
   66419         (WebCore::initializeXMLHttpRequestStaticData):
   66420         (WebCore::XMLHttpRequest::XMLHttpRequest):
   66421         (WebCore::XMLHttpRequest::isSafeRequestHeader):
   66422         (WebCore::XMLHttpRequest::isOnAccessControlResponseHeaderWhitelist):
   66423         * xml/XMLHttpRequest.h:
   66424 
   66425 2008-11-27  Cameron Zwarich  <zwarich (a] apple.com>
   66426 
   66427         Not reviewed.
   66428 
   66429         r38825, was committed without checking whether anything in WebCore
   66430         uses JSFunction::m_body. Use the appropriate getters and setters
   66431         instead.
   66432 
   66433         * inspector/JavaScriptDebugServer.cpp:
   66434         (WebCore::JavaScriptDebugServer::recompileAllJSFunctions):
   66435 
   66436 2008-11-27  Alexey Proskuryakov  <ap (a] webkit.org>
   66437 
   66438         Reviewed by Dan Bernstein.
   66439 
   66440         https://bugs.webkit.org/show_bug.cgi?id=22529
   66441         Crashes seen on buildbots due to trying to stop a worker thread twice
   66442 
   66443         * dom/WorkerMessagingProxy.cpp: (WebCore::WorkerMessagingProxy::workerObjectDestroyed):
   66444         Don't try to stop the thread if it's already stopping.
   66445 
   66446 2008-11-27  Kent Hansen  <khansen (a] trolltech.com>
   66447 
   66448         Reviewed by Simon Hausmann.
   66449 
   66450         Make JavaScript bindings for Qt plugin widgets work again
   66451         this was a regression; need to handle non-NPAPI plugins as in 4.4.
   66452 
   66453         * bindings/js/ScriptControllerQt.cpp:
   66454         (WebCore::ScriptController::createScriptInstanceForWidget):
   66455 
   66456 2008-11-26  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   66457 
   66458         Reviewed by George Staikos.
   66459 
   66460         Fixes: https://bugs.webkit.org/show_bug.cgi?id=22522
   66461 
   66462         Catch WML errors (invalid variable name/reference, multiple access elements, etc)
   66463         while parsing the document, and stop parsing immediately and wrap the document
   66464         fragment in a XHTML error document, just like it's done from XML parsing errors.
   66465 
   66466         Until now all card elements were hidden by default (no renderer created), and
   66467         WMLDocument::finishedParsing() took care of showing the right card (either the first,
   66468         or any named card in the document, specified by document URL reference). Change this
   66469         behaviour to support displaying partially parsed WML document fragments: Mark the first
   66470         WMLCardElement inserted into the document as visible. If the document parsing finishes
   66471         without problems, WMLDocument::finishedParsing() will be called, which takes care of
   66472         showing the desired card (common case: first card in the document, which is already
   66473         visible, so nothing actually has to be done). If an error occours, the document is
   66474         correctly rendered until the error happened - wrapped in a XHTML document.
   66475 
   66476         Fixes: fast/wml/err-event-binding-conflict.wml
   66477                fast/wml/err-invalid-variable-name.wml
   66478                fast/wml/err-multi-access.wml
   66479                fast/wml/err-unallowed-task-in-anchor.wml
   66480 
   66481         * WebCore.xcodeproj/project.pbxproj:
   66482         * wml/WMLAccessElement.cpp:
   66483         (WebCore::WMLAccessElement::parseMappedAttribute):
   66484         (WebCore::WMLAccessElement::insertedIntoDocument):
   66485         * wml/WMLAccessElement.h:
   66486         * wml/WMLCardElement.cpp:
   66487         (WebCore::WMLCardElement::insertedIntoDocument):
   66488         (WebCore::WMLCardElement::setActiveCardInDocument):
   66489         * wml/WMLCardElement.h:
   66490         * wml/WMLDocument.cpp:
   66491         (WebCore::WMLDocument::finishedParsing):
   66492         * wml/WMLErrorHandling.cpp: Added.
   66493         (WebCore::reportWMLError):
   66494         * wml/WMLErrorHandling.h: Added.
   66495         (WebCore::):
   66496         * wml/WMLIntrinsicEventHandler.cpp:
   66497         (WebCore::WMLIntrinsicEventHandler::registerIntrinsicEvent):
   66498         * wml/WMLIntrinsicEventHandler.h:
   66499         * wml/WMLNoopElement.cpp:
   66500         (WebCore::WMLNoopElement::insertedIntoDocument):
   66501         * wml/WMLOnEventElement.cpp:
   66502         (WebCore::WMLOnEventElement::parseMappedAttribute):
   66503         (WebCore::WMLOnEventElement::registerTask):
   66504         * wml/WMLPageState.cpp:
   66505         (WebCore::WMLPageState::setNeedCheckDeckAccess):
   66506         * wml/WMLPageState.h:
   66507         * wml/WMLSetvarElement.cpp:
   66508         (WebCore::WMLSetvarElement::parseMappedAttribute):
   66509 
   66510 2008-11-26  Glenn Wilson  <gwilson (a] chromium.org>
   66511 
   66512         Reviewed by Dan Bernstein.
   66513 
   66514         Fixed bug http://bugs.webkit.org/show_bug.cgi?id=21953
   66515 
   66516         This fixes the crash when the small-caps font variant is used
   66517         on a lower-case glyph that does not have a corresponding
   66518         upper-case glyph defined in the set of available fonts.
   66519 
   66520         This changes Font.cpp to check if the font being used exists before trying to apply the small-caps variant.
   66521 
   66522         Test: fast/css/small-caps-crash.html
   66523 
   66524         * platform/graphics/Font.cpp:
   66525         (WebCore::Font::glyphDataForCharacter):
   66526 
   66527 2008-11-26  Tony Chang  <tony (a] chromium.org>
   66528 
   66529         Reviewed by Oliver Hunt.
   66530 
   66531         Add a new platform specific method cleanupAfterSystemDrag
   66532         that platforms can ue to clean up drag state after a
   66533         system drag.  Use this method on PLAFORM(MAC).
   66534         https://bugs.webkit.org/show_bug.cgi?id=21956
   66535 
   66536         * ChangeLog:
   66537         * page/DragController.cpp:
   66538         (WebCore::DragController::doSystemDrag):
   66539         * page/DragController.h:
   66540         * page/gtk/DragControllerGtk.cpp:
   66541         (WebCore::DragController::cleanupAfterSystemDrag):
   66542         * page/mac/DragControllerMac.mm:
   66543         (WebCore::DragController::cleanupAfterSystemDrag):
   66544         * page/qt/DragControllerQt.cpp:
   66545         (WebCore::DragController::cleanupAfterSystemDrag):
   66546         * page/win/DragControllerWin.cpp:
   66547         (WebCore::DragController::cleanupAfterSystemDrag):
   66548         * page/wx/DragControllerWx.cpp:
   66549       (WebCore::DragController::cleanupAfterSystemDrag):
   66550 
   66551 2008-11-26  Nikolas Zimmermann  <zimmermann (a] kde.org>
   66552 
   66553         Reviewed by Oliver Hunt.
   66554 
   66555         Fix path to string logic, correctly taking closed (sub-)paths into account.
   66556         Code was just broken on cg, observed by Dirk Schulze.
   66557 
   66558         QPainterPath doesn't seem to expose any functionality to detect closed sub paths,
   66559         using the elementAt() function. There might be a workaround - Dirk will investigate.
   66560 
   66561         * platform/graphics/cg/PathCG.cpp:
   66562         (WebCore::CGPathToCFStringApplierFunction):
   66563         * platform/graphics/cairo/PathCairo.cpp:
   66564         (WebCore::Path::debugString):
   66565 
   66566 2008-11-26  Darin Fisher  <darin (a] chromium.org>
   66567 
   66568         Reviewed by Eric Seidel.
   66569 
   66570         https://bugs.webkit.org/show_bug.cgi?id=22519
   66571         Remove unnecessary include.
   66572 
   66573         * dom/XMLTokenizer.cpp:
   66574 
   66575 2008-11-26  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   66576 
   66577         Reviewed by Oliver Hunt.
   66578 
   66579         Add <noop> element support, completing the task element support.
   66580 
   66581         * WebCore.xcodeproj/project.pbxproj:
   66582         * wml/WMLNoopElement.cpp: Added.
   66583         (WebCore::WMLNoopElement::WMLNoopElement):
   66584         (WebCore::WMLNoopElement::insertedIntoDocument):
   66585         * wml/WMLNoopElement.h: Added.
   66586         * wml/WMLTagNames.in: Reorganize file a bit.
   66587 
   66588 2008-11-26  Julien Chaffraix  <jchaffraix (a] webkit.org>
   66589 
   66590         Reviewed by Eric Seidel.
   66591 
   66592         Bug 22441: Bridge the gap between the generated ElementFactory and HTMLElementFactory
   66593         https://bugs.webkit.org/show_bug.cgi?id=22441
   66594 
   66595         Make more HTML elements' constructors take a QualifiedName.
   66596 
   66597         * editing/DeleteButtonController.cpp:
   66598         (WebCore::DeleteButtonController::createDeletionUI):
   66599         * html/HTMLBlockquoteElement.cpp:
   66600         (WebCore::HTMLBlockquoteElement::HTMLBlockquoteElement):
   66601         * html/HTMLBlockquoteElement.h:
   66602         * html/HTMLButtonElement.cpp:
   66603         (WebCore::HTMLButtonElement::HTMLButtonElement):
   66604         * html/HTMLButtonElement.h:
   66605         * html/HTMLDListElement.cpp:
   66606         (WebCore::HTMLDListElement::HTMLDListElement):
   66607         * html/HTMLDListElement.h:
   66608         * html/HTMLDirectoryElement.cpp:
   66609         (WebCore::HTMLDirectoryElement::HTMLDirectoryElement):
   66610         * html/HTMLDirectoryElement.h:
   66611         * html/HTMLDivElement.cpp:
   66612         (WebCore::HTMLDivElement::HTMLDivElement):
   66613         * html/HTMLDivElement.h:
   66614         * html/HTMLElementFactory.cpp:
   66615         (WebCore::styleConstructor):
   66616         (WebCore::titleConstructor):
   66617         (WebCore::frameConstructor):
   66618         (WebCore::framesetConstructor):
   66619         (WebCore::iframeConstructor):
   66620         (WebCore::formConstructor):
   66621         (WebCore::buttonConstructor):
   66622         (WebCore::inputConstructor):
   66623         (WebCore::isindexConstructor):
   66624         (WebCore::fieldsetConstructor):
   66625         (WebCore::keygenConstructor):
   66626         (WebCore::labelConstructor):
   66627         (WebCore::legendConstructor):
   66628         (WebCore::optgroupConstructor):
   66629         (WebCore::optionConstructor):
   66630         (WebCore::selectConstructor):
   66631         (WebCore::textareaConstructor):
   66632         (WebCore::dlConstructor):
   66633         (WebCore::ulConstructor):
   66634         (WebCore::olConstructor):
   66635         (WebCore::dirConstructor):
   66636         (WebCore::menuConstructor):
   66637         (WebCore::liConstructor):
   66638         (WebCore::blockquoteConstructor):
   66639         (WebCore::divConstructor):
   66640         (WebCore::headingConstructor):
   66641         * html/HTMLFieldSetElement.cpp:
   66642         (WebCore::HTMLFieldSetElement::HTMLFieldSetElement):
   66643         * html/HTMLFieldSetElement.h:
   66644         * html/HTMLFormElement.cpp:
   66645         (WebCore::HTMLFormElement::HTMLFormElement):
   66646         * html/HTMLFormElement.h:
   66647         * html/HTMLFrameElement.cpp:
   66648         (WebCore::HTMLFrameElement::HTMLFrameElement):
   66649         * html/HTMLFrameElement.h:
   66650         * html/HTMLFrameSetElement.cpp:
   66651         (WebCore::HTMLFrameSetElement::HTMLFrameSetElement):
   66652         * html/HTMLFrameSetElement.h:
   66653         * html/HTMLIFrameElement.cpp:
   66654         (WebCore::HTMLIFrameElement::HTMLIFrameElement):
   66655         * html/HTMLIFrameElement.h:
   66656         * html/HTMLInputElement.cpp:
   66657         * html/HTMLInputElement.h:
   66658         * html/HTMLIsIndexElement.cpp:
   66659         (WebCore::HTMLIsIndexElement::HTMLIsIndexElement):
   66660         * html/HTMLIsIndexElement.h:
   66661         * html/HTMLKeygenElement.cpp:
   66662         (WebCore::HTMLKeygenElement::HTMLKeygenElement):
   66663         * html/HTMLKeygenElement.h:
   66664         * html/HTMLLIElement.cpp:
   66665         (WebCore::HTMLLIElement::HTMLLIElement):
   66666         * html/HTMLLIElement.h:
   66667         * html/HTMLLabelElement.cpp:
   66668         (WebCore::HTMLLabelElement::HTMLLabelElement):
   66669         * html/HTMLLabelElement.h:
   66670         * html/HTMLLegendElement.cpp:
   66671         (WebCore::HTMLLegendElement::HTMLLegendElement):
   66672         * html/HTMLLegendElement.h:
   66673         * html/HTMLMenuElement.cpp:
   66674         (WebCore::HTMLMenuElement::HTMLMenuElement):
   66675         * html/HTMLMenuElement.h:
   66676         * html/HTMLOListElement.cpp:
   66677         (WebCore::HTMLOListElement::HTMLOListElement):
   66678         * html/HTMLOListElement.h:
   66679         * html/HTMLOptGroupElement.cpp:
   66680         (WebCore::HTMLOptGroupElement::HTMLOptGroupElement):
   66681         * html/HTMLOptGroupElement.h:
   66682         * html/HTMLOptionElement.cpp:
   66683         (WebCore::HTMLOptionElement::HTMLOptionElement):
   66684         * html/HTMLOptionElement.h:
   66685         * html/HTMLParser.cpp:
   66686         (WebCore::HTMLParser::formCreateErrorCheck):
   66687         (WebCore::HTMLParser::handleIsindex):
   66688         * html/HTMLSelectElement.cpp:
   66689         * html/HTMLSelectElement.h:
   66690         * html/HTMLStyleElement.cpp:
   66691         (WebCore::HTMLStyleElement::HTMLStyleElement):
   66692         * html/HTMLStyleElement.h:
   66693         * html/HTMLTextAreaElement.cpp:
   66694         (WebCore::HTMLTextAreaElement::HTMLTextAreaElement):
   66695         * html/HTMLTextAreaElement.h:
   66696         * html/HTMLTitleElement.cpp:
   66697         (WebCore::HTMLTitleElement::HTMLTitleElement):
   66698         * html/HTMLTitleElement.h:
   66699         * html/HTMLUListElement.cpp:
   66700         (WebCore::HTMLUListElement::HTMLUListElement):
   66701         * html/HTMLUListElement.h:
   66702         * html/HTMLViewSourceDocument.cpp:
   66703         (WebCore::HTMLViewSourceDocument::createContainingTable):
   66704         * rendering/MediaControlElements.cpp:
   66705         (WebCore::MediaControlShadowRootElement::MediaControlShadowRootElement):
   66706         (WebCore::MediaControlInputElement::MediaControlInputElement):
   66707         * rendering/RenderFileUploadControl.cpp:
   66708         (WebCore::HTMLFileUploadInnerButtonElement::HTMLFileUploadInnerButtonElement):
   66709         * rendering/RenderMedia.cpp:
   66710         (WebCore::RenderMedia::createPanel):
   66711         (WebCore::RenderMedia::createTimeDisplay):
   66712         * rendering/RenderSlider.cpp:
   66713         (WebCore::HTMLSliderThumbElement::HTMLSliderThumbElement):
   66714         * rendering/TextControlInnerElements.cpp:
   66715         (WebCore::TextControlInnerElement::TextControlInnerElement):
   66716 
   66717 2008-11-26  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   66718 
   66719         Reviewed by Sam Weinig.
   66720 
   66721         Fix obvious problem in WMLPageState constructor, m_page was not set to the passed Page pointer.
   66722 
   66723         * wml/WMLPageState.cpp:
   66724         (WebCore::WMLPageState::WMLPageState):
   66725 
   66726 2008-11-26  Matt Perry  <mpcomplete (a] gmail.com>
   66727 
   66728         Fix Qt bustage.
   66729 
   66730         See https://bugs.webkit.org/show_bug.cgi?id=22051
   66731 
   66732         * platform/qt/RenderThemeQt.cpp:
   66733         (WebCore::RenderThemeQt::extraDefaultStyleSheet):
   66734 
   66735 2008-11-26  Matt Perry  <mpcomplete (a] gmail.com>
   66736 
   66737         Reviewed by Maciej Stachowiak.
   66738 
   66739         Fix https://bugs.webkit.org/show_bug.cgi?id=22051
   66740         Renderthemes should be able to supply additional CSS rules to the core
   66741         ones.
   66742 
   66743         * DerivedSources.make:
   66744         * css/CSSStyleSelector.cpp:
   66745         (WebCore::parseUASheet):
   66746         (WebCore::loadFullDefaultStyle):
   66747         (WebCore::loadSimpleDefaultStyle):
   66748         * css/themeWin.css: Added.
   66749         * css/themeWinQuirks.css: Added.
   66750         * platform/qt/RenderThemeQt.cpp:
   66751         (WebCore::RenderThemeQt::extraDefaultStyleSheet):
   66752         * platform/qt/RenderThemeQt.h:
   66753         * rendering/RenderTheme.cpp:
   66754         * rendering/RenderTheme.h:
   66755         (WebCore::RenderTheme::extraDefaultStyleSheet):
   66756         (WebCore::RenderTheme::extraQuirksStyleSheet):
   66757         * rendering/RenderThemeWin.cpp:
   66758         (WebCore::RenderThemeWin::extraDefaultStyleSheet):
   66759         (WebCore::RenderThemeWin::extraQuirksStyleSheet):
   66760         * rendering/RenderThemeWin.h:
   66761 
   66762 2008-11-26  David Kilzer  <ddkilzer (a] apple.com>
   66763 
   66764         Make CSSStyleSheet::addSubresourceURLStrings() iterative
   66765 
   66766         Part of the fix for Bug 11850: Webarchive fails to save images referenced in CSS
   66767         <https://bugs.webkit.org/show_bug.cgi?id=11850>
   66768 
   66769         Reviewed by Brady Eidson.
   66770 
   66771         * css/CSSStyleSheet.cpp:
   66772         (WebCore::CSSStyleSheet::addSubresourceURLStrings): Switch algorithm
   66773         from recursive to iterative for gathering the list of all CSS
   66774         stylesheets referenced in @import statements.
   66775 
   66776 2008-11-26  Dirk Schulze  <krit (a] webkit.org>
   66777 
   66778         Reviewed by Simon Hausmann.
   66779 
   66780         Transformations to the context shouldn't transform the currentPath.
   66781         Fixed this on Qt.
   66782 
   66783         [QT] GraphicsContext's currenPath can be transformed
   66784         https://bugs.webkit.org/show_bug.cgi?id=22163
   66785 
   66786         * platform/graphics/GraphicsContextPrivate.h:
   66787         * platform/graphics/qt/GraphicsContextQt.cpp:
   66788         (WebCore::GraphicsContext::restorePlatformState):
   66789         (WebCore::GraphicsContext::fillPath):
   66790         (WebCore::GraphicsContext::strokePath):
   66791         (WebCore::GraphicsContext::fillRect):
   66792         (WebCore::GraphicsContext::translate):
   66793         (WebCore::GraphicsContext::rotate):
   66794         (WebCore::GraphicsContext::scale):
   66795         (WebCore::GraphicsContext::concatCTM):
   66796 
   66797 2008-11-26  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   66798 
   66799         Gtk build script minor fixes. Not reviewed.
   66800 
   66801         * GNUmakefile.am:
   66802           - Add ScriptInstance.h (introduced in r38774) to
   66803         the build.
   66804           - Move WML and GEOLOCATION conditionals before the SVG
   66805         conditional to be consistent with the style of the script.
   66806           - Move GeolocationGtk sources to webcoregtk_sources.
   66807 
   66808 2008-11-26  Dmitry Titov  <dimich (a] chromium.org>
   66809 
   66810         Reviewed by Darin Adler and Eric Seidel.
   66811 
   66812         https://bugs.webkit.org/show_bug.cgi?id=22469
   66813 
   66814         Move the class DOMWindowTimer from JSDOMWindowBase into its own file in
   66815         preparation to making it work for Workers. For now, just move the code and couple
   66816         of global variables.
   66817 
   66818         * GNUmakefile.am:
   66819         * WebCore.pro:
   66820         * WebCore.vcproj/WebCore.vcproj:
   66821         * WebCore.xcodeproj/project.pbxproj:
   66822         * WebCoreSources.bkl:
   66823         * bindings/js/JSDOMWindowBase.cpp:
   66824         (WebCore::JSDOMWindowBase::installTimeout):
   66825         (WebCore::JSDOMWindowBase::pauseTimeouts):
   66826         (WebCore::JSDOMWindowBase::resumeTimeouts):
   66827         (WebCore::JSDOMWindowBase::timerFired):
   66828         * bindings/js/JSDOMWindowBase.h:
   66829         * bindings/js/DOMTimer.cpp: Added.
   66830         (WebCore::DOMTimer::DOMTimer):
   66831         (WebCore::DOMTimer::~DOMTimer):
   66832         (WebCore::DOMTimer::fired):
   66833         * bindings/js/DOMTimer.h: Added.
   66834         (WebCore::DOMTimer::timeoutId):
   66835         (WebCore::DOMTimer::nestingLevel):
   66836         (WebCore::DOMTimer::setNestingLevel):
   66837         (WebCore::DOMTimer::action):
   66838         (WebCore::DOMTimer::takeAction):
   66839 
   66840 2008-11-25  Darin Fisher  <darin (a] chromium.org>
   66841 
   66842         Fix bustage.
   66843 
   66844         https://bugs.webkit.org/show_bug.cgi?id=22493
   66845         Need to expose bridge/*.h to the WebKit build.
   66846 
   66847         * WebCore.vcproj/WebCore.vcproj:
   66848 
   66849 2008-11-25  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   66850 
   66851         Not reviewed. Fix build, by removing some wrong last-minute changes.
   66852 
   66853         * wml/WMLIntrinsicEvent.cpp:
   66854         (WebCore::createTaskElement):
   66855         * wml/WMLOnEventElement.cpp:
   66856         (WebCore::WMLOnEventElement::registerTask):
   66857 
   66858 2008-11-25  Darin Fisher  <darin (a] chromium.org>
   66859 
   66860         Reviewed by Geoffrey Garen.
   66861 
   66862         https://bugs.webkit.org/show_bug.cgi?id=22493
   66863         Abstract away JSC:: usage in WebCore/html
   66864 
   66865         * WebCore.xcodeproj/project.pbxproj:
   66866         * bindings/js/JSPluginElementFunctions.cpp:
   66867         (WebCore::pluginInstance):
   66868         * bindings/js/ScriptController.h:
   66869         * bindings/js/ScriptControllerMac.mm:
   66870         (WebCore::ScriptController::createScriptInstanceForWidget):
   66871         * bindings/js/ScriptInstance.h: Added.
   66872         * html/HTMLPlugInElement.cpp:
   66873         (WebCore::HTMLPlugInElement::~HTMLPlugInElement):
   66874         (WebCore::HTMLPlugInElement::getInstance):
   66875         * html/HTMLPlugInElement.h:
   66876 
   66877 2008-11-24  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   66878 
   66879         Reviewed by Sam Weinig.
   66880 
   66881         Fixes: https://bugs.webkit.org/show_bug.cgi?id=22477
   66882 
   66883         A WMLTaskElement checks wheter it's parent is an <anchor>/<do>/<onevent> element, and calls registerTask(this) on the parent.
   66884         Add a isWMLTaskElement() function to WMLElement, making it possible to cast to WMLTaskElement directly.
   66885 
   66886         Add WMLEventHandlingElement class, inheriting from WMLElement, to serve as common base WMLTemplate/Option/CardElement,
   66887         centralizing the eventHandler() / createEventHandlerIfNeeded() implementation. Add a isWMLEventHandlingElement()
   66888         function to WMLElement, so WMLOnEventElement can create event handlers, without knowing wheter it's a
   66889         <template>/<option> or <card> element.
   66890 
   66891         Add complete <onevent> support.
   66892 
   66893         * WebCore.xcodeproj/project.pbxproj:
   66894         * wml/WMLCardElement.cpp:
   66895         (WebCore::WMLCardElement::WMLCardElement):
   66896         (WebCore::WMLCardElement::setActiveCardInDocument):
   66897         * wml/WMLCardElement.h:
   66898         (WebCore::WMLCardElement::isVisible):
   66899         (WebCore::WMLCardElement::setVisible):
   66900         * wml/WMLElement.h:
   66901         (WebCore::WMLElement::isWMLTaskElement):
   66902         * wml/WMLEventHandlingElement.cpp: Added.
   66903         (WebCore::WMLEventHandlingElement::WMLEventHandlingElement):
   66904         (WebCore::WMLEventHandlingElement::createEventHandlerIfNeeded):
   66905         * wml/WMLEventHandlingElement.h: Added.
   66906         (WebCore::WMLEventHandlingElement::isWMLEventHandlingElement):
   66907         (WebCore::WMLEventHandlingElement::eventHandler):
   66908         * wml/WMLOnEventElement.cpp: Added.
   66909         (WebCore::WMLOnEventElement::WMLOnEventElement):
   66910         (WebCore::WMLOnEventElement::parseMappedAttribute):
   66911         (WebCore::WMLOnEventElement::registerTask):
   66912         * wml/WMLOnEventElement.h: Added.
   66913         * wml/WMLSetvarElement.cpp:
   66914         (WebCore::WMLSetvarElement::parseMappedAttribute):
   66915         (WebCore::WMLSetvarElement::insertedIntoDocument):
   66916         * wml/WMLTagNames.in:
   66917         * wml/WMLTaskElement.cpp:
   66918         (WebCore::WMLTaskElement::insertedIntoDocument):
   66919         * wml/WMLTaskElement.h:
   66920         (WebCore::WMLTaskElement::isWMLTaskElement):
   66921 
   66922 2008-11-25  Pierre-Olivier Latour  <pol (a] apple.com>
   66923 
   66924         Reviewed by Mark Rowe.
   66925 
   66926         createFontCustomPlatformData() crashes if CGFontCreateWithPlatformFont() returns NULL
   66927 
   66928         https://bugs.webkit.org/show_bug.cgi?id=22503
   66929 
   66930         * platform/graphics/mac/FontCustomPlatformData.cpp:
   66931         (WebCore::createFontCustomPlatformData):
   66932 
   66933 2008-11-25  Julien Chaffraix  <jchaffraix (a] webkit.org>
   66934 
   66935         Reviewed by Eric Seidel.
   66936 
   66937         Bug 22441: Bridge the gap between the generated ElementFactory and HTMLElementFactory
   66938         https://bugs.webkit.org/show_bug.cgi?id=22441
   66939 
   66940         Element's other than HTML ones take a QualifiedName in their constructors.
   66941         To make HTMLElementFactory closer to the other ElementFactory, we need
   66942         to make them take the same arguments.
   66943         This patch only makes the 5 first one in HTMLElementFactory abide by that. The others
   66944         will go into the next patch.
   66945 
   66946         * dom/Document.cpp:
   66947         (WebCore::Document::implicitClose):
   66948         * html/HTMLBaseElement.cpp:
   66949         (WebCore::HTMLBaseElement::HTMLBaseElement):
   66950         * html/HTMLBaseElement.h:
   66951         * html/HTMLBodyElement.cpp:
   66952         (WebCore::HTMLBodyElement::HTMLBodyElement):
   66953         * html/HTMLBodyElement.h:
   66954         * html/HTMLElementFactory.cpp:
   66955         (WebCore::htmlConstructor):
   66956         (WebCore::headConstructor):
   66957         (WebCore::bodyConstructor):
   66958         (WebCore::baseConstructor):
   66959         (WebCore::linkConstructor):
   66960         (WebCore::metaConstructor):
   66961         * html/HTMLHeadElement.cpp:
   66962         (WebCore::HTMLHeadElement::HTMLHeadElement):
   66963         * html/HTMLHeadElement.h:
   66964         * html/HTMLHtmlElement.cpp:
   66965         (WebCore::HTMLHtmlElement::HTMLHtmlElement):
   66966         * html/HTMLHtmlElement.h:
   66967         * html/HTMLLinkElement.cpp:
   66968         (WebCore::HTMLLinkElement::HTMLLinkElement):
   66969         * html/HTMLLinkElement.h:
   66970         * html/HTMLMetaElement.cpp:
   66971         (WebCore::HTMLMetaElement::HTMLMetaElement):
   66972         * html/HTMLMetaElement.h:
   66973         * html/HTMLParser.cpp:
   66974         (WebCore::HTMLParser::handleError):
   66975         (WebCore::HTMLParser::headCreateErrorCheck):
   66976         (WebCore::HTMLParser::createHead):
   66977         (WebCore::HTMLParser::finished):
   66978         * html/HTMLViewSourceDocument.cpp:
   66979         (WebCore::HTMLViewSourceDocument::createContainingTable):
   66980 
   66981 2008-11-25  Chris Marrin  <cmarrin (a] apple.com>
   66982 
   66983         Reviewed by Dan Bernstein.
   66984 
   66985         Fix for https://bugs.webkit.org/show_bug.cgi?id=22487
   66986         I was not checking for the case of 0 length keyframe lists and dereffing a null pointer.
   66987 
   66988         Tests: animations/empty-keyframes.html
   66989                animations/fill-unset-properties.html
   66990 
   66991         * css/CSSStyleSelector.cpp:
   66992         (WebCore::CSSStyleSelector::keyframeStylesForAnimation):
   66993 
   66994 2008-11-25  Chris Marrin  <cmarrin (a] apple.com>
   66995 
   66996         Reviewed by Darin Adler
   66997 
   66998         https://bugs.webkit.org/show_bug.cgi?id=22046
   66999 
   67000         Fix a crash when an animation or transition end event handler
   67001         removes the element upon which the transition/animation is running,
   67002         by keeping a reference to the AnimationBase object on the stack.
   67003 
   67004         Tests: animations/transform-animation-event-destroy-element.html
   67005                transitions/transform-transition-event-destroy-element.html
   67006 
   67007         * page/animation/AnimationBase.cpp:
   67008         (WebCore::AnimationBase::setChanged):
   67009         (WebCore::AnimationBase::updateStateMachine):
   67010         * page/animation/AnimationBase.h:
   67011         (WebCore::AnimationBase::clearRenderer):
   67012         * page/animation/AnimationController.cpp:
   67013         (WebCore::AnimationControllerPrivate::clear):
   67014         * page/animation/CompositeAnimation.cpp:
   67015         (WebCore::CompositeAnimationPrivate::~CompositeAnimationPrivate):
   67016         * page/animation/CompositeAnimation.h:
   67017 
   67018 2008-11-25  Kevin Ollivier  <kevino (a] theolliviers.com>
   67019 
   67020         Better wx build fix - support PurgeableBuffer on Mac.
   67021 
   67022         * platform/PurgeableBuffer.h:
   67023         * webcore-wx.bkl:
   67024 
   67025 2008-11-25  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   67026 
   67027         Reviewed by David Kilzer.
   67028 
   67029         https://bugs.webkit.org/show_bug.cgi?id=22022
   67030 
   67031         Add GeoleocationServiceGtk stubs and integrate it into the buildsystem
   67032 
   67033         Add stubs for a Gtk Implementation.
   67034 
   67035         * GNUmakefile.am:
   67036         * platform/gtk/GeolocationServiceGtk.cpp: Added.
   67037         (WebCore::GeolocationService::create):
   67038         (WebCore::GeolocationServiceGtk::GeolocationServiceGtk):
   67039         (WebCore::GeolocationServiceGtk::startUpdating):
   67040         (WebCore::GeolocationServiceGtk::stopUpdating):
   67041         (WebCore::GeolocationServiceGtk::suspend):
   67042         (WebCore::GeolocationServiceGtk::resume):
   67043         (WebCore::GeolocationServiceGtk::lastPosition):
   67044         (WebCore::GeolocationServiceGtk::lastError):
   67045         * platform/gtk/GeolocationServiceGtk.h: Added.
   67046 
   67047 2008-11-25  Kevin Ollivier  <kevino (a] theolliviers.com>
   67048 
   67049         wx build fix - we don't support PurgeableBuffer on Leopard for now.
   67050 
   67051         * platform/PurgeableBuffer.h:
   67052 
   67053 2008-11-25  Antti Koivisto  <antti (a] apple.com>
   67054 
   67055         Reviewed by Mark Rowe.
   67056 
   67057         Fix https://bugs.webkit.org/show_bug.cgi?id=22483
   67058         Assertion failure in CachedResource::makePurgeable during layout tests
   67059 
   67060         Deleting SVG image can re-enter destroyDecodedData.
   67061 
   67062         * loader/CachedImage.cpp:
   67063         (WebCore::CachedImage::destroyDecodedData):
   67064 
   67065 2008-11-25  David Levin  <levin (a] chromium.org>
   67066 
   67067         Reviewed by Alexey Proskuryakov.
   67068 
   67069         https://bugs.webkit.org/show_bug.cgi?id=22443
   67070         Made the PreflightResultCache thread-safe in preparation for usage of XMLHttpRequest by
   67071         Workers on threads.
   67072 
   67073         No observable change in behavior, so no test.
   67074 
   67075         * platform/text/PlatformString.h:
   67076         * platform/text/String.cpp:
   67077         (WebCore::String::substringCopy):
   67078         * platform/text/StringImpl.cpp:
   67079         (WebCore::StringImpl::substringCopy):
   67080         * platform/text/StringImpl.h:
   67081         Added the ability to copy a substring.
   67082 
   67083         * xml/XMLHttpRequest.cpp:
   67084         (WebCore::PreflightResultCacheItem::PreflightResultCacheItem):
   67085         (WebCore::PreflightResultCache::PreflightResultCache):
   67086         (WebCore::PreflightResultCacheItem::addToAccessControlAllowList):
   67087         (WebCore::PreflightResultCacheItem::parseAccessControlAllowList):
   67088         (WebCore::PreflightResultCacheItem::parseAccessControlMaxAge):
   67089         (WebCore::PreflightResultCacheItem::parse):
   67090         (WebCore::PreflightResultCacheItem::allowsRequest):
   67091         (WebCore::PreflightResultCache::shared):
   67092         (WebCore::PreflightResultCache::appendEntry):
   67093         (WebCore::PreflightResultCache::canSkipPreflight):
   67094         (WebCore::XMLHttpRequest::makeCrossSiteAccessRequestWithPreflight):
   67095         (WebCore::XMLHttpRequest::didReceiveResponsePreflight):
   67096         Made the PreflightResultCache threadsafe.
   67097 
   67098         (WebCore::PreflightResultCacheItem::allowsCrossSiteMethod):
   67099         (WebCore::PreflightResultCacheItem::allowsCrossSiteHeaders):
   67100         Consolidation of duplicate logic.
   67101 
   67102 2008-11-24  Jungshik Shin  <jshin (a] chromium.org>
   67103 
   67104         Reviewed by Darin Adler.
   67105 
   67106         For Unicode encodings other than UTF-8, use UTF-8 for
   67107         form submission and URL query part encoding.
   67108 
   67109         See https://bugs.webkit.org/show_bug.cgi?id=21635
   67110 
   67111         Tests: http/tests/misc/submit-get-in-utf16be.html
   67112                http/tests/misc/submit-get-in-utf16le.html
   67113                http/tests/misc/submit-get-in-utf32be.html
   67114                http/tests/misc/submit-get-in-utf32le.html
   67115                http/tests/misc/submit-get-in-utf7.html
   67116                http/tests/misc/submit-post-in-utf16be.html
   67117                http/tests/misc/submit-post-in-utf16le.html
   67118                http/tests/misc/submit-post-in-utf32be.html
   67119                http/tests/misc/submit-post-in-utf32le.html
   67120                http/tests/misc/submit-post-in-utf7.html
   67121                http/tests/misc/url-in-utf16be.html
   67122                http/tests/misc/url-in-utf16le.html
   67123                http/tests/misc/url-in-utf32be.html
   67124                http/tests/misc/url-in-utf32le.html
   67125                http/tests/misc/url-in-utf7.html
   67126 
   67127         * html/HTMLFormElement.cpp:
   67128         (WebCore::HTMLFormElement::formData):
   67129         * loader/TextResourceDecoder.cpp:
   67130         (WebCore::TextResourceDecoder::setEncoding):
   67131         * platform/KURL.cpp:
   67132         (WebCore::KURL::KURL):
   67133         * platform/text/TextEncoding.cpp:
   67134         (WebCore::UTF7Encoding):
   67135         (WebCore::TextEncoding::isNonByteBasedEncoding):
   67136         (WebCore::TextEncoding::closestByteBasedEquivalent):
   67137         (WebCore::TextEncoding::encodingForFormSubmission):
   67138         * platform/text/TextEncoding.h:
   67139 
   67140 2008-11-24  Julien Chaffraix  <jchaffraix (a] webkit.org>
   67141 
   67142         Reviewed by Darin Adler.
   67143 
   67144         Bug 22441: Bridge the gap between the generated ElementFactory and HTMLElementFactory
   67145         https://bugs.webkit.org/show_bug.cgi?id=22441
   67146 
   67147         - Make the generated ElementFactory constructors return PassRefPtr instead of raw pointers.
   67148 
   67149         - Tweaked the generated files to better match our coding style.
   67150 
   67151         * dom/make_names.pl:
   67152 
   67153 2008-11-24  Antti Koivisto  <antti (a] apple.com>
   67154 
   67155         Reviewed by Darin Adler.
   67156 
   67157         Fix for https://bugs.webkit.org/show_bug.cgi?id=22073
   67158         REGRESSION(r33544): Palace in the Sky crashes WebKit
   67159 
   67160         HTMLTokenizer::m_hasScriptsWaitingForStylesheets would still be set while
   67161         there were no scripts left to execute.
   67162 
   67163         If m_hasScriptsWaitingForStylesheets becomes true during script execution
   67164         bail out from executing more scripts synchronously.
   67165 
   67166         Test: fast/tokenizer/nested-cached-scripts-and-stylesheet.html
   67167 
   67168         * html/HTMLTokenizer.cpp:
   67169         (WebCore::HTMLTokenizer::reset):
   67170         (WebCore::HTMLTokenizer::notifyFinished):
   67171 
   67172 2008-11-24  Darin Fisher  <darin (a] chromium.org>
   67173 
   67174         Reviewed by Geoffrey Garen.
   67175 
   67176         https://bugs.webkit.org/show_bug.cgi?id=22465
   67177         Define KURL::copy() and use it in WorkerThread.cpp
   67178 
   67179         * dom/WorkerThread.cpp:
   67180         (WebCore::WorkerThread::WorkerThread):
   67181         * platform/KURL.cpp:
   67182         (WebCore::KURL::copy):
   67183         * platform/KURL.h:
   67184 
   67185 2008-11-24  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   67186 
   67187         Reviewed by Sam Weinig.
   67188 
   67189         Name enum values in a style guide compatible way.
   67190         Allow WMLIntrinsicEvent inclusion, without needing other includes.
   67191 
   67192         * wml/WMLIntrinsicEvent.cpp:
   67193         (WebCore::createTaskElement):
   67194         * wml/WMLIntrinsicEvent.h:
   67195         * wml/WMLIntrinsicEventHandler.cpp:
   67196         * wml/WMLIntrinsicEventHandler.h:
   67197         (WebCore::):
   67198 
   67199 2008-11-24  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   67200 
   67201         Reviewed by Sam Weinig.
   67202 
   67203         Add wmlPageStateForDocument() helper function and use it in some places.
   67204 
   67205         * wml/WMLAccessElement.cpp:
   67206         (WebCore::WMLAccessElement::parseMappedAttribute):
   67207         * wml/WMLDocument.cpp:
   67208         (WebCore::WMLDocument::WMLDocument):
   67209         (WebCore::WMLDocument::finishedParsing):
   67210         (WebCore::wmlPageStateForDocument):
   67211         * wml/WMLDocument.h:
   67212         * wml/WMLGoElement.cpp:
   67213         (WebCore::WMLGoElement::executeTask):
   67214         * wml/WMLPrevElement.cpp:
   67215         (WebCore::WMLPrevElement::executeTask):
   67216         * wml/WMLRefreshElement.cpp:
   67217         (WebCore::WMLRefreshElement::executeTask):
   67218         * wml/WMLTaskElement.cpp:
   67219         (WebCore::WMLTaskElement::storeVariableState):
   67220         * wml/WMLTaskElement.h:
   67221 
   67222 2008-11-24  Antti Koivisto  <antti (a] apple.com>
   67223 
   67224         Reviewed by Geoff Garen and Sam Weinig.
   67225 
   67226         https://bugs.webkit.org/show_bug.cgi?id=22214
   67227         Keep dead resources in memory cache in purgeable memory.
   67228         <rdar://problem/6333088>
   67229 
   67230         OS X 10.5 has purgeable memory kernel facility that allows marking reserved memory
   67231         areas as less important. Under memory pressure system can steal pages that have
   67232         been marked purgeable for (hopefully) better uses. This is ideal for caches.
   67233 
   67234         Only resources larger than 16KB will be moved to the purgeable memory.
   67235 
   67236         * WebCore.base.exp:
   67237         * WebCore.vcproj/WebCore.vcproj:
   67238         * WebCore.xcodeproj/project.pbxproj:
   67239         * loader/Cache.cpp:
   67240         (WebCore::Cache::requestResource):
   67241         (WebCore::Cache::requestUserCSSStyleSheet):
   67242         (WebCore::Cache::resourceForURL):
   67243         (WebCore::Cache::pruneDeadResources):
   67244         (WebCore::Cache::TypeStatistic::addResource):
   67245         (WebCore::Cache::getStatistics):
   67246         (WebCore::Cache::dumpStats):
   67247         * loader/Cache.h:
   67248         (WebCore::Cache::TypeStatistic::TypeStatistic):
   67249         * loader/CachedCSSStyleSheet.cpp:
   67250         (WebCore::CachedCSSStyleSheet::allClientsRemoved):
   67251         (WebCore::CachedCSSStyleSheet::sheetText):
   67252         * loader/CachedCSSStyleSheet.h:
   67253         * loader/CachedImage.cpp:
   67254         (WebCore::CachedImage::addClient):
   67255         (WebCore::CachedImage::image):
   67256         (WebCore::CachedImage::imageSize):
   67257         (WebCore::CachedImage::imageRect):
   67258         (WebCore::CachedImage::destroyDecodedData):
   67259         * loader/CachedResource.cpp:
   67260         (WebCore::CachedResource::addClient):
   67261         (WebCore::CachedResource::makePurgeable):
   67262         (WebCore::CachedResource::isPurgeable):
   67263         (WebCore::CachedResource::wasPurged):
   67264         * loader/CachedResource.h:
   67265         (WebCore::CachedResource::data):
   67266         * loader/CachedScript.cpp:
   67267         (WebCore::CachedScript::allClientsRemoved):
   67268         (WebCore::CachedScript::script):
   67269         (WebCore::CachedScript::destroyDecodedData):
   67270         * platform/PurgeableBuffer.h: Added.
   67271         (WebCore::PurgeableBuffer::create):
   67272         (WebCore::PurgeableBuffer::size):
   67273         (WebCore::PurgeableBuffer::):
   67274         (WebCore::PurgeableBuffer::purgePriority):
   67275         (WebCore::PurgeableBuffer::isPurgeable):
   67276         (WebCore::PurgeableBuffer::~PurgeableBuffer):
   67277         (WebCore::PurgeableBuffer::data):
   67278         (WebCore::PurgeableBuffer::setPurgePriority):
   67279         (WebCore::PurgeableBuffer::wasPurged):
   67280         (WebCore::PurgeableBuffer::makePurgeable):
   67281         * platform/SharedBuffer.cpp:
   67282         (WebCore::SharedBuffer::~SharedBuffer):
   67283         (WebCore::SharedBuffer::adoptPurgeableBuffer):
   67284         (WebCore::SharedBuffer::size):
   67285         (WebCore::SharedBuffer::data):
   67286         (WebCore::SharedBuffer::append):
   67287         (WebCore::SharedBuffer::clear):
   67288         (WebCore::SharedBuffer::releasePurgeableBuffer):
   67289         * platform/SharedBuffer.h:
   67290         (WebCore::SharedBuffer::hasPurgeableBuffer):
   67291         * platform/cf/SharedBufferCF.cpp:
   67292         * platform/mac/PurgeableBufferMac.cpp: Added.
   67293         (WebCore::PurgeableBuffer::PurgeableBuffer):
   67294         (WebCore::PurgeableBuffer::~PurgeableBuffer):
   67295         (WebCore::PurgeableBuffer::create):
   67296         (WebCore::PurgeableBuffer::makePurgeable):
   67297         (WebCore::PurgeableBuffer::wasPurged):
   67298         (WebCore::PurgeableBuffer::setPurgePriority):
   67299         (WebCore::PurgeableBuffer::data):
   67300 
   67301 2008-11-24  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   67302 
   67303         Reviewed by George Staikos & Eric Seidel.
   67304 
   67305         Fixes: https://bugs.webkit.org/show_bug.cgi?id=22430
   67306 
   67307         Regenerate WML layout test results after implementing WML specific <card> handling:
   67308         Only the first <card> element should be visible after loading the document, others
   67309         can be shown by using the <go> task element.
   67310 
   67311         * dom/Document.h: Make 'finishedParsing()' a virtual function.
   67312         * wml/WMLCardElement.cpp:
   67313         (WebCore::WMLCardElement::WMLCardElement):
   67314         (WebCore::WMLCardElement::~WMLCardElement):
   67315         (WebCore::WMLCardElement::createRenderer):
   67316         (WebCore::WMLCardElement::setActiveCardInDocument):
   67317         (WebCore::WMLCardElement::setVisibility):
   67318         * wml/WMLCardElement.h:
   67319         * wml/WMLDocument.cpp:
   67320         (WebCore::WMLDocument::finishedParsing): Execute WML specific logic after tokenzing.
   67321         * wml/WMLDocument.h:
   67322 
   67323 2008-11-24  Glenn Wilson  <gwilson (a] chromium.org>
   67324 
   67325         Reviewed by Alexey Proskuryakov.
   67326 
   67327         http://bugs.webkit.org/show_bug.cgi?id=15643
   67328 
   67329         Added support for clients that wish to disable smart insert/delete
   67330         and enable the "trailing whitespace selection" work-around.
   67331 
   67332         Tests: editing/selection/doubleclick-whitespace.html
   67333 
   67334         * editing/Editor.cpp:
   67335         (WebCore::Editor::selectTrailingWhitespaceEnabled):
   67336         * editing/Editor.h:
   67337         * editing/Selection.cpp:
   67338         (WebCore::Selection::includeTrailingWhitespace):
   67339         * editing/Selection.h:
   67340         * loader/EmptyClients.h:
   67341         (WebCore::EmptyEditorClient::selectTrailingWhitespaceEnabled):
   67342         * page/EditorClient.h:
   67343         * page/EventHandler.cpp:
   67344         (WebCore::EventHandler::selectClosestWordFromMouseEvent):
   67345 
   67346 2008-11-24  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   67347 
   67348         Not reviewed. Forgot to include WMLPageState.h in last commit.
   67349 
   67350         * wml/WMLPageState.h:
   67351         (WebCore::WMLPageState::restrictDeckAccessToDomain):
   67352         (WebCore::WMLPageState::restrictDeckAccessToPath):
   67353 
   67354 2008-11-24  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   67355 
   67356         Reviewed by Oliver Hunt & Eric Seidel.
   67357 
   67358         Fixes: https://bugs.webkit.org/show_bug.cgi?id=22431
   67359 
   67360         Implement WMLAccessElement. It just propogates two attributes values to WMLPageState.
   67361 
   67362         * WebCore.xcodeproj/project.pbxproj:
   67363         * wml/WMLAccessElement.cpp: Added.
   67364         (WebCore::WMLAccessElement::WMLAccessElement):
   67365         (WebCore::WMLAccessElement::parseMappedAttribute):
   67366         * wml/WMLAccessElement.h: Added.
   67367         * wml/WMLTagNames.in:
   67368         * wml/WMLPageState.h: Rename functions.
   67369         (WebCore::WMLPageState::restrictDeckAccessToDomain):
   67370         (WebCore::WMLPageState::restrictDeckAccessToPath):
   67371         * wml/WMLVariables.cpp: Add new helper function.
   67372         (WebCore::valueContainsVariableReference):
   67373         * wml/WMLVariables.h:
   67374         (WebCore::):
   67375 
   67376 2008-11-24  Darin Adler  <darin (a] apple.com>
   67377 
   67378         Reviewed by Dan Bernstein.
   67379 
   67380         - https://bugs.webkit.org/show_bug.cgi?id=22470
   67381           remove unneeded URL argument from FrameLoaderClient::updateGlobalHistory
   67382 
   67383         * loader/EmptyClients.h:
   67384         (WebCore::EmptyFrameLoaderClient::updateGlobalHistory): Remove argument.
   67385         * loader/FrameLoader.cpp:
   67386         (WebCore::FrameLoader::updateHistoryForStandardLoad): Don't pass the URL.
   67387         (WebCore::FrameLoader::updateHistoryForRedirectWithLockedHistory): Ditto.
   67388         * loader/FrameLoaderClient.h: Remove argument.
   67389 
   67390 2008-11-24  Finnur Thorarinsson  <finnur.webkit (a] gmail.com>
   67391 
   67392         Reviewed by Darin Adler.
   67393 
   67394         Fixes: https://bugs.webkit.org/show_bug.cgi?id=22432
   67395 
   67396         Add plumbing for tickmark support for the scrollbars. The painting code
   67397         for the scrollbar just needed to call paintTickmarks at the right time
   67398         and a default no-op implementation is provided, which the ports will
   67399         need to override.
   67400 
   67401         * platform/ScrollbarThemeComposite.cpp:
   67402         (WebCore::ScrollbarThemeComposite::paint):
   67403         * platform/ScrollbarThemeComposite.h:
   67404         (WebCore::ScrollbarThemeComposite::paintTickmarks):
   67405 
   67406 2008-11-24  Darin Fisher  <darin (a] chromium.org>
   67407 
   67408         Reviewed by Sam Weinig.
   67409 
   67410         https://bugs.webkit.org/show_bug.cgi?id=22448
   67411         Create an abstraction for JSC::SourceCode
   67412 
   67413         * WebCore.vcproj/WebCore.vcproj:
   67414         * bindings/js/CachedScriptSourceProvider.h:
   67415         * bindings/js/ScriptController.cpp:
   67416         (WebCore::ScriptController::evaluate):
   67417         * bindings/js/ScriptController.h:
   67418         * bindings/js/ScriptSourceCode.h: Added.
   67419         (WebCore::ScriptSourceCode::ScriptSourceCode):
   67420         (WebCore::ScriptSourceCode::length):
   67421         (WebCore::ScriptSourceCode::jsSourceCode):
   67422         * bindings/js/WorkerScriptController.cpp:
   67423         (WebCore::Workevn ScriptController::evaluate):
   67424         * bindings/js/WorkerScriptController.h:
   67425         * dom/ScriptElement.cpp:
   67426         (WebCore::ScriptElement::insertedIntoDocument):
   67427         (WebCore::ScriptElement::childrenChanged):
   67428         (WebCore::ScriptElementData::evaluateScript):
   67429         (WebCore::ScriptElementData::notifyFinished):
   67430         * dom/ScriptElement.h:
   67431         * dom/WorkerThread.cpp:
   67432         (WebCore::WorkerThread::workerThread):
   67433         * dom/WorkerThread.h:
   67434         * dom/XMLTokenizer.cpp:
   67435         (WebCore::XMLTokenizer::notifyFinished):
   67436         * dom/XMLTokenizerLibxml2.cpp:
   67437         (WebCore::XMLTokenizer::endElementNs):
   67438         * dom/XMLTokenizerQt.cpp:
   67439         (WebCore::XMLTokenizer::parseEndElement):
   67440         * html/HTMLTokenizer.cpp:
   67441         (WebCore::HTMLTokenizer::scriptHandler):
   67442         (WebCore::HTMLTokenizer::scriptExecution):
   67443         (WebCore::HTMLTokenizer::notifyFinished):
   67444         * html/HTMLTokenizer.h:
   67445         * loader/FrameLoader.cpp:
   67446         (WebCore::FrameLoader::executeScript):
   67447         * loader/FrameLoader.h:
   67448 
   67449 2008-11-24  Darin Adler  <darin (a] apple.com>
   67450 
   67451         Reviewed by Dan Bernstein.
   67452 
   67453         - finish https://bugs.webkit.org/show_bug.cgi?id=22295
   67454           track which history items are from page load failures
   67455 
   67456         * WebCore.base.exp: Exported new function.
   67457 
   67458         * loader/DocumentLoader.cpp:
   67459         (WebCore::DocumentLoader::urlForHistoryReflectsFailure): Added.
   67460         * loader/DocumentLoader.h: Ditto.
   67461 
   67462 2008-11-24  Chris Fleizach  <cfleizach (a] apple.com>
   67463 
   67464         Reviewed by Beth Dakin.
   67465 
   67466         Bug 22461: AccessibilityListBox::doAccessibilityHitTest() signature does not match the base class
   67467         https://bugs.webkit.org/show_bug.cgi?id=22461
   67468 
   67469         Changing AccessibilityListBox to use its parent's signature for hit testing
   67470 
   67471         * page/AccessibilityListBox.cpp:
   67472         (WebCore::AccessibilityListBox::doAccessibilityHitTest):
   67473         * page/AccessibilityListBox.h:
   67474 
   67475 2008-11-24  Simon Fraser  <simon.fraser (a] apple.com>
   67476 
   67477         Fix Windows build: selectionRect() -> selectionBounds().
   67478 
   67479         * page/win/FrameCGWin.cpp:
   67480         (WebCore::imageFromSelection):
   67481 
   67482 2008-11-24  Glenn Wilson  <gwilson (a] chromium.org>
   67483 
   67484         Reviewed by Darin Adler.
   67485 
   67486         http://bugs.webkit.org/show_bug.cgi?id=18703
   67487         "Changing the 'size' property on a text input does not affect its length"
   67488 
   67489         Text fields would not repaint themselves after having their "size"
   67490         attributes modified.  This fix tells the object to recalculate its
   67491         width and repaint itself when its "size" attribute is parsed.
   67492 
   67493         Test: fast/js/text-field-resize.html
   67494 
   67495         * html/HTMLInputElement.cpp:
   67496         (WebCore::HTMLInputElement::parseMappedAttribute):
   67497 
   67498 2008-11-24  Simon Fraser  <simon.fraser (a] apple.com>
   67499 
   67500         Reviewed by Darin Adler
   67501 
   67502         Followup from changes for https://bugs.webkit.org/show_bug.cgi?id=22433
   67503 
   67504         Make RenderView::selectionRect() private to cause compile-time
   67505         errors if someone tries to call it.
   67506 
   67507         * rendering/RenderView.h:
   67508 
   67509 2008-11-24  Simon Fraser  <simon.fraser (a] apple.com>
   67510 
   67511         Reviewed by Dan Bernstein
   67512 
   67513         Via: https://bugs.webkit.org/show_bug.cgi?id=22433
   67514 
   67515         Rename RenderView::selectionRect() to selectionBounds(), to remove
   67516         longstanding ambiguity with the base class selectionRect() method.
   67517         Do the same on Frame for consistency with RenderView. Assert
   67518         that RenderView::selectionRect() is never called.
   67519 
   67520         * WebCore.base.exp:
   67521         * editing/SelectionController.cpp:
   67522         (WebCore::SelectionController::focusedOrActiveStateChanged):
   67523         * page/DragController.cpp:
   67524         (WebCore::dragLocForSelectionDrag):
   67525         * page/Frame.cpp:
   67526         (WebCore::Frame::selectionBounds):
   67527         (WebCore::Frame::revealSelection):
   67528         * page/Frame.h:
   67529         * page/mac/FrameMac.mm:
   67530         (WebCore::Frame::selectionImage):
   67531         * rendering/RenderView.cpp:
   67532         (WebCore::RenderView::selectionRect):
   67533         (WebCore::RenderView::selectionBounds):
   67534         * rendering/RenderView.h:
   67535 
   67536 2008-11-19  Julien Chaffraix  <jchaffraix (a] webkit.org>
   67537 
   67538         Reviewed by Darin Adler.
   67539 
   67540         Bug 22441: Bridge the gap between the generated ElementFactory and HTMLElementFactory
   67541         https://bugs.webkit.org/show_bug.cgi?id=22441
   67542 
   67543         - Make HTMLElementFactory::createHTMLElement take a QualifiedName instead of
   67544         an AtomicString.
   67545 
   67546         - Updated the elements' constructors and the callers to reflect the previous change.
   67547 
   67548         * dom/Document.cpp:
   67549         (WebCore::Document::createElement):
   67550         * html/HTMLDocument.cpp:
   67551         (WebCore::HTMLDocument::createElement):
   67552         * html/HTMLElement.cpp:
   67553         (WebCore::HTMLElement::cloneNode):
   67554         * html/HTMLElementFactory.cpp:
   67555         (WebCore::htmlConstructor):
   67556         (WebCore::headConstructor):
   67557         (WebCore::bodyConstructor):
   67558         (WebCore::baseConstructor):
   67559         (WebCore::linkConstructor):
   67560         (WebCore::metaConstructor):
   67561         (WebCore::styleConstructor):
   67562         (WebCore::titleConstructor):
   67563         (WebCore::frameConstructor):
   67564         (WebCore::framesetConstructor):
   67565         (WebCore::iframeConstructor):
   67566         (WebCore::formConstructor):
   67567         (WebCore::buttonConstructor):
   67568         (WebCore::inputConstructor):
   67569         (WebCore::isindexConstructor):
   67570         (WebCore::fieldsetConstructor):
   67571         (WebCore::keygenConstructor):
   67572         (WebCore::labelConstructor):
   67573         (WebCore::legendConstructor):
   67574         (WebCore::optgroupConstructor):
   67575         (WebCore::optionConstructor):
   67576         (WebCore::selectConstructor):
   67577         (WebCore::textareaConstructor):
   67578         (WebCore::dlConstructor):
   67579         (WebCore::ulConstructor):
   67580         (WebCore::olConstructor):
   67581         (WebCore::dirConstructor):
   67582         (WebCore::menuConstructor):
   67583         (WebCore::liConstructor):
   67584         (WebCore::blockquoteConstructor):
   67585         (WebCore::divConstructor):
   67586         (WebCore::headingConstructor):
   67587         (WebCore::hrConstructor):
   67588         (WebCore::paragraphConstructor):
   67589         (WebCore::preConstructor):
   67590         (WebCore::basefontConstructor):
   67591         (WebCore::fontConstructor):
   67592         (WebCore::modConstructor):
   67593         (WebCore::anchorConstructor):
   67594         (WebCore::imageConstructor):
   67595         (WebCore::mapConstructor):
   67596         (WebCore::areaConstructor):
   67597         (WebCore::canvasConstructor):
   67598         (WebCore::appletConstructor):
   67599         (WebCore::embedConstructor):
   67600         (WebCore::objectConstructor):
   67601         (WebCore::paramConstructor):
   67602         (WebCore::scriptConstructor):
   67603         (WebCore::tableConstructor):
   67604         (WebCore::tableCaptionConstructor):
   67605         (WebCore::tableColConstructor):
   67606         (WebCore::tableRowConstructor):
   67607         (WebCore::tableCellConstructor):
   67608         (WebCore::tableSectionConstructor):
   67609         (WebCore::brConstructor):
   67610         (WebCore::quoteConstructor):
   67611         (WebCore::marqueeConstructor):
   67612         (WebCore::audioConstructor):
   67613         (WebCore::videoConstructor):
   67614         (WebCore::sourceConstructor):
   67615         (WebCore::HTMLElementFactory::createHTMLElement):
   67616         * html/HTMLElementFactory.h:
   67617         * html/HTMLParser.cpp:
   67618         (WebCore::HTMLParser::getNode):
   67619 
   67620 2008-11-24  Brent Fulgham  <bfulgham (a] gmail.com>
   67621 
   67622         Reviewed by Alexey Proskuryakov.
   67623 
   67624         https://bugs.webkit.org/show_bug.cgi?id=22444
   67625 
   67626         Correct bad default constructor for Cairo FontPlatformData so that
   67627         the m_scaledFont member is initialized.  Previously this would be
   67628         set to 0xbaadf00d, which would result in infinite loops while
   67629         attempting to deal with the font cache.
   67630 
   67631         * platform/graphics/win/FontPlatformData.h:
   67632         (WebCore::FontPlatformData::FontPlatformData): Initialize m_scaledFont to 0
   67633 
   67634 2008-11-24  Alexey Proskuryakov  <ap (a] webkit.org>
   67635 
   67636         Reviewed by Darin Adler.
   67637 
   67638         https://bugs.webkit.org/show_bug.cgi?id=22455
   67639         Add support for Worker.terminate()
   67640 
   67641         Test: fast/workers/worker-terminate.html
   67642 
   67643         * dom/Worker.idl:
   67644         * dom/Worker.cpp:
   67645         * dom/Worker.h:
   67646         Added terminate().
   67647 
   67648         * dom/WorkerMessagingProxy.h: (WebCore::WorkerMessagingProxy::askedToTerminate):
   67649         * dom/WorkerMessagingProxy.cpp:
   67650         (WebCore::MessageWorkerTask::performTask): Don't dispatch messages if the worker was asked
   67651         to terminate (this is not mentioned in draft spec, but makes sense anyway).
   67652         (WebCore::WorkerMessagingProxy::WorkerMessagingProxy): The proxy now remembers if it was
   67653         asked to terminate in m_askedToTerminate member variable. Also, changed m_unconfirmedMessageCount
   67654         to only track messages that were posted to worker thread, avoiding a leak if the script
   67655         could not be loaded.
   67656         (WebCore::WorkerMessagingProxy::postMessageToWorkerContext): Return early if terminating.
   67657         (WebCore::WorkerMessagingProxy::workerThreadCreated): Stop the thread if already asked for.
   67658         (WebCore::WorkerMessagingProxy::workerContextDestroyedInternal): Even if worker context
   67659         was destroyed, the worker object may still be alive now, so don't delete self in this case.
   67660         (WebCore::WorkerMessagingProxy::terminate): Stop the thread if it was already created, or
   67661         remember to stop it when it is created.
   67662         (WebCore::WorkerMessagingProxy::reportWorkerThreadActivityInternal): Don't track activity
   67663         if the thread asked to stop anyway.
   67664         (WebCore::WorkerMessagingProxy::workerThreadHasPendingActivity): Ditto.
   67665 
   67666         * dom/WorkerThread.cpp:
   67667         * dom/WorkerThread.h:
   67668         Fixed a race condition in stop().
   67669 
   67670 2008-11-24  Alexey Proskuryakov  <ap (a] webkit.org>
   67671 
   67672         Reviewed by Mark Rowe.
   67673 
   67674         https://bugs.webkit.org/show_bug.cgi?id=22439
   67675         Won't load stylesheets with filenames less than 2 characters long in xhtml.
   67676 
   67677         Test: http/tests/misc/single-character-pi-stylesheet.xhtml
   67678 
   67679         * dom/ProcessingInstruction.cpp: (WebCore::ProcessingInstruction::checkStyleSheet):
   67680         Fix up the logic.
   67681 
   67682 2008-11-24  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   67683 
   67684         Reviewed by Mark Rowe.
   67685 
   67686         [Gtk+] Add configure option to enable Web Workers and enable it by default
   67687 
   67688         Add --enable-workers to the buildsystem (used by build-webkit) add
   67689         the to be build files to the GNUmakefile.am and change build-webkit
   67690         to enable Web Workers by default.
   67691 
   67692         * GNUmakefile.am:
   67693 
   67694 2008-11-24  Alexey Proskuryakov  <ap (a] webkit.org>
   67695 
   67696         Build fix (for Windows Cairo port?)
   67697 
   67698         * page/DOMWindow.idl: Use ENABLE_CHANNEL_MESSAGING instead of ENABLE(CHANNEL_MESSAGING), as
   67699         the ENABLE macro is not available in idls.
   67700 
   67701 2008-11-22  Dimitri Glazkov  <dglazkov (a] chromium.org>
   67702 
   67703         Reviewed by Darin Adler.
   67704 
   67705         https://bugs.webkit.org/show_bug.cgi?id=22421
   67706         Added ScriptValue to Visual Studio and XCode projects.
   67707 
   67708         * WebCore.vcproj/WebCore.vcproj:
   67709         * WebCore.xcodeproj/project.pbxproj:
   67710 
   67711 2008-11-22  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   67712 
   67713         Reviewed by Holger Freyther.
   67714 
   67715         Fixes: https://bugs.webkit.org/show_bug.cgi?id=22426
   67716 
   67717         Add WMLInstrinsicEvent/EventHandler implementation. Code not yet used.
   67718 
   67719         * WebCore.xcodeproj/project.pbxproj:
   67720         * wml/WMLIntrinsicEvent.cpp: Added.
   67721         (WebCore::createTaskElement):
   67722         (WebCore::WMLIntrinsicEvent::WMLIntrinsicEvent):
   67723         * wml/WMLIntrinsicEvent.h: Added.
   67724         (WebCore::WMLIntrinsicEvent::create):
   67725         (WebCore::WMLIntrinsicEvent::createWithTask):
   67726         (WebCore::WMLIntrinsicEvent::taskElement):
   67727         * wml/WMLIntrinsicEventHandler.cpp: Added.
   67728         (WebCore::WMLIntrinsicEventHandler::WMLIntrinsicEventHandler):
   67729         (WebCore::WMLIntrinsicEventHandler::registerIntrinsicEvent):
   67730         (WebCore::WMLIntrinsicEventHandler::triggerIntrinsicEvent):
   67731         (WebCore::WMLIntrinsicEventHandler::hasIntrinsicEvent):
   67732         * wml/WMLIntrinsicEventHandler.h: Added.
   67733         (WebCore::):
   67734 
   67735 2008-11-22  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   67736 
   67737         Reviewed by Holger Freyther.
   67738 
   67739         Fixes: https://bugs.webkit.org/show_bug.cgi?id=22423
   67740 
   67741         Add <go> stub implementation. Add complete <prev>/<refresh> and <setvar> implementation.
   67742         Activate code handling <setvar> registration in WMLTaskElement.
   67743 
   67744         * wml/WMLGoElement.cpp: Added.
   67745         (WebCore::WMLGoElement::WMLGoElement):
   67746         (WebCore::WMLGoElement::~WMLGoElement):
   67747         (WebCore::WMLGoElement::parseMappedAttribute):
   67748         (WebCore::WMLGoElement::executeTask):
   67749         * wml/WMLGoElement.h: Added.
   67750         * wml/WMLPrevElement.cpp: Added.
   67751         (WebCore::WMLPrevElement::WMLPrevElement):
   67752         (WebCore::WMLPrevElement::~WMLPrevElement):
   67753         (WebCore::WMLPrevElement::executeTask):
   67754         * wml/WMLPrevElement.h: Added.
   67755         * wml/WMLRefreshElement.cpp: Added.
   67756         (WebCore::WMLRefreshElement::WMLRefreshElement):
   67757         (WebCore::WMLRefreshElement::~WMLRefreshElement):
   67758         (WebCore::WMLRefreshElement::executeTask):
   67759         * wml/WMLRefreshElement.h: Added.
   67760         * wml/WMLSetvarElement.cpp: Added.
   67761         (WebCore::WMLSetvarElement::WMLSetvarElement):
   67762         (WebCore::WMLSetvarElement::~WMLSetvarElement):
   67763         (WebCore::WMLSetvarElement::parseMappedAttribute):
   67764         (WebCore::WMLSetvarElement::insertedIntoDocument):
   67765         (WebCore::WMLSetvarElement::name):
   67766         (WebCore::WMLSetvarElement::value):
   67767         * wml/WMLSetvarElement.h: Added.
   67768         * wml/WMLTagNames.in:
   67769         * wml/WMLTaskElement.cpp:
   67770         (WebCore::WMLTaskElement::registerVariableSetter):
   67771         (WebCore::WMLTaskElement::storeVariableState):
   67772         * wml/WMLTaskElement.h:
   67773         * WebCore.xcodeproj/project.pbxproj:
   67774 
   67775 2008-11-22  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   67776 
   67777         Not reviewed. Forgot to include WMLPageState.* in the last commit.
   67778 
   67779         * wml/WMLPageState.cpp:
   67780         (WebCore::WMLPageState::setNeedCheckDeckAccess):
   67781         * wml/WMLPageState.h:
   67782         (WebCore::WMLPageState::storeVariables):
   67783 
   67784 2008-11-21  Alexey Proskuryakov  <ap (a] webkit.org>
   67785 
   67786         Reviewed by Darin Adler.
   67787 
   67788         https://bugs.webkit.org/show_bug.cgi?id=22397
   67789         Worker threads are not destroyed if running a JS loop
   67790 
   67791         Since the event loop is not ever entered again in this case, the fix necessarily involves
   67792         some shared data hackery.
   67793 
   67794         * dom/WorkerThread.cpp: (WebCore::WorkerThread::stop):
   67795         * dom/WorkerThread.h:
   67796         Added a stop() method, which asks the thread to exit as soon as possible. In the future, it
   67797         may need to abort other kinds of synchronous processing, such as importScripts or XHR.
   67798 
   67799         * bindings/js/WorkerScriptController.cpp:
   67800         (WebCore::WorkerScriptController::WorkerScriptController):
   67801         (WebCore::WorkerScriptController::evaluate):
   67802         (WebCore::WorkerScriptController::forbidExecution):
   67803         * bindings/js/WorkerScriptController.h:
   67804         Added a forbidExecution() method, which interrupts currently running JS, and makes any
   67805         future calls to evaluate() return immediately.
   67806 
   67807         * dom/WorkerMessagingProxy.cpp: (WebCore::WorkerMessagingProxy::workerObjectDestroyed):
   67808         Call WorkerThread::stop().
   67809 
   67810 2008-11-21  Kevin Watters  <kevinwatters (a] gmail.com>
   67811 
   67812         Reviewed by Kevin Ollivier.
   67813 
   67814         Improve wx image drawing performance considerably when using wxGraphicsContext
   67815         by avoiding unnecessary copies and drawing.
   67816 
   67817         https://bugs.webkit.org/show_bug.cgi?id=22404
   67818 
   67819         * platform/graphics/wx/ImageWx.cpp:
   67820         (WebCore::BitmapImage::draw):
   67821         (WebCore::BitmapImage::drawPattern):
   67822 
   67823 
   67824 2008-11-21  Kevin Watters  <kevinwatters (a] gmail.com>
   67825 
   67826         Reviewed by Kevin Ollivier.
   67827 
   67828         Implementation of AffineTransform::mapRect for wx.
   67829 
   67830         https://bugs.webkit.org/show_bug.cgi?id=22401
   67831 
   67832         * platform/graphics/wx/AffineTransformWx.cpp:
   67833         (WebCore::AffineTransform::mapRect):
   67834 
   67835 2008-11-21  Justin Garcia  <justin.garcia (a] apple.com>
   67836 
   67837         Reviewed by Darin Adler.
   67838 
   67839         <rdar://problem/5381788> Match NSTextView editing behavior at the end of hyperlink text
   67840 
   67841         Change link editing behavior to match TextEdit and MS Word when editing before and after
   67842         a link (Pages has two caret positions at link boundaries, Thunderbird and FF behave like we
   67843         used to, so it's difficult to get out of link editing mode):
   67844         When inserting before or after a link, always insert content outside of the link.  This
   67845         makes it impossible to get stuck in link editing mode, while making it slightly more
   67846         difficult to edit link labels.  WebKit editors that care about this can add UI for editing
   67847         link labels, like GMail and GoogleDocs have done.  We never actually had any bugs complaining
   67848         about how it was difficult to edit link labels at the start/end, the code was just introduced
   67849         with another bug fix without much thought.
   67850 
   67851         Don't remember removed links anymore, no other editor does this and it made it
   67852         difficult/impossible to get out of link editing mode.  This code was added to fix
   67853         <rdar://problem/4069359>, which is fixed instead by removing the styles from an
   67854         enclosing anchor element from those styles that we remember when we delete content.
   67855 
   67856         * editing/CompositeEditCommand.cpp:
   67857         (WebCore::CompositeEditCommand::positionAvoidingSpecialElementBoundary):
   67858         * editing/CompositeEditCommand.h:
   67859         * editing/DeleteSelectionCommand.cpp:
   67860         (WebCore::removeEnclosingAnchorStyle):
   67861         (WebCore::DeleteSelectionCommand::saveTypingStyleState):
   67862         (WebCore::DeleteSelectionCommand::doApply):
   67863         * editing/DeleteSelectionCommand.h:
   67864         * editing/EditCommand.cpp:
   67865         (WebCore::EditCommand::apply):
   67866         * editing/Editor.cpp:
   67867         (WebCore::Editor::appliedEditing):
   67868         * editing/InsertTextCommand.cpp:
   67869         (WebCore::InsertTextCommand::prepareForTextInsertion):
   67870         (WebCore::InsertTextCommand::input):
   67871         * editing/RemoveFormatCommand.cpp:
   67872         (WebCore::RemoveFormatCommand::doApply):
   67873         * editing/SelectionController.cpp:
   67874         (WebCore::SelectionController::setSelection):
   67875         * editing/SelectionController.h:
   67876 
   67877 2008-11-21  Alice Liu  <alice.liu (a] apple.com>
   67878 
   67879         Rubber-stamped by Dan Bernstein.
   67880 
   67881         fixed <rdar://6340771> crashing on print preview
   67882 
   67883         * platform/graphics/win/GraphicsContextCGWin.cpp:
   67884         (WebCore::GraphicsContext::drawWindowsBitmap):
   67885 
   67886 2008-11-21  Darin Fisher  <darin (a] chromium.org>
   67887 
   67888         Reviewed by Geoffrey Garen.
   67889 
   67890         https://bugs.webkit.org/show_bug.cgi?id=22390
   67891         Abstract away JSC:: usage in WebCore/xml
   67892 
   67893         * bindings/js/ScriptString.h: Added.
   67894         (WebCore::ScriptString::ScriptString):
   67895         (WebCore::ScriptString::operator JSC::UString):
   67896         (WebCore::ScriptString::isNull):
   67897         (WebCore::ScriptString::size):
   67898         (WebCore::ScriptString::operator=):
   67899         (WebCore::ScriptString::operator+=):
   67900         * inspector/InspectorController.cpp:
   67901         (WebCore::XMLHttpRequestResource::XMLHttpRequestResource):
   67902         (WebCore::InspectorResource::setXMLHttpRequestProperties):
   67903         (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
   67904         * inspector/InspectorController.h:
   67905         * xml/XMLHttpRequest.cpp:
   67906         (WebCore::XMLHttpRequest::responseText):
   67907         (WebCore::XMLHttpRequest::clearResponse):
   67908         (WebCore::XMLHttpRequest::dropProtection):
   67909         (WebCore::XMLHttpRequest::didFinishLoading):
   67910         (WebCore::XMLHttpRequest::didReceiveData):
   67911         * xml/XMLHttpRequest.h:
   67912         (WebCore::XMLHttpRequest::setLastSendURL):
   67913 
   67914 2008-11-21  Sam Weinig  <sam (a] webkit.org>
   67915 
   67916         Reviewed by Geoffrey Garen.
   67917 
   67918         Destroy script decoded data on a zero-delay timer after
   67919         decoding.  This means we now have no decoded script data
   67920         at the end of Membuster.
   67921 
   67922         * loader/CachedScript.cpp:
   67923         (WebCore::CachedScript::CachedScript):
   67924         (WebCore::CachedScript::allClientsRemoved):
   67925         (WebCore::CachedScript::script):
   67926         (WebCore::CachedScript::decodedDataDeletionTimerFired):
   67927         * loader/CachedScript.h:
   67928 
   67929 2008-11-21  Simon Fraser  <simon.fraser (a] apple.com>
   67930 
   67931         Reviewed by Darin Adler
   67932 
   67933         https://bugs.webkit.org/show_bug.cgi?id=22159
   67934 
   67935         RenderBox::absoluteClippedOverflowRect() needs to inflate the rect by
   67936         maximalOutlineSize(), since a child might have an outline which projects
   67937         outside the parent overflowRect().
   67938 
   67939         We also need to ensure that maximalOutlineSize() is updated early in styleDidChange,
   67940         so that it is valid for these repaints.
   67941 
   67942         Test: fast/repaint/outline-child-repaint.html
   67943 
   67944         * WebCore.xcodeproj/project.pbxproj:
   67945         * rendering/RenderBox.cpp:
   67946         (WebCore::RenderBox::styleDidChange):
   67947         (WebCore::RenderBox::absoluteClippedOverflowRect):
   67948 
   67949 2008-11-21  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   67950 
   67951         Gtk, Qt, and Wx build fix.
   67952 
   67953         Add LinkHash.cpp in the build scripts.
   67954         Add LinkHash.h to Gtk's build script.
   67955 
   67956         LinkHash.cpp/h was introduced in r38661.
   67957 
   67958         * GNUmakefile.am:
   67959         * WebCore.pro:
   67960         * WebCoreSources.bkl:
   67961 
   67962 2008-11-21  Sam Weinig  <sam (a] webkit.org>
   67963 
   67964         Reviewed by Dan Bernstein.
   67965 
   67966         Third step in https://bugs.webkit.org/show_bug.cgi?id=22394
   67967         Be more eager in destroying script decoded data
   67968 
   67969         Destroy the decoded data when all clients are removed from a CachedScript.
   67970 
   67971         * loader/CachedScript.cpp:
   67972         (WebCore::CachedScript::allClientsRemoved):
   67973         * loader/CachedScript.h:
   67974         (WebCore::CachedScript::allClientsRemoved):
   67975 
   67976 2008-11-21  Pierre-Olivier Latour  <pol (a] apple.com>
   67977 
   67978         Reviewed by Dan Bernstein.
   67979 
   67980         WebKit should be using Device RGB colorspace everywhere for
   67981         consistency.
   67982 
   67983         https://bugs.webkit.org/show_bug.cgi?id=22300
   67984 
   67985         * page/mac/AccessibilityObjectWrapper.mm:
   67986         (CreateCGColorIfDifferent):
   67987         * platform/graphics/mac/ColorMac.h:
   67988         * platform/graphics/mac/ColorMac.mm:
   67989         (WebCore::nsColor):
   67990         (+[WebCoreControlTintObserver controlTintDidChange]):
   67991         * rendering/RenderThemeMac.mm:
   67992         (WebCore::convertNSColorToColor):
   67993         (WebCore::menuBackgroundColor):
   67994 
   67995 2008-11-20  Julien Chaffraix  <jchaffraix (a] webkit.org>
   67996 
   67997         Reviewed by Darin Adler.
   67998 
   67999         Bug 22388: Add JSInterfaceName to the .in files
   68000         https://bugs.webkit.org/show_bug.cgi?id=22388
   68001 
   68002         Add JSInterfaceName that is similar to interfaceName but
   68003         for the JS wrappers. JSInterfaceName is always equal to interfaceName
   68004         unless explicitly set.
   68005 
   68006         * dom/make_names.pl:
   68007         * html/HTMLTagNames.in:
   68008         * svg/svgtags.in:
   68009 
   68010 2008-11-21  Sam Weinig  <sam (a] webkit.org>
   68011 
   68012         Reviewed by Geoffrey Garen.
   68013 
   68014         Second step in https://bugs.webkit.org/show_bug.cgi?id=22394
   68015         Be more eager in destroying script decoded data
   68016 
   68017         Use a new CachedScriptSourceProvider to keep CachedScripts as
   68018         CachedScripts, even down into JSC.  This has the added benefit
   68019         of showing the CachedScripts as live in the Caches window.
   68020 
   68021         * GNUmakefile.am:
   68022         * WebCore.vcproj/WebCore.vcproj:
   68023         * WebCore.xcodeproj/project.pbxproj:
   68024         * bindings/js/CachedScriptSourceProvider.h: Added.
   68025         (WebCore::CachedScriptSourceProvider::create):
   68026         (WebCore::CachedScriptSourceProvider::~CachedScriptSourceProvider):
   68027         (WebCore::CachedScriptSourceProvider::getRange):
   68028         (WebCore::CachedScriptSourceProvider::data):
   68029         (WebCore::CachedScriptSourceProvider::length):
   68030         (WebCore::CachedScriptSourceProvider::CachedScriptSourceProvider):
   68031         (WebCore::makeSource):
   68032         * dom/ScriptElement.cpp:
   68033         (WebCore::ScriptElementData::notifyFinished):
   68034         * dom/XMLTokenizer.cpp:
   68035         (WebCore::XMLTokenizer::notifyFinished):
   68036         * html/HTMLTokenizer.cpp:
   68037         (WebCore::HTMLTokenizer::notifyFinished):
   68038 
   68039 2008-11-21  Brett Wilson  <brettw (a] chromium.org>
   68040 
   68041         Fix debug-only build bustage due to a typo in an assert, and add new
   68042         files to the Windows build.
   68043 
   68044         * Info.plist:
   68045         * WebCore.vcproj/WebCore.vcproj:
   68046         * platform/LinkHash.h:
   68047         (WebCore::LinkHashHash::avoidDeletedValue):
   68048 
   68049 2008-11-20  Brett Wilson  <brettw (a] chromium.org>
   68050 
   68051         Reviewed by Eric Seidel.
   68052 
   68053         https://bugs.webkit.org/show_bug.cgi?id=22131
   68054 
   68055         Factor out visited link hashing and types into a new file, LinkHash.
   68056         This also changes the hash type to 64 bits, but does not actually use
   68057         the extra bits yet.
   68058 
   68059         * WebCore.xcodeproj/project.pbxproj:
   68060         (WebCore::CSSStyleSelector::SelectorChecker::checkPseudoState):
   68061         (WebCore::CSSStyleSelector::SelectorChecker::visitedStateChanged):
   68062         * css/CSSStyleSelector.h:
   68063         (WebCore::CSSStyleSelector::visitedStateChanged):
   68064         * dom/Document.cpp:
   68065         * dom/Document.h:
   68066         * page/Page.cpp:
   68067         (WebCore::Page::visitedStateChanged):
   68068         * page/Page.h:
   68069         * page/PageGroup.cpp:
   68070         (WebCore::PageGroup::isLinkVisited):
   68071         (WebCore::PageGroup::addVisitedLink):
   68072         * page/PageGroup.h:
   68073         * platform/LinkHash.cpp: Added.
   68074         (WebCore::findSlashDotDotSlash):
   68075         (WebCore::findSlashSlash):
   68076         (WebCore::findSlashDotSlash):
   68077         (WebCore::containsColonSlashSlash):
   68078         (WebCore::cleanPath):
   68079         (WebCore::matchLetter):
   68080         (WebCore::needsTrailingSlash):
   68081         (WebCore::visitedLinkHash):
   68082         * platform/LinkHash.h: Added
   68083         (WebCore::LinkHashHash::hash):
   68084         (WebCore::LinkHashHash::equal):
   68085         (WebCore::LinkHashHash::avoidDeletedValue):
   68086 
   68087 2008-11-21  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   68088 
   68089         Reviewed by Alexey Proskuryakov.
   68090 
   68091         No need to use getElementsByTagNameNS() in WML documents. Revert to using getElementByTagName() again.
   68092 
   68093         * wml/WMLPElement.cpp:
   68094         (WebCore::WMLPElement::insertedIntoDocument):
   68095 
   68096 2008-11-21  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   68097 
   68098         Reviewed by Alexey Proskuryakov.
   68099 
   68100         Fix some coding style/formatting issues in WMLAElement.
   68101 
   68102         * wml/WMLAElement.cpp:
   68103         (WebCore::WMLAElement::parseMappedAttribute):
   68104         (WebCore::WMLAElement::defaultEventHandler):
   68105         * wml/WMLAElement.h:
   68106 
   68107 2008-11-21  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   68108 
   68109         Reviewed by Alexey Proskuryakov.
   68110 
   68111         Fixes: https://bugs.webkit.org/show_bug.cgi?id=22399
   68112 
   68113         Implement <anchor> support for WML, add WMLVariables file containing helper functions
   68114         for variable support, and a WMLTaskElement base class for WMLPrev/Go/RefreshElement.
   68115 
   68116         * css/CSSStyleSelector.cpp:
   68117         (WebCore::linkAttribute):
   68118         * rendering/HitTestResult.cpp:
   68119         (WebCore::HitTestResult::absoluteImageURL):
   68120         (WebCore::HitTestResult::absoluteLinkURL):
   68121         (WebCore::HitTestResult::isLiveLink):
   68122         * wml/WMLAnchorElement.cpp: Added.
   68123         (WebCore::WMLAnchorElement::WMLAnchorElement):
   68124         (WebCore::WMLAnchorElement::~WMLAnchorElement):
   68125         (WebCore::WMLAnchorElement::defaultEventHandler):
   68126         * wml/WMLAnchorElement.h: Added.
   68127         (WebCore::WMLAnchorElement::registerTask):
   68128         * wml/WMLTagNames.in:
   68129         * wml/WMLTaskElement.cpp: Added.
   68130         (WebCore::WMLTaskElement::WMLTaskElement):
   68131         (WebCore::WMLTaskElement::~WMLTaskElement):
   68132         (WebCore::WMLTaskElement::insertedIntoDocument):
   68133         (WebCore::WMLTaskElement::addVariableSetter):
   68134         (WebCore::WMLTaskElement::removeVariableSetter):
   68135         (WebCore::WMLTaskElement::storeVariableState):
   68136         * wml/WMLTaskElement.h: Added.
   68137         * wml/WMLVariables.cpp: Added.
   68138         (WebCore::isValidVariableCharacter):
   68139         (WebCore::isValidVariableReferenceCharacter):
   68140         (WebCore::isValidVariableName):
   68141         (WebCore::substituteVariableReferences):
   68142         * wml/WMLVariables.h: Added.
   68143         (WebCore::):
   68144 
   68145 2008-11-21  Julien Chaffraix  <jchaffraix (a] pleyo.com>
   68146 
   68147         Rubber-stamped by Alexey Proskuryakov.
   68148 
   68149         Build fix when building without WORKERS on non-POSIX, non-WINDOWS
   68150         machine.
   68151 
   68152         Spotted by Mario Bensi.
   68153 
   68154         * platform/text/TextCodecICU.cpp:
   68155 
   68156 2008-11-20  Sam Weinig  <sam (a] webkit.org>
   68157 
   68158         Reviewed by Geoffrey Garen.
   68159 
   68160         First step in https://bugs.webkit.org/show_bug.cgi?id=22394
   68161         Be more eager in destroying script decoded data
   68162 
   68163         Pass data to be used in script execution around as JSC::SourceCode instead
   68164         of a source, url, and starting line.
   68165 
   68166         * bindings/js/ScriptController.cpp:
   68167         (WebCore::ScriptController::evaluate):
   68168         * bindings/js/ScriptController.h:
   68169         * bindings/js/StringSourceProvider.h:
   68170         (WebCore::makeSource):
   68171         * bindings/js/WorkerScriptController.cpp:
   68172         (WebCore::WorkerScriptController::evaluate):
   68173         * bindings/js/WorkerScriptController.h:
   68174         * dom/ScriptElement.cpp:
   68175         (WebCore::ScriptElement::insertedIntoDocument):
   68176         (WebCore::ScriptElement::childrenChanged):
   68177         (WebCore::ScriptElementData::evaluateScript):
   68178         (WebCore::ScriptElementData::notifyFinished):
   68179         * dom/ScriptElement.h:
   68180         * dom/WorkerThread.cpp:
   68181         (WebCore::WorkerThread::workerThread):
   68182         * dom/XMLTokenizer.cpp:
   68183         (WebCore::XMLTokenizer::notifyFinished):
   68184         * dom/XMLTokenizerLibxml2.cpp:
   68185         (WebCore::XMLTokenizer::endElementNs):
   68186         * dom/XMLTokenizerQt.cpp:
   68187         (WebCore::XMLTokenizer::parseEndElement):
   68188         * html/HTMLTokenizer.cpp:
   68189         (WebCore::HTMLTokenizer::scriptHandler):
   68190         (WebCore::HTMLTokenizer::scriptExecution):
   68191         (WebCore::HTMLTokenizer::notifyFinished):
   68192         * html/HTMLTokenizer.h:
   68193         * loader/FrameLoader.cpp:
   68194         (WebCore::FrameLoader::executeScript):
   68195         * loader/FrameLoader.h:
   68196 
   68197 2008-11-20  Sam Weinig  <sam (a] webkit.org>
   68198 
   68199         Reviewed by Geoffrey Garen.
   68200 
   68201         Fix for https://bugs.webkit.org/show_bug.cgi?id=22392
   68202         REGRESION: XMLHttpRequest.responseText does unnecessary trip though WebCore::String
   68203 
   68204         - Use jsOwnedStringOrNull to avoid conversion to WebCore::String.
   68205 
   68206         * bindings/js/JSXMLHttpRequestCustom.cpp:
   68207         (WebCore::JSXMLHttpRequest::responseText):
   68208         * xml/XMLHttpRequest.idl:
   68209 
   68210 2008-11-20  Simon Fraser  <simon.fraser (a] apple.com>
   68211 
   68212         Reviewed by Dan Bernstein
   68213 
   68214         https://bugs.webkit.org/show_bug.cgi?id=19623
   68215 
   68216         When an non-layer object gained a transform, it would only repaint
   68217         the bounds of the new layer, which could result in redraw artifacts
   68218         if the new layer was smaller. So if we're gaining a transform, we
   68219         repaint.
   68220 
   68221         Test: fast/repaint/change-transform.html
   68222 
   68223         * rendering/RenderObject.cpp:
   68224         (WebCore::RenderObject::styleWillChange):
   68225 
   68226 2008-11-20  Adele Peterson  <adele (a] apple.com>
   68227 
   68228         Reviewed by Darin Adler.
   68229 
   68230         Fix for <rdar://problem/6111436> Support upload progress events on Windows
   68231 
   68232         * platform/network/cf/ResourceHandleCFNet.cpp:
   68233         (WebCore::didSendBodyData): Added.
   68234         (WebCore::ResourceHandle::start): Hook up didSendBodyData callback.
   68235 
   68236 2008-11-20  Justin Garcia  <justin.garcia (a] apple.com>
   68237 
   68238         Reviewed by Darin Adler.
   68239 
   68240         <rdar://problem/2610675> Blank line that is quoted can't be deleted
   68241 
   68242         If the caret is in an empty quoted paragraph, and either there is nothing before that
   68243         paragraph, or what is before is unquoted, and the user presses delete, unquote that
   68244         paragraph.
   68245 
   68246         * editing/CompositeEditCommand.cpp:
   68247         (WebCore::CompositeEditCommand::breakOutOfEmptyMailBlockquotedParagraph): Added.
   68248         Removes the line break that holds open an empty paragraph and then attempts to
   68249         prune the blockquote(s) that held that line break in case they have been emptied
   68250         out.  Places a line break to create in empty unquoted paragraph in place of the
   68251         quoted one that was removed.
   68252         * editing/CompositeEditCommand.h:
   68253         * editing/TypingCommand.cpp:
   68254         (WebCore::TypingCommand::deleteKeyPressed): Call breakOutOfEmptyBlockquotedParagraph.
   68255         * editing/htmlediting.cpp:
   68256         (WebCore::highestEnclosingNodeOfType): Added.
   68257         * editing/htmlediting.h:
   68258 
   68259 2008-11-20  Dean Jackson  <dino (a] apple.com>
   68260 
   68261         Reviewed by Antti Koivisto
   68262 
   68263         https://bugs.webkit.org/show_bug.cgi?id=21247
   68264 
   68265         Make transition shorthand property accept transition-delay.
   68266 
   68267         Test: transitions/transition-shorthand-delay.html
   68268 
   68269         * css/CSSParser.cpp:
   68270         (WebCore::CSSParser::parseTransitionShorthand):
   68271 
   68272 2008-11-20  Dean Jackson  <dino (a] apple.com>
   68273 
   68274         Reviewed by Antti Koivisto
   68275 
   68276         https://bugs.webkit.org/show_bug.cgi?id=22368
   68277 
   68278         Make sure pauseTransition API takes transition delay into account.
   68279 
   68280         Test: transitions/transition-drt-api-delay.html
   68281 
   68282         * page/animation/AnimationBase.cpp:
   68283         (WebCore::AnimationBase::pauseAtTime):
   68284 
   68285 2008-11-20  Simon Fraser  <simon.fraser (a] apple.com>
   68286 
   68287         Reviewed by Darin Adler
   68288 
   68289         https://bugs.webkit.org/show_bug.cgi?id=20368
   68290 
   68291         Implement getComputedStyle for animation properties. Remove individual
   68292         computed values for transform-origin-x, transform-origin-y, and just
   68293         return transform-origin instead. Return "none" for default animation-name,
   68294         and fix the initial value.
   68295 
   68296         Tests: animations/computed-style.html
   68297                transforms/computed-style-origin.html
   68298 
   68299         * css/CSSComputedStyleDeclaration.cpp:
   68300         (WebCore::):
   68301         (WebCore::getDelayValue):
   68302         (WebCore::getDurationValue):
   68303         (WebCore::getTimingFunctionValue):
   68304         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   68305         * rendering/style/RenderStyle.h:
   68306         (WebCore::InheritedFlags::initialAnimationName):
   68307 
   68308 2008-11-20  Justin Garcia  <justin.garcia (a] apple.com>
   68309 
   68310         Reviewed by Beth Dakin.
   68311 
   68312         Preparation for:
   68313         <rdar://problem/2610675> Blank line that is quoted can't be deleted
   68314 
   68315         To fix this we need to make changes to the code that creates selections to delete
   68316         when the user does a backward or forward delete with a caret selection.  For certain
   68317         caret positions, we now want to remove something other than the standard "caret extended
   68318         backward/forward by one unit".  The problem is that there were two pieces of code
   68319         responsible for doing this, one in Editor::deleteWithDirection, and another inside
   68320         TypingCommand::deleteKeyPressed.  The code in deleteWithDirection is a recent
   68321         addition (r19172), and adding it there caused regressions because it prevented the
   68322         code in deleteKeyPressed from ever running.  The regressions were never caught because
   68323         JS deletion uses deleteKeyPressed while manual deletion uses deleteWithDirection.
   68324 
   68325         This patch removes selection creation code from deleteWithDirection so that deleteKeyPressed
   68326         can handle it.  That required moving code to handle the kill ring down into deleteKeyPressed.
   68327 
   68328         Follow up patches will fix <rdar://problem/2610675>, and attempt to eliminate the rest of the
   68329         discrepancies between the behavior of JS deletions and manual deletions, so that we
   68330         have better test coverage.
   68331 
   68332         * editing/Editor.cpp:
   68333         (WebCore::Editor::deleteWithDirection): Early return if m_frame->document() is null, instead
   68334         of checking for that periodically throughout the function.  There's really nothing to be done
   68335         if it's null anyway.
   68336         Move kill ring code down into deleteKeyPressed.
   68337         * editing/Editor.h:
   68338         * editing/TypingCommand.cpp:
   68339         (WebCore::TypingCommand::TypingCommand):
   68340         (WebCore::TypingCommand::deleteKeyPressed):
   68341         (WebCore::TypingCommand::forwardDeleteKeyPressed):
   68342         (WebCore::TypingCommand::doApply):
   68343         * editing/TypingCommand.h:
   68344         (WebCore::TypingCommand::create):
   68345 
   68346 2008-11-20  Darin Adler  <darin (a] apple.com>
   68347 
   68348         Earlier version reviewed by Justin Garcia.
   68349 
   68350         - fix <rdar://problem/4108572> REGRESSION: Can't extend selection with shift-arrow in read only mode
   68351 
   68352         * editing/Editor.cpp:
   68353         (WebCore::Editor::handleKeyboardEvent): Remove isContentEditable check -- keyboard events can be
   68354         handled even when the selection is not in an editable area.
   68355         (WebCore::Editor::handleInputMethodKeydown): Ditto.
   68356 
   68357         * editing/EditorCommand.cpp: Changed the enabled rule for operations that change the selection to
   68358         allow use when there's a selection even if it's not in an editable area. This includes commands
   68359         like shift-arrow keys to extend the slection, but not commands like arrow keys to move the
   68360         insertion point.
   68361 
   68362 2008-11-20  Alexey Proskuryakov  <ap (a] webkit.org>
   68363 
   68364         Reviewed by Darin Adler.
   68365 
   68366         https://bugs.webkit.org/show_bug.cgi?id=22380
   68367         Fix WorkerContext refcounting
   68368 
   68369         * dom/WorkerContext.cpp:
   68370         (WebCore::WorkerContext::WorkerContext):
   68371         * dom/WorkerContext.h:
   68372         (WebCore::WorkerContext::script):
   68373         (WebCore::WorkerContext::clearScript):
   68374         Added a method to manually destroy WorkerScriptController.
   68375 
   68376         * dom/WorkerThread.cpp: (WebCore::WorkerThread::workerThread):
   68377         Destroy WorkerScriptController to release any references to WorkerContext.
   68378 
   68379 2008-11-19  Julien Chaffraix  <jchaffraix (a] webkit.org>
   68380 
   68381         Reviewed by Darin Adler.
   68382 
   68383         Last part of bug 21106: .in format discussed changes
   68384         https://bugs.webkit.org/show_bug.cgi?id=21106
   68385 
   68386         - Renamed isAudioHack to wrapperOnlyIfMediaIsAvailable as requested.
   68387 
   68388         - Cleaned up additionnal function parameters that were unneeded.
   68389 
   68390         * dom/make_names.pl:
   68391         * html/HTMLTagNames.in:
   68392 
   68393 2008-11-20  Alexey Proskuryakov  <ap (a] webkit.org>
   68394 
   68395         Reviewed by Darin Adler.
   68396 
   68397         https://bugs.webkit.org/show_bug.cgi?id=22383
   68398         Worker tests spill error messages over to consequent tests
   68399 
   68400         * dom/Worker.cpp: (WebCore::Worker::Worker):
   68401         Raise an exception immediately if URL is empty. Dcoument::completeURL() returns document URL
   68402         in this case, and there is no sense in starting a thread and trying to parse document source
   68403         as JavaScript.
   68404 
   68405         * bindings/js/JSWorkerConstructor.cpp: (WebCore::constructWorker):
   68406         Return quickly if toString() raised an exception.
   68407 
   68408 2008-11-19  Simon Fraser  <simon.fraser (a] apple.com>
   68409 
   68410         Reviewed by Adele Peterson.
   68411 
   68412         https://bugs.webkit.org/show_bug.cgi?id=22190
   68413 
   68414         Fix the painting and event handling in transformed search fields.
   68415         When painting the cancel and results button parts,  get the rect from AppKit
   68416         relative to the input bounds (rather than in absolute coords), then convert
   68417         it into the coords of the part's renderer (which is the one that is painting).
   68418         To do this we need to compute an offset relative to some container, so expose
   68419         a method on RenderObject for that.
   68420 
   68421         Also fix the location at which the search popup shows up to take transforms
   68422         into account, and fix the math that is used to figure out if the search
   68423         results button, or the cancel button should get the mouse events.
   68424 
   68425         Test: fast/forms/search-transformed.html
   68426 
   68427         * rendering/RenderBox.h:
   68428         * rendering/RenderObject.cpp:
   68429         (WebCore::RenderObject::offsetFromContainer):
   68430         * rendering/RenderObject.h:
   68431         * rendering/RenderTextControl.cpp:
   68432         (WebCore::RenderTextControl::forwardEvent):
   68433         (WebCore::RenderTextControl::showPopup):
   68434         * rendering/RenderThemeMac.h:
   68435         * rendering/RenderThemeMac.mm:
   68436         (WebCore::RenderThemeMac::convertToPaintingRect):
   68437         (WebCore::RenderThemeMac::paintSearchFieldCancelButton):
   68438         (WebCore::RenderThemeMac::paintSearchFieldResultsDecoration):
   68439         (WebCore::RenderThemeMac::paintSearchFieldResultsButton):
   68440 
   68441 2008-11-20  Joerg Bornemann  <joerg.bornemann (a] trolltech.com>
   68442 
   68443         Reviewed by Simon Hausmann.
   68444 
   68445         Steps towards making the the Qt port of WebKit compile on Windows CE
   68446 
   68447         https://bugs.webkit.org/show_bug.cgi?id=20746
   68448 
   68449         * WebCore.pro: Various fixes to include windows specific build options
   68450         also in the Windows CE build.
   68451         * loader/icon/IconDatabase.cpp: Removed unnecessary errno.h inclusion.
   68452         * platform/FileSystem.h: Changed Q_OS_WIN32 to Q_OS_WIN to include CE.
   68453         * platform/graphics/qt/GraphicsContextQt.cpp:
   68454         (WebCore::GraphicsContext::getWindowsContext): SetWorldTransform is
   68455         not available on CE.
   68456         * platform/graphics/qt/PathQt.cpp: Added local definition of M_PI.
   68457         * platform/qt/FileSystemQt.cpp: Changed Q_OS_WIN32 to Q_OS_WIN to include CE.
   68458         * platform/qt/KeyboardCodes.h: Extend #idefs to define the missing OEM
   68459         constants on CE.
   68460         * platform/qt/TemporaryLinkStubs.cpp: Added stubs for plugins.
   68461         * platform/text/RegularExpression.cpp: Removed unused sys/types.h and
   68462         pcre.h inclusions.
   68463         * platform/win/SystemTimeWin.cpp:
   68464         (WebCore::userIdleTime): Don't use GetLastInputInfo on CE, it does not
   68465         exist.
   68466 
   68467 2008-11-20  Antti Koivisto  <antti (a] apple.com>
   68468 
   68469         Reviewed by Maciej Stachowiak.
   68470 
   68471         https://bugs.webkit.org/show_bug.cgi?id=22379
   68472         Make CSSOM use less memory
   68473 
   68474         - Shrink CSSProperty by half by using bitfields.
   68475         - Get rid of m_strictParsing field in StyleBase by moving it up to CSSStyleSheet
   68476           and CSSMutableStyleDeclaration. This reduces size of many highly popular objects.
   68477 
   68478         * css/CSSMutableStyleDeclaration.cpp:
   68479         (WebCore::CSSMutableStyleDeclaration::CSSMutableStyleDeclaration):
   68480         (WebCore::CSSMutableStyleDeclaration::operator=):
   68481         * css/CSSMutableStyleDeclaration.h:
   68482         (WebCore::CSSMutableStyleDeclaration::setStrictParsing):
   68483         (WebCore::CSSMutableStyleDeclaration::useStrictParsing):
   68484         * css/CSSProperty.h:
   68485         * css/CSSStyleSheet.cpp:
   68486         (WebCore::CSSStyleSheet::CSSStyleSheet):
   68487         * css/CSSStyleSheet.h:
   68488         (WebCore::CSSStyleSheet::setStrictParsing):
   68489         (WebCore::CSSStyleSheet::useStrictParsing):
   68490         * css/StyleBase.h:
   68491         (WebCore::StyleBase::useStrictParsing):
   68492         (WebCore::StyleBase::StyleBase):
   68493 
   68494 2008-11-19  Darin Fisher  <darin (a] chromium.org>
   68495 
   68496         Fix bustage.
   68497 
   68498         https://bugs.webkit.org/show_bug.cgi?id=22373
   68499         Ports busted by addition of ScriptValue.{h,cpp}
   68500 
   68501         * plugins/PluginView.cpp:
   68502         (WebCore::PluginView::performRequest):
   68503 
   68504 2008-11-19  Darin Fisher  <darin (a] chromium.org>
   68505 
   68506         Bustage fix.
   68507 
   68508         https://bugs.webkit.org/show_bug.cgi?id=22373
   68509         Ports busted by addition of ScriptValue.{h,cpp}
   68510 
   68511         * GNUmakefile.am:
   68512         * WebCore.pro:
   68513         * WebCoreSources.bkl:
   68514         * dom/XMLTokenizerQt.cpp:
   68515         * plugins/PluginView.cpp:
   68516 
   68517 2008-11-19  Darin Fisher  <darin (a] chromium.org>
   68518 
   68519         Reviewed by Geoff Garen.
   68520 
   68521         https://bugs.webkit.org/show_bug.cgi?id=22345
   68522         Define ScriptValue as a thin container for a JSC::Value*.
   68523 
   68524         * WebCore.vcproj/WebCore.vcproj:
   68525         * WebCore.xcodeproj/project.pbxproj:
   68526         * bindings/js/ScheduledAction.cpp:
   68527         * bindings/js/ScriptController.cpp:
   68528         (WebCore::ScriptController::evaluate):
   68529         * bindings/js/ScriptController.h:
   68530         * bindings/js/ScriptValue.cpp: Added.
   68531         (WebCore::ScriptValue::getString):
   68532         * bindings/js/ScriptValue.h: Added.
   68533         (WebCore::ScriptValue::ScriptValue):
   68534         (WebCore::ScriptValue::jsValue):
   68535         * dom/ScriptElement.cpp:
   68536         * dom/XMLTokenizer.cpp:
   68537         * dom/XMLTokenizerLibxml2.cpp:
   68538         * html/HTMLTokenizer.cpp:
   68539         * loader/FrameLoader.cpp:
   68540         (WebCore::FrameLoader::executeIfJavaScriptURL):
   68541         (WebCore::FrameLoader::executeScript):
   68542         * loader/FrameLoader.h:
   68543 
   68544 2008-11-19  Beth Dakin  <bdakin (a] apple.com>
   68545 
   68546         Reviewed by Justin Garcia.
   68547 
   68548         Fix for <rdar://problem/5472507> Remove color property when a user
   68549         sets color to black
   68550 
   68551         This patch prevents us from inserting font nodes during the
   68552         ApplyStyleCommand if they will not change the computed style of an
   68553         element.
   68554 
   68555         * editing/ApplyStyleCommand.cpp:
   68556         (WebCore::fontColorChangesComputedStyle):
   68557         (WebCore::fontSizeChangesComputedStyle):
   68558         (WebCore::fontFaceChangesComputedStyle):
   68559         (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
   68560 
   68561 2008-11-19  Simon Fraser  <simon.fraser (a] apple.com>
   68562 
   68563         Reviewed by Antti Koivisto
   68564 
   68565         https://bugs.webkit.org/show_bug.cgi?id=22111
   68566 
   68567         Fix hit testing in controls on transformed video elements
   68568         by replacing absoluteBoundingBoxRect().contains() with
   68569         code that maps the point into local coords, taking
   68570         transforms into account.
   68571 
   68572         Test: media/video-controls-transformed.html
   68573 
   68574         * platform/graphics/MediaPlayer.h:
   68575         * rendering/RenderMedia.cpp:
   68576         (WebCore::rendererContainsPoint):
   68577         (WebCore::RenderMedia::forwardEvent):
   68578 
   68579 2008-11-19  Simon Fraser  <simon.fraser (a] apple.com>
   68580 
   68581         Reviewed by Darin Adler
   68582 
   68583         https://bugs.webkit.org/show_bug.cgi?id=22348
   68584 
   68585         Need to educate style sharing about autofill, so that style does not
   68586         get shared between input elements that are autofilled, and those
   68587         that are not. Setting autofill should also do a setChanged on the node.
   68588 
   68589         * css/CSSStyleSelector.cpp:
   68590         (WebCore::CSSStyleSelector::canShareStyleWithElement):
   68591         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
   68592         * dom/Node.h:
   68593         (WebCore::Node::isAutofilled):
   68594         * html/HTMLInputElement.cpp:
   68595         (WebCore::HTMLInputElement::setAutofilled):
   68596         * html/HTMLInputElement.h:
   68597         (WebCore::HTMLInputElement::isAutofilled):
   68598 
   68599 2008-11-19  Brett Wilson  <brettw (a] chromium.org>
   68600 
   68601         Reviewed by Antti Koivisto.
   68602 
   68603         https://bugs.webkit.org/show_bug.cgi?id=22349
   68604 
   68605         Clear the subresource loader client when the client is removed in
   68606         response to a 304 (not modified). This prevents an inconsistent state
   68607         where the loader thinks it's active and the loader::Host doesn't.
   68608 
   68609         * loader/loader.cpp:
   68610         (WebCore::Loader::Host::didReceiveResponse):
   68611 
   68612 2008-11-19  Alexey Proskuryakov  <ap (a] webkit.org>
   68613 
   68614         Reviewed by Darin Adler.
   68615 
   68616         https://bugs.webkit.org/show_bug.cgi?id=22355
   68617         Systematize code for replacing global constructors
   68618 
   68619         Test: fast/workers/worker-replace-global-constructor.html
   68620 
   68621         * bindings/js/JSDOMWindowBase.cpp:
   68622         (setJSDOMWindowBaseEvent): Changed to put the value as property, matching what generated
   68623         code for global constructor setters does.
   68624         (setJSDOMWindowBaseAudio): Ditto.
   68625         (setJSDOMWindowBaseImage): Ditto.
   68626         (setJSDOMWindowBaseMessageChannel): Ditto.
   68627         (setJSDOMWindowBaseOption): Ditto.
   68628         (setJSDOMWindowBaseWorker): Ditto.
   68629         (setJSDOMWindowBaseXMLHttpRequest): Ditto.
   68630         (setJSDOMWindowBaseXSLTProcessor): Ditto.
   68631         (WebCore::JSDOMWindowBase::put): Removed special cases for global constructors.
   68632 
   68633         * bindings/js/JSWorkerContext.cpp:
   68634         (WebCore::JSWorkerContext::getOwnPropertySlot): Look up overrides before own properties,
   68635         as it is done for Window.
   68636         (WebCore::setJSWorkerContextMessageEvent): Implemented in the same way as Window global
   68637         constructors are.
   68638         (WebCore::setJSWorkerContextWorkerLocation): Ditto.
   68639 
   68640 2008-11-19  Alexey Proskuryakov  <ap (a] webkit.org>
   68641 
   68642         Reviewed by Darin Adler.
   68643 
   68644         https://bugs.webkit.org/show_bug.cgi?id=22341
   68645         Text codecs should not use static data without locking
   68646 
   68647         * platform/text/TextCodecICU.cpp:
   68648         * platform/text/mac/TextCodecMac.cpp:
   68649         Made cached converters per-thread.
   68650 
   68651         * platform/text/TextEncodingRegistry.cpp:
   68652         (WebCore::encodingRegistryMutex): Added a mutex for codec maps access.
   68653         (WebCore::addToTextCodecMap): Don't use TextEncoding just to canonicalize the name, as it
   68654         causes a deadlock due to a recursive call into registry.
   68655         (WebCore::buildBaseTextCodecMaps): Added assertions.
   68656         (WebCore::newTextCodec): Take a lock to avoid concurrent access to codec maps.
   68657         (WebCore::atomicCanonicalTextEncodingName): Ditto.
   68658         (WebCore::noExtendedTextEncodingNameUsed): Added a comment, explaining why locking is not
   68659         necessary here.
   68660 
   68661 2008-11-19  Alexey Proskuryakov  <ap (a] webkit.org>
   68662 
   68663         Touch WebCorePrefix.h to force a rebuild, needed because of changed feature defines.
   68664 
   68665         * WebCorePrefix.h:
   68666 
   68667 2008-11-19  Alexey Proskuryakov  <ap (a] webkit.org>
   68668 
   68669         Reviewed by Darin Adler.
   68670 
   68671         https://bugs.webkit.org/show_bug.cgi?id=22310
   68672         Worker exceptions should be printed to console
   68673 
   68674         * dom/Document.cpp: (WebCore::Document::reportException):
   68675         * dom/Document.h:
   68676         * dom/ScriptExecutionContext.h:
   68677         * dom/WorkerContext.cpp: (WebCore::WorkerContext::reportException):
   68678         * dom/WorkerContext.h:
   68679         Added a reportException() method on ScriptExecutionContext. It forwards the exception info
   68680         up until it finds a Document context, and then it prints it to console.
   68681 
   68682         * bindings/js/JSEventListener.cpp:
   68683         (WebCore::JSAbstractEventListener::handleEvent): Don't talk to Console directly, use
   68684         ScriptExecutionContext::reportException. Also, fixed a bug where Document::updateDocumentsRendering()
   68685         could be called from workers.
   68686         (WebCore::JSLazyEventListener::parseCode): Moved variable declaration inside if block for clarity.
   68687 
   68688         * bindings/js/WorkerScriptController.cpp: (WebCore::WorkerScriptController::evaluate):
   68689         Report exceptions to ScriptExecutionContext.
   68690 
   68691         * dom/WorkerMessagingProxy.cpp:
   68692         (WebCore::MessageWorkerTask::performTask):
   68693         (WebCore::WorkerExceptionTask::create):
   68694         (WebCore::WorkerExceptionTask::WorkerExceptionTask):
   68695         (WebCore::WorkerExceptionTask::performTask):
   68696         (WebCore::WorkerMessagingProxy::postWorkerException):
   68697         * dom/WorkerMessagingProxy.h:
   68698         Added a task for posting exception information.
   68699 
   68700         * bindings/js/JSDOMBinding.cpp:
   68701         (WebCore::reportException):
   68702         (WebCore::reportCurrentException):
   68703         * bindings/js/JSDOMBinding.h:
   68704         Added helper methods for reporting exceptions via ScriptExecutionContext.
   68705 
   68706         * page/Console.cpp:
   68707         * page/Console.h:
   68708         Removed methods for directly reporting exceptions to console.
   68709 
   68710         * bindings/js/JSCustomPositionCallback.cpp:
   68711         (WebCore::JSCustomPositionCallback::handleEvent):
   68712         * bindings/js/JSCustomPositionErrorCallback.cpp:
   68713         (WebCore::JSCustomPositionErrorCallback::handleEvent):
   68714         * bindings/js/JSCustomSQLStatementCallback.cpp:
   68715         (WebCore::JSCustomSQLStatementCallback::handleEvent):
   68716         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
   68717         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
   68718         * bindings/js/JSCustomSQLTransactionCallback.cpp:
   68719         (WebCore::JSCustomSQLTransactionCallback::handleEvent):
   68720         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
   68721         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
   68722         * bindings/js/JSCustomVoidCallback.cpp:
   68723         (WebCore::JSCustomVoidCallback::handleEvent):
   68724         * bindings/js/JSCustomXPathNSResolver.cpp:
   68725         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
   68726         * bindings/js/ScheduledAction.cpp:
   68727         (WebCore::ScheduledAction::execute):
   68728         * bindings/js/ScriptController.cpp:
   68729         (WebCore::ScriptController::evaluate):
   68730         * bindings/objc/WebScriptObject.mm:
   68731         (WebCore::addExceptionToConsole):
   68732         Switch to JSDOMBinding methods for reporting exceptions.
   68733 
   68734 2008-11-18  Dan Bernstein  <mitz (a] apple.com>
   68735 
   68736         Reviewed by Mark Rowe.
   68737 
   68738         - WebCore part of https://bugs.webkit.org/show_bug.cgi?id=22331
   68739           <rdar://problem/6381657> REGRESSION: Contextual menu no longer has an "Inspect Element" item
   68740 
   68741         * platform/ContextMenuItem.h:
   68742         (WebCore::ContextMenuAction): Reorder this enum to keep it in sync with
   68743         the one in WebUIDelegate.h.
   68744 
   68745 2008-11-18  Dimitri Glazkov  <dglazkov (a] chromium.org>
   68746 
   68747         Reviewed by Darin Adler.
   68748 
   68749         https://bugs.webkit.org/show_bug.cgi?id=22346
   68750         PlatformString should also include HashSet.h for non-JSC builds
   68751 
   68752         * platform/text/PlatformString.h:
   68753 
   68754 2008-11-18  Adele Peterson  <adele (a] apple.com>
   68755 
   68756         Reviewed by Holger Hans Peter Freyther.
   68757 
   68758         Flip check added in recent refactoring so the background gets updated when the background color is valid, not invalid.
   68759 
   68760         * loader/FrameLoaderClient.cpp: (WebCore::FrameLoaderClient::transitionToCommittedForNewPage):
   68761 
   68762 2008-11-18  Dimitri Glazkov  <dglazkov (a] chromium.org>
   68763 
   68764         Reviewed by Sam Weinig.
   68765 
   68766         https://bugs.webkit.org/show_bug.cgi?id=22343
   68767         Remove unused runtime/Collector, JSLock includes in Page.cpp
   68768 
   68769         * page/Page.cpp:
   68770 
   68771 2008-11-18  Ada Chan  <adachan (a] apple.com>
   68772 
   68773         Bug 22344: Make select popup window opaque
   68774         https://bugs.webkit.org/show_bug.cgi?id=22344
   68775 
   68776         Reviewed by Steve Falkenburg.
   68777 
   68778         * platform/win/PopupMenuWin.cpp:
   68779         (WebCore::PopupMenu::show):
   68780 
   68781 2008-11-18  Dimitri Glazkov  <dglazkov (a] chromium.org>
   68782 
   68783         Reviewed by Sam Weinig.
   68784 
   68785         https://bugs.webkit.org/show_bug.cgi?id=22342
   68786         Remove unused JSLock.h include
   68787 
   68788         * dom/Document.cpp:
   68789 
   68790 2008-11-18  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   68791 
   68792         Reviewed by Sam Weinig.
   68793 
   68794         Fixes: https://bugs.webkit.org/show_bug.cgi?id=22334
   68795 
   68796         Add WMLBRElement, correcting <br/> behaviour in WML.
   68797         Enable entity replacment for WML documents.
   68798         Handle WML specific <p> 'mode' attribute.
   68799 
   68800         Generate layout tests results for fast/wml.
   68801 
   68802         Tests cases that pass now:
   68803         fast/wml/br-element-in-table.wml
   68804         fast/wml/br-element-in-text.wml
   68805         fast/wml/case-sensitivity.wml
   68806         fast/wml/cdata-section.wml
   68807         fast/wml/comment.wml
   68808         fast/wml/entity.wml
   68809         fast/wml/p-align.wml
   68810         fast/wml/p-mode.wml
   68811         fast/wml/text-emphasis.wml
   68812         fast/wml/validate-dtd.wml
   68813 
   68814         * GNUmakefile.am:
   68815         * WebCore.pro:
   68816         * WebCore.xcodeproj/project.pbxproj:
   68817         * dom/XMLTokenizer.cpp:
   68818         (WebCore::XMLTokenizer::isWMLDocument):
   68819         (WebCore::XMLTokenizer::insertErrorMessageBlock):
   68820         * dom/XMLTokenizer.h:
   68821         * dom/XMLTokenizerLibxml2.cpp:
   68822         (WebCore::XMLTokenizer::internalSubset):
   68823         (WebCore::getEntityHandler):
   68824         * dom/XMLTokenizerQt.cpp:
   68825         (WebCore::XMLTokenizer::parse):
   68826         * wml/WMLBRElement.cpp: Added.
   68827         (WebCore::WMLBRElement::WMLBRElement):
   68828         (WebCore::WMLBRElement::mapToEntry):
   68829         (WebCore::WMLBRElement::parseMappedAttribute):
   68830         (WebCore::WMLBRElement::createRenderer):
   68831         * wml/WMLBRElement.h: Added.
   68832         * wml/WMLPElement.cpp:
   68833         (WebCore::WMLPElement::parseMappedAttribute):
   68834         (WebCore::WMLPElement::insertedIntoDocument):
   68835         * wml/WMLPElement.h:
   68836         * wml/WMLTagNames.in:
   68837 
   68838 2008-11-18  Alexey Proskuryakov  <ap (a] webkit.org>
   68839 
   68840         Windows build fix.
   68841 
   68842         * WebCore.vcproj/WebCore.vcproj: Fix relative paths to use $(WebKitOutputDir).
   68843 
   68844 2008-11-18  Darin Adler  <darin (a] apple.com>
   68845 
   68846         - try to fix Wx build
   68847 
   68848         * WebCoreSources.bkl: Added FrameLoaderClient.cpp.
   68849 
   68850 2008-11-18  Alexey Proskuryakov  <ap (a] webkit.org>
   68851 
   68852         Reviewed by Darin Adler.
   68853 
   68854         https://bugs.webkit.org/show_bug.cgi?id=22337
   68855         Enable workers by default
   68856 
   68857         Tests: fast/workers/worker-constructor.html
   68858                fast/workers/worker-event-listener.html
   68859                fast/workers/worker-gc.html
   68860                fast/workers/worker-location.html
   68861 
   68862         * Configurations/WebCore.xcconfig:
   68863         * WebCore.vcproj/WebCore.vcproj:
   68864         * WebCore.vcproj/build-generated-files.sh:
   68865         Define ENABLE_WORKERS.
   68866 
   68867 2008-11-18  Darin Adler  <darin (a] apple.com>
   68868 
   68869         Reviewed by Alexey Proskuryakov.
   68870 
   68871         - first cut at https://bugs.webkit.org/show_bug.cgi?id=10957
   68872           <rdar://problem/5516594> please add support for HTTP-only cookies
   68873 
   68874         Test: http/tests/xmlhttprequest/get-dangerous-headers.html
   68875 
   68876         No test for HTTP-only support in JavaScript yet, since the Mac and Win changes
   68877         require an updated CFNetwork.
   68878 
   68879         * platform/mac/CookieJar.mm:
   68880         (WebCore::isHTTPOnly): Added.
   68881         (WebCore::filterCookies): Added.
   68882         (WebCore::cookies): Use filterCookies to prevent getting HTTP-only cookies.
   68883         (WebCore::setCookies): Use filterCookies to prevent setting HTTP-only cookies.
   68884 
   68885         * platform/network/win/CookieJarCFNetWin.cpp:
   68886         (WebCore::isHTTPOnly): Added.
   68887         (WebCore::filterCookies): Added.
   68888         (WebCore::setCookies): Use filterCookies to prevent getting HTTP-only cookies.
   68889         (WebCore::cookies): Use filterCookies to prevent getting HTTP-only cookies.
   68890 
   68891         * xml/XMLHttpRequest.cpp:
   68892         (WebCore::isSetCookieHeader): Added.
   68893         (WebCore::XMLHttpRequest::getAllResponseHeaders): Hide Set-Cookie headers from
   68894         clients that don't have local-resource privileges.
   68895         (WebCore::XMLHttpRequest::getResponseHeader): Ditto.
   68896 
   68897         - clean soup-specific details out of shared cookie jar header
   68898 
   68899         * platform/CookieJar.h: Removed the soup-specific parts of this.
   68900         * platform/network/soup/CookieJarSoup.cpp: Changed to include
   68901         CookieJarSoup.h. Tweaked implementation a bit to handle UTF-8 better.
   68902         * platform/network/soup/CookieJarSoup.h: Added. Has the Soup-specified
   68903         part of CookieJar.h.
   68904         * platform/network/soup/ResourceHandleSoup.cpp: Changed to include
   68905         CookieJarSoup.h.
   68906 
   68907 2008-11-18  Steve Falkenburg  <sfalken (a] apple.com>
   68908 
   68909         https://bugs.webkit.org/show_bug.cgi?id=22329
   68910         Improper bitwise and tests against 0 in Windows context menu code
   68911 
   68912         Reviewed by John Sullivan.
   68913 
   68914         * platform/win/ContextMenuItemWin.cpp:
   68915         (WebCore::ContextMenuItem::type):
   68916         (WebCore::ContextMenuItem::enabled):
   68917 
   68918 2008-11-18  John Sullivan  <sullivan (a] apple.com>
   68919 
   68920         Yet more Mac build fixing
   68921 
   68922         * WebCore.base.exp: Export __ZTVN7WebCore17FrameLoaderClientE
   68923 
   68924 2008-11-18  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   68925 
   68926         Reviewed by Simon Hausmann.
   68927 
   68928         React properly to frame rect changes for QWidget based plugins
   68929 
   68930         We now set the geometry of the QWidget in frameRectsChanged,
   68931         intead of setFrameRect, which means we pick up the changes to
   68932         the frame rect when scrolling. We also set a mask on the
   68933         widget to keep it from painting over scrollbars and the like
   68934 
   68935         * platform/qt/WidgetQt.cpp:
   68936         (WebCore::Widget::setFrameRect):
   68937 
   68938 2008-11-18  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   68939 
   68940         Rubber-stamped by Simon Hausmann.
   68941 
   68942         Don't mark scrollbars as focused in QtWebKit
   68943 
   68944         When initing from the widget we also got the focus state,
   68945         but this does not make sense for scrollbars.
   68946 
   68947         * platform/qt/ScrollbarThemeQt.cpp:
   68948         (WebCore::styleOptionSlider):
   68949 
   68950 2008-11-18  Alexey Proskuryakov  <ap (a] webkit.org>
   68951 
   68952         More Mac build fixing.
   68953 
   68954         * WebCore.base.exp: Export FrameLoaderClient destructor.
   68955 
   68956 2008-11-18  Alexey Proskuryakov  <ap (a] webkit.org>
   68957 
   68958         Mac build fix.
   68959 
   68960         * WebCore.xcodeproj/project.pbxproj: Add FrameLoaderClient.cpp for now.
   68961 
   68962 2008-11-18  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   68963 
   68964         Reviewed by Simon Hausmann.
   68965 
   68966         https://bugs.webkit.org/show_bug.cgi?id=22056
   68967 
   68968         Attempt to share transitionToCommittedForNewPage of FrameLoaderClient with the different ports
   68969 
   68970         After Hyatt's work on Widget and ScrollView there is little difference
   68971         between the implementation of Qt, Gtk+ and Win. In fact any kind of
   68972         difference is mostly a bug. Alp has fixed two of such errors for the Gtk+
   68973         port and the Qt port has at least one of them left.
   68974 
   68975         The only difference between the implementations is in getting the the
   68976         IntSize for the new FrameView, the background color to be applied and
   68977         eventually some post processing.
   68978 
   68979         Unify the implementations by providing a static helper function that
   68980         takes a Frame, IntSize, color and transparency bit and calling it from
   68981         the Gtk+, the Qt and the Windows port.
   68982 
   68983         * GNUmakefile.am:
   68984         * WebCore.pro:
   68985         * WebCore.vcproj/WebCore.vcproj:
   68986         * loader/FrameLoaderClient.cpp: Added.
   68987         (WebCore::FrameLoaderClient::~FrameLoaderClient):
   68988         (WebCore::FrameLoaderClient::transitionToCommittedForNewPage):
   68989         * loader/FrameLoaderClient.h:
   68990 
   68991 2008-11-18  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   68992 
   68993         Reviewed by Simon Hausmann.
   68994 
   68995         https://bugs.webkit.org/show_bug.cgi?id=22056
   68996 
   68997         Move setting the background color and transparency from WebKit/win
   68998         to WebCore. This allows WebKit/win, WebKit/Qt and WebKit/Gtk+
   68999         to share this code.
   69000 
   69001         * page/FrameView.cpp:
   69002         (WebCore::FrameView::updateBackgroundRecursively):
   69003         * page/FrameView.h:
   69004 
   69005 2008-11-18  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   69006 
   69007         Reviewed by Tor Arne Vestb.
   69008 
   69009         Fix the bug where select elements are painted without border.
   69010         http://trolltech.com/developer/task-tracker/index_html?id=218957&method=entry
   69011 
   69012         * platform/qt/RenderThemeQt.cpp:
   69013         (WebCore::RenderThemeQt::paintMenuList):
   69014 
   69015 2008-11-18  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   69016 
   69017         Gtk build fix. Not reviewed.
   69018 
   69019         * GNUmakefile.am: Fix USER_AGENT_STYLESHEETS, wml.css is in css/,
   69020         not in wml/.
   69021 
   69022 2008-11-18  Alexey Proskuryakov  <ap (a] webkit.org>
   69023 
   69024         Reviewed by Darin Adler.
   69025 
   69026         https://bugs.webkit.org/show_bug.cgi?id=22308
   69027         Improve Worker GC behavior
   69028 
   69029         * dom/ActiveDOMObject.cpp: (WebCore::ActiveDOMObject::hasPendingActivity):
   69030         * dom/ActiveDOMObject.h:
   69031         Made hasPendingActivity() virtual, letting Worker add behavior to it.
   69032 
   69033         * bindings/js/WorkerScriptController.cpp: (WebCore::WorkerScriptController::evaluate):
   69034         * dom/WorkerThread.cpp: (WebCore::WorkerThread::workerThread):
   69035         Tell message proxy whether there are active objects in the worker whenever JS execution
   69036         finishes.
   69037 
   69038         * dom/ScriptExecutionContext.h: (WebCore::ScriptExecutionContext::activeDOMObjects):
   69039         Added a typedef for activeDOMObjects() return type, necessary to declare iterators.
   69040 
   69041         * dom/Worker.h:
   69042         * dom/Worker.cpp: (WebCore::Worker::hasPendingActivity): A Worker is active if it is still
   69043         loading, or if it has unconfirmed messages, or it the worker thread has pending activity.
   69044 
   69045         * dom/WorkerContext.h:
   69046         * dom/WorkerContext.cpp: (WebCore::WorkerContext::hasPendingActivity): Check all registered
   69047         active objects for pending activity.
   69048 
   69049         * dom/WorkerMessagingProxy.cpp:
   69050         (WebCore::MessageWorkerContextTask::performTask):
   69051         (WebCore::WorkerThreadActivityReportTask::create):
   69052         (WebCore::WorkerThreadActivityReportTask::WorkerThreadActivityReportTask):
   69053         (WebCore::WorkerThreadActivityReportTask::performTask):
   69054         (WebCore::WorkerMessagingProxy::WorkerMessagingProxy):
   69055         (WebCore::WorkerMessagingProxy::postMessageToWorkerContext):
   69056         (WebCore::WorkerMessagingProxy::workerObjectDestroyed):
   69057         (WebCore::WorkerMessagingProxy::workerContextDestroyedInternal):
   69058         (WebCore::WorkerMessagingProxy::confirmWorkerThreadMessage):
   69059         (WebCore::WorkerMessagingProxy::reportWorkerThreadActivity):
   69060         (WebCore::WorkerMessagingProxy::reportWorkerThreadActivityInternal):
   69061         (WebCore::WorkerMessagingProxy::workerThreadHasPendingActivity):
   69062         * dom/WorkerMessagingProxy.h:
   69063         Track outstanding messages, and activity reported by worker thread.
   69064 
   69065 2008-11-18  Alexey Proskuryakov  <ap (a] webkit.org>
   69066 
   69067         Rubber-stamped by Darin Adler.
   69068 
   69069         https://bugs.webkit.org/show_bug.cgi?id=22306
   69070         Disable channel messaging support
   69071 
   69072         * bindings/js/JSDOMWindowBase.cpp:
   69073         (jsDOMWindowBaseMessageChannel):
   69074         * page/DOMWindow.idl:
   69075         Hide MesssagePort and MessageChannel global constructors. Due to the way MessageChannel
   69076         constructor is added, it remains enumerable, but undefined.
   69077 
   69078 2008-11-17  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   69079 
   69080         Reviewed by Mark Rowe.
   69081 
   69082         Remove WBXML code. MainResourceLoader is not an appropriate location.
   69083         Revert until we find a better place.
   69084 
   69085         The mime type which belongs to wmlc should be enabled anyway so WML documents get build.
   69086         Remove the ENABLE(WBXML) blocks around these types in MIMETypeRegistry / DOMImplementation.
   69087 
   69088         * WebCore.pro:
   69089         * dom/DOMImplementation.cpp:
   69090         (WebCore::DOMImplementation::createDocument):
   69091         * loader/MainResourceLoader.cpp:
   69092         (WebCore::MainResourceLoader::addData):
   69093         * platform/MIMETypeRegistry.cpp:
   69094         (WebCore::initializeSupportedNonImageMimeTypes):
   69095 
   69096 2008-11-17  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   69097 
   69098         Not reviewed. Build fix.
   69099 
   69100         Oops, disable WML by default on Qt.
   69101 
   69102         * WebCore.pro:
   69103 
   69104 2008-11-17  Nikolas Zimmermann  <nikolas.zimmermann (a] torchmobile.com>
   69105 
   69106         Reviewed by George Staikos.
   69107 
   69108         Fixes: https://bugs.webkit.org/show_bug.cgi?id=22324 (Add basic subset of WML elements)
   69109 
   69110         Add first bits of WML support. Only <card> & <p> and <a> elements are supported in this first patch.
   69111         Support for most other elements will be added step-by-step (merging in small chunks from a big patch).
   69112 
   69113         WML is not build by default.
   69114 
   69115         * DerivedSources.make: Handle WMLNames/WMLElementFactory generation.
   69116         * GNUmakefile.am: Add new files and generator hooks.
   69117         * WebCore.pro: Ditto.
   69118         * WebCore.xcodeproj/project.pbxproj: Ditto.
   69119         * css/CSSStyleSelector.cpp: Load wml.css on demand, just like it's done for SVG.
   69120         (WebCore::linkAttribute):
   69121         (WebCore::CSSStyleSelector::styleForElement):c
   69122         * css/wml.css: Added.
   69123         * dom/DOMImplementation.cpp: Handle WMLDocument creation
   69124         (WebCore::DOMImplementation::createDocument):
   69125         * dom/Document.cpp: Handle WMLElement creation.
   69126         (WebCore::Document::createElement):
   69127         * dom/Document.h: Add helper function identifying WML documents.
   69128         (WebCore::Document::isWMLDocument):
   69129         * dom/Node.h: Add heper function identifying WML elements.
   69130         (WebCore::Node::isWMLElement):
   69131         * dom/XMLTokenizer.cpp: Handle errors in WML documents
   69132         (WebCore::XMLTokenizer::insertErrorMessageBlock):
   69133         * dom/XMLTokenizerLibxml2.cpp: Add WML DTD checks.
   69134         (WebCore::XMLTokenizer::internalSubset):
   69135         * dom/XMLTokenizerQt.cpp: Ditto.
   69136         (WebCore::):
   69137         * dom/make_names.pl: Force internal linkage for the "tagConstructor" functions, avoiding SVG<->WML clashes.
   69138         * history/BackForwardList.cpp: Add WML specific function for clearing the history.
   69139         (WebCore::BackForwardList::clearWmlPageHistory):
   69140         * history/BackForwardList.h:
   69141         * loader/FrameLoader.cpp: Add WML specific 'shouldReload' logic.
   69142         (WebCore::FrameLoader::FrameLoader):
   69143         (WebCore::FrameLoader::setForceReloadWmlDeck):
   69144         (WebCore::FrameLoader::shouldReload):
   69145         (WebCore::FrameLoader::loadItem):
   69146         * loader/FrameLoader.h:
   69147         * loader/MainResourceLoader.cpp: Add WBXML support (only enabled on Linux/Qt at the moment)
   69148         (WebCore::MainResourceLoader::addData):
   69149         * page/Frame.cpp: Initialize WMLNames.
   69150         (WebCore::Frame::Frame):
   69151         * page/Page.cpp: Maintain WMLPageState object per Page.
   69152         (WebCore::Page::Page):
   69153         (WebCore::Page::setWMLPageState):
   69154         (WebCore::Page::wmlPageState):
   69155         * page/Page.h:
   69156         * platform/MIMETypeRegistry.cpp: Recognize WML extensions.
   69157         (WebCore::initializeSupportedNonImageMimeTypes):
   69158         * platform/gtk/MIMETypeRegistryGtk.cpp: Ditto.
   69159         (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
   69160         * platform/qt/MIMETypeRegistryQt.cpp: Ditto.
   69161         (WebCore::):
   69162         * platform/win/MIMETypeRegistryWin.cpp: Ditto.
   69163         (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
   69164         * manual-tests/wml: Added.
   69165         * manual-tests/wml/a-br-element.wml: Added.
   69166         * manual-tests/wml/a-element.wml: Added.
   69167         * manual-tests/wml/a-img-element.wml: Added.
   69168         * manual-tests/wml/access-target.wml: Added.
   69169         * manual-tests/wml/anchor-br-element.wml: Added.
   69170         * manual-tests/wml/anchor-element.wml: Added.
   69171         * manual-tests/wml/anchor-img-element.wml: Added.
   69172         * manual-tests/wml/card-newcontext-attr.wml: Added.
   69173         * manual-tests/wml/card-onenterbackward.wml: Added.
   69174         * manual-tests/wml/card-onenterforward.wml: Added.
   69175         * manual-tests/wml/card-ontimer.wml: Added.
   69176         * manual-tests/wml/deck-access-control.wml: Added.
   69177         * manual-tests/wml/go-element.wml: Added.
   69178         * manual-tests/wml/input-emptyok.wml: Added.
   69179         * manual-tests/wml/input-format.wml: Added.
   69180         * manual-tests/wml/onevent-go.wml: Added.
   69181         * manual-tests/wml/onevent-noop.wml: Added.
   69182         * manual-tests/wml/onevent-prev.wml: Added.
   69183         * manual-tests/wml/onevent-refresh.wml: Added.
   69184         * manual-tests/wml/onevent-shadow.wml: Added.
   69185         * manual-tests/wml/postfield-get.wml: Added.
   69186         * manual-tests/wml/postfield-post.wml: Added.
   69187         * manual-tests/wml/select-element.wml: Added.
   69188         * manual-tests/wml/select-onpick-event.wml: Added.
   69189         * manual-tests/wml/setvar-element.wml: Added.
   69190         * manual-tests/wml/targetdeck.wml: Added.
   69191         * manual-tests/wml/task-go-in-anchor.wml: Added.
   69192         * manual-tests/wml/task-noop-in-do.wml: Added.
   69193         * manual-tests/wml/task-noop-in-onevent.wml: Added.
   69194         * manual-tests/wml/task-prev-in-anchor.wml: Added.
   69195         * manual-tests/wml/task-refresh-in-anchor.wml: Added.
   69196         * manual-tests/wml/template-go.wml: Added.
   69197         * manual-tests/wml/template-onevent.wml: Added.
   69198         * manual-tests/wml/template-ontimer.wml: Added.
   69199         * manual-tests/wml/timer.wml: Added.
   69200         * manual-tests/wml/variable-substitution.wml: Added.
   69201         * wml: Added.
   69202         * wml/WMLAElement.cpp: Added.
   69203         (WebCore::WMLAElement::WMLAElement):
   69204         (WebCore::WMLAElement::parseMappedAttribute):
   69205         (WebCore::WMLAElement::supportsFocus):
   69206         (WebCore::WMLAElement::isFocusable):
   69207         (WebCore::WMLAElement::isMouseFocusable):
   69208         (WebCore::WMLAElement::isKeyboardFocusable):
   69209         (WebCore::WMLAElement::defaultEventHandler):
   69210         (WebCore::WMLAElement::accessKeyAction):
   69211         (WebCore::WMLAElement::isURLAttribute):
   69212         (WebCore::WMLAElement::target):
   69213         * wml/WMLAElement.h: Added.
   69214         * wml/WMLAttributeNames.in: Added.
   69215         * wml/WMLCardElement.cpp: Added.
   69216         (WebCore::WMLCardElement::WMLCardElement):
   69217         * wml/WMLCardElement.h: Added.
   69218         * wml/WMLDocument.cpp: Added.
   69219         (WebCore::WMLDocument::WMLDocument):
   69220         (WebCore::WMLDocument::~WMLDocument):
   69221         * wml/WMLDocument.h: Added.
   69222         (WebCore::WMLDocument::create):
   69223         (WebCore::WMLDocument::isWMLDocument):
   69224         * wml/WMLElement.cpp: Added.
   69225         (WebCore::WMLElement::WMLElement):
   69226         (WebCore::WMLElement::mapToEntry):
   69227         (WebCore::WMLElement::parseMappedAttribute):
   69228         (WebCore::WMLElement::rendererIsNeeded):
   69229         (WebCore::WMLElement::createRenderer):
   69230         * wml/WMLElement.h: Added.
   69231         (WebCore::WMLElement::isWMLElement):
   69232         * wml/WMLPElement.cpp: Added.
   69233         (WebCore::WMLPElement::WMLPElement):
   69234         (WebCore::WMLPElement::mapToEntry):
   69235         (WebCore::WMLPElement::parseMappedAttribute):
   69236         * wml/WMLPElement.h: Added.
   69237         * wml/WMLPageState.cpp: Added.
   69238         (WebCore::WMLPageState::WMLPageState):
   69239         (WebCore::WMLPageState::~WMLPageState):
   69240         (WebCore::WMLPageState::reset):
   69241         (WebCore::WMLPageState::setNeedCheckDeckAccess):
   69242         (WebCore::WMLPageState::isDeckAccessible):
   69243         * wml/WMLPageState.h: Added.
   69244         (WebCore::WMLPageState::storeVariable):
   69245         (WebCore::WMLPageState::storeVariables):
   69246         (WebCore::WMLPageState::getVaribale):
   69247         (WebCore::WMLPageState::hasVariables):
   69248         (WebCore::WMLPageState::historyLength):
   69249         (WebCore::WMLPageState::setHistoryLength):
   69250         (WebCore::WMLPageState::page):
   69251         (WebCore::WMLPageState::activeCard):
   69252         (WebCore::WMLPageState::setActiveCard):
   69253         (WebCore::WMLPageState::setDeckAccessDomain):
   69254         (WebCore::WMLPageState::setDeckAccessPath):
   69255         (WebCore::WMLPageState::hasDeckAccess):
   69256         * wml/WMLTagNames.in: Added.
   69257 
   69258 2008-11-17  Geoffrey Garen  <ggaren (a] apple.com>
   69259 
   69260         Reviewed by Sam Weinig.
   69261 
   69262         Updated for JavaScriptCore renames.
   69263 
   69264         * WebCore.pro:
   69265         * webcore-base.bkl:
   69266 
   69267 2008-11-17  Justin Garcia  <justin.garcia (a] apple.com>
   69268 
   69269         Reviewed by Beth Dakin.
   69270 
   69271         <rdar://problem/4922709> Copying less than a paragraph of quoted text and pasting it doesn't retain quote level
   69272 
   69273         There was code to intentionally avoid quoting pasted content if less than a paragraph of
   69274         it was copied.  That was added for <rdar://problem/5006779>, but was unnecessary because
   69275         that bug was about Paste and Match style for single paragraphs.  And quote stripping for
   69276         Paste and Match style is handled elsewhere.
   69277 
   69278         * editing/markup.cpp:
   69279         (WebCore::createMarkup):
   69280 
   69281 2008-11-17  Geoffrey Garen  <ggaren (a] apple.com>
   69282 
   69283         Reviewed by Sam Weinig.
   69284 
   69285         Updated for JavaScriptCore rename.
   69286 
   69287         * ForwardingHeaders/interpreter/CallFrame.h: Copied from WebCore/ForwardingHeaders/runtime/ExecState.h.
   69288         * ForwardingHeaders/runtime/ExecState.h: Removed.
   69289         * bindings/objc/WebScriptObject.mm:
   69290         * bridge/c/c_instance.cpp:
   69291         * bridge/jni/jni_jsobject.mm:
   69292         * dom/Node.cpp:
   69293         * dom/NodeFilter.cpp:
   69294         * dom/NodeIterator.cpp:
   69295         * dom/TreeWalker.cpp:
   69296         * inspector/JavaScriptCallFrame.h:
   69297 
   69298 2008-11-17  Pierre-Olivier Latour  <pol (a] apple.com>
   69299 
   69300         Reviewed by Sam Weinig.
   69301 
   69302         Added functionality to AnimationController to allow pausing a running
   69303         animation or transition at a given time for testing purposes.
   69304 
   69305         https://bugs.webkit.org/show_bug.cgi?id=21261
   69306 
   69307         Tests: animations/animation-drt-api.html
   69308                transitions/transition-drt-api.html
   69309 
   69310         * WebCore.base.exp:
   69311         * WebCore.xcodeproj/project.pbxproj:
   69312         * page/animation/AnimationBase.cpp:
   69313         (WebCore::AnimationBase::updateStateMachine):
   69314         (WebCore::AnimationBase::progress):
   69315         (WebCore::AnimationBase::pauseAtTime):
   69316         * page/animation/AnimationBase.h:
   69317         * page/animation/AnimationController.cpp:
   69318         (WebCore::AnimationControllerPrivate::pauseAnimationAtTime):
   69319         (WebCore::AnimationControllerPrivate::pauseTransitionAtTime):
   69320         (WebCore::AnimationController::pauseAnimationAtTime):
   69321         (WebCore::AnimationController::pauseTransitionAtTime):
   69322         * page/animation/AnimationController.h:
   69323         * page/animation/CompositeAnimation.cpp:
   69324         (WebCore::CompositeAnimationPrivate::isAnimating):
   69325         (WebCore::CompositeAnimationPrivate::pauseAnimationAtTime):
   69326         (WebCore::CompositeAnimationPrivate::pauseTransitionAtTime):
   69327         (WebCore::CompositeAnimation::pauseAnimationAtTime):
   69328         (WebCore::CompositeAnimation::pauseTransitionAtTime):
   69329         * page/animation/CompositeAnimation.h:
   69330         * page/animation/ImplicitAnimation.cpp:
   69331         (WebCore::ImplicitAnimation::animate):
   69332 
   69333 2008-11-17  Geoffrey Garen  <ggaren (a] apple.com>
   69334 
   69335         Reviewed by Sam Weinig.
   69336 
   69337         Updated for JavaScriptCore renames.
   69338 
   69339         * ForwardingHeaders/VM: Removed.
   69340         * ForwardingHeaders/VM/Machine.h: Removed.
   69341         * ForwardingHeaders/interpreter: Added.
   69342         * ForwardingHeaders/interpreter/Interpreter.h: Copied from ForwardingHeaders/VM/Machine.h.
   69343         * WebCore.pro:
   69344         * bindings/js/JSXMLHttpRequestCustom.cpp:
   69345         * page/Console.cpp:
   69346         * webcore-base.bkl:
   69347 
   69348 2008-11-17  Geoffrey Garen  <ggaren (a] apple.com>
   69349 
   69350         Reviewed by Sam Weinig.
   69351 
   69352         Updated for JavaScriptCore renames.
   69353 
   69354         * ForwardingHeaders/runtime/Interpreter.h: Removed.
   69355         * WebCore.vcproj/WebCore.vcproj:
   69356         * bindings/js/JSDOMBinding.h:
   69357         * bindings/js/WorkerScriptController.cpp:
   69358         * bindings/objc/WebScriptObject.mm:
   69359         * bridge/NP_jsobject.cpp:
   69360         * bridge/jni/jni_jsobject.mm:
   69361         * html/CanvasRenderingContext2D.cpp:
   69362         * inspector/JavaScriptCallFrame.cpp:
   69363         * page/Console.cpp:
   69364 
   69365 2008-11-17  Geoffrey Garen  <ggaren (a] apple.com>
   69366 
   69367         Not reviewed.
   69368 
   69369         Try to fix wx build.
   69370 
   69371         * webcore-base.bkl:
   69372 
   69373 2008-11-17  Greg Bolsinga  <bolsinga (a] apple.com>
   69374 
   69375         Reviewed by Darin Adler.
   69376 
   69377         https://bugs.webkit.org/show_bug.cgi?id=21810
   69378         Remove use of static C++ objects that are destroyed at exit time (destructors)
   69379 
   69380         Find some missing DEFINE_STATIC_LOCAL use cases.
   69381 
   69382         * bindings/js/JSSVGPODTypeWrapper.h:
   69383         (WebCore::PODTypeWrapperCacheInfoTraits::emptyValue):
   69384         (WebCore::JSSVGDynamicPODTypeWrapperCache::dynamicWrapperHashMap):
   69385         * dom/make_names.pl: Generate code to use DEFINE_STATIC_LOCAL.
   69386         * page/AccessibilityRenderObject.cpp:
   69387         (WebCore::RoleEntry::): This method is only called once, so the array does not have to be static.
   69388         * platform/graphics/FontCache.cpp:
   69389         (WebCore::FontPlatformDataCacheKeyTraits::emptyValue):
   69390         (WebCore::FontDataCacheKeyTraits::emptyValue):
   69391         * rendering/style/RenderStyle.h:
   69392         (WebCore::InheritedFlags::initialTransform):
   69393 
   69394 2008-11-17  Geoffrey Garen  <ggaren (a] apple.com>
   69395 
   69396         Not reviewed.
   69397 
   69398         Try to fix Qt build.
   69399 
   69400         * WebCore.pro:
   69401 
   69402 2008-11-16  Simon Fraser  <simon.fraser (a] apple.com>
   69403 
   69404         Reviewed by Dan Bernstein
   69405 
   69406         https://bugs.webkit.org/show_bug.cgi?id=22118
   69407 
   69408         Fix resize corner tracking in transformed elements by using
   69409         mapping the point into local coords using absoluteToLocal,
   69410         rather than convertToLayerCoords.
   69411 
   69412         Test: fast/css/resize-corner-tracking-transformed.html
   69413 
   69414         * page/EventHandler.h:
   69415         * rendering/RenderLayer.cpp:
   69416         (WebCore::RenderLayer::absoluteToContents):
   69417         (WebCore::RenderLayer::offsetFromResizeCorner):
   69418         (WebCore::RenderLayer::isPointInResizeControl):
   69419         * rendering/RenderLayer.h:
   69420 
   69421 2008-11-16  Geoffrey Garen  <ggaren (a] apple.com>
   69422 
   69423         Not reviewed.
   69424 
   69425         Try to fix Qt build.
   69426 
   69427         * WebCore.pro:
   69428 
   69429 2008-11-16  Greg Bolsinga  <bolsinga (a] apple.com>
   69430 
   69431         Reviewed by Geoffrey Garen.
   69432 
   69433         Use RefPtr and PassRefPtr where appropriate.
   69434 
   69435         * loader/FTPDirectoryDocument.cpp:
   69436         (WebCore::createTemplateDocumentData):
   69437 
   69438 2008-11-16  Greg Bolsinga  <bolsinga (a] apple.com>
   69439 
   69440         Fix build break for real.
   69441 
   69442         * loader/FTPDirectoryDocument.cpp:
   69443         (WebCore::createTemplateDocumentData):
   69444 
   69445 2008-11-16  Greg Bolsinga  <bolsinga (a] apple.com>
   69446 
   69447         Fix build break and bug.
   69448 
   69449         * loader/FTPDirectoryDocument.cpp:
   69450         (WebCore::createTemplateDocumentData):
   69451 
   69452 2008-11-16  Greg Bolsinga  <bolsinga (a] apple.com>
   69453 
   69454         Reviewed by Darin Adler.
   69455 
   69456         https://bugs.webkit.org/show_bug.cgi?id=21810
   69457         Remove use of static C++ objects that are destroyed at exit time (destructors)
   69458 
   69459         Use DEFINE_STATIC_LOCAL for static RetainPtr<T>, RefPtr<T>. Add additional
   69460         uses of DEFINE_STATIC_LOCAL where appropriate.
   69461 
   69462         * html/HTMLTableElement.cpp:
   69463         (WebCore::HTMLTableElement::addSharedCellBordersDecl): new the AtomicStrings
   69464         * loader/CachedImage.cpp:
   69465         (WebCore::brokenImage):
   69466         (WebCore::nullImage):
   69467         * loader/FTPDirectoryDocument.cpp:
   69468         (WebCore::_createTemplateDocumentData): Created so accessor has one line initialization
   69469         (WebCore::FTPDirectoryTokenizer::loadDocumentTemplate):
   69470         * loader/icon/IconDatabase.cpp:
   69471         (WebCore::loadDefaultIconRecord):
   69472         * page/AccessibilityObject.cpp:
   69473         (WebCore::AccessibilityObject::actionVerb):
   69474         * page/AccessibilityRenderObject.cpp:
   69475         (WebCore::AccessibilityRenderObject::actionVerb):
   69476         * page/mac/EventHandlerMac.mm:
   69477         (WebCore::currentEvent):
   69478         * platform/ScrollView.cpp:
   69479         (WebCore::ScrollView::paint):
   69480         * platform/graphics/Image.cpp:
   69481         (WebCore::Image::nullImage):
   69482         * platform/graphics/mac/ColorMac.mm:
   69483         (WebCore::nsColor):
   69484         * platform/graphics/mac/FontCacheMac.mm: new the Strings
   69485         (WebCore::FontCache::getSimilarFontPlatformData):
   69486         * platform/graphics/mac/GraphicsContextMac.mm:
   69487         (WebCore::_createPatternColor): Created so accessor has one line initialization
   69488         (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):
   69489         * platform/graphics/mac/SimpleFontDataMac.mm:
   69490         (WebCore::webFallbackFontFamily):
   69491         * platform/mac/PasteboardMac.mm:
   69492         (WebCore::writableTypesForURL):
   69493         (WebCore::createWritableTypesForImage): Created so accessor has one line initialization
   69494         (WebCore::writableTypesForImage):
   69495         (WebCore::stripAttachmentCharacters):
   69496         * rendering/RenderLayer.cpp:
   69497         (WebCore::RenderLayer::paintResizer):
   69498 
   69499 2008-11-16  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   69500 
   69501         Reviewed by Darin Adler.
   69502 
   69503         Do not spit Curl errors into the stdout as this is used by DRT
   69504 
   69505         We have failing tests results due the curl errors printed to stdout,
   69506         move them to stderr to be able to pass those tests.
   69507 
   69508         * platform/network/curl/ResourceHandleManager.cpp:
   69509         (WebCore::ResourceHandleManager::startJob):
   69510 
   69511 2008-11-16  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   69512 
   69513         - fix the Gtk+ build
   69514 
   69515         * GNUmakefile.am:
   69516 
   69517 2008-11-16  Darin Adler  <darin (a] apple.com>
   69518 
   69519         - try to fix Qt build
   69520 
   69521         * WebCore.pro: Add the worker-related source files.
   69522 
   69523 2008-11-16  Darin Adler  <darin (a] apple.com>
   69524 
   69525         Suggested by Alexey Proskuryakov.
   69526 
   69527         - fix the GTK build another way
   69528 
   69529         * GNUmakefile.am: Add the worker-related source files.
   69530         * bindings/js/JSEventTarget.cpp: Take the #if back out.
   69531 
   69532 2008-11-16  Darin Adler  <darin (a] apple.com>
   69533 
   69534         - try to fix GTK build
   69535 
   69536         * bindings/js/JSEventTarget.cpp: Put worker includes inside an #if.
   69537 
   69538 2008-11-16  Darin Adler  <darin (a] apple.com>
   69539 
   69540         Reviewed by Dan Bernstein.
   69541 
   69542         - https://bugs.webkit.org/show_bug.cgi?id=22295
   69543           track which history items are from page load failures
   69544 
   69545         * history/HistoryItem.cpp: Sort includes, add newly needed ones, and remove
   69546         no-longer-needed ones.
   69547         (WebCore::HistoryItem::HistoryItem): Initialize m_lastVisitWasFailure to false.
   69548         (WebCore::HistoryItem::showTreeWithIndent): Rewrote to avoid appending to a
   69549         String, since that's not efficient.
   69550 
   69551         * history/HistoryItem.h: Removed unneeded includes. Added lastVisitWasFailure,
   69552         setLastVisitWasFailure, and m_lastVisitWasFailure.
   69553 
   69554         * history/mac/HistoryItemMac.mm: Add newly-needed include
   69555         (WebCore::HistoryItem::setTransientProperty): Rewrote to avoid keeping a
   69556         m_transientProperties map around when it is empty.
   69557 
   69558         * loader/FrameLoader.cpp:
   69559         (WebCore::FrameLoader::createHistoryItem): Call setLastVisitWasFailure when
   69560         the page was unreachable or an HTTP page with a status code that indicates
   69561         failure.
   69562 
   69563 2008-11-16  Yong Li  <yong.li (a] torchmobile.com>
   69564 
   69565         Reviewed by Timothy Hatcher.
   69566         Landed by George Staikos.
   69567 
   69568         Optimization: don't relayout, repaint, or emit a DOM event if the
   69569         scroll event didn't scroll anywhere.
   69570 
   69571         * rendering/RenderLayer.cpp:
   69572         (WebCore::RenderLayer::scrollToOffset): add early exit
   69573 
   69574 2008-11-16  Alexey Proskuryakov  <ap (a] webkit.org>
   69575 
   69576         Reviewed by Dan Bernstein.
   69577 
   69578         https://bugs.webkit.org/show_bug.cgi?id=22290
   69579         Remove cross-heap GC and MessagePort multi-threading support
   69580 
   69581         It is broken (and may not be implementable at all), and no longer needed, as we
   69582         don't use MessagePorts for communication with workers any more.
   69583 
   69584         * bindings/js/JSDOMBinding.cpp:
   69585         * bindings/js/JSDOMBinding.h:
   69586         * bindings/js/JSDOMWindowBase.cpp:
   69587         * bindings/js/JSDOMWindowBase.h:
   69588         Removed cross-heap GC implementation.
   69589 
   69590         * dom/MessagePort.cpp:
   69591         (WebCore::MessagePort::hasPendingActivity):
   69592         * dom/MessagePort.h:
   69593         Made objects RefCounted instead of ThreadSafeShared, added FIXME comments for code that is
   69594         unnecessarily complicated for single threaded case.
   69595 
   69596 2008-11-14  Alexey Proskuryakov  <ap (a] webkit.org>
   69597 
   69598         Reviewed by Maciej Stachowiak.
   69599 
   69600         https://bugs.webkit.org/show_bug.cgi?id=22266
   69601         Stop using MessagePort for communication with workers
   69602 
   69603         The current MessagePort specification is not well suited for being implemented in a
   69604         multi-threaded or multi-process environment, and this doesn't appear to be easily fixable.
   69605         This patch implements a simpler Mozilla API for workers instead.
   69606 
   69607         * WebCore.xcodeproj/project.pbxproj:
   69608         * DerivedSources.make:
   69609         * bindings/js/JSDOMWindowBase.cpp: (jsDOMWindowBaseWorker):
   69610         * bindings/js/JSDedicatedWorkerConstructor.cpp: Removed.
   69611         * bindings/js/JSDedicatedWorkerConstructor.h: Removed.
   69612         * bindings/js/JSDedicatedWorkerCustom.cpp: Removed.
   69613         * bindings/js/JSWorkerConstructor.cpp: Copied from WebCore/bindings/js/JSDedicatedWorkerConstructor.cpp.
   69614         * bindings/js/JSWorkerConstructor.h: Copied from WebCore/bindings/js/JSDedicatedWorkerConstructor.h.
   69615         * bindings/js/JSWorkerCustom.cpp: Copied from WebCore/bindings/js/JSDedicatedWorkerCustom.cpp.
   69616         * dom/DedicatedWorker.cpp: Removed.
   69617         * dom/DedicatedWorker.h: Removed.
   69618         * dom/DedicatedWorker.idl: Removed.
   69619         Renamed DedicatedWorker to Worker to match Mozilla and current WHATWG cpec.
   69620 
   69621         * bindings/js/JSEventListener.cpp: (WebCore::JSAbstractEventListener::handleEvent):
   69622         Clear worker exceptions to avoid hitting an assertion.
   69623 
   69624         * dom/EventTarget.cpp: (WebCore::EventTarget::toWorker):
   69625         * dom/EventTarget.h:
   69626         * bindings/js/JSEventTarget.cpp: (WebCore::toJS):
   69627         WorkerContext is now an EventTarget, too.
   69628 
   69629         * bindings/js/JSWorkerContext.cpp: Removed onconnect, constructors for MessageChannel and
   69630         MessagePort. Added postMessage() and onmessage.
   69631 
   69632         * dom/ScriptExecutionContext.cpp: (WebCore::performTask): Do not reference ScriptExecutionContext
   69633         when posting a task - this operation is not thread safe. It is also not necessary any more,
   69634         as the context is kept alive by WorkerMessagingProxy.
   69635 
   69636         * dom/Worker.cpp: Copied from WebCore/dom/DedicatedWorker.cpp.
   69637         (WebCore::Worker::Worker): Start loading the script right away - there is no reason to do
   69638         that on a timer.
   69639         (WebCore::Worker::~Worker): Notify messaging proxy.
   69640         (WebCore::Worker::postMessage): Just ask the proxy to post the message.
   69641         (WebCore::Worker::notifyFinished): Notify messaging proxy when a thread object becomes
   69642         available. Also, it is now safe to unsetPendingActivity(), making the object collectable.
   69643         I'm not sure if this is the right lifetime for workers, as unreachable workers with event
   69644         listeners should probably be kept alive, but it at least lets the object be collected.
   69645         (WebCore::Worker::addEventListener): Added an EventTarget implementation.
   69646         (WebCore::Worker::removeEventListener): Added an EventTarget implementation.
   69647         (WebCore::Worker::dispatchEvent): Added an EventTarget implementation.
   69648 
   69649         * dom/Worker.h: Copied from WebCore/dom/DedicatedWorker.h.
   69650         * dom/Worker.idl: Copied from WebCore/dom/DedicatedWorker.idl.
   69651         Removed onclose, made an EventListener. Actual messaging is now handled by WorkerMessagingProxy.
   69652 
   69653         * dom/WorkerContext.cpp:
   69654         (WebCore::WorkerContext::~WorkerContext): Notify messaging proxy that the context was shut
   69655         down successfully.
   69656         (WebCore::WorkerContext::postMessage): Added. Post the message via messaging proxy.
   69657 
   69658         * dom/WorkerContext.h: Added postMessage and onmessage, removed onconnect.
   69659 
   69660         * dom/WorkerMessagingProxy.cpp: Added.
   69661         * dom/WorkerMessagingProxy.h: Added.
   69662         This new class implements actual messaging. It is notified when a Worker is garbage collected,
   69663         and asks the thread to shut down. It also owns the thread object, and references script
   69664         execution context, making it safe to post messages to it remotely.
   69665 
   69666         * dom/WorkerThread.cpp:
   69667         * dom/WorkerThread.h:
   69668         Keep a reference to messaging proxy, not to Worker itself. Also, the thread object no longer
   69669         keeps itself alive - it is now the job of messaging proxy.
   69670 
   69671 2008-11-15  Darin Adler  <darin (a] apple.com>
   69672 
   69673         Rubber stamped by Geoff Garen.
   69674 
   69675         - do the long-planned StructureID -> Structure rename
   69676 
   69677         * ForwardingHeaders/runtime/Structure.h: Copied from WebCore/ForwardingHeaders/runtime/StructureID.h.
   69678         * ForwardingHeaders/runtime/StructureID.h: Removed.
   69679         * bindings/js/JSAudioConstructor.cpp:
   69680         (WebCore::JSAudioConstructor::JSAudioConstructor):
   69681         * bindings/js/JSDOMBinding.cpp:
   69682         (WebCore::getCachedDOMStructure):
   69683         (WebCore::cacheDOMStructure):
   69684         * bindings/js/JSDOMBinding.h:
   69685         (WebCore::DOMObject::DOMObject):
   69686         (WebCore::getDOMStructure):
   69687         * bindings/js/JSDOMGlobalObject.cpp:
   69688         (WebCore::JSDOMGlobalObject::JSDOMGlobalObject):
   69689         * bindings/js/JSDOMGlobalObject.h:
   69690         * bindings/js/JSDOMWindowBase.cpp:
   69691         (WebCore::JSDOMWindowBase::JSDOMWindowBase):
   69692         * bindings/js/JSDOMWindowBase.h:
   69693         * bindings/js/JSDOMWindowShell.cpp:
   69694         (WebCore::JSDOMWindowShell::JSDOMWindowShell):
   69695         (WebCore::JSDOMWindowShell::setWindow):
   69696         * bindings/js/JSDOMWindowShell.h:
   69697         (WebCore::JSDOMWindowShell::createStructure):
   69698         * bindings/js/JSDedicatedWorkerConstructor.cpp:
   69699         (WebCore::JSDedicatedWorkerConstructor::JSDedicatedWorkerConstructor):
   69700         * bindings/js/JSHTMLAllCollection.h:
   69701         (WebCore::JSHTMLAllCollection::JSHTMLAllCollection):
   69702         (WebCore::JSHTMLAllCollection::createStructure):
   69703         * bindings/js/JSImageConstructor.cpp:
   69704         (WebCore::JSImageConstructor::JSImageConstructor):
   69705         * bindings/js/JSInspectedObjectWrapper.cpp:
   69706         (WebCore::JSInspectedObjectWrapper::wrap):
   69707         (WebCore::JSInspectedObjectWrapper::JSInspectedObjectWrapper):
   69708         * bindings/js/JSInspectedObjectWrapper.h:
   69709         * bindings/js/JSInspectorCallbackWrapper.cpp:
   69710         (WebCore::leakInspectorCallbackWrapperStructure):
   69711         (WebCore::JSInspectorCallbackWrapper::wrap):
   69712         (WebCore::JSInspectorCallbackWrapper::JSInspectorCallbackWrapper):
   69713         * bindings/js/JSInspectorCallbackWrapper.h:
   69714         * bindings/js/JSMessageChannelConstructor.cpp:
   69715         (WebCore::JSMessageChannelConstructor::JSMessageChannelConstructor):
   69716         * bindings/js/JSNamedNodesCollection.h:
   69717         (WebCore::JSNamedNodesCollection::createStructure):
   69718         * bindings/js/JSOptionConstructor.cpp:
   69719         (WebCore::JSOptionConstructor::JSOptionConstructor):
   69720         * bindings/js/JSQuarantinedObjectWrapper.cpp:
   69721         (WebCore::JSQuarantinedObjectWrapper::JSQuarantinedObjectWrapper):
   69722         * bindings/js/JSQuarantinedObjectWrapper.h:
   69723         (WebCore::JSQuarantinedObjectWrapper::createStructure):
   69724         * bindings/js/JSRGBColor.h:
   69725         (WebCore::JSRGBColor::createStructure):
   69726         * bindings/js/JSWorkerContext.cpp:
   69727         (WebCore::createJSWorkerContextStructure):
   69728         (WebCore::JSWorkerContext::JSWorkerContext):
   69729         (WebCore::JSWorkerContext::createPrototype):
   69730         * bindings/js/JSWorkerContext.h:
   69731         (WebCore::JSWorkerContext::createStructure):
   69732         (WebCore::JSWorkerContextPrototype::JSWorkerContextPrototype):
   69733         (WebCore::JSWorkerContextPrototype::createStructure):
   69734         * bindings/js/JSXMLHttpRequestConstructor.cpp:
   69735         (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
   69736         * bindings/js/JSXSLTProcessorConstructor.cpp:
   69737         (WebCore::JSXSLTProcessorConstructor::JSXSLTProcessorConstructor):
   69738         * bindings/scripts/CodeGeneratorJS.pm:
   69739         * bridge/objc/objc_runtime.h:
   69740         (JSC::Bindings::ObjcFallbackObjectImp::createStructure):
   69741         * bridge/qt/qt_runtime.cpp:
   69742         (JSC::Bindings::QtConnectionObject::execute):
   69743         * bridge/qt/qt_runtime.h:
   69744         (JSC::Bindings::QtRuntimeMethod::createStructure):
   69745         * bridge/runtime_array.h:
   69746         (JSC::RuntimeArray::createStructure):
   69747         * bridge/runtime_method.h:
   69748         (JSC::RuntimeMethod::createStructure):
   69749         * bridge/runtime_object.cpp:
   69750         (JSC::RuntimeObjectImp::RuntimeObjectImp):
   69751         * bridge/runtime_object.h:
   69752         (JSC::RuntimeObjectImp::createStructure):
   69753 
   69754 2008-11-15  Darin Adler  <darin (a] apple.com>
   69755 
   69756         Reviewed by Dan Bernstein.
   69757 
   69758         - fix just-introduced crash in the svg/custom/svg-fonts-in-html.html test
   69759 
   69760         This gets rid of the crash. It restores the behavior of the CG case from before Dirk
   69761         Shulze removed the platorm-dependent code, but perhaps it should be changed further
   69762         in the future so that the default for no style is "no stroke". I think the patch is
   69763         fine for fill.
   69764 
   69765         * svg/graphics/SVGPaintServerSolid.cpp:
   69766         (WebCore::SVGPaintServerSolid::setup): Added null checks for svgStyle.
   69767         (WebCore::SVGPaintServerSolid::renderPath): Added null checks for style and svgStyle.
   69768 
   69769 2008-11-15  Kevin Ollivier  <kevino (a] theolliviers.com>
   69770 
   69771         Reviewed by Timothy Hatcher.
   69772 
   69773         Initialize m_networkStateChangedFunction to 0 as otherwise the check for null will fail.
   69774 
   69775         https://bugs.webkit.org/show_bug.cgi?id=22284
   69776 
   69777         * platform/network/NetworkStateNotifier.h:
   69778         (WebCore::NetworkStateNotifier::NetworkStateNotifier):
   69779 
   69780 2008-11-15  Dirk Schulze  <krit (a] webkit.org>
   69781 
   69782         Reviewed by Geoffrey Garen.
   69783 
   69784         r38426 caused a wrong drawing of a LayoutTest. Use another
   69785         way to set the color to pass this test again.
   69786 
   69787         * svg/graphics/SVGPaintServerSolid.cpp:
   69788         (WebCore::SVGPaintServerSolid::setup):
   69789 
   69790 2008-11-15  Dirk Schulze  <krit (a] webkit.org>
   69791 
   69792         Reviewed by Darin Adler.
   69793 
   69794         Removed platform dependent code on SVGPaintServerSolid.
   69795 
   69796         * GNUmakefile.am:
   69797         * WebCore.pro:
   69798         * WebCore.vcproj/WebCore.vcproj:
   69799         * WebCore.xcodeproj/project.pbxproj:
   69800         * svg/graphics/SVGPaintServerSolid.cpp:
   69801         (WebCore::SVGPaintServerSolid::setup):
   69802         (WebCore::SVGPaintServerSolid::renderPath):
   69803         * svg/graphics/SVGPaintServerSolid.h:
   69804         * svg/graphics/cairo/SVGPaintServerSolidCairo.cpp: Removed.
   69805         * svg/graphics/cg/SVGPaintServerSolidCg.cpp: Removed.
   69806         * svg/graphics/qt/SVGPaintServerSolidQt.cpp: Removed.
   69807 
   69808 2008-11-15  Geoffrey Garen  <ggaren (a] apple.com>
   69809 
   69810         Reviewed by Sam Weinig.
   69811 
   69812         Updated for JavaScriptCore renames.
   69813 
   69814         * bindings/js/JSNodeCustom.cpp:
   69815         (WebCore::JSNode::mark):
   69816         * bindings/js/JSXMLHttpRequestCustom.cpp:
   69817         (WebCore::JSXMLHttpRequest::send):
   69818         * bindings/js/ScriptController.cpp:
   69819         (WebCore::ScriptController::evaluate):
   69820         * bindings/js/WorkerScriptController.cpp:
   69821         (WebCore::WorkerScriptController::evaluate):
   69822         * bindings/objc/WebScriptObject.mm:
   69823         (-[WebScriptObject evaluateWebScript:]):
   69824         * bridge/NP_jsobject.cpp:
   69825         (_NPN_Evaluate):
   69826         * bridge/jni/jni_jsobject.mm:
   69827         (JavaJSObject::eval):
   69828         * page/Console.cpp:
   69829         (WebCore::retrieveLastCaller):
   69830         (WebCore::Console::trace):
   69831 
   69832 2008-11-14  Greg Bolsinga  <bolsinga (a] apple.com>
   69833 
   69834         Reviewed by Darin Adler.
   69835 
   69836         https://bugs.webkit.org/show_bug.cgi?id=21810
   69837         Remove use of static C++ objects that are destroyed at exit time (destructors)
   69838 
   69839         Create DEFINE_STATIC_LOCAL macro. Change static local objects to leak to avoid
   69840         exit-time destructor. Update code that was changed to fix this issue that ran
   69841         into a gcc bug (<rdar://problem/6354696> Codegen issue with C++ static reference
   69842         in gcc build 5465). Also typdefs for template types needed to be added in some
   69843         cases so the type could make it through the macro successfully.
   69844 
   69845         Basically code of the form:
   69846         static T m;
   69847         becomes:
   69848         DEFINE_STATIC_LOCAL(T, m, ());
   69849 
   69850         Also any code of the form:
   69851         static T& m = *new T;
   69852         also becomes:
   69853         DEFINE_STATIC_LOCAL(T, m, ());
   69854 
   69855         * ForwardingHeaders/wtf/StdLibExtras.h: Added.
   69856         * bindings/js/GCController.cpp:
   69857         (WebCore::gcController):
   69858         * bindings/js/JSDOMBinding.cpp:
   69859         (WebCore::wrapperSet):
   69860         * bindings/js/JSInspectedObjectWrapper.cpp:
   69861         (WebCore::wrappers):
   69862         * bindings/js/JSInspectorCallbackWrapper.cpp:
   69863         (WebCore::wrappers):
   69864         * bindings/js/JSNavigatorCustom.cpp:
   69865         (WebCore::needsYouTubeQuirk):
   69866         * bridge/runtime_root.cpp:
   69867         (JSC::Bindings::rootObjectSet):
   69868         * css/CSSMutableStyleDeclaration.cpp:
   69869         (WebCore::initShorthandMap):
   69870         (WebCore::CSSMutableStyleDeclaration::removeProperty):
   69871         * css/CSSPrimitiveValue.cpp:
   69872         (WebCore::CSSPrimitiveValue::cssText):
   69873         * css/CSSSelector.cpp:
   69874         (WebCore::CSSSelector::extractPseudoType):
   69875         * css/CSSStyleSelector.cpp:
   69876         (WebCore::screenEval):
   69877         (WebCore::printEval):
   69878         * dom/DOMImplementation.cpp:
   69879         (WebCore::addString):
   69880         (WebCore::isSVG10Feature):
   69881         (WebCore::isSVG11Feature):
   69882         (WebCore::DOMImplementation::isXMLMIMEType):
   69883         * dom/Document.cpp:
   69884         (WebCore::Document::hasPrefixNamespaceMismatch):
   69885         * dom/ScriptElement.cpp:
   69886         (WebCore::isSupportedJavaScriptLanguage):
   69887         * editing/ApplyStyleCommand.cpp:
   69888         (WebCore::styleSpanClassString):
   69889         * editing/HTMLInterchange.cpp:
   69890         (WebCore::):
   69891         * editing/IndentOutdentCommand.cpp:
   69892         (WebCore::indentBlockquoteString):
   69893         * editing/ReplaceSelectionCommand.cpp:
   69894         (WebCore::isInterchangeNewlineNode):
   69895         (WebCore::isInterchangeConvertedSpaceSpan):
   69896         * editing/htmlediting.cpp:
   69897         (WebCore::stringWithRebalancedWhitespace):
   69898         (WebCore::nonBreakingSpaceString):
   69899         * editing/markup.cpp:
   69900         (WebCore::appendAttributeValue):
   69901         (WebCore::appendEscapedContent):
   69902         (WebCore::shouldAddNamespaceAttr):
   69903         (WebCore::appendNamespace):
   69904         (WebCore::appendStartMarkup):
   69905         (WebCore::createMarkup):
   69906         * html/HTMLButtonElement.cpp:
   69907         (WebCore::HTMLButtonElement::type):
   69908         * html/HTMLElement.cpp:
   69909         (WebCore::HTMLElement::isRecognizedTagName):
   69910         (WebCore::inlineTagList):
   69911         (WebCore::blockTagList):
   69912         * html/HTMLFieldSetElement.cpp:
   69913         (WebCore::HTMLFieldSetElement::type):
   69914         * html/HTMLInputElement.cpp:
   69915         (WebCore::HTMLInputElement::type):
   69916         * html/HTMLKeygenElement.cpp:
   69917         (WebCore::HTMLKeygenElement::type):
   69918         * html/HTMLLegendElement.cpp:
   69919         (WebCore::HTMLLegendElement::type):
   69920         * html/HTMLOptGroupElement.cpp:
   69921         (WebCore::HTMLOptGroupElement::type):
   69922         * html/HTMLOptionElement.cpp:
   69923         (WebCore::HTMLOptionElement::type):
   69924         * html/HTMLParser.cpp:
   69925         (WebCore::HTMLParser::getNode):
   69926         (WebCore::HTMLParser::isHeaderTag):
   69927         (WebCore::HTMLParser::isResidualStyleTag):
   69928         (WebCore::HTMLParser::isAffectedByResidualStyle):
   69929         * html/HTMLSelectElement.cpp:
   69930         (WebCore::HTMLSelectElement::type):
   69931         * html/HTMLTextAreaElement.cpp:
   69932         (WebCore::HTMLTextAreaElement::type):
   69933         * inspector/InspectorController.cpp:
   69934         (WebCore::platform):
   69935         * inspector/JavaScriptDebugServer.cpp:
   69936         (WebCore::JavaScriptDebugServer::shared):
   69937         * inspector/JavaScriptProfile.cpp:
   69938         (WebCore::profileCache):
   69939         * inspector/JavaScriptProfileNode.cpp:
   69940         (WebCore::profileNodeCache):
   69941         * loader/FrameLoader.cpp:
   69942         (WebCore::localSchemes):
   69943         * loader/appcache/ApplicationCacheStorage.cpp:
   69944         (WebCore::cacheStorage):
   69945         * loader/archive/ArchiveFactory.cpp:
   69946         (WebCore::archiveMIMETypes):
   69947         (WebCore::ArchiveFactory::registerKnownArchiveMIMETypes):
   69948         * loader/icon/IconDatabase.cpp:
   69949         (WebCore::IconDatabase::defaultDatabaseFilename):
   69950         * page/EventHandler.cpp:
   69951         (WebCore::EventHandler::dragState):
   69952         * page/Frame.cpp:
   69953         (WebCore::createRegExpForLabels):
   69954         (WebCore::keepAliveSet):
   69955         * page/Page.cpp:
   69956         (WebCore::Page::groupName):
   69957         * page/SecurityOrigin.cpp:
   69958         (WebCore::isDefaultPortForProtocol):
   69959         (WebCore::SecurityOrigin::databaseIdentifier):
   69960         * page/mac/FrameMac.mm:
   69961         (WebCore::regExpForLabels):
   69962         * platform/KURL.cpp:
   69963         (WebCore::blankURL):
   69964         * platform/graphics/FontCache.cpp:
   69965         (WebCore::alternateFamilyName):
   69966         * platform/graphics/mac/FontCacheMac.mm:
   69967         (WebCore::FontCache::getSimilarFontPlatformData):
   69968         (WebCore::FontCache::getLastResortFallbackFont):
   69969         * platform/mac/CursorMac.mm:
   69970         (WebCore::leakNamedCursor):
   69971         (WebCore::pointerCursor):
   69972         (WebCore::crossCursor):
   69973         (WebCore::handCursor):
   69974         (WebCore::moveCursor):
   69975         (WebCore::verticalTextCursor):
   69976         (WebCore::cellCursor):
   69977         (WebCore::contextMenuCursor):
   69978         (WebCore::aliasCursor):
   69979         (WebCore::zoomInCursor):
   69980         (WebCore::zoomOutCursor):
   69981         (WebCore::copyCursor):
   69982         (WebCore::noneCursor):
   69983         (WebCore::progressCursor):
   69984         (WebCore::noDropCursor):
   69985         (WebCore::notAllowedCursor):
   69986         (WebCore::iBeamCursor):
   69987         (WebCore::waitCursor):
   69988         (WebCore::helpCursor):
   69989         (WebCore::eastResizeCursor):
   69990         (WebCore::northResizeCursor):
   69991         (WebCore::northEastResizeCursor):
   69992         (WebCore::northWestResizeCursor):
   69993         (WebCore::southResizeCursor):
   69994         (WebCore::southEastResizeCursor):
   69995         (WebCore::southWestResizeCursor):
   69996         (WebCore::westResizeCursor):
   69997         (WebCore::northSouthResizeCursor):
   69998         (WebCore::eastWestResizeCursor):
   69999         (WebCore::northEastSouthWestResizeCursor):
   70000         (WebCore::northWestSouthEastResizeCursor):
   70001         (WebCore::columnResizeCursor):
   70002         (WebCore::rowResizeCursor):
   70003         (WebCore::grabCursor):
   70004         (WebCore::grabbingCursor):
   70005         * platform/mac/ScrollbarThemeMac.mm:
   70006         (WebCore::ScrollbarTheme::nativeTheme):
   70007         * platform/mac/ThemeMac.mm:
   70008         (WebCore::platformTheme):
   70009         * platform/mac/ThreadCheck.mm:
   70010         (WebCoreReportThreadViolation):
   70011         * platform/network/NetworkStateNotifier.cpp:
   70012         (WebCore::networkStateNotifier):
   70013         * platform/network/mac/FormDataStreamMac.mm:
   70014         (WebCore::getStreamFormDataMap):
   70015         (WebCore::getStreamResourceHandleMap):
   70016         * platform/network/mac/ResourceResponseMac.mm:
   70017         (WebCore::ResourceResponse::platformLazyInit):
   70018         * platform/text/TextEncoding.cpp:
   70019         (WebCore::TextEncoding::isJapanese):
   70020         * plugins/PluginMainThreadScheduler.cpp:
   70021         (WebCore::PluginMainThreadScheduler::scheduler):
   70022         * rendering/RenderBlock.cpp:
   70023         (WebCore::continuationOutlineTable):
   70024         (WebCore::RenderBlock::addContinuationWithOutline):
   70025         (WebCore::RenderBlock::paintContinuationOutlines):
   70026         * rendering/RenderCounter.cpp:
   70027         (WebCore::counterMaps):
   70028         * rendering/RenderFlexibleBox.cpp:
   70029         (WebCore::RenderFlexibleBox::layoutVerticalBox):
   70030         * rendering/RenderListItem.cpp:
   70031         (WebCore::RenderListItem::markerText):
   70032         * rendering/RenderScrollbarTheme.cpp:
   70033         (WebCore::RenderScrollbarTheme::renderScrollbarTheme):
   70034         * rendering/RenderThemeMac.mm:
   70035         (WebCore::RenderThemeMac::systemFont):
   70036         * rendering/bidi.cpp:
   70037         (WebCore::RenderBlock::checkLinesForTextOverflow):
   70038         * rendering/style/RenderStyle.cpp:
   70039         (WebCore::RenderStyle::initialDashboardRegions):
   70040         (WebCore::RenderStyle::noneDashboardRegions):
   70041         * storage/Database.cpp:
   70042         (WebCore::guidMutex):
   70043         (WebCore::guidToVersionMap):
   70044         (WebCore::guidToDatabaseMap):
   70045         (WebCore::Database::databaseInfoTableName):
   70046         (WebCore::databaseVersionKey):
   70047         (WebCore::Database::getVersionFromDatabase):
   70048         (WebCore::Database::setVersionInDatabase):
   70049         (WebCore::guidForOriginAndName):
   70050         * storage/DatabaseTracker.cpp:
   70051         (WebCore::DatabaseTracker::tracker):
   70052         (WebCore::notificationMutex):
   70053         (WebCore::notificationQueue):
   70054         * storage/LocalStorage.cpp:
   70055         (WebCore::localStorageMap):
   70056         * svg/SVGAnimateMotionElement.cpp:
   70057         (WebCore::SVGAnimateMotionElement::rotateMode):
   70058         * svg/SVGAnimationElement.cpp:
   70059         (WebCore::SVGAnimationElement::calcMode):
   70060         (WebCore::SVGAnimationElement::attributeType):
   70061         (WebCore::SVGAnimationElement::isAdditive):
   70062         (WebCore::SVGAnimationElement::isAccumulated):
   70063         * svg/SVGLangSpace.cpp:
   70064         (WebCore::SVGLangSpace::xmlspace):
   70065         * svg/SVGSVGElement.cpp:
   70066         (WebCore::SVGSVGElement::contentScriptType):
   70067         (WebCore::SVGSVGElement::contentStyleType):
   70068         * svg/SVGStyleElement.cpp:
   70069         (WebCore::SVGStyleElement::type):
   70070         (WebCore::SVGStyleElement::media):
   70071         * svg/SVGTextContentElement.cpp:
   70072         (WebCore::SVGTextContentElement::parseMappedAttribute):
   70073         * svg/animation/SVGSMILElement.cpp:
   70074         (WebCore::SVGSMILElement::parseClockValue):
   70075         (WebCore::SVGSMILElement::restart):
   70076         (WebCore::SVGSMILElement::fill):
   70077         (WebCore::SVGSMILElement::repeatCount):
   70078         (WebCore::SVGSMILElement::notifyDependentsIntervalChanged):
   70079         * svg/graphics/SVGResource.cpp:
   70080         (WebCore::clientMap):
   70081         (WebCore::SVGResource::removeClient):
   70082         * svg/graphics/SVGResourceMarker.cpp:
   70083         (WebCore::SVGResourceMarker::draw):
   70084         * xml/XMLHttpRequest.cpp:
   70085         (WebCore::PreflightResultCacheItem::PreflightResultCacheItem):
   70086         (WebCore::preflightResultCache):
   70087         (WebCore::appendPreflightResultCacheEntry):
   70088         (WebCore::isSafeRequestHeader):
   70089         (WebCore::isOnAccessControlResponseHeaderWhitelist):
   70090         (WebCore::XMLHttpRequest::didReceiveResponsePreflight):
   70091         * xml/XPathExpressionNode.cpp:
   70092         (WebCore::XPath::Expression::evaluationContext):
   70093         * xml/XPathParser.cpp:
   70094         (WebCore::XPath::setUpAxisNamesMap):
   70095         (WebCore::XPath::isAxisName):
   70096         (WebCore::XPath::isNodeTypeName):
   70097         * xml/XPathValue.cpp:
   70098         (WebCore::XPath::Value::toNodeSet):
   70099 
   70100 2008-11-14  Dan Bernstein  <mitz (a] apple.com>
   70101 
   70102         - attempt to fix the Qt build
   70103 
   70104         * platform/qt/Localizations.cpp:
   70105         (WebCore::contextMenuItemTagTextDirectionMenu): Added. Maybe this string
   70106         needs to go somewhere else in addition to here.
   70107 
   70108 2008-11-14  Kevin Ollivier  <kevino (a] theolliviers.com>
   70109 
   70110         wx build fix.
   70111 
   70112         * platform/wx/LocalizedStringsWx.cpp:
   70113         (WebCore::contextMenuItemTagTextDirectionMenu):
   70114 
   70115 2008-11-14  Dan Bernstein  <mitz (a] apple.com>
   70116 
   70117         Reviewed by Darin Adler.
   70118 
   70119         - <rdar://problem/6234307> Support action methods for setting and clearing character-level directionality
   70120         - WebCore part of <rdar://problem/6234337> Add a Text Direction menu to the default context menu when appropriate
   70121 
   70122         * WebCore.base.exp: Exported
   70123         WebCore::Settings::setTextDirectionSubmenuInclusionBehavior().
   70124 
   70125         * editing/ApplyStyleCommand.cpp:
   70126         (StyleChange::init): Changed to always include the direction property
   70127         in the result if the unicode-bidi property is included.
   70128         (ApplyStyleCommand::splitAncestorsWithUnicodeBidi): Added. Finds the
   70129         highest ancestor of the given node that establishes bidi embedding. If
   70130         that embedding agrees with the given allowed direction, finds the
   70131         second-highest embedding ancestor. Splits all nodes through that
   70132         ancestor. If the highest embedding ancestor did not need to be split,
   70133         it is returned.
   70134         (ApplyStyleCommand::removeEmbeddingUpToEnclosingBlock): Added. Removes
   70135         bidi embedding attributes and styles from all ancestors of the given
   70136         node up to its enclosing block or the given node.
   70137         (ApplyStyleCommand::applyInlineStyle): Added code to handle the
   70138         unicode-bidi property. Applying style the includes this property
   70139         involves removing all bidi embedding in effect, except  for one-level
   70140         embedding that agrees with the desired embedding, then applying the
   70141         desired embedding where it is not already in effect.
   70142         (ApplyStyleCommand::applyInlineStyleToRange): Factored out from
   70143         applyInlineStyle().
   70144         (ApplyStyleCommand::removeHTMLBidiEmbeddingStyle): Added. Removed the
   70145         "dir" attribute if necessary and the element if it becomes an unstyled
   70146         style span.
   70147         (ApplyStyleCommand::removeCSSStyle): Changed to remove the direction
   70148         property when removing the unicode-bidi property.
   70149         (ApplyStyleCommand::removeInlineStyle): Added a call to
   70150         removeHTMLBidiEmbeddingStyle().
   70151 
   70152         * editing/ApplyStyleCommand.h:
   70153         * editing/Editor.cpp:
   70154         (Editor::textDirectionForSelection): Added. Returns the character-level
   70155         writing direction of the selection if it is uniform and simple (at most
   70156         one level of embedding).
   70157         (Editor::hasBidiSelection): Added. Returns true if the selection lies
   70158         entirely within a single block, and that block has direction:rtl or
   70159         contains any inline boxes with non-zero bidi embedding level.
   70160 
   70161         * editing/Editor.h:
   70162         * editing/EditorCommand.cpp:
   70163         (stateTextWritingDirection): Added this helper function for deciding
   70164         the state of Text Direction submenu items.
   70165         (executeMakeTextWritingDirectionLeftToRight): Added. Applies
   70166         "unicode-bidi: embed; direction: ltr;".
   70167         (executeMakeTextWritingDirectionNatural): Added. Applies
   70168         "unicode-bidi: normal;"
   70169         (executeMakeTextWritingDirectionRightToLeft): Added. Applies
   70170         "unicode-bidi: embed; direction: rtl;".
   70171         (stateTextWritingDirectionLeftToRight): Added.
   70172         (stateTextWritingDirectionNatural): Added.
   70173         (stateTextWritingDirectionRightToLeft): Added.
   70174         (createCommandMap): Added "MakeTextWritingDirectionLeftToRight",
   70175         "MakeTextWritingDirectionNatural",
   70176         and "MakeTextWritingDirectionRightToLeft".
   70177 
   70178         * editing/InsertTextCommand.cpp:
   70179         (InsertTextCommand::input): Added code to maintain the unicode-bidi
   70180         and direction properties in the typing style. Even if they have the
   70181         same values as the computed style at the caret, they need to be included
   70182         in the typing style so that inserted text will not inherit any nested
   70183         embedding.
   70184 
   70185         * page/ContextMenuController.cpp:
   70186         (ContextMenuController::contextMenuItemSelected): Added calls to
   70187         the editor for the text direction menu items.
   70188 
   70189         * page/Frame.cpp
   70190         (Frame::computeAndSetTypingStyle): Added code to maintain the
   70191         unicode-bidi and direction properties in the typing style.
   70192 
   70193         * page/Settings.cpp:
   70194         (Settings::setTextDirectionSubmenuInclusionBehavior): Added this setter.
   70195 
   70196         * page/Settings.h: Added a TextDirectionSubmenuInclusionBehavior enum,
   70197         an m_textDirectionSubmenuInclusionBehavior member, and accessors.
   70198 
   70199         * page/mac/WebCoreViewFactory.h:
   70200         * platform/ContextMenu.cpp:
   70201         (WebCore::createAndAppendTextDirectionSubMenu): Added.
   70202         (ContextMenu::populate): Added the Text Direction submenu item based on
   70203         the inclusion behavior and the existence of a bidi selection.
   70204         (ContextMenu::checkOrEnableIfNeeded): Added code for the text direction
   70205         menu items.
   70206 
   70207         * platform/ContextMenuItem.h:
   70208         * platform/LocalizedStrings.h: Declared
   70209         contextMenuItemTagTextDirectionMenu().
   70210 
   70211         * platform/mac/LocalizedStringsMac.mm: Defined
   70212         contextMenuItemTagTextDirectionMenu().
   70213 
   70214         * rendering/RenderBlock.cpp:
   70215         (RenderBlock::containsNonZeroBidiLevel): Added.
   70216         * rendering/RenderBlock.h:
   70217 
   70218 2008-11-14  Greg Bolsinga  <bolsinga (a] apple.com>
   70219 
   70220         Reviewed by Darin Adler.
   70221 
   70222         https://bugs.webkit.org/show_bug.cgi?id=22264
   70223         Need to update to latest Geolocation spec (13 November 2008)
   70224 
   70225         Update to new error code constants and values.
   70226 
   70227         * page/Geolocation.cpp: Use new named ErrorCode enums
   70228         (WebCore::Geolocation::GeoNotifier::timerFired):
   70229         (WebCore::Geolocation::getCurrentPosition):
   70230         (WebCore::Geolocation::watchPosition):
   70231         * page/PositionError.h: Have ErrorCode enum names match new error constant names and values
   70232         (WebCore::PositionError::):
   70233         * page/PositionError.idl: Add new named error constants
   70234 
   70235 2008-11-14  Beth Dakin  <bdakin (a] apple.com>
   70236 
   70237         Reviewed by Justin Garcia.
   70238 
   70239         Fix (again) for <rdar://problem/5089327> Too much indentation when
   70240         pasting quoted paragraphs
   70241 
   70242         This patch goes back to Justin's original approach to fix this bug,
   70243         written in revision 38273. That fix was mostly rolled out by
   70244         revision 38310 because of styling issues created by the addition of
   70245         extra blockquote nodes. This patch again goes back to Justin's
   70246         original fix because of cases we discovered the newer fix could not
   70247         possibly cover. This version of the patch minimizes the styling
   70248         issues of extra blockquotes by opting into the merge start code.
   70249 
   70250         * editing/ReplaceSelectionCommand.cpp:
   70251         (WebCore::hasMatchingQuoteLevel): We want shouldMergeStart to
   70252         return true when the quoting level of the end of the inserted
   70253         content matches the quoting level of the end of the existing
   70254         content.
   70255         (WebCore::ReplaceSelectionCommand::shouldMergeStart): Now calls
   70256         hasMatchingQuoteLevel
   70257         (WebCore::ReplaceSelectionCommand::doApply):
   70258 
   70259 2008-11-14  Dirk Schulze  <vbs85 (a] gmx.de>
   70260 
   70261         Reviewed by Eric Seidel.
   70262 
   70263         Made SVGResourceClipper platform independent.
   70264         https://bugs.webkit.org/show_bug.cgi?id=21444
   70265 
   70266         * GNUmakefile.am:
   70267         * WebCore.pro:
   70268         * WebCore.vcproj/WebCore.vcproj:
   70269         * WebCore.xcodeproj/project.pbxproj:
   70270         * platform/graphics/GraphicsContext.h:
   70271         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   70272         (WebCore::GraphicsContext::clipPath):
   70273         * platform/graphics/cg/GraphicsContextCG.cpp:
   70274         (WebCore::GraphicsContext::clipPath):
   70275         * platform/graphics/qt/GraphicsContextQt.cpp:
   70276         (WebCore::GraphicsContext::addPath):
   70277         (WebCore::GraphicsContext::clipPath):
   70278         * svg/graphics/SVGResourceClipper.cpp:
   70279         (WebCore::SVGResourceClipper::applyClip):
   70280         * svg/graphics/cairo/SVGResourceClipperCairo.cpp: Removed.
   70281         * svg/graphics/cg/SVGResourceClipperCg.cpp: Removed.
   70282         * svg/graphics/qt/SVGResourceClipperQt.cpp: Removed.
   70283 
   70284 2008-11-14  Antti Koivisto  <antti (a] apple.com>
   70285 
   70286         Reviewed by Anders Carlsson.
   70287 
   70288         Combine loadFrameRequestWithFormState to loadFrameRequestWithFormAndValues.
   70289 
   70290         * loader/FrameLoader.cpp:
   70291         (WebCore::FrameLoader::loadFrameRequestWithFormAndValues):
   70292         * loader/FrameLoader.h:
   70293 
   70294 2008-11-14  Sam Weinig  <sam (a] webkit.org>
   70295 
   70296         Reviewed by Eric Seidel.
   70297 
   70298         Remove unneeded forward declaration.
   70299 
   70300         * plugins/Plugin.h:
   70301 
   70302 2008-11-14  Darin Fisher  <darin (a] chromium.org>
   70303 
   70304         Reviewed by Darin Adler.
   70305 
   70306         https://bugs.webkit.org/show_bug.cgi?id=22251
   70307         HTMLCanvasElement.cpp unnecessarily includes runtime/Interpreter.h
   70308 
   70309         * html/HTMLCanvasElement.cpp:
   70310 
   70311 2008-11-14  Yael Aharon  <yael.aharon (a] nokia.com>
   70312 
   70313         Reviewed by Simon Hausmann.
   70314 
   70315         Add new files from the Qt port to the build.
   70316 
   70317         * WebCore.pro:
   70318 
   70319 2008-11-14  Yael Aharon  <yael.aharon (a] nokia.com>
   70320 
   70321         Reviewed by Simon Hausmann.
   70322 
   70323         Made DatabaseTracker::hasEntryForOrigin() public. This allows the Qt
   70324         port to apply a default quota only if there is no entry in the
   70325         database for a given origin yet.
   70326 
   70327         * storage/DatabaseTracker.h:
   70328 
   70329 2008-11-14  Yael Aharon  <yael.aharon (a] nokia.com>
   70330 
   70331         Reviewed by Simon Hausmann.
   70332 
   70333         Make it possible to get the cache directory set in the application
   70334         cache storage.
   70335 
   70336         * loader/appcache/ApplicationCacheStorage.cpp:
   70337         (WebCore::ApplicationCacheStorage::cacheDirectory): Added.
   70338         * loader/appcache/ApplicationCacheStorage.h:
   70339 
   70340 2008-11-14  Justin Garcia  <justin.garcia (a] apple.com>
   70341 
   70342         Reviewed by Beth Dakin.
   70343 
   70344         <rdar://problem/4230923> "Make Plain Text" doesn't reset text alignment in single paragraph messages
   70345 
   70346         When applying block styles, we would add block properties to the body element, and Mail's
   70347         Make Plain Text feature isn't equipped to remove those.  This could have been fixed on our side,
   70348         but this change has the advantage that it fixes the bug on Tiger, where Mail does not plan future updates.
   70349 
   70350         We have code that puts the paragraphs that we're operating on into blocks of their own before
   70351         adding or removing block properties from the blocks that enclose them.  We need to run this code
   70352         when the enclosing block is the body element.
   70353 
   70354         * editing/CompositeEditCommand.cpp:
   70355         (WebCore::CompositeEditCommand::insertNewDefaultParagraphElementAt): Added, moved code from moveParagraphContents
   70356         to here.
   70357         (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary): Renamed some variables for clarity.
   70358         Added a few comments.  Fixed bug by not bailing out when the block about to be used is the body element.
   70359         * editing/CompositeEditCommand.h:
   70360 
   70361 2008-11-14  Cameron Zwarich  <zwarich (a] apple.com>
   70362 
   70363         Reviewed by Darin Adler.
   70364 
   70365         Bug 22245: Move wtf/dtoa.h into the WTF namespace
   70366         <https://bugs.webkit.org/show_bug.cgi?id=22245>
   70367 
   70368         Move wtf/dtoa.h into the WTF namespace from the JSC namespace.
   70369 
   70370         * platform/text/String.cpp:
   70371         (WebCore::charactersToDouble):
   70372 
   70373 2008-11-14  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   70374 
   70375         Rubber-stamped by Simon Hausmann.
   70376 
   70377         Make sure Qt scrollbars follow the style with regard to context menus
   70378 
   70379         * platform/qt/ScrollbarQt.cpp:
   70380         (WebCore::Scrollbar::contextMenu):
   70381 
   70382 2008-11-14  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   70383 
   70384         Rubber-stamped by Simon Hausmann.
   70385 
   70386         Make scrollbar look active when the window is active on Qt/Mac
   70387 
   70388         * platform/qt/ScrollbarThemeQt.cpp:
   70389         (WebCore::styleOptionSlider):
   70390         (WebCore::ScrollbarThemeQt::paint):
   70391 
   70392 2008-11-13  Eric Seidel  <eric (a] webkit.org>
   70393 
   70394         Reviewed by Adam Roben.
   70395 
   70396         Add a basic Scons-based build system for building
   70397         Chromium-Mac WebCore.
   70398         https://bugs.webkit.org/show_bug.cgi?id=21991
   70399 
   70400         The build currently fails due to missing files from our
   70401         platform directory (platform skia and platform chromium)
   70402         I will be sending those up shortly in separate patches.
   70403         I expect it will be a while before our WebCore build links.
   70404 
   70405         * SConstruct: Added.
   70406         * WebCore.scons: Added.
   70407 
   70408 2008-11-13  Darin Fisher  <darin (a] chromium.org>
   70409 
   70410         Reviewed by Darin Adler.
   70411 
   70412         https://bugs.webkit.org/show_bug.cgi?id=22248
   70413         AtomicString.cpp uses JSC types outside of #if USE(JSC)
   70414 
   70415         * platform/text/AtomicString.cpp:
   70416         (WebCore::AtomicString::add):
   70417 
   70418 2008-11-13  Justin Garcia  <justin.garcia (a] apple.com>
   70419 
   70420         Reviewed by Darin Adler.
   70421 
   70422         https://bugs.webkit.org/show_bug.cgi?id=18620
   70423         Long hang under TextIterator::advance() when loading http://www.lsvd.de/
   70424 
   70425         A huge section at the beginning of this document is invisible.  As we iterate through it,
   70426         we create VisiblePositions unnecessarily.
   70427 
   70428         * editing/TextIterator.cpp:
   70429         (WebCore::TextIterator::shouldRepresentNodeOffsetZero): Don't proceed to VisiblePosition
   70430         creation if m_node is unrendered or invisible.  The answers wouldn't have much meaning
   70431         and would be wasteful.  Also fixed some comments to reflect the fact that this function
   70432         isn't specifically about emitting a newline.
   70433 
   70434 2008-11-13  Pierre-Olivier Latour  <pol (a] apple.com>
   70435 
   70436         Reviewed by Sam Weinig.
   70437 
   70438         Remove unused or unnecessary code from AnimationBase class.
   70439 
   70440         * page/animation/AnimationBase.cpp:
   70441         (WebCore::AnimationBase::AnimationBase):
   70442         (WebCore::AnimationBase::playStatePlaying):
   70443         * page/animation/AnimationBase.h:
   70444 
   70445 2008-11-12  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   70446 
   70447         Reviewed by Simon Hausmann.
   70448 
   70449         Inital implementation of PluginPackage and PluginView for Mac NPAPI support in WebCore
   70450 
   70451         Currently only used by QtWebKit. See also:
   70452 
   70453         https://bugs.webkit.org/show_bug.cgi?id=21427
   70454 
   70455         * WebCore.pro:
   70456         * platform/qt/TemporaryLinkStubs.cpp:
   70457         (PluginView::userAgentStatic):
   70458         (PluginView::getValueStatic):
   70459         * plugins/PluginView.cpp:
   70460         (WebCore::PluginView::handleEvent):
   70461         (WebCore::PluginView::setValue):
   70462         (WebCore::PluginView::PluginView):
   70463         * plugins/PluginView.h:
   70464         (WebCore::PluginView::setPlatformPluginWidget):
   70465         * plugins/mac/PluginPackageMac.cpp: Added.
   70466         (WebCore::PluginPackage::determineQuirks):
   70467         (WebCore::readPListFile):
   70468         (WebCore::stringListFromResourceId):
   70469         (WebCore::PluginPackage::fetchInfo):
   70470         (WebCore::PluginPackage::load):
   70471         (WebCore::PluginPackage::hash):
   70472         (WebCore::PluginPackage::equal):
   70473         (WebCore::PluginPackage::compareFileVersion):
   70474         * plugins/mac/PluginViewMac.cpp: Added.
   70475         (WebCore::nativeWindowFor):
   70476         (WebCore::cgHandleFor):
   70477         (WebCore::topLevelOffsetFor):
   70478         (WebCore::PluginView::init):
   70479         (WebCore::PluginView::~PluginView):
   70480         (WebCore::PluginView::stop):
   70481         (WebCore::PluginView::getValueStatic):
   70482         (WebCore::PluginView::getValue):
   70483         (WebCore::PluginView::setParent):
   70484         (WebCore::PluginView::show):
   70485         (WebCore::PluginView::hide):
   70486         (WebCore::PluginView::setFocus):
   70487         (WebCore::PluginView::setParentVisible):
   70488         (WebCore::PluginView::setNPWindowRect):
   70489         (WebCore::PluginView::setNPWindowIfNeeded):
   70490         (WebCore::PluginView::updatePluginWidget):
   70491         (WebCore::PluginView::paint):
   70492         (WebCore::PluginView::invalidateRect):
   70493         (WebCore::PluginView::invalidateRegion):
   70494         (WebCore::PluginView::forceRedraw):
   70495         (WebCore::PluginView::handleMouseEvent):
   70496         (WebCore::PluginView::handleKeyboardEvent):
   70497         (WebCore::PluginView::nullEventTimerFired):
   70498         (WebCore::modifiersForEvent):
   70499         (WebCore::PluginView::globalMousePosForPlugin):
   70500         (WebCore::PluginView::dispatchNPEvent):
   70501         (WebCore::PluginView::userAgent):
   70502         (WebCore::PluginView::userAgentStatic):
   70503         (WebCore::PluginView::handlePostReadFile):
   70504 
   70505 2008-11-12  Alexey Proskuryakov  <ap (a] webkit.org>
   70506 
   70507         Reviewed by Darin Adler.
   70508 
   70509         https://bugs.webkit.org/show_bug.cgi?id=22200
   70510         Crash when close event is dispatched to MessagePort due to document destruction
   70511 
   70512         Test: fast/events/message-port-onclose.html
   70513 
   70514         * dom/MessagePort.cpp: (WebCore::MessagePort::contextDestroyed):
   70515         Don't dispatch close event, even though HTML5 currently says that we should. It is not
   70516         right for GC to have observable effects.
   70517 
   70518 2008-11-12  Alexey Proskuryakov  <ap (a] webkit.org>
   70519 
   70520         Reviewed by Darin Adler.
   70521 
   70522         https://bugs.webkit.org/show_bug.cgi?id=22203
   70523         Implement Worker messaging
   70524 
   70525         No test cases included, because this functionality is disabled by default.
   70526 
   70527         The implementation is known to still have many race condition, but works quite well for
   70528         testing.
   70529 
   70530         * WebCore.xcodeproj/project.pbxproj: Added WorkerTask.{h,cpp}.
   70531 
   70532         * bindings/js/JSDOMBinding.cpp:
   70533         (WebCore::markActiveObjectsForContext): Re-worded comments a little.
   70534         (WebCore::markCrossHeapDependentObjectsForContext): Existing cross-heap GC protocol was
   70535         incorrect, changed it to a much simpler (but still incorrect) version.
   70536 
   70537         * dom/WorkerTask.cpp: Added.
   70538         (WebCore::WorkerTask::~WorkerTask):
   70539         * dom/WorkerTask.h: Added.
   70540         Tasks posted to workers implement this new interface.
   70541 
   70542         * bindings/js/JSDedicatedWorkerCustom.cpp:
   70543         (WebCore::JSDedicatedWorker::mark):
   70544         (WebCore::JSDedicatedWorker::connect):
   70545         * dom/DedicatedWorker.h:
   70546         * dom/DedicatedWorker.idl:
   70547         Auto-generate event listener attributes. Renamed startConversation() to connect(), tracking
   70548         WHATWG discussions.
   70549 
   70550         * dom/DedicatedWorker.cpp:
   70551         (WebCore::WorkerConnectTask::WorkerConnectTask): A task that performs worker-side connect()
   70552         operations.
   70553         (WebCore::DedicatedWorker::DedicatedWorker): Initialize WorkerThread pointer.
   70554         (WebCore::DedicatedWorker::connect): Connect() creates a pair of entangled ports, and posts
   70555         one to worker. Since message port registration in ScriptExecutionContext is not thread safe,
   70556         this port starts with a null context pointer.
   70557         (WebCore::DedicatedWorker::notifyFinished): Since Worker methods should work immediately
   70558         after creation, we have to queue tasks until after a WorkerThread object is created. Then we
   70559         forward all queued tasks to its queue.
   70560 
   70561         * dom/EventTarget.cpp: (WebCore::EventTarget::toWorkerContext):
   70562         * dom/EventTarget.h:
   70563         * bindings/js/JSEventTarget.cpp: (WebCore::toJS):
   70564         Added cases for WorkerContext, which is now an EventTarget, too.
   70565 
   70566         * bindings/js/JSWorkerContext.h: Added JSWorkerContext::put() to make onconnect settable.
   70567         * bindings/js/JSWorkerContext.cpp:
   70568         (WebCore::JSWorkerContext::mark): Mark event listeners.
   70569         (WebCore::JSWorkerContext::createPrototype): Fixed a typo, use the right StructureID.
   70570         (WebCore::JSWorkerContext::put): Implemented.
   70571         (WebCore::jsWorkerContextPrototypeFunctionAddEventListener): Added an EventTarget implementation.
   70572         (WebCore::jsWorkerContextPrototypeFunctionRemoveEventListener): Ditto.
   70573         (WebCore::jsWorkerContextPrototypeFunctionDispatchEvent): Ditto.
   70574         (WebCore::jsWorkerContextOnconnect): Added.
   70575         (WebCore::setJSWorkerContextOnconnect): Added.
   70576 
   70577         * bindings/js/WorkerScriptController.cpp: (WebCore::WorkerScriptController::evaluate):
   70578         Made it actually work by adding necessary setup.
   70579 
   70580         * bindings/js/WorkerScriptController.h: (WebCore::WorkerScriptController::initScriptIfNeeded):
   70581         Check the right variable - it is the wrapper that may not be initialized yet.
   70582 
   70583         * dom/ActiveDOMObject.cpp:
   70584         (WebCore::ActiveDOMObject::ActiveDOMObject):
   70585         (WebCore::ActiveDOMObject::~ActiveDOMObject):
   70586         Assert being called from the correct thread, as active DOM object tracking is not thread safe.
   70587 
   70588         * dom/ScriptExecutionContext.h: Added a Task interface and a postTask() method, to be used
   70589         for asynchronously executing tasks in context's thread.
   70590 
   70591         * dom/ScriptExecutionContext.cpp:
   70592         (WebCore::ProcessMessagesSoonTask): Changed from a Timer to a Task
   70593         (WebCore::ScriptExecutionContext::ScriptExecutionContext): Removed m_firedMessagePortTimer.
   70594         It was an optimization that couldn't be easily preserved without introducing race conditions
   70595         in multithreading case.
   70596         (WebCore::ScriptExecutionContext::processMessagePortMessagesSoon): Use postTask().
   70597         (WebCore::ScriptExecutionContext::dispatchMessagePortEvents): Added a comment explaining
   70598         why it's OK to not ref() ports in a frozen copy.
   70599         (WebCore::ScriptExecutionContext::createdMessagePort): Assert that we're not being called
   70600         from a wrong thread.
   70601         (WebCore::ScriptExecutionContext::destroyedMessagePort): Ditto.
   70602         (WebCore::ScriptExecutionContextTaskTimer): Part of
   70603         ScriptExecutionContext::Task implementation - use Timer if posting from main thread to main
   70604         thread.
   70605         (WebCore::ScriptExecutionContextTaskWorkerTask): Another part - use WorkerTask if posting
   70606         to a worker.
   70607         (WebCore::PerformTaskContext::PerformTaskContext): Finally, use callOnMainThread() if posting
   70608         to main thread from a secondary one.
   70609         (WebCore::performTask): A helper function for callOnMainThread().
   70610         (WebCore::ScriptExecutionContext::postTask): Use one of the above implementations.
   70611 
   70612         * dom/MessagePort.h: Fixed message queue to keep EventData pointers - otherwise, we would
   70613         ref/deref EventData::message from different threads, which is not allowed.
   70614 
   70615         * dom/MessagePort.cpp:
   70616         (WebCore::MessagePortCloseEventTask): Use a task instead of a timer to work across threads.
   70617         (WebCore::MessagePort::EventData::create): Updated for EventData being refcountable now.
   70618         (WebCore::MessagePort::EventData::EventData): Ditto.
   70619         (WebCore::MessagePort::MessagePort): ScriptExecutionContext is now allowed to be null at
   70620         first, because we need to create ports for posting to other threads, and it is not possible
   70621         to register in a context from another thread.
   70622         (WebCore::MessagePort::clone): Always create ports with null contexts - it is now message
   70623         receiver's job to set the context.
   70624         (WebCore::MessagePort::postMessage): Enable posting to ports that are not attached to any
   70625         context yet.
   70626         (WebCore::MessagePort::startConversation): Ditto. Data port is always posted unattached.
   70627         (WebCore::MessagePort::contextDestroyed): Assert that we had a context.
   70628         (WebCore::MessagePort::attachToContext): Called when receiving a data port to register in
   70629         context.
   70630         (WebCore::MessagePort::scriptExecutionContext): Moved from header, as the function is virtual.
   70631         (WebCore::MessagePort::dispatchMessages): Attach data port to receiving context. Use postTask().
   70632         (WebCore::MessagePort::queueCloseEvent): Use postTask().
   70633         (WebCore::MessagePort::hasPendingActivity): Reworded comment a little. As mentioned above,
   70634         MessagePort cross-heap GC is still quite wrong.
   70635 
   70636         * dom/WorkerContext.h: Made WorkerContext an event target, added onconnect attribute.
   70637         * dom/WorkerContext.cpp: Keep a pointer to WorkerThread. It is only used for debug assertions
   70638         now, but there is no harm in tracking it in release builds, too.
   70639 
   70640         * dom/WorkerThread.cpp:
   70641         (WebCore::WorkerThread::create): WorkerThread is refcountable, construct with create().
   70642         (WebCore::WorkerThread::workerThread): Implemented a message loop.
   70643         * dom/WorkerThread.h:
   70644         (WebCore::WorkerThread::threadID): Also only used for assertions.
   70645         (WebCore::WorkerThread::messageQueue): Return a reference to queue, so clients can post to it.
   70646 
   70647         * page/DOMWindow.cpp:
   70648         (WebCore::DOMWindow::postMessage): MessagePort::clone() no longer takes a context, as it
   70649         always sets it to null.
   70650         (WebCore::DOMWindow::postMessageTimerFired): Attach data port to receiving context.
   70651 
   70652 2008-11-12  Dirk Schulze  <vbs85 (a] gmx.de>
   70653 
   70654         Reviewed Darin Adler.
   70655 
   70656         use strokeColor.alpha() instead of fillColor.alpha()
   70657         on GraphicsContext::strokePath()
   70658 
   70659         [Canvas] Transparent fillStyle stops line rendering
   70660         https://bugs.webkit.org/show_bug.cgi?id=21888
   70661 
   70662         Test: fast/canvas/canvas-stroke-empty-fill.html
   70663 
   70664         * ChangeLog:
   70665         * platform/graphics/cg/GraphicsContextCG.cpp:
   70666         (WebCore::GraphicsContext::strokePath):
   70667 
   70668 2008-11-12  Stephanie  <slewis (a] apple.com>
   70669 
   70670         Reviewed by Mark Rowe.
   70671 
   70672         Fix context leak in XSLStyleSheets.
   70673         See bug https://bugs.webkit.org/show_bug.cgi?id=15715
   70674 
   70675         * xml/XSLStyleSheet.cpp:
   70676         (WebCore::XSLStyleSheet::parseString):
   70677 
   70678 2008-11-12  Alp Toker  <alp (a] nuanti.com>
   70679 
   70680         autotools: List web worker-related headers needed for a successful
   70681         build. distcheck is passing again with this change.
   70682 
   70683         * GNUmakefile.am:
   70684 
   70685 2008-11-12  Alp Toker  <alp (a] nuanti.com>
   70686 
   70687         autotools build system fix-up only. Add FloatQuad.h to the source
   70688         lists and sort them.
   70689 
   70690         * GNUmakefile.am:
   70691 
   70692 2008-11-12  Alp Toker  <alp (a] nuanti.com>
   70693 
   70694         Build fixes for r38346. FloatQuad.cpp is missing:
   70695 
   70696         1) #include "config.h"
   70697         2) #include <algorithm> for various mathematical definitions it uses.
   70698 
   70699         * platform/graphics/FloatQuad.cpp:
   70700 
   70701 2008-11-12  Simon Fraser  <simon.fraser (a] apple.com>
   70702 
   70703         Reviewed by Dan Bernstein
   70704 
   70705         https://bugs.webkit.org/show_bug.cgi?id=22212
   70706 
   70707         Rename absoluteOutlineBox() to absoluteOutlineBounds(), to indicate that
   70708         it may be the bounding outline box of a transformed element, and fix it
   70709         to respect transforms by mapping the outline box to an absolute quad and
   70710         taking the enclosing rect.
   70711 
   70712         RenderBox::localToAbsoluteQuad() can no longer assert that there is no
   70713         LayoutState, but LayoutState cannot be used during quad mapping (it knows
   70714         nothing about transforms).
   70715 
   70716         Finally, fix a bug in RenderBox::localToAbsoluteQuad() which was getting
   70717         borderTopExtra() from the object, rather than its container (as localToAbsolute()
   70718         does).
   70719 
   70720         Test: fast/repaint/transform-absolute-child.html
   70721 
   70722         * rendering/RenderBlock.cpp:
   70723         (WebCore::RenderBlock::layoutBlock):
   70724         * rendering/RenderBox.cpp:
   70725         (WebCore::RenderBox::localToAbsoluteQuad):
   70726         * rendering/RenderFlexibleBox.cpp:
   70727         (WebCore::RenderFlexibleBox::layoutBlock):
   70728         * rendering/RenderForeignObject.cpp:
   70729         (WebCore::RenderForeignObject::layout):
   70730         * rendering/RenderLayer.cpp:
   70731         (WebCore::RenderLayer::updateLayerPositions):
   70732         (WebCore::RenderLayer::setHasVisibleContent):
   70733         * rendering/RenderObject.cpp:
   70734         (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
   70735         (WebCore::RenderObject::absoluteOutlineBounds):
   70736         * rendering/RenderObject.h:
   70737         * rendering/RenderPath.cpp:
   70738         (WebCore::RenderPath::layout):
   70739         * rendering/RenderReplaced.cpp:
   70740         (WebCore::RenderReplaced::layout):
   70741         * rendering/RenderSVGContainer.cpp:
   70742         (WebCore::RenderSVGContainer::layout):
   70743         * rendering/RenderSVGImage.cpp:
   70744         (WebCore::RenderSVGImage::layout):
   70745         * rendering/RenderSVGRoot.cpp:
   70746         (WebCore::RenderSVGRoot::layout):
   70747         * rendering/RenderSVGText.cpp:
   70748         (WebCore::RenderSVGText::layout):
   70749         * rendering/RenderSVGViewportContainer.cpp:
   70750         (WebCore::RenderSVGViewportContainer::layout):
   70751         * rendering/RenderTable.cpp:
   70752         (WebCore::RenderTable::layout):
   70753 
   70754 2008-11-12  Simon Fraser  <simon.fraser (a] apple.com>
   70755 
   70756         Reviewed by Dave Hyatt
   70757 
   70758         https://bugs.webkit.org/show_bug.cgi?id=21942
   70759         https://bugs.webkit.org/show_bug.cgi?id=18557
   70760 
   70761         Add methods which can be used to map renderer-local rectangles
   70762         to quads in absolute coordinates, taking transforms into account:
   70763             localToAbsoluteQuad() converts a local rect into an absolute quad.
   70764             collectAbsoluteLineBoxQuads() is an analogue of addLineBoxRects()
   70765                 that works with quads.
   70766             absoluteQuads() is an analogue of absoluteRects(), for quads.
   70767 
   70768         Use the quad methods to fix the inspector highlight for transformed
   70769         elements.
   70770 
   70771         * GNUmakefile.am:
   70772         * WebCore.pro:
   70773         * WebCore.vcproj/WebCore.vcproj:
   70774         * WebCore.xcodeproj/project.pbxproj:
   70775         * WebCoreSources.bkl:
   70776         * inspector/InspectorController.cpp:
   70777         (WebCore::drawOutlinedQuad):
   70778         (WebCore::drawHighlightForBoxes):
   70779         (WebCore::frameToMainFrameOffset):
   70780         (WebCore::InspectorController::drawNodeHighlight):
   70781         * platform/graphics/AffineTransform.cpp:
   70782         (WebCore::AffineTransform::mapQuad):
   70783         * platform/graphics/AffineTransform.h:
   70784         * platform/graphics/FloatQuad.cpp: Added.
   70785         (WebCore::min4):
   70786         (WebCore::max4):
   70787         (WebCore::FloatQuad::boundingBox):
   70788         * platform/graphics/FloatQuad.h: Added.
   70789         (WebCore::FloatQuad::FloatQuad):
   70790         (WebCore::FloatQuad::p1):
   70791         (WebCore::FloatQuad::p2):
   70792         (WebCore::FloatQuad::p3):
   70793         (WebCore::FloatQuad::p4):
   70794         (WebCore::FloatQuad::setP1):
   70795         (WebCore::FloatQuad::setP2):
   70796         (WebCore::FloatQuad::setP3):
   70797         (WebCore::FloatQuad::setP4):
   70798         (WebCore::FloatQuad::isEmpty):
   70799         (WebCore::FloatQuad::enclosingBoundingBox):
   70800         (WebCore::FloatQuad::move):
   70801         (WebCore::operator+=):
   70802         (WebCore::operator-=):
   70803         (WebCore::operator==):
   70804         (WebCore::operator!=):
   70805         * rendering/RenderBox.cpp:
   70806         (WebCore::RenderBox::localToAbsoluteQuad):
   70807         * rendering/RenderBox.h:
   70808         * rendering/RenderContainer.cpp:
   70809         (WebCore::RenderContainer::collectAbsoluteLineBoxQuads):
   70810         * rendering/RenderContainer.h:
   70811         * rendering/RenderInline.cpp:
   70812         (WebCore::RenderInline::absoluteQuads):
   70813         * rendering/RenderInline.h:
   70814         * rendering/RenderObject.cpp:
   70815         (WebCore::RenderObject::absoluteBoundingBoxRect):
   70816         (WebCore::RenderObject::collectAbsoluteLineBoxQuads):
   70817         (WebCore::RenderObject::absoluteQuads):
   70818         (WebCore::RenderObject::localToAbsoluteQuad):
   70819         (WebCore::RenderObject::absoluteContentQuad):
   70820         * rendering/RenderObject.h:
   70821         * rendering/RenderPath.cpp:
   70822         (WebCore::RenderPath::absoluteQuads):
   70823         * rendering/RenderPath.h:
   70824         * rendering/RenderSVGContainer.cpp:
   70825         (WebCore::RenderSVGContainer::absoluteQuads):
   70826         * rendering/RenderSVGContainer.h:
   70827         * rendering/RenderSVGHiddenContainer.cpp:
   70828         (WebCore::RenderSVGHiddenContainer::absoluteQuads):
   70829         * rendering/RenderSVGHiddenContainer.h:
   70830         * rendering/RenderSVGImage.cpp:
   70831         (WebCore::RenderSVGImage::calculateAbsoluteBounds):
   70832         (WebCore::RenderSVGImage::absoluteQuads):
   70833         * rendering/RenderSVGImage.h:
   70834         * rendering/RenderSVGInlineText.cpp:
   70835         (WebCore::RenderSVGInlineText::absoluteQuads):
   70836         (WebCore::RenderSVGInlineText::computeAbsoluteRectForRange):
   70837         * rendering/RenderSVGInlineText.h:
   70838         * rendering/RenderSVGRoot.cpp:
   70839         (WebCore::RenderSVGRoot::absoluteQuads):
   70840         * rendering/RenderSVGRoot.h:
   70841         * rendering/RenderSVGTSpan.cpp:
   70842         (WebCore::RenderSVGTSpan::absoluteRects):
   70843         (WebCore::RenderSVGTSpan::absoluteQuads):
   70844         * rendering/RenderSVGTSpan.h:
   70845         * rendering/RenderSVGText.cpp:
   70846         (WebCore::RenderSVGText::absoluteRects):
   70847         (WebCore::RenderSVGText::absoluteQuads):
   70848         * rendering/RenderSVGText.h:
   70849         * rendering/RenderSVGTextPath.cpp:
   70850         (WebCore::RenderSVGTextPath::absoluteRects):
   70851         (WebCore::RenderSVGTextPath::absoluteQuads):
   70852         * rendering/RenderSVGTextPath.h:
   70853         * rendering/RenderTableCell.cpp:
   70854         (WebCore::RenderTableCell::localToAbsolute):
   70855         (WebCore::RenderTableCell::localToAbsoluteQuad):
   70856         * rendering/RenderTableCell.h:
   70857         * rendering/RenderText.cpp:
   70858         (WebCore::RenderText::absoluteQuads):
   70859         (WebCore::RenderText::collectAbsoluteLineBoxQuads):
   70860         * rendering/RenderText.h:
   70861         * rendering/RenderView.cpp:
   70862         (WebCore::RenderView::localToAbsoluteQuad):
   70863         (WebCore::RenderView::absoluteQuads):
   70864         * rendering/RenderView.h:
   70865 
   70866 2008-11-12  Brent Fulgham <bfulgham (a] gmail.com>
   70867 
   70868         Fix Bug 22178: Build errors in WebKit Cairo port
   70869 
   70870         <https://bugs.webkit.org/show_bug.cgi?id=22178>
   70871 
   70872         Reviewed by Mark Rowe.
   70873 
   70874         * platform/graphics/cairo/PatternCairo.cpp: Correct build error under
   70875         Visual Studio.
   70876         (WebCore::Pattern::createPlatformPattern):
   70877 
   70878 2008-11-12  Adam Roben  <aroben (a] apple.com>
   70879 
   70880         Fix a typo in the include path for the Release_Cairo configuration
   70881 
   70882         * WebCore.vcproj/WebCore.vcproj: Fixed "caro" -> "cairo" typo.
   70883 
   70884 2008-11-12  Simon Fraser  <simon.fraser (a] apple.com>
   70885 
   70886         Reviewed by Dave Hyatt
   70887 
   70888         https://bugs.webkit.org/show_bug.cgi?id=17840
   70889         Patch 2
   70890 
   70891         Code cleanup in RenderBox::computeAbsoluteRepaintRect().
   70892 
   70893         * rendering/RenderBox.cpp:
   70894         (WebCore::RenderBox::computeAbsoluteRepaintRect):
   70895 
   70896 2008-11-12  Simon Fraser  <simon.fraser (a] apple.com>
   70897 
   70898         Reviewed by Dave Hyatt
   70899 
   70900         https://bugs.webkit.org/show_bug.cgi?id=17840
   70901 
   70902         Fix repainting when the transform on a positioned element changes.
   70903         In computeAbsoluteRepaintRect(), add the offsets due to relative positioning,
   70904         and being in a positioned container after applying the transform to the local
   70905         rect.
   70906 
   70907         Tests: fast/repaint/transform-absolute-in-positioned-container.html
   70908                fast/repaint/transform-relative-position.html
   70909 
   70910         * rendering/RenderBox.cpp:
   70911         (WebCore::RenderBox::computeAbsoluteRepaintRect):
   70912 
   70913 2008-11-12  Justin Garcia  <justin.garcia (a] apple.com>
   70914 
   70915         Reviewed by Beth Dakin.
   70916 
   70917         <rdar://problem/5495723> Selecting and deleting quoted text quotes other text
   70918         <rdar://problem/4775313> Deleting lines from the bottom of a messages leaves the last blank line quoted
   70919 
   70920         We don't want to merge into a block if it will mean changing the quote level of content after deleting
   70921         selections that contain a whole number paragraphs plus a line break, since it is unclear to most users
   70922         that such a selection actually ends at the start of the next paragraph.  Instead we want to completely
   70923         remove the selected paragraph(s) and all evidence of the first one's quote level.  This matches TextEdit behavior
   70924         for indented paragraphs.
   70925 
   70926         * editing/DeleteSelectionCommand.cpp:
   70927         (WebCore::DeleteSelectionCommand::initializePositionData): For the selections described above, do not
   70928         try to merge after the deletion.  Instead try and prune the start block or blocks if they've been emptied
   70929         so that we remove evidence of the deleted paragraphs' quote level.
   70930         (WebCore::DeleteSelectionCommand::mergeParagraphs): Try and prune the start block(s) if necessary.  Also
   70931         make sure that the caret is placed correctly so that it ends up on the same line that the deleted selection
   70932         started on, instead of one higher.
   70933         * editing/DeleteSelectionCommand.h:
   70934         * editing/htmlediting.cpp:
   70935         (WebCore::numEnclosingMailBlockquotes): Added.
   70936         * editing/htmlediting.h:
   70937 
   70938 2008-11-10  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   70939 
   70940         Reviewed by Simon Hausmann.
   70941 
   70942         Move _web_encodingForResource from WebKit into WebCore and change return type
   70943 
   70944         This change is needed to implement NSAPI in WebCore for Mac, see:
   70945 
   70946         https://bugs.webkit.org/show_bug.cgi?id=21427
   70947 
   70948         * WebCore.base.exp:
   70949         * platform/mac/WebCoreNSStringExtras.h:
   70950         * platform/mac/WebCoreNSStringExtras.mm:
   70951         (stringEncodingForResource):
   70952 
   70953 2008-11-10  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   70954 
   70955         Reviewed by Simon Hausmann.
   70956 
   70957         Moved the implementation of _webkit_isCaseInsensitiveEqualToString to
   70958         WebCore's WebCoreNSStringExtras as _stringIsCaseInsensitiveEqualToString.
   70959 
   70960         This change is needed to implement NSAPI in WebCore for Mac, see:
   70961 
   70962         https://bugs.webkit.org/show_bug.cgi?id=21427
   70963 
   70964         * WebCore.base.exp:
   70965         * platform/mac/WebCoreNSStringExtras.h:
   70966         * platform/mac/WebCoreNSStringExtras.mm:
   70967         (stringIsCaseInsensitiveEqualToString):
   70968 
   70969 2008-11-11  Stephanie  <slewis (a] apple.com>
   70970 
   70971         Reviewed by Dan Bernstein.
   70972 
   70973         Null check image data before setting it as image source.
   70974 
   70975         Test: fast/images/image-empty-data.html
   70976 
   70977         * platform/graphics/BitmapImage.cpp:
   70978         (WebCore::BitmapImage::destroyDecodedData):
   70979 
   70980 2008-11-11  Adele Peterson  <adele (a] apple.com>
   70981 
   70982         Reviewed by Tim Hatcher.
   70983 
   70984         Remove ifdef so future OS versions can use the new delegate method.
   70985 
   70986         * platform/network/mac/ResourceHandleMac.mm: (WebCore::ResourceHandle::didSendBodyDataDelegateExists):
   70987 
   70988 2008-11-11  Eric Seidel  <eric (a] webkit.org>
   70989 
   70990         Reviewed by Antti Koivisto and Sam Weinig.
   70991 
   70992         Clean up HTMLTokenizer a litle
   70993         https://bugs.webkit.org/show_bug.cgi?id=22188
   70994 
   70995         Rename pendingScripts to m_pendingScripts
   70996         Rename scriptNode to m_scriptNode make the type specific
   70997         Rename pendingSrc to m_pendingSrc
   70998         Rename currentPrependingSrc to m_currentPrependingSrc
   70999         Rename noMoreData to m_noMoreData and cBuffer to m_cBuffer
   71000         Remove long-since-dead kdDebug and qDebug calls
   71001         Rename brokenComments to m_brokenComments
   71002         Remove HTMLTokenizer includes and document the rest
   71003         Rename src to m_src
   71004         Rename parser to m_parser and make it an OwnPtr
   71005         Rename inWrite to m_inWrite and jsProxy to scriptController
   71006         Rename brokenServer to m_brokenServer
   71007         Rename buffer to m_buffer and dest to m_dest
   71008         Rename size to m_bufferSize
   71009         Rename attrName to m_attrName
   71010         Rename searchStopper to m_searchStopper and searchStopperLen to m_searchStopperLen
   71011         Rename scriptCode* to m_scriptCode* and change scriptCodeMax to m_scriptCodeCapacity
   71012         Rename scriptStartLineno to m_currentScriptTagStartLineNumber and tagStartLineno to m_currentTagStartLineNumber
   71013         Rename scriptSrc to m_scriptTagSrcAttrValue and scriptSrcCharset to m_scriptTagCharsetAttrValue -- a bit unwieldy, but more precise
   71014         Rename flat to selfClosingTag
   71015         Rename currToken to m_currentToken
   71016 
   71017         * css/CSSParser.cpp:
   71018         * dom/XMLTokenizer.cpp:
   71019         * dom/XMLTokenizerLibxml2.cpp:
   71020         * html/HTMLDocument.cpp:
   71021         * html/HTMLElement.cpp:
   71022         * html/HTMLFormControlElement.cpp:
   71023         * html/HTMLParser.h:
   71024         * html/HTMLTokenizer.cpp:
   71025         (WebCore::Token::addAttribute):
   71026         (WebCore::HTMLTokenizer::HTMLTokenizer):
   71027         (WebCore::HTMLTokenizer::reset):
   71028         (WebCore::HTMLTokenizer::begin):
   71029         (WebCore::HTMLTokenizer::processListing):
   71030         (WebCore::HTMLTokenizer::parseSpecial):
   71031         (WebCore::HTMLTokenizer::scriptHandler):
   71032         (WebCore::HTMLTokenizer::scriptExecution):
   71033         (WebCore::HTMLTokenizer::parseComment):
   71034         (WebCore::HTMLTokenizer::parseServer):
   71035         (WebCore::HTMLTokenizer::parseProcessingInstruction):
   71036         (WebCore::HTMLTokenizer::parseText):
   71037         (WebCore::HTMLTokenizer::parseEntity):
   71038         (WebCore::HTMLTokenizer::parseTag):
   71039         (WebCore::HTMLTokenizer::write):
   71040         (WebCore::HTMLTokenizer::processingData):
   71041         (WebCore::HTMLTokenizer::end):
   71042         (WebCore::HTMLTokenizer::finish):
   71043         (WebCore::HTMLTokenizer::processToken):
   71044         (WebCore::HTMLTokenizer::processDoctypeToken):
   71045         (WebCore::HTMLTokenizer::~HTMLTokenizer):
   71046         (WebCore::HTMLTokenizer::enlargeBuffer):
   71047         (WebCore::HTMLTokenizer::enlargeScriptBuffer):
   71048         (WebCore::HTMLTokenizer::notifyFinished):
   71049         (WebCore::HTMLTokenizer::setSrc):
   71050         * html/HTMLTokenizer.h:
   71051         (WebCore::Token::Token):
   71052         (WebCore::Token::reset):
   71053         (WebCore::HTMLTokenizer::processingContentWrittenByScript):
   71054         (WebCore::HTMLTokenizer::htmlParser):
   71055         (WebCore::HTMLTokenizer::checkBuffer):
   71056         (WebCore::HTMLTokenizer::checkScriptBuffer):
   71057         * html/HTMLViewSourceDocument.h:
   71058         * rendering/RenderBlock.cpp:
   71059         (WebCore::RenderBlock::leftRelOffset):
   71060         (WebCore::RenderBlock::rightRelOffset):
   71061         (WebCore::RenderBlock::lineWidth):
   71062         * xml/XSLTProcessor.cpp:
   71063 
   71064 2008-11-11  Sam Weinig  <sam (a] webkit.org>
   71065 
   71066         Reviewed by Dan Bernstein.
   71067 
   71068         Fix for https://bugs.webkit.org/show_bug.cgi?id=22189
   71069         Track CachedScript decoded data
   71070 
   71071         We now track the decoded size of CachedScripts in the Cache allowing
   71072         them to accounted for when deciding when to evict data.  The decoded
   71073         data itself can be evicted when Cache pressure gets high enough through
   71074         CachedScript::destroyDecodedData.
   71075 
   71076         * loader/CachedResource.h:
   71077         (WebCore::CachedResource::allClientsRemoved):
   71078         (WebCore::CachedResource::destroyDecodedData):
   71079         * loader/CachedScript.cpp:
   71080         (WebCore::CachedScript::script):
   71081         (WebCore::CachedScript::data):
   71082         (WebCore::CachedScript::destroyDecodedData):
   71083         * loader/CachedScript.h:
   71084 
   71085 2008-11-11  Cameron Zwarich  <zwarich (a] apple.com>
   71086 
   71087         Reviewed by Geoff Garen.
   71088 
   71089         Remove pointless dependencies on the now-deleted kjs directory and
   71090         mentions of it in comments that are no longer relevant.
   71091 
   71092         * WebCore.pro:
   71093         * webcore-base.bkl:
   71094 
   71095 2008-11-11  Dan Bernstein  <mitz (a] apple.com>
   71096 
   71097         Reviewed by Adam Roben.
   71098 
   71099         WebCore part of adding a master volume control for media elements in a WebView
   71100 
   71101         * WebCore.base.exp: Exported WebCore::Page::setMediaVolume().
   71102         * dom/Document.cpp:
   71103         (WebCore::Document::mediaVolumeDidChange): Added. Called by the Page
   71104         when the media volume is changed.
   71105         (WebCore::Document::registerForMediaVolumeCallbacks): Added. Allows
   71106         elements to register for a callback when the media volume is changed.
   71107         (WebCore::Document::unregisterForMediaVolumeCallbacks): Added. Allows
   71108         elements to unregister for the callback.
   71109         * dom/Document.h:
   71110         * dom/Element.h:
   71111         (WebCore::Element::mediaVolumeDidChange): Added an empty implementation.
   71112         * html/HTMLMediaElement.cpp:
   71113         (WebCore::HTMLMediaElement::HTMLMediaElement): Added a call to
   71114         registerForMediaVolumeCallbacks().
   71115         (WebCore::HTMLMediaElement::~HTMLMediaElement): Added a call to
   71116         unregisterForMediaVolumeCallbacks().
   71117         (WebCore::HTMLMediaElement::updateVolume): Changed to multiply the
   71118         element's intrinsic volume by the master volume from the page.
   71119         (WebCore::HTMLMediaElement::mediaVolumeDidChange): Added. Calls
   71120         updateVolume().
   71121         * html/HTMLMediaElement.h:
   71122         * page/Page.cpp:
   71123         (WebCore::Page::Page): Initialize m_mediaVolume to 1.
   71124         (WebCore::Page::setMediaVolume): Added. Calls mediaVolumeDidChange() on
   71125         every document in the page when the master volume changes.
   71126         * page/Page.h:
   71127         (WebCore::Page::mediaVolume): Added this getter.
   71128 
   71129 2008-11-11  David Hyatt  <hyatt (a] apple.com>
   71130 
   71131         https://bugs.webkit.org/show_bug.cgi?id=22182
   71132 
   71133         Fix problems with scrollbars when the OS setting for clicks in the track jumping the thumb to that location
   71134         is turned on.  Make sure to only jump the thumb if the click happens in the track.  Also fix some math
   71135         errors when jumping the thumb that cause dragging after the jump to incorrectly jump the thumb again.
   71136 
   71137         Reviewed by Adele
   71138 
   71139         * platform/Scrollbar.cpp:
   71140         (WebCore::Scrollbar::mouseDown):
   71141 
   71142 2008-11-11  Beth Dakin  <bdakin (a] apple.com>
   71143 
   71144         Reviewed by Darin Adler.
   71145 
   71146         Fix for <rdar://problem/5089327> Too much indentation when pasting
   71147         quoted paragraphs
   71148 
   71149         This patch re-addresses pasting blockquotes into blockquotes. It
   71150         backs out most of revision 38273. 38273 fixed the bug by inserting
   71151         the pasted content as a sibling blockquote node to the pre-existing
   71152         blockquote node. The problem with that is that by default,
   71153         blockquotes have a giant margin, so visually, this can be weird.
   71154         This patch instead inserts the pasted content as siblings of the
   71155         the content already inside the outer blockquote, and then removes
   71156         the blockquote node from the pasted content itself, so that it
   71157         doesn't nest itself into the outer blockquote.
   71158         * editing/ReplaceSelectionCommand.cpp:
   71159         (WebCore::ReplaceSelectionCommand::doApply):
   71160 
   71161         Move contains() from Element to Node since there is nothing
   71162         Element-specific about it.
   71163         * dom/Element.cpp:
   71164         * dom/Element.h:
   71165         * dom/Node.cpp:
   71166         (WebCore::Node::contains):
   71167         * dom/Node.h:
   71168 
   71169 2008-11-11  David Hyatt  <hyatt (a] apple.com>
   71170 
   71171         https://bugs.webkit.org/show_bug.cgi?id=17997
   71172 
   71173         Stop using the new Leopard API tiling call for scaled tiles when drawing background images.  The method
   71174         is buggy.  Fall back to using the slower (and more correct) pattern tiling that Tiger still uses.  This
   71175         is a Leopard-only workaround, since the API has been fixed on Snow Leopard.
   71176 
   71177         Reviewed by John Sullivan
   71178 
   71179         * platform/graphics/cg/ImageCG.cpp:
   71180         (WebCore::Image::drawPattern):
   71181 
   71182 2008-11-10  David Hyatt  <hyatt (a] apple.com>
   71183 
   71184         Disable the Aqua look for menu lists when full page zoom is turned on.  Because the control is buggy
   71185         when scaling and because it's impossible to paint into an offscreen bitmap without completely rewriting
   71186         how we draw the control on Mac, our only real option for now is to just switch to our styled look when zoomed.
   71187 
   71188         Reviewed by Adam Roben
   71189 
   71190         * rendering/RenderThemeMac.mm:
   71191         (WebCore::RenderThemeMac::isControlStyled):
   71192 
   71193 2008-11-11  Darin Adler  <darin (a] apple.com>
   71194 
   71195         Reviewed by Dan Bernstein.
   71196 
   71197         - https://bugs.webkit.org/show_bug.cgi?id=22160
   71198         speculative fix for <rdar://problem/5995450> Nil deref because nextLinePosition
   71199         (previousLinePosition, too) uses a nil node
   71200 
   71201         * editing/visible_units.cpp:
   71202         (WebCore::nextLinePosition): Use RenderObject::node instead of RenderObject::element
   71203         to check editingIgnoresContent. It makes sense to use the associated DOM node for
   71204         this, even in cases of anonymous content, and it avoids the case where element() can
   71205         be 0.
   71206         (WebCore::previousLinePosition): Ditto.
   71207 
   71208 2008-11-11  Dirk Schulze  <vbs85 (a] gmx.de>
   71209 
   71210         Reviewed by Darin Adler.
   71211 
   71212         Removed default: in applySpreadMethod. This causes the problems
   71213         in radial gradients. We don't need CAIRO_EXTEND_NONE in SVG, Canvas
   71214         or CSS.
   71215 
   71216         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   71217         (WebCore::applySpreadMethod):
   71218 
   71219 2008-11-11  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   71220 
   71221         Reviewed by Tor Arne Vestb.
   71222 
   71223         Fix crash when rendering the file chooser.
   71224         Also proper implementation for multi-selected files.
   71225 
   71226         * platform/qt/FileChooserQt.cpp:
   71227         (WebCore::FileChooser::basenameForWidth):
   71228 
   71229 2008-11-11  Dirk Schulze  <vbs85 (a] gmx.de>
   71230 
   71231         Reviewed by Oliver Hunt.
   71232 
   71233         PatternCairo needs to invert the pattern matrix because
   71234         of transformation from user space to pattern space.
   71235         Give a identity matrix to pattern for Qt and Cairo. Because the
   71236         context is transformed already.
   71237 
   71238         [CAIRO][QT] Canvas transformations applied twice to Patterns
   71239         https://bugs.webkit.org/show_bug.cgi?id=21555
   71240 
   71241         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   71242         (WebCore::GraphicsContext::fillPath):
   71243         (WebCore::GraphicsContext::strokePath):
   71244         * platform/graphics/cairo/PatternCairo.cpp:
   71245         (WebCore::Pattern::createPlatformPattern):
   71246         * platform/graphics/qt/GraphicsContextQt.cpp:
   71247         (WebCore::GraphicsContext::strokePath):
   71248         (WebCore::GraphicsContext::fillRect):
   71249 
   71250 2008-11-10  Stephanie Lewis  <slewis (a] apple.com>
   71251 
   71252         Reviewed by Dan Bernstein.
   71253 
   71254         Clear the image source cache even if we haven't decoded any of the image data.
   71255         We use the image source cache when calculating layout.
   71256 
   71257         * loader/Cache.cpp:
   71258         (WebCore::Cache::pruneDeadResources):
   71259         * platform/graphics/BitmapImage.cpp:
   71260         (WebCore::BitmapImage::destroyDecodedData):
   71261 
   71262 2008-11-10  Adam Roben  <aroben (a] apple.com>
   71263 
   71264         Fix Bug 22161: Assertion failure in RenderThemeWin::systemColor when
   71265         loading microsoftpdc.com
   71266 
   71267         <https://bugs.webkit.org/show_bug.cgi?id=22161>
   71268 
   71269         Reviewed by Dan Bernstein.
   71270 
   71271         Test: fast/css/outline-invert-assertion.html
   71272 
   71273         * rendering/RenderThemeWin.cpp:
   71274         (WebCore::RenderThemeWin::systemColor): If we can't determine a good
   71275         Win32 system color to use, defer to RenderTheme instead of asserting.
   71276         This matches what RenderThemeMac does.
   71277 
   71278 2008-11-10  Justin Garcia  <justin.garcia (a] apple.com>
   71279 
   71280         Reviewed by Beth Dakin.
   71281 
   71282         <rdar://problem/4037481> REGRESSION (Mail): pasting quoted text
   71283         into quoted text yields double-quoting
   71284 
   71285         Don't nest inserted content in Mail blockquotes.  Perform a
   71286         BreakBlockquoteCommand if we're in
   71287         one and insert the incoming fragment between the split blockquotes.
   71288 
   71289         * editing/ReplaceSelectionCommand.cpp:
   71290         (WebCore::ReplaceSelectionCommand::shouldMerge): Renamed from ->
   71291         source and to -> destination.
   71292         (WebCore::ReplaceSelectionCommand::doApply):
   71293 
   71294 2008-11-10  Adam Roben  <aroben (a] apple.com>
   71295 
   71296         Fix Bug 22158: Would like to turn on WebCore logging channels via an
   71297         environment variable
   71298 
   71299         <https://bugs.webkit.org/show_bug.cgi?id=22158>
   71300 
   71301         Logging channels can now be enabled by setting the WebCoreLogLevel
   71302         environment variable to a hexadecimal number.
   71303 
   71304         Reviewed by Anders Carlsson.
   71305 
   71306         * WebCore.vcproj/WebCore.vcproj: Added LoggingWin.cpp.
   71307         * platform/win/LoggingWin.cpp: Copied from WebCore/platform/mac/LoggingMac.mm.
   71308         (WebCore::initializeWithUserDefault): Read in the WebCoreLogLevel
   71309         environment variable, parse its value as a hexadecimal number, and
   71310         turn the channel on/off based on whether the mask bit is set.
   71311         (WebCore::InitializeLoggingChannelsIfNecessary): Initialize each
   71312         logging channel in turn.
   71313 
   71314 2008-11-10  Darin Adler  <darin (a] apple.com>
   71315 
   71316         Reviewed by Adam Roben.
   71317 
   71318         - fix https://bugs.webkit.org/show_bug.cgi?id=22103
   71319           Changing fonts in preferences does not immediately update WebViews
   71320 
   71321         This broke when the meaning of FrameView::invalidate changed.
   71322         I changed setNeedsReapplyStyles to no longer depend on invalidate.
   71323 
   71324         * dom/Document.cpp: (WebCore::Document::shouldScheduleLayout):
   71325         Removed the part of this function that duplicated what's already in
   71326         FrameView::needsLayout, since the copy here left out a few key things.
   71327         For example, it didn't handle the fact that "needs reapply styles"
   71328         counts as needing layout.
   71329 
   71330         * page/Frame.cpp: (WebCore::Frame::setNeedsReapplyStyles): This called
   71331         FrameView::invalidate before. There were two things wrong with that.
   71332         1) It requested that the entire view repaint even if the style change
   71333         didn't necessitate that. 2) FrameView::invalidate no longer causes any
   71334         repainting at all in certain cases, because of Hyatt's changes to how
   71335         widgets and the host window are involved in the repainting process.
   71336         So call FrameView::scheduleRelayout instead, which is more precisely
   71337         what we want and need here.
   71338 
   71339         * page/FrameView.cpp:
   71340         (WebCore::FrameView::scheduleRelayout): Add a call to needsLayout here
   71341         so that Document::shouldScheduleLayout doesn't have to replicate the
   71342         logic that's in needsLayout and can instead rely on the fact that it
   71343         was already called.
   71344         (WebCore::FrameView::needsLayout): Tweaked the comments and formatting
   71345         in this function.
   71346 
   71347 2008-11-10  Darin Adler  <darin (a] apple.com>
   71348 
   71349         Reviewed by Adam Roben.
   71350 
   71351         - speculative fix for <rdar://problem/5557243> crashes in Safari at
   71352           WebCore::HTMLSelectElement::updateListBoxSelection + 280
   71353 
   71354         * html/HTMLSelectElement.cpp:
   71355         (WebCore::HTMLSelectElement::updateListBoxSelection):
   71356         Check index against size of vector before indexing into the vector.
   71357 
   71358 2008-11-10  Tom Cooksey  <thomas.cooksey (a] trolltech.com>
   71359 
   71360         Reviewed by Tor Arne Vestb.
   71361 
   71362         Fix QtWebkit build failure on arm.
   71363 
   71364         pen.widthF() is a qreal, which means it's a float on arm.
   71365 
   71366         * platform/graphics/qt/GraphicsContextQt.cpp:
   71367         (WebCore::GraphicsContext::setLineDash):
   71368 
   71369 2008-11-10  Morten Srvig  <msorvig (a] trolltech.com>
   71370 
   71371         Reviewed by Simon Hausmann.
   71372 
   71373         Improve mouse wheel scolling on Qt/Cocoa.
   71374         Cocoa differs from Carbon (and other platforms I think) in that the
   71375         mouse wheel events we get have a much higher acceleration factor.
   71376 
   71377         This submit switches over to scroll-per-pixel from scroll-per-line
   71378         for most of our scrolling views. This matches the native views
   71379         and works well with the increased acceleration.
   71380 
   71381         * platform/qt/WheelEventQt.cpp:
   71382 
   71383 2008-11-09  Cameron Zwarich  <zwarich (a] apple.com>
   71384 
   71385         Reviewed by Darin Adler.
   71386 
   71387         Bug 19541: Null pointer in showModalDialog()
   71388         <https://bugs.webkit.org/show_bug.cgi?id=19541>
   71389 
   71390         Add null frame->page() checks to JSDOMWindowBase::canShowModalDialog()
   71391         and JSDOMWindowBase::canShowModalDialogNow()C
   71392 
   71393         * bindings/js/JSDOMWindowBase.cpp:
   71394         (WebCore::canShowModalDialog):
   71395         (WebCore::canShowModalDialogNow):
   71396 
   71397 2008-11-09  Darin Adler  <darin (a] apple.com>
   71398 
   71399         - try to fix Windows build
   71400 
   71401         * platform/graphics/Color.cpp: For some reason MSVC doesn't follow the rules
   71402         about needed a separate definition for static const integer data members.
   71403         Until I get to the bottom of this, put the definitions inside an ifdef.
   71404 
   71405 2008-11-09  David Kilzer  <ddkilzer (a] apple.com>
   71406 
   71407         BUILD FIX: Qt build broke after r38235.
   71408 
   71409         Added HAVE(ACCESSIBILITY) header guards to platform implementation
   71410         source files.
   71411 
   71412         * page/gtk/AccessibilityObjectAtk.cpp: Added HAVE(ACCESSIBILITY)
   71413         guards.
   71414         * page/gtk/AccessibilityObjectWrapperAtk.cpp: Ditto.
   71415         * page/qt/AccessibilityObjectQt.cpp: Ditto.
   71416         * page/win/AccessibilityObjectWin.cpp: Ditto.
   71417         * page/wx/AccessibilityObjectWx.cpp: Ditto.
   71418 
   71419 2008-11-09  Alexey Proskuryakov  <ap (a] webkit.org>
   71420 
   71421         Reviewed by Darin Adler.
   71422 
   71423         https://bugs.webkit.org/show_bug.cgi?id=22104
   71424         Javascript URL percent encoding/decoding broken by some characters
   71425 
   71426         Test: fast/loader/javascript-url-encoding-2.html
   71427 
   71428         * platform/KURL.cpp: (WebCore::encodeRelativeString): Don't try to break down javascript URLs.
   71429 
   71430 2008-11-09  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   71431 
   71432         Reviewed and tweaked by Darin Adler.
   71433 
   71434         * platform/graphics/Color.cpp: Added definitions for the static data members
   71435         in this class. Static data members need a definition, even when they are the
   71436         simple integer constant kind that can be initialized in the header.
   71437 
   71438 2008-11-08  Antti Koivisto  <antti (a] apple.com>
   71439 
   71440         Reviewed by Sam Weinig.
   71441 
   71442         Fix https://bugs.webkit.org/show_bug.cgi?id=22141
   71443         REGRESSION: Safari error page is not fully styled when loaded from cache
   71444 
   71445         Reset text decoder on flush so it does not pass through the BOM when it is reused.
   71446 
   71447         Test: fast/encoding/css-cached-bom.html
   71448 
   71449         * loader/TextResourceDecoder.cpp:
   71450         (WebCore::TextResourceDecoder::flush):
   71451 
   71452 2008-11-08  Kevin Ollivier  <kevino (a] theolliviers.com>
   71453 
   71454         Reviewed by Mark Rowe.
   71455 
   71456         Send URL errors to stderr rather than stdout. While debugging wx DumpRenderTree,
   71457         it was causing these errors to end up in the page's text representation.
   71458 
   71459         * platform/network/curl/ResourceHandleManager.cpp:
   71460         (WebCore::ResourceHandleManager::downloadTimerCallback):
   71461 
   71462 2008-11-08  Kevin Ollivier  <kevino (a] theolliviers.com>
   71463 
   71464         wx build fixes after addition of JSCore parser and bycompiler dirs.
   71465 
   71466         * webcore-base.bkl:
   71467         * webcore-wx.bkl:
   71468 
   71469 2008-11-08  Simon Fraser  <simon.fraser (a] apple.com>
   71470 
   71471         Reviewed by Dan Bernstein
   71472 
   71473         https://bugs.webkit.org/show_bug.cgi?id=21906
   71474 
   71475         Override addFocusRingRects() in RenderTextControl to avoid
   71476         the RenderFlow behavior of recursing on descendent renderers.
   71477         RenderTextControl should only ever need a simple focus rect.
   71478 
   71479         This fixes focus ring issues with transforms on text controls.
   71480 
   71481         Test: fast/transforms/transformed-focused-text-input.html
   71482 
   71483         * rendering/RenderTextControl.cpp:
   71484         (WebCore::RenderTextControl::addFocusRingRects):
   71485         * rendering/RenderTextControl.h:
   71486 
   71487 2008-11-08  Dimitri Dupuis-Latour  <dupuislatour (a] apple.com>
   71488 
   71489         Make sure the icon thumbnail width/height is at least 1px in
   71490         the Web Inspector's resource panel.
   71491 
   71492         <rdar://problem/5988888>
   71493 
   71494         Reviewed by Tim Hatcher.
   71495 
   71496         * inspector/front-end/inspector.css:
   71497 
   71498 2008-11-08  David Kilzer  <ddkilzer (a] apple.com>
   71499 
   71500         Bug 22137: PLATFORM(MAC) build broken with HAVE(ACCESSIBILITY) disabled
   71501 
   71502         <https://bugs.webkit.org/show_bug.cgi?id=22137>
   71503 
   71504         Reviewed by Darin Adler.
   71505 
   71506         * page/AccessibilityObject.h:
   71507         (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
   71508         Provide a default implementation when HAVE(ACCESSIBILITY) is false.
   71509         * page/mac/AXObjectCacheMac.mm: Added HAVE(ACCESSIBILITY) guard.
   71510         * page/mac/AccessibilityObjectMac.mm: Ditto.
   71511         * page/mac/AccessibilityObjectWrapper.mm: Ditto.
   71512 
   71513 2008-11-08  Dan Bernstein  <mitz (a] apple.com>
   71514 
   71515         Reviewed by Darin Adler.
   71516 
   71517         - WebCore part of adding WebPreferences for controlling databases and local storage
   71518 
   71519         * WebCore.base.exp: Exported Settings::setDatabasesEnabled() and
   71520         Settings::setLocalStorageEnabled().
   71521         * page/DOMWindow.cpp:
   71522         (WebCore::DOMWindow::localStorage): Changed to return 0 if local storage
   71523         is disabled in settings.
   71524         (WebCore::DOMWindow::openDatabase): Changed to return 0 if databases
   71525         are disabled in settings.
   71526         * page/Settings.cpp:
   71527         (WebCore::Settings::Settings): Initialize m_databasesEnabled and
   71528         m_localStorageEnabled.
   71529         (WebCore::Settings::setDatabasesEnabled): Added.
   71530         (WebCore::Settings::setLocalStorageEnabled): Added.
   71531         * page/Settings.h:
   71532         (WebCore::Settings::databasesEnabled): Added.
   71533         (WebCore::Settings::localStorageEnabled): Added.
   71534 
   71535 2008-11-07  Alp Toker  <alp (a] nuanti.com>
   71536 
   71537         Fix build with bleeding edge GTK+ versions. GTK+ and other libraries
   71538         now require that only their top-level header file is included.
   71539 
   71540         Patch tested and still builds fine with older GTK+ versions (back to
   71541         2.8).
   71542 
   71543         Future WebKit GTK+ contributions are required to adhere to this
   71544         policy.
   71545 
   71546         * platform/gtk/FileSystemGtk.cpp:
   71547         * platform/gtk/KeyEventGtk.cpp:
   71548         * platform/gtk/MouseEventGtk.cpp:
   71549         * platform/gtk/WheelEventGtk.cpp:
   71550         * platform/gtk/gtkdrawing.h:
   71551         * plugins/gtk/gtk2xtbin.c:
   71552         * plugins/gtk/gtk2xtbin.h:
   71553 
   71554 2008-11-07  Anders Carlsson  <andersca (a] apple.com>
   71555 
   71556         Reviewed by Kevin Decker
   71557 
   71558         Explicitly initialize the NPDrawingModelCoreAnimation.
   71559 
   71560         * bridge/npapi.h:
   71561 
   71562 2008-11-07  Alp Toker  <alp (a] nuanti.com>
   71563 
   71564         autotools fix. Always use the configured perl binary (which may be
   71565         different to the one in $PATH) when generating sources.
   71566 
   71567         * GNUmakefile.am:
   71568 
   71569 2008-11-07  Simon Fraser  <simon.fraser (a] apple.com>
   71570 
   71571         Reviewed by Dan Bernstein
   71572 
   71573         https://bugs.webkit.org/show_bug.cgi?id=22122
   71574 
   71575         Use a stack-based object to simplify the pushLayoutState/popLayoutState
   71576         code. LayoutStateMaintainer either pushes in the constructor, or allows
   71577         an explicit push() later. Both cases require an explicit pop().
   71578 
   71579         * rendering/RenderBlock.cpp:
   71580         (WebCore::RenderBlock::layoutBlock):
   71581         (WebCore::RenderBlock::layoutOnlyPositionedObjects):
   71582         * rendering/RenderContainer.cpp:
   71583         (WebCore::RenderContainer::layout):
   71584         * rendering/RenderFlexibleBox.cpp:
   71585         (WebCore::RenderFlexibleBox::layoutBlock):
   71586         * rendering/RenderTable.cpp:
   71587         (WebCore::RenderTable::layout):
   71588         * rendering/RenderTableRow.cpp:
   71589         (WebCore::RenderTableRow::layout):
   71590         * rendering/RenderTableSection.cpp:
   71591         (WebCore::RenderTableSection::setCellWidths):
   71592         (WebCore::RenderTableSection::calcRowHeight):
   71593         (WebCore::RenderTableSection::layoutRows):
   71594         * rendering/RenderView.h:
   71595         (WebCore::LayoutStateMaintainer::LayoutStateMaintainer):
   71596         (WebCore::LayoutStateMaintainer::~LayoutStateMaintainer):
   71597         (WebCore::LayoutStateMaintainer::pop):
   71598         (WebCore::LayoutStateMaintainer::push):
   71599         (WebCore::LayoutStateMaintainer::didPush):
   71600 
   71601 2008-11-07  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   71602 
   71603         Fix the QtWebKit build on Mac
   71604 
   71605         * platform/qt/TemporaryLinkStubs.cpp:
   71606         (PluginView::invalidateRect):
   71607 
   71608 2008-11-07  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   71609 
   71610         Rubber-stamped by Simon Hausmann.
   71611 
   71612         Don't allow Phonon's invisible video widget to keep the app running
   71613 
   71614         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
   71615         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
   71616 
   71617 2008-11-07  Henrik Hartz  <henrik.hartz (a] nokia.com>
   71618 
   71619         Reviewed by Simon Hausmann.
   71620 
   71621         Fix valgrind warning about uninitialized lastStop variable.
   71622 
   71623         * platform/graphics/qt/GradientQt.cpp:
   71624         (WebCore::Gradient::platformGradient):
   71625 
   71626 2008-11-07  Alexey Proskuryakov  <ap (a] webkit.org>
   71627 
   71628         Reviewed by Maciej Stachowiak.
   71629 
   71630         Fix layout test brokenness following r38211.
   71631 
   71632         * page/EventHandler.cpp: (WebCore::EventHandler::handleAccessKey):
   71633         Restore old Shift key behavior. We ignore Shift key state when matching access keys (which
   71634         matches neither IE nor Firefox), and this patch made WebKit behave like Firefox
   71635         inadvertently. This may or may not be a good thing, but it's certainly not something that
   71636         should change by accident.
   71637 
   71638 2008-11-06  Antti Koivisto  <antti (a] apple.com>
   71639 
   71640         Eh, this trivial last minute change was wrong.
   71641 
   71642         * loader/CachedCSSStyleSheet.cpp:
   71643         (WebCore::CachedCSSStyleSheet::sheetText):
   71644 
   71645 2008-11-06  Antti Koivisto  <antti (a] apple.com>
   71646 
   71647         Reviewed by Dan Bernstein.
   71648 
   71649         https://bugs.webkit.org/show_bug.cgi?id=22093
   71650 
   71651         Delaying the text decoding caused regression since the decoding
   71652         also determines the encoding in case of @charset rule.
   71653 
   71654         Decode immediately in data() and keep the decoded string around
   71655         during the checkNotify().
   71656 
   71657         * loader/CachedCSSStyleSheet.cpp:
   71658         (WebCore::CachedCSSStyleSheet::sheetText):
   71659         (WebCore::CachedCSSStyleSheet::data):
   71660         * loader/CachedCSSStyleSheet.h:
   71661 
   71662 2008-11-06  Alexey Proskuryakov  <ap (a] webkit.org>
   71663 
   71664         Reviewed by Darin Adler.
   71665 
   71666         https://bugs.webkit.org/show_bug.cgi?id=22097
   71667         Expose MessageEvent constructor on WorkerContext
   71668 
   71669         * bindings/js/JSWorkerContext.cpp:
   71670         (WebCore::jsWorkerContextMessageEvent):
   71671         (WebCore::setJSWorkerContextMessageEvent):
   71672 
   71673 2008-11-06  Alexey Proskuryakov  <ap (a] webkit.org>
   71674 
   71675         Reviewed by Darin Adler.
   71676 
   71677         https://bugs.webkit.org/show_bug.cgi?id=21107
   71678         <rdar://problem/6264219> New access key combination conflicts with VoiceOver
   71679 
   71680         * page/EventHandler.h:
   71681         * page/gtk/EventHandlerGtk.cpp:
   71682         (WebCore::EventHandler::accessKeyModifiers):
   71683         * page/qt/EventHandlerQt.cpp:
   71684         (WebCore::EventHandler::accessKeyModifiers):
   71685         * page/win/EventHandlerWin.cpp:
   71686         (WebCore::EventHandler::accessKeyModifiers):
   71687         * page/wx/EventHandlerWx.cpp:
   71688         (WebCore::EventHandler::accessKeyModifiers):
   71689         Access access key modifiers via a function, not a static variable.
   71690 
   71691         * page/mac/EventHandlerMac.mm: (WebCore::EventHandler::accessKeyModifiers):
   71692         Use Ctrl when VoiceOver is enabled, because a conflict with Emacs-style key bindings is
   71693         less troublesome than one with VO keys.
   71694 
   71695         * page/EventHandler.cpp: (WebCore::EventHandler::handleAccessKey):
   71696         Also fix an access key matching bug introduced in r32424 - Any superset of specified
   71697         modifier set invoked access keys. We can use simple equality comparison instead because
   71698         CapsLock is not part of modifiers(), so it doesn't need to be ignored explicitly.
   71699 
   71700 2008-11-06  Anders Carlsson  <andersca (a] apple.com>
   71701 
   71702         Reviewed by Kevin Decker.
   71703 
   71704         https://bugs.webkit.org/show_bug.cgi?id=22115
   71705         NPN_HasPropertyUPP and NPN_HasMethodUPP entries in NPNetscapeFuncs are NULL
   71706 
   71707         Export _NPN_HasMethod and _NPN_HasProperty.
   71708 
   71709         * WebCore.NPAPI.exp:
   71710 
   71711 2008-11-06  Simon Fraser  <simon.fraser (a] apple.com>
   71712 
   71713         Reviewed by Antti Koivisto
   71714 
   71715         https://bugs.webkit.org/show_bug.cgi?id=15678
   71716 
   71717         Fix transformed menu selects to show the popup in the correct
   71718         location.
   71719 
   71720         * rendering/RenderMenuList.cpp:
   71721         (WebCore::RenderMenuList::showPopup):
   71722 
   71723 2008-11-06  David Kilzer  <ddkilzer (a] apple.com>
   71724 
   71725         BUILD FIX: Backed out r38189 (and r38203) for Xcode 3.0.
   71726 
   71727         Apparently older versions of gcc have issues with this patch.
   71728         Backing out a second time until the issues are resolved.
   71729 
   71730 2008-11-06  Julien Chaffraix  <jchaffraix (a] pleyo.com>
   71731 
   71732         Reviewed by Maciej Stachowiak.
   71733 
   71734         Bug 21106: .in format discussed changes
   71735         https://bugs.webkit.org/show_bug.cgi?id=21106
   71736 
   71737         Include the namespace into the interfaceName.
   71738 
   71739         * dom/make_names.pl: Do not append the namespace when
   71740         using the interfaceName.
   71741         * html/HTMLTagNames.in: Added namespace prefix for custom
   71742         interfaceName.
   71743         * svg/svgtags.in: Ditto.
   71744 
   71745 2008-11-06  Cameron Zwarich  <zwarich (a] apple.com>
   71746 
   71747         Reviewed by Geoff Garen.
   71748 
   71749         Move the remaining files in the kjs subdirectory of JavaScriptCore to
   71750         a new parser subdirectory, and remove the kjs subdirectory entirely.
   71751 
   71752         * ForwardingHeaders/kjs: Removed.
   71753         * ForwardingHeaders/kjs/Parser.h: Removed.
   71754         * ForwardingHeaders/kjs/SavedBuiltins.h: Removed.
   71755         * ForwardingHeaders/kjs/SourceCode.h: Removed.
   71756         * ForwardingHeaders/kjs/SourceProvider.h: Removed.
   71757         * ForwardingHeaders/parser: Added.
   71758         * ForwardingHeaders/parser/Parser.h: Copied from ForwardingHeaders/kjs/Parser.h.
   71759         * ForwardingHeaders/parser/SourceCode.h: Copied from ForwardingHeaders/kjs/SourceCode.h.
   71760         * ForwardingHeaders/parser/SourceProvider.h: Copied from ForwardingHeaders/kjs/SourceProvider.h.
   71761         * WebCore.pro:
   71762         * WebCore.vcproj/WebCore.vcproj:
   71763         * bindings/js/StringSourceProvider.h:
   71764         * bindings/js/WorkerScriptController.cpp:
   71765         * bridge/NP_jsobject.cpp:
   71766         * bridge/jni/jni_jsobject.mm:
   71767         * bridge/testbindings.pro:
   71768         * inspector/JavaScriptDebugServer.cpp:
   71769 
   71770 2008-11-06  David Kilzer  <ddkilzer (a] apple.com>
   71771 
   71772         BUILD WAS NOT BROKEN: Rolling r38189 back in.
   71773 
   71774         Please perform a clean build if you see crashes.
   71775 
   71776 2008-11-06  David Kilzer  <ddkilzer (a] apple.com>
   71777 
   71778         BUILD FIX: Backed out r38189 since it apparently broke the world.
   71779 
   71780 2008-11-06  Chris Fleizach  <cfleizach (a] apple.com>
   71781 
   71782         Reviewed by Beth Dakin.
   71783 
   71784         Bug 22112: if a <body> has contenteditable=true, it should report a writable AXValue
   71785         https://bugs.webkit.org/show_bug.cgi?id=22112
   71786 
   71787         Test: accessibility/content-editable.html
   71788 
   71789         * page/AccessibilityRenderObject.cpp:
   71790         (WebCore::AccessibilityRenderObject::isReadOnly):
   71791 
   71792 2008-11-06  Sam Weinig  <sam (a] webkit.org>
   71793 
   71794         Reviewed by Alice Liu.
   71795 
   71796         Fix failed assert at launch caused by unintialized data member on the mac.
   71797 
   71798         * platform/network/mac/NetworkStateNotifierMac.cpp:
   71799         (WebCore::NetworkStateNotifier::NetworkStateNotifier):
   71800 
   71801 2008-11-06  Steve Falkenburg  <sfalken (a] apple.com>
   71802 
   71803         Fix failed assert at launch caused by unintialized data member.
   71804 
   71805         Reviewed by Maciej Stachowiak.
   71806 
   71807         * platform/network/win/NetworkStateNotifierWin.cpp:
   71808         (WebCore::NetworkStateNotifier::NetworkStateNotifier):
   71809 
   71810 2008-11-06  Simon Fraser  <simon.fraser (a] apple.com>
   71811 
   71812         Reviewed by Antti Koivisto
   71813 
   71814         https://bugs.webkit.org/show_bug.cgi?id=22109
   71815         Make <input type="range"> work correctly with transforms
   71816 
   71817         Test: fast/forms/slider-transformed.html
   71818 
   71819         * html/HTMLInputElement.cpp:
   71820         (WebCore::HTMLInputElement::defaultEventHandler):
   71821             Compute a correct local point when the event is retargeted
   71822         * rendering/RenderSlider.cpp:
   71823         (WebCore::HTMLSliderThumbElement::defaultEventHandler):
   71824             Compute m_initialClickPoint in slider-local coords, so that
   71825             deltas are computed correctly with transforms
   71826         (WebCore::RenderSlider::mouseEventIsInThumb):
   71827             Rather than computing an absolute bounds for the thumb,
   71828             convert the point to local coords and compare it with the border box.
   71829 
   71830 2008-11-06  Greg Bolsinga  <bolsinga (a] apple.com>
   71831 
   71832         Reviewed by Darin Adler.
   71833 
   71834         Bug 21810: Remove use of static C++ objects that are destroyed at exit time (destructors)
   71835         https://bugs.webkit.org/show_bug.cgi?id=21810
   71836 
   71837         * bindings/js/GCController.cpp:
   71838         (WebCore::gcController): Changed to leak an object to avoid an exit-time destructor.
   71839         * bindings/js/JSDOMBinding.cpp:
   71840         (WebCore::wrapperSet): Ditto
   71841         * bindings/js/JSInspectedObjectWrapper.cpp:
   71842         (WebCore::wrappers): Ditto
   71843         * bindings/js/JSInspectorCallbackWrapper.cpp:
   71844         (WebCore::wrappers): Ditto
   71845         * bridge/runtime_root.cpp:
   71846         (JSC::Bindings::rootObjectSet): Ditto
   71847         * css/CSSMutableStyleDeclaration.cpp:
   71848         (WebCore::CSSMutableStyleDeclaration::removeProperty): Ditto
   71849         * css/CSSPrimitiveValue.cpp:
   71850         (WebCore::CSSPrimitiveValue::cssText): Ditto
   71851         * css/CSSSelector.cpp:
   71852         (WebCore::CSSSelector::extractPseudoType): Ditto
   71853         * css/CSSStyleSelector.cpp:
   71854         (WebCore::screenEval): Ditto
   71855         (WebCore::printEval): Ditto
   71856         * dom/DOMImplementation.cpp:
   71857         (WebCore::isSVG10Feature): Ditto
   71858         (WebCore::isSVG11Feature): Ditto
   71859         (WebCore::DOMImplementation::isXMLMIMEType): Ditto
   71860         * dom/Document.cpp:
   71861         (WebCore::Document::hasPrefixNamespaceMismatch): Ditto
   71862         * dom/ScriptElement.cpp:
   71863         (WebCore::isSupportedJavaScriptLanguage): Ditto
   71864         * editing/ApplyStyleCommand.cpp:
   71865         (WebCore::styleSpanClassString): Ditto
   71866         * editing/HTMLInterchange.cpp:
   71867         (WebCore::): Ditto
   71868         * editing/IndentOutdentCommand.cpp:
   71869         (WebCore::indentBlockquoteString): Ditto
   71870         * editing/ReplaceSelectionCommand.cpp:
   71871         (WebCore::isInterchangeNewlineNode): Ditto
   71872         (WebCore::isInterchangeConvertedSpaceSpan): Ditto
   71873         * editing/htmlediting.cpp:
   71874         (WebCore::stringWithRebalancedWhitespace): Ditto
   71875         (WebCore::nonBreakingSpaceString): Ditto
   71876         * editing/markup.cpp:
   71877         (WebCore::appendAttributeValue): Ditto
   71878         (WebCore::appendEscapedContent): Ditto
   71879         (WebCore::shouldAddNamespaceAttr): Ditto
   71880         (WebCore::appendNamespace): Ditto
   71881         (WebCore::appendStartMarkup): Ditto
   71882         (WebCore::createMarkup): Ditto
   71883         * html/HTMLButtonElement.cpp:
   71884         (WebCore::HTMLButtonElement::type): Ditto
   71885         * html/HTMLElement.cpp:
   71886         (WebCore::HTMLElement::isRecognizedTagName): Ditto
   71887         (WebCore::inlineTagList): Ditto
   71888         (WebCore::blockTagList): Ditto
   71889         * html/HTMLFieldSetElement.cpp:
   71890         (WebCore::HTMLFieldSetElement::type): Ditto
   71891         * html/HTMLInputElement.cpp:
   71892         (WebCore::HTMLInputElement::type): Ditto
   71893         * html/HTMLKeygenElement.cpp:
   71894         (WebCore::HTMLKeygenElement::type): Ditto
   71895         * html/HTMLLegendElement.cpp:
   71896         (WebCore::HTMLLegendElement::type): Ditto
   71897         * html/HTMLOptGroupElement.cpp:
   71898         (WebCore::HTMLOptGroupElement::type): Ditto
   71899         * html/HTMLOptionElement.cpp:
   71900         (WebCore::HTMLOptionElement::type): Ditto
   71901         * html/HTMLParser.cpp:
   71902         (WebCore::HTMLParser::getNode): Ditto
   71903         (WebCore::HTMLParser::isHeaderTag): Ditto
   71904         (WebCore::HTMLParser::isResidualStyleTag): Ditto
   71905         (WebCore::HTMLParser::isAffectedByResidualStyle): Ditto
   71906         * html/HTMLSelectElement.cpp:
   71907         (WebCore::HTMLSelectElement::type): Ditto
   71908         * html/HTMLTextAreaElement.cpp:
   71909         (WebCore::HTMLTextAreaElement::type): Ditto
   71910         * inspector/InspectorController.cpp:
   71911         (WebCore::platform): Ditto
   71912         * inspector/JavaScriptDebugServer.cpp:
   71913         (WebCore::JavaScriptDebugServer::shared): Ditto
   71914         * inspector/JavaScriptProfile.cpp:
   71915         (WebCore::profileCache): Ditto
   71916         * inspector/JavaScriptProfileNode.cpp:
   71917         (WebCore::profileNodeCache): Ditto
   71918         * loader/FrameLoader.cpp:
   71919         (WebCore::localSchemes): Ditto
   71920         * loader/appcache/ApplicationCacheStorage.cpp:
   71921         (WebCore::cacheStorage): Ditto
   71922         * loader/archive/ArchiveFactory.cpp:
   71923         (WebCore::archiveMIMETypes): Ditto
   71924         * loader/icon/IconDatabase.cpp:
   71925         (WebCore::IconDatabase::defaultDatabaseFilename): Ditto
   71926         * page/EventHandler.cpp:
   71927         (WebCore::EventHandler::dragState): Ditto
   71928         * page/Frame.cpp:
   71929         (WebCore::createRegExpForLabels): Ditto
   71930         (WebCore::keepAliveSet): Ditto
   71931         * page/Page.cpp:
   71932         (WebCore::Page::groupName): Ditto
   71933         * page/SecurityOrigin.cpp:
   71934         (WebCore::isDefaultPortForProtocol): Ditto
   71935         (WebCore::SecurityOrigin::databaseIdentifier): Ditto
   71936         * page/mac/FrameMac.mm:
   71937         (WebCore::regExpForLabels): Ditto
   71938         * platform/KURL.cpp:
   71939         (WebCore::blankURL): Ditto
   71940         * platform/graphics/FontCache.cpp:
   71941         (WebCore::alternateFamilyName): Ditto
   71942         * platform/graphics/mac/FontCacheMac.mm:
   71943         (WebCore::FontCache::getSimilarFontPlatformData): Ditto
   71944         (WebCore::FontCache::getLastResortFallbackFont): Ditto
   71945         * platform/mac/ScrollbarThemeMac.mm:
   71946         (WebCore::ScrollbarTheme::nativeTheme): Ditto
   71947         * platform/mac/ThemeMac.mm:
   71948         (WebCore::platformTheme): Ditto
   71949         * platform/mac/ThreadCheck.mm:
   71950         (WebCoreReportThreadViolation): Ditto
   71951         * platform/network/NetworkStateNotifier.cpp:
   71952         (WebCore::networkStateNotifier): Ditto
   71953         * platform/network/mac/FormDataStreamMac.mm:
   71954         (WebCore::getStreamFormDataMap): Ditto
   71955         (WebCore::getStreamResourceHandleMap): Ditto
   71956         * platform/network/mac/ResourceResponseMac.mm:
   71957         (WebCore::ResourceResponse::platformLazyInit): Ditto
   71958         * platform/text/TextEncoding.cpp:
   71959         (WebCore::TextEncoding::isJapanese): Ditto
   71960         * rendering/RenderBlock.cpp:
   71961         (WebCore::continuationOutlineTable): Ditto
   71962         * rendering/RenderCounter.cpp:
   71963         (WebCore::counterMaps): Ditto
   71964         * rendering/RenderFlexibleBox.cpp:
   71965         (WebCore::RenderFlexibleBox::layoutVerticalBox): Ditto
   71966         * rendering/RenderListItem.cpp:
   71967         (WebCore::RenderListItem::markerText): Ditto
   71968         * rendering/RenderScrollbarTheme.cpp:
   71969         (WebCore::RenderScrollbarTheme::renderScrollbarTheme): Ditto
   71970         * rendering/RenderThemeMac.mm:
   71971         (WebCore::RenderThemeMac::systemFont): Ditto
   71972         * rendering/bidi.cpp:
   71973         (WebCore::RenderBlock::checkLinesForTextOverflow): Ditto
   71974         * rendering/style/RenderStyle.cpp:
   71975         (WebCore::RenderStyle::initialDashboardRegions): Ditto
   71976         (WebCore::RenderStyle::noneDashboardRegions): Ditto
   71977         * storage/LocalStorage.cpp:
   71978         (WebCore::localStorageMap): Ditto
   71979         * svg/SVGAnimateMotionElement.cpp:
   71980         (WebCore::SVGAnimateMotionElement::rotateMode): Ditto
   71981         * svg/SVGAnimationElement.cpp:
   71982         (WebCore::SVGAnimationElement::calcMode): Ditto
   71983         (WebCore::SVGAnimationElement::attributeType): Ditto
   71984         (WebCore::SVGAnimationElement::isAdditive): Ditto
   71985         (WebCore::SVGAnimationElement::isAccumulated): Ditto
   71986         * svg/SVGLangSpace.cpp:
   71987         (WebCore::SVGLangSpace::xmlspace): Ditto
   71988         * svg/SVGSVGElement.cpp:
   71989         (WebCore::SVGSVGElement::contentScriptType): Ditto
   71990         (WebCore::SVGSVGElement::contentStyleType): Ditto
   71991         * svg/SVGStyleElement.cpp:
   71992         (WebCore::SVGStyleElement::type): Ditto
   71993         (WebCore::SVGStyleElement::media): Ditto
   71994         * svg/SVGTextContentElement.cpp:
   71995         (WebCore::SVGTextContentElement::parseMappedAttribute): Ditto
   71996         * svg/animation/SVGSMILElement.cpp:
   71997         (WebCore::SVGSMILElement::parseClockValue): Ditto
   71998         (WebCore::SVGSMILElement::restart): Ditto
   71999         (WebCore::SVGSMILElement::fill): Ditto
   72000         (WebCore::SVGSMILElement::repeatCount): Ditto
   72001         (WebCore::SVGSMILElement::notifyDependentsIntervalChanged): Ditto
   72002         * svg/graphics/SVGResource.cpp:
   72003         (WebCore::clientMap): Ditto
   72004         * svg/graphics/SVGResourceMarker.cpp:
   72005         (WebCore::SVGResourceMarker::draw): Ditto
   72006         * xml/XMLHttpRequest.cpp:
   72007         (WebCore::preflightResultCache): Ditto
   72008         (WebCore::isSafeRequestHeader): Ditto
   72009         (WebCore::isOnAccessControlResponseHeaderWhitelist): Ditto
   72010         * xml/XPathExpressionNode.cpp:
   72011         (WebCore::XPath::Expression::evaluationContext): Ditto
   72012         * xml/XPathParser.cpp:
   72013         (WebCore::XPath::isAxisName): Ditto
   72014         (WebCore::XPath::isNodeTypeName): Ditto
   72015         * xml/XPathValue.cpp:
   72016         (WebCore::XPath::Value::toNodeSet): Ditto
   72017 
   72018 2008-11-06  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   72019 
   72020         Rubber-stamped by Simon Hausmann.
   72021 
   72022         Remove a bunch of unused methods in the Qt media element implementation
   72023 
   72024         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
   72025         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
   72026         * platform/graphics/qt/MediaPlayerPrivatePhonon.h:
   72027 
   72028 2008-11-05  Simon Fraser  <simon.fraser (a] apple.com>
   72029 
   72030         Reviewed by Dave Hyatt
   72031 
   72032         https://bugs.webkit.org/show_bug.cgi?id=21870
   72033 
   72034         Implement absoluteToLocal() to convert a point from absolute
   72035         to local coordinates, optionally taking transforms into account.
   72036 
   72037         Use this to set offsetX/offsetY in mouse events, thus fixing
   72038         offsetX/offsetY in events on elements with transforms.
   72039 
   72040         Test: fast/events/offsetX-offsetY.html
   72041 
   72042         * dom/MouseRelatedEvent.cpp:
   72043         (WebCore::MouseRelatedEvent::receivedTarget):
   72044         * rendering/RenderBox.cpp:
   72045         (WebCore::RenderBox::localToAbsolute):
   72046         (WebCore::RenderBox::absoluteToLocal):
   72047         (WebCore::RenderBox::offsetFromContainer):
   72048         * rendering/RenderBox.h:
   72049         * rendering/RenderObject.cpp:
   72050         (WebCore::RenderObject::absoluteToLocal):
   72051         * rendering/RenderObject.h:
   72052         * rendering/RenderTableCell.cpp:
   72053         (WebCore::RenderTableCell::localToAbsolute):
   72054         (WebCore::RenderTableCell::absoluteToLocal):
   72055         * rendering/RenderTableCell.h:
   72056         * rendering/RenderView.cpp:
   72057         (WebCore::RenderView::absoluteToLocal):
   72058         * rendering/RenderView.h:
   72059 
   72060 2008-11-06  Alp Toker  <alp (a] nuanti.com>
   72061 
   72062         Reviewed by Cameron Zwarich.
   72063 
   72064         https://bugs.webkit.org/show_bug.cgi?id=22067
   72065         [GTK] Sun Java plugin segfaults at PluginPackage::createPackage()
   72066 
   72067         null-check symbols loaded from plugin modules, initialize the function
   72068         table (like Win already does) and update it with the latest
   72069         additions. Adjust whitespace for easy diff'ing with the Win port code
   72070         from which it was forked.
   72071 
   72072         This fixes crashes with libnspr4.so and any other plugins that don't
   72073         provide the symbols we expect.
   72074 
   72075         * plugins/gtk/PluginPackageGtk.cpp:
   72076         (WebCore::PluginPackage::fetchInfo):
   72077         (WebCore::PluginPackage::load):
   72078 
   72079 2008-11-06  Kristian Amlie  <kristian.amlie (a] nokia.com>
   72080 
   72081         Reviewed by Simon Hausmann.
   72082 
   72083         Removed dead (and broken) code from an ancient Symbian port.
   72084 
   72085         * config.h:
   72086         * platform/text/AtomicString.h:
   72087         * platform/text/PlatformString.h:
   72088 
   72089 2008-11-06  Kristian Amlie  <kristian.amlie (a] nokia.com>
   72090 
   72091         Reviewed by Simon Hausmann.
   72092 
   72093         Use QLibrary as PlatformModule when compiling with Qt for S60.
   72094 
   72095         * platform/FileSystem.h:
   72096 
   72097 2008-11-06  Kristian Amlie  <kristian.amlie (a] nokia.com>
   72098 
   72099         Reviewed by Simon Hausmann.
   72100 
   72101         Compile fix for Symbian.
   72102         The snprintf function is defined in stdio.h, the inclusion
   72103         of snprintf.h inside this PLATFORM(SYMBIAN) block does not
   72104         compile.
   72105 
   72106         * config.h:
   72107 
   72108 2008-11-06  Kristian Amlie  <kristian.amlie (a] nokia.com>
   72109 
   72110         Reviewed by Simon Hausmann.
   72111 
   72112         Disable webkit plugins for Symbian.
   72113 
   72114         * WebCore.pro:
   72115 
   72116 2008-11-06  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   72117 
   72118         Fix build break in debug mode when XSLT is not enabled
   72119 
   72120         * loader/Cache.cpp:
   72121         (WebCore::Cache::dumpStats):
   72122 
   72123 2008-11-06  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   72124 
   72125         Reviewed by Simon Hausmann.
   72126 
   72127         Repaint video on UpdateRequest to prevent recursive painting
   72128 
   72129         Calling QWidget::render() to update the video generates a paint
   72130         event that's then picked up by the event filter once more :(
   72131 
   72132         We're really only interested in updates from Phonon, which we
   72133         get through the UpdateRequest for each new frame.
   72134 
   72135         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
   72136         (WebCore::MediaPlayerPrivate::eventFilter):
   72137 
   72138 2008-11-06  Cameron Zwarich  <zwarich (a] apple.com>
   72139 
   72140         Not reviewed.
   72141 
   72142         Fix the WebCore build for some platforms by changing build scripts to
   72143         account for the recent move of the create_hash_table script from the kjs
   72144         subdirectory of JavaScriptCore to the root directory.
   72145 
   72146         * WebCore.pro:
   72147         * make-generated-sources.sh:
   72148 
   72149 2008-11-06  Cameron Zwarich  <zwarich (a] apple.com>
   72150 
   72151         Not reviewed.
   72152 
   72153         Fix a case-sensitivity issue in Mac forwarding headers. Strangely
   72154         enough, this does not always cause the build to break, even with a
   72155         case-sensitive filesystem.
   72156 
   72157         * ForwardingHeaders/runtime/Interpreter.h:
   72158 
   72159 2008-11-05  Alexey Proskuryakov  <ap (a] webkit.org>
   72160 
   72161         Reviewed by Maciej Stachowiak.
   72162 
   72163         https://bugs.webkit.org/show_bug.cgi?id=22083
   72164         MessageEvents cannot be used across threads
   72165 
   72166         * dom/Event.idl:
   72167         * dom/MessageEvent.idl:
   72168         Add a NoStaticTables attribute - MessageEvent is used in worker threads, so static tables
   72169         won't work.
   72170 
   72171         * dom/MessagePort.cpp:
   72172         (WebCore::MessagePort::EventData::EventData):
   72173         (WebCore::MessagePort::EventData::~EventData):
   72174         (WebCore::MessagePort::clone):
   72175         (WebCore::MessagePort::postMessage):
   72176         (WebCore::MessagePort::startConversation):
   72177         (WebCore::MessagePort::dispatchMessages):
   72178         * dom/MessagePort.h:
   72179         Don't create a MessageEvent until dispatch time - messages can be posted across threads,
   72180         but MessageEvents are tied to the thread that they were created in.
   72181 
   72182 2008-11-05  Alexey Proskuryakov  <ap (a] webkit.org>
   72183 
   72184         Reviewed by Darin Adler.
   72185 
   72186         https://bugs.webkit.org/show_bug.cgi?id=22066
   72187         Implement Worker global object
   72188 
   72189         * DerivedSources.make: Added WorkerLocation IDL and JSWorkerContext lookup table.
   72190 
   72191         * WebCore.xcodeproj/project.pbxproj: Only adding files to Mac project for now, as Worker
   72192         support is still disabled by default.
   72193 
   72194         * bindings/js/JSDOMGlobalObject.cpp: (WebCore::toJSDOMGlobalObject): Implemented Worker case.
   72195 
   72196         * bindings/js/JSMessageChannelConstructor.cpp:
   72197         (WebCore::JSMessageChannelConstructor::JSMessageChannelConstructor): Ditto.
   72198 
   72199         * bindings/js/JSWorkerContext.cpp: Added.
   72200         * bindings/js/JSWorkerContext.h: Added.
   72201         * bindings/js/WorkerScriptController.cpp: Added.
   72202         * bindings/js/WorkerScriptController.h: Added.
   72203         * dom/WorkerContext.cpp: Added.
   72204         * dom/WorkerContext.h: Added.
   72205         Added an implementation of worker contexts.
   72206 
   72207         * dom/DedicatedWorker.cpp:
   72208         (WebCore::DedicatedWorker::startLoad): Fixed a lifetime bug I saw on my tests.
   72209         (WebCore::DedicatedWorker::notifyFinished): Create a thread. Currently, object ownership
   72210         and lifetime is not clear at all.
   72211 
   72212         * dom/WorkerLocation.cpp: Added.
   72213         * dom/WorkerLocation.h: Added.
   72214         * dom/WorkerLocation.idl: Added.
   72215         Added WorkerLocation, which is one of the objects available to workers.
   72216 
   72217         * dom/WorkerThread.cpp: Added.
   72218         (WebCore::WorkerThread::WorkerThread):
   72219         (WebCore::WorkerThread::start):
   72220         (WebCore::WorkerThread::workerThreadStart):
   72221         (WebCore::WorkerThread::workerThread):
   72222         * dom/WorkerThread.h: Added.
   72223         (WebCore::WorkerThread::create):
   72224         Run some code in a worker thread (no message loop yet).
   72225 
   72226 2008-11-05  Antti Koivisto  <antti (a] apple.com>
   72227 
   72228         Reviewed by Dan Bernstein.
   72229 
   72230         https://bugs.webkit.org/show_bug.cgi?id=22093
   72231         Don't keep decoded stylesheet data in cache
   72232 
   72233         <rdar://problem/6343588>
   72234 
   72235         Don't keep decoded stylesheet string around in the cache. There are no sharing benefits and
   72236         performance benefits are negligible (no measured PLT impact). Reduces memory consumption of
   72237         style sheet data in cache by 2/3 in common case.
   72238 
   72239         * loader/CachedCSSStyleSheet.cpp:
   72240         (WebCore::CachedCSSStyleSheet::sheetText):
   72241         (WebCore::CachedCSSStyleSheet::data):
   72242         * loader/CachedCSSStyleSheet.h:
   72243 
   72244 2008-11-05  David Kilzer  <ddkilzer (a] apple.com>
   72245 
   72246         Bug 21596: WebCore::Cache should use parsed Pragma and Cache-Control headers
   72247 
   72248         <https://bugs.webkit.org/show_bug.cgi?id=21596>
   72249 
   72250         Reviewed by Antti.
   72251 
   72252         This patch adds real parsing for Pragma and Cache-Control headers
   72253         based on RFC 2616, Sections 2, 14.9 and 14.32.  It also adds some
   72254         new String and StringImpl methods to assist with the parsing.
   72255 
   72256         * loader/Cache.cpp:
   72257         (WebCore::Cache::dumpStats): Added.  Convenience method for dumping
   72258         stats outside of Safari.
   72259         * loader/Cache.h: Declared dumpStats().
   72260 
   72261         * loader/CachedResource.cpp:
   72262         (WebCore::CachedResource::mustRevalidate): Updated to use
   72263         ResourceResponseBase::cacheControlDirectives() instead of substring
   72264         matching of the entire Cache-Control header.
   72265 
   72266         * loader/loader.cpp:
   72267         (WebCore::Loader::Host::didReceiveResponse): Used the local
   72268         'resource' variable instead of 'request->cachedResource()'.
   72269 
   72270         * platform/network/ResourceResponseBase.cpp:
   72271         (WebCore::ResourceResponseBase::setHTTPHeaderField): Set
   72272         m_haveParsedCacheControlHeader to false when a "Cache-Control"
   72273         header is set.  Ditto for m_haveParsedPragmaHeader and "Pragma".
   72274         (WebCore::ResourceResponseBase::parsePragmaDirectives): Added.
   72275         Provides parsed Pragma header directives.
   72276         (WebCore::ResourceResponseBase::parseCacheControlDirectives): Added.
   72277         Provides parsed Cache-Control header directives.
   72278         (WebCore::isCacheHeaderSeparator): Added.  Returns true if a
   72279         character is a separator character per RFC 2616, Section 2.2, else
   72280         returns false.
   72281         (WebCore::isControlCharacter): Added.  Returns true if a character
   72282         is a control character per RFC 2616 Section 2.2, else returns false.
   72283         (WebCore::trimToNextSeparator): Added.  Returns a string truncated
   72284         at the first separator character per isCacheHeaderSeparator().
   72285         (WebCore::parseCacheHeader): Added.  This is the main parsing
   72286         routine for both Cache-Control and Pragma headers.
   72287         (WebCore::parseCacheControlDirectiveValues): Added.  This splits
   72288         certain Cache-Control directive values into a vector of strings.
   72289         * platform/network/ResourceResponseBase.h:
   72290         (WebCore::CacheControlDirectiveMap): Added.  Typedef for a parsed
   72291         Cache-Control header.
   72292         (WebCore::PragmaDirectiveMap): Added.  Typedef for a parsed Pragma
   72293         header.
   72294         (WebCore::ResourceResponseBase::parsePragmaDirectives): Added
   72295         declaration.
   72296         (WebCore::ResourceResponseBase::parseCacheControlDirectives): Ditto.
   72297         (WebCore::ResourceResponseBase::m_haveParsedCacheControlHeader):
   72298         Added.  Boolean to describe when the "Cache-Control" header needs to
   72299         be reparsed.
   72300         (WebCore::ResourceResponseBase::m_haveParsedPragmaHeader):  Added.
   72301         Boolean to describe when the "Pragma" header needs to be reparsed.
   72302         (WebCore::ResourceResponseBase::m_cacheControlDirectiveMap): Added.
   72303         Cached map to hold parsed "Cache-Control" headers.
   72304         (WebCore::ResourceResponseBase::m_pragmaDirectiveMap): Added.
   72305         Cached map to hold parsed "Pragma" headers.
   72306 
   72307         * platform/text/PlatformString.h:
   72308         (WebCore::String::find): Added.  Returns the first match based on
   72309         the character-matching function pointer passed in.
   72310         (WebCore::String::removeCharacters): Added declaration.
   72311         (WebCore::find): Added.  Inline method that takes a character-
   72312         matching function pointer.  Called by StringImpl::find().
   72313         * platform/text/String.cpp:
   72314         (WebCore::String::removeCharacters): Added.  Calls
   72315         StringImpl::removeCharacters().
   72316         * platform/text/StringImpl.cpp:
   72317         (WebCore::StringImpl::removeCharacters): Added.  Returns a string
   72318         with all characters removed that match the character-matching
   72319         function pointer passed in.  If there is no change to the string, it
   72320         returns itself.  Based heavily on StringImpl::simplifyWhitespace().
   72321         (WebCore::StringImpl::find): Added.  Calls WebCore::find().
   72322         * platform/text/StringImpl.h:
   72323         (WebCore::FindMatchFunctionPtr): Added.  Typedef for a character-
   72324         matching function pointer.
   72325         (WebCore::StringImpl::removeCharacters): Added declaration.
   72326         (WebCore::StringImpl::find): Ditto.
   72327 
   72328 2008-11-05  Justin Garcia  <justin.garcia (a] apple.com>
   72329 
   72330         Reviewed by Beth Dakin.
   72331 
   72332         <rdar://problem/5480736> In Mail and Gmail, copied indented text pastes with line break
   72333 
   72334         As a rule, we don't allow merges out of blockquotes.  In the bug, we are inserting a text node
   72335         between two blockquotes.  Because the start merge moves the text node into a blockquote, when we
   72336         determine whether or not we should do the end merge, it incorrectly appears as though the end merge
   72337         is merging out of a blockquote.  The fix is to determine whether or not we should do the end merge
   72338         before we do the start merge, so that the start merge doesn't effect our decision.
   72339 
   72340         * editing/ReplaceSelectionCommand.cpp:
   72341         (WebCore::ReplaceSelectionCommand::ReplaceSelectionCommand): Initialize the new boolean.
   72342         (WebCore::ReplaceSelectionCommand::mergeEndIfNeeded): Moved code from doApply() here for clarity.
   72343         (WebCore::ReplaceSelectionCommand::doApply): Set m_shouldMergeEnd before we do the start merge.
   72344         * editing/ReplaceSelectionCommand.h: Added m_shouldMergeEnd.
   72345 
   72346 2008-11-05  Cameron Zwarich  <zwarich (a] apple.com>
   72347 
   72348         Not reviewed.
   72349 
   72350         Speculatively fix the Windows build, even though these changes may not
   72351         actually matter for anything in the build, because the Windows bots are
   72352         behind.
   72353 
   72354         * WebCore.vcproj/WebCore.vcproj:
   72355 
   72356 2008-11-05  Cameron Zwarich  <zwarich (a] apple.com>
   72357 
   72358         Not reviewed.
   72359 
   72360         Fix the Qt build.
   72361 
   72362         * bridge/qt/qt_class.cpp:
   72363         * bridge/qt/qt_runtime.h:
   72364 
   72365 2008-11-05  Cameron Zwarich  <zwarich (a] apple.com>
   72366 
   72367         Rubber-stamped by Sam Weinig.
   72368 
   72369         Move more files to the runtime subdirectory of JavaScriptCore.
   72370 
   72371         * ForwardingHeaders/kjs/collector.h: Removed.
   72372         * ForwardingHeaders/kjs/completion.h: Removed.
   72373         * ForwardingHeaders/kjs/identifier.h: Removed.
   72374         * ForwardingHeaders/kjs/interpreter.h: Removed.
   72375         * ForwardingHeaders/kjs/lookup.h: Removed.
   72376         * ForwardingHeaders/kjs/operations.h: Removed.
   72377         * ForwardingHeaders/kjs/protect.h: Removed.
   72378         * ForwardingHeaders/kjs/ustring.h: Removed.
   72379         * ForwardingHeaders/runtime/Collector.h: Copied from ForwardingHeaders/kjs/collector.h.
   72380         * ForwardingHeaders/runtime/Completion.h: Copied from ForwardingHeaders/kjs/completion.h.
   72381         * ForwardingHeaders/runtime/Identifier.h: Copied from ForwardingHeaders/kjs/identifier.h.
   72382         * ForwardingHeaders/runtime/Interpreter.h: Copied from ForwardingHeaders/kjs/interpreter.h.
   72383         * ForwardingHeaders/runtime/Lookup.h: Copied from ForwardingHeaders/kjs/lookup.h.
   72384         * ForwardingHeaders/runtime/Operations.h: Copied from ForwardingHeaders/kjs/operations.h.
   72385         * ForwardingHeaders/runtime/Protect.h: Copied from ForwardingHeaders/kjs/protect.h.
   72386         * ForwardingHeaders/runtime/UString.h: Copied from ForwardingHeaders/kjs/ustring.h.
   72387         * bindings/js/GCController.cpp:
   72388         * bindings/js/JSCustomPositionCallback.h:
   72389         * bindings/js/JSCustomPositionErrorCallback.h:
   72390         * bindings/js/JSCustomSQLStatementCallback.h:
   72391         * bindings/js/JSCustomSQLStatementErrorCallback.h:
   72392         * bindings/js/JSCustomSQLTransactionErrorCallback.h:
   72393         * bindings/js/JSCustomVoidCallback.h:
   72394         * bindings/js/JSDOMBinding.h:
   72395         * bindings/js/JSDOMWindowBase.h:
   72396         * bindings/js/JSEventListener.h:
   72397         * bindings/js/ScheduledAction.h:
   72398         * bindings/js/ScriptController.cpp:
   72399         * bindings/js/ScriptController.h:
   72400         * bindings/objc/WebScriptObject.mm:
   72401         * bindings/scripts/CodeGeneratorJS.pm:
   72402         * bridge/NP_jsobject.cpp:
   72403         * bridge/c/c_class.cpp:
   72404         * bridge/jni/jni_class.cpp:
   72405         * bridge/jni/jni_jsobject.mm:
   72406         * bridge/npruntime.cpp:
   72407         * bridge/runtime_root.h:
   72408         * history/CachedPage.h:
   72409         * html/CanvasRenderingContext2D.cpp:
   72410         * html/HTMLCanvasElement.cpp:
   72411         * inspector/InspectorController.cpp:
   72412         * inspector/JavaScriptCallFrame.cpp:
   72413         * page/Console.cpp:
   72414         * page/Page.cpp:
   72415         * platform/text/AtomicString.cpp:
   72416         * platform/text/PlatformString.h:
   72417 
   72418 2008-11-05  Sam Weinig  <sam (a] webkit.org>
   72419 
   72420         Reviewed by Anders Carlsson.
   72421 
   72422         Fix https://bugs.webkit.org/show_bug.cgi?id=22085
   72423         The Plugin JS object should expose item() and namedItem() methods to match Firefox
   72424 
   72425         * bindings/js/JSPluginCustom.cpp:
   72426         (WebCore::JSPlugin::nameGetter):
   72427         * plugins/Plugin.cpp:
   72428         (WebCore::Plugin::namedItem):
   72429         * plugins/Plugin.h:
   72430         * plugins/Plugin.idl:
   72431 
   72432 2008-11-05  Alexey Proskuryakov  <ap (a] webkit.org>
   72433 
   72434         Reviewed by Maciej Stachowiak.
   72435 
   72436         https://bugs.webkit.org/show_bug.cgi?id=21060
   72437         Range#surroundContents incorrectly throws BAD_BOUNDARYPOINTS_ERR
   72438 
   72439         Test: fast/dom/Range/surroundContents-check-boundary-points.html
   72440 
   72441         * dom/Range.cpp: (WebCore::Range::surroundContents): Fix BAD_BOUNDARYPOINTS_ERR checks.
   72442 
   72443 2008-11-05  Anders Carlsson  <andersca (a] apple.com>
   72444 
   72445         Reviewed by Dan Bernstein.
   72446 
   72447         Remove two global destructors from CoreTextController.
   72448 
   72449         * platform/graphics/mac/CoreTextController.cpp:
   72450         (WebCore::CoreTextController::collectCoreTextRunsForCharacters):
   72451 
   72452 2008-11-05  Darin Fisher  <darin (a] chromium.org>
   72453 
   72454         Reviewed by Darin Adler.
   72455 
   72456         CRASH at Scrollbar::invalidateRect due to null m_client
   72457         https://bugs.webkit.org/show_bug.cgi?id=22080
   72458 
   72459         * platform/Scrollbar.cpp:
   72460         (WebCore::Scrollbar::isWindowActive):
   72461         (WebCore::Scrollbar::invalidateRect):
   72462 
   72463 2008-11-04  Sam Weinig  <sam (a] webkit.org>
   72464 
   72465         Reviewed by Simon Hausmann.
   72466 
   72467         Fix https://bugs.webkit.org/show_bug.cgi?id=21648
   72468         navigator.mimeTypes and navigator.plugins don't expose item and namedItem to JS
   72469 
   72470         - Also adds constructors for Plugin, PluginArray, MimeType and MimeTypeArray.
   72471 
   72472         * bindings/js/JSMimeTypeArrayCustom.cpp:
   72473         (WebCore::JSMimeTypeArray::nameGetter):
   72474         * bindings/js/JSPluginArrayCustom.cpp:
   72475         (WebCore::JSPluginArray::nameGetter):
   72476         * page/DOMWindow.idl:
   72477         * plugins/MimeType.idl:
   72478         * plugins/MimeTypeArray.cpp:
   72479         (WebCore::MimeTypeArray::namedItem):
   72480         * plugins/MimeTypeArray.h:
   72481         * plugins/MimeTypeArray.idl:
   72482         * plugins/Plugin.idl:
   72483         * plugins/PluginArray.cpp:
   72484         (WebCore::PluginArray::namedItem):
   72485         * plugins/PluginArray.h:
   72486         * plugins/PluginArray.idl:
   72487 
   72488 2008-11-05  Steve Falkenburg  <sfalken (a] apple.com>
   72489 
   72490         Build fix.
   72491 
   72492         * plugins/PluginPackage.cpp:
   72493 
   72494 2008-11-05  Jeff Cook  <cookiecaper (a] gmail.com>
   72495 
   72496         Reviewed by Simon Hausmann and Tor Arne.
   72497 
   72498         Fix crash in the Qt port when unloading swfdec and Flash 10
   72499         by reordering window destruction and plugin stop.
   72500 
   72501         See https://bugs.webkit.org/show_bug.cgi?id=20779
   72502 
   72503         * plugins/qt/PluginViewQt.cpp:
   72504         (WebCore::PluginView::stop):
   72505 
   72506 2008-11-05  Simon Hausmann  <hausmann (a] webkit.org>
   72507 
   72508         Reviewed by Tor Arne Vestb
   72509 
   72510         Fix loading of Flash 10 in the Qt port by faking the toolkit to be Gtk.
   72511 
   72512         Otherwise Flash refuses to load and function :(
   72513 
   72514         * plugins/PluginPackage.cpp:
   72515         (WebCore::PluginPackage::determineQuirks):
   72516         * plugins/PluginQuirkSet.h:
   72517         (WebCore::):
   72518         * plugins/qt/PluginViewQt.cpp:
   72519         (WebCore::PluginView::getValue):
   72520 
   72521 2008-11-05  Simon Hausmann  <hausmann (a] webkit.org>
   72522 
   72523         Reviewed by Tor Arne Vestb
   72524 
   72525         Unify determineQuirks between the Qt and the Gtk PluginPackage.
   72526         Share the code for parsing the module version from the description.
   72527         This is currently used to determine Flash based quirks.
   72528 
   72529         * plugins/PluginPackage.cpp:
   72530         (WebCore::PluginPackage::createPackage):
   72531         (WebCore::PluginPackage::determineQuirks):
   72532         (WebCore::PluginPackage::determineModuleVersionFromDescription):
   72533         * plugins/PluginPackage.h:
   72534         * plugins/gtk/PluginPackageGtk.cpp:
   72535         (WebCore::PluginPackage::fetchInfo):
   72536         * plugins/qt/PluginPackageQt.cpp:
   72537         (WebCore::PluginPackage::fetchInfo):
   72538 
   72539 2008-11-04  Cameron Zwarich  <zwarich (a] apple.com>
   72540 
   72541         Rubber-stamped by Sam Weinig.
   72542 
   72543         Move kjs/dtoa.h to the wtf subdirectory of JavaScriptCore.
   72544 
   72545         * ForwardingHeaders/kjs/dtoa.h: Removed.
   72546         * ForwardingHeaders/wtf/dtoa.h: Copied from ForwardingHeaders/kjs/dtoa.h.
   72547         * css/CSSParser.cpp:
   72548         * platform/text/String.cpp:
   72549         * platform/text/StringImpl.cpp:
   72550 
   72551 2008-11-04  Jonathan Haas  <myrdred (a] gmail.com>
   72552 
   72553         Addiitonal tweaks and patch prep by Pamela Greene <pam (a] chromium.org>
   72554 
   72555         Reviewed by Darin Adler.
   72556 
   72557         Fixed an issue which could cause memory corruption using ToT libxml.
   72558         See https://bugs.webkit.org/show_bug.cgi?id=15715
   72559 
   72560         Test: fast/xsl/xslt-nested-stylesheets.xml
   72561 
   72562         * xml/XSLImportRule.cpp:
   72563         (WebCore::XSLImportRule::setXSLStyleSheet): Set parent rather than owner document
   72564         * xml/XSLStyleSheet.cpp:
   72565         (WebCore::XSLStyleSheet::XSLStyleSheet): Initialize m_parentStyleSheet
   72566         (WebCore::XSLStyleSheet::parseString): Make all child stylesheets use parent's dictionary
   72567         (WebCore::XSLStyleSheet::setParentStyleSheet): Added
   72568         * xml/XSLStyleSheet.h: Added m_parentStyleSheet member
   72569 
   72570 2008-11-04  Simon Fraser  <simon.fraser (a] apple.com>
   72571 
   72572         No review.
   72573 
   72574         Improved buid fix: include MathExtras.h to get roundf on all platforms.
   72575 
   72576         * platform/graphics/FloatPoint.h:
   72577 
   72578 2008-11-04  Brady Eidson  <beidson (a] apple.com>
   72579 
   72580         Reviewed by John Sullivan
   72581 
   72582         Add a simple "visited" method to HistoryItem for use by global history
   72583 
   72584         * WebCore.base.exp:
   72585 
   72586         * history/HistoryItem.cpp:
   72587         (WebCore::HistoryItem::visited):  Update the title on the item, set last visited time,
   72588           and bump the visit count.  All things that should happen when a url is visited again!
   72589         * history/HistoryItem.h:
   72590 
   72591 2008-11-04  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   72592 
   72593         Build fix. Not reviewed.
   72594 
   72595         * platform/graphics/FloatPoint.h: include math.h.
   72596         reported by zdobersek in #webkit.
   72597 
   72598 2008-11-04  Darin Fisher  <darin (a] chromium.org>
   72599 
   72600         Reviewed by Anders Carlsson.
   72601 
   72602         No need to clobber all ResourceRequest fields in FrameLoader::reload()
   72603         https://bugs.webkit.org/show_bug.cgi?id=21949
   72604 
   72605         * loader/FrameLoader.cpp:
   72606         (WebCore::FrameLoader::reload):
   72607 
   72608 2008-11-04  Darin Adler  <darin (a] apple.com>
   72609 
   72610         Reviewed by Tim Hatcher.
   72611 
   72612         * storage/Database.cpp:
   72613         (WebCore::databaseVersionKey): Tweaked formatting.
   72614 
   72615 2008-11-03  Darin Adler  <darin (a] apple.com>
   72616 
   72617         Reviewed by Tim Hatcher.
   72618 
   72619         - https://bugs.webkit.org/show_bug.cgi?id=22061
   72620           create script to check for exit-time destructors
   72621 
   72622         * WebCore.xcodeproj/project.pbxproj: Added a script
   72623         phase that runs the check-for-exit-time-destructors script.
   72624 
   72625         * html/HTMLAttributeNames.in: Removed some unused attribute names.
   72626 
   72627         * html/HTMLEmbedElement.cpp:
   72628         (WebCore::HTMLEmbedElement::parseMappedAttribute): Removed code that
   72629         sets the write-only m_pluginPage.
   72630         * html/HTMLEmbedElement.h: Ditto.
   72631 
   72632         * platform/mac/CursorMac.mm:
   72633         (WebCore::leakNamedCursor): Changed to return a Cursor&.
   72634         (WebCore::pointerCursor): Changed to leak an object to avoid an
   72635         exit-time destructor.
   72636         (WebCore::crossCursor): Ditto.
   72637         (WebCore::handCursor): Ditto.
   72638         (WebCore::moveCursor): Ditto.
   72639         (WebCore::verticalTextCursor): Ditto.
   72640         (WebCore::cellCursor): Ditto.
   72641         (WebCore::contextMenuCursor): Ditto.
   72642         (WebCore::aliasCursor): Ditto.
   72643         (WebCore::zoomInCursor): Ditto.
   72644         (WebCore::zoomOutCursor): Ditto.
   72645         (WebCore::copyCursor): Ditto.
   72646         (WebCore::noneCursor): Ditto.
   72647         (WebCore::progressCursor): Ditto.
   72648         (WebCore::noDropCursor): Ditto.
   72649         (WebCore::notAllowedCursor): Ditto.
   72650         (WebCore::iBeamCursor): Ditto.
   72651         (WebCore::waitCursor): Ditto.
   72652         (WebCore::helpCursor): Ditto.
   72653         (WebCore::eastResizeCursor): Ditto.
   72654         (WebCore::northResizeCursor): Ditto.
   72655         (WebCore::northEastResizeCursor): Ditto.
   72656         (WebCore::northWestResizeCursor): Ditto.
   72657         (WebCore::southResizeCursor): Ditto.
   72658         (WebCore::southEastResizeCursor): Ditto.
   72659         (WebCore::southWestResizeCursor): Ditto.
   72660         (WebCore::westResizeCursor): Ditto.
   72661         (WebCore::northSouthResizeCursor): Ditto.
   72662         (WebCore::eastWestResizeCursor): Ditto.
   72663         (WebCore::northEastSouthWestResizeCursor): Ditto.
   72664         (WebCore::northWestSouthEastResizeCursor): Ditto.
   72665         (WebCore::columnResizeCursor): Ditto.
   72666         (WebCore::rowResizeCursor): Ditto.
   72667         (WebCore::grabCursor): Ditto.
   72668         (WebCore::grabbingCursor): Ditto.
   72669 
   72670         * storage/Database.cpp:
   72671         (WebCore::guidMutex): Changed to leak an object to avoid an
   72672         exit-time destructor. Also added a comment explaining why it's
   72673         thread safe.
   72674         (WebCore::guidToVersionMap): Ditto.
   72675         (WebCore::guidToDatabaseMap): Ditto.
   72676         (WebCore::Database::databaseInfoTableName): Ditto.
   72677         (WebCore::databaseVersionKey): Ditto.
   72678         (WebCore::Database::getVersionFromDatabase): Ditto.
   72679         (WebCore::Database::setVersionInDatabase): Ditto.
   72680         (WebCore::guidForOriginAndName): Ditto.
   72681         * storage/DatabaseTracker.cpp:
   72682         (WebCore::DatabaseTracker::tracker): Ditto.
   72683         (WebCore::notificationMutex): Ditto.
   72684         (WebCore::notificationQueue): Ditto.
   72685         (WebCore::DatabaseTracker::notifyDatabasesChanged): Ditto.
   72686 
   72687 2008-11-04  Simon Fraser  <simon.fraser (a] apple.com>
   72688 
   72689         Reviewed by Dave Hyatt
   72690 
   72691         https://bugs.webkit.org/show_bug.cgi?id=21941
   72692 
   72693         Rename absolutePosition() to localToAbsolute(), and add the ability
   72694         to optionally take transforms into account (which will eventually be the
   72695         default behavior).
   72696 
   72697         * WebCore.base.exp:
   72698         * WebCore.xcodeproj/project.pbxproj:
   72699         * dom/ContainerNode.cpp:
   72700         (WebCore::ContainerNode::getUpperLeftCorner):
   72701         (WebCore::ContainerNode::getLowerRightCorner):
   72702         (WebCore::ContainerNode::getRect):
   72703         * dom/ContainerNode.h:
   72704         * dom/MouseRelatedEvent.cpp:
   72705         (WebCore::MouseRelatedEvent::receivedTarget):
   72706         * dom/Node.cpp:
   72707         (WebCore::Node::getRect):
   72708         * editing/SelectionController.cpp:
   72709         (WebCore::SelectionController::layout):
   72710         (WebCore::SelectionController::caretRect):
   72711         * editing/visible_units.cpp:
   72712         (WebCore::previousLinePosition):
   72713         (WebCore::nextLinePosition):
   72714         * html/HTMLAnchorElement.cpp:
   72715         (WebCore::HTMLAnchorElement::isKeyboardFocusable):
   72716         (WebCore::HTMLAnchorElement::defaultEventHandler):
   72717         * html/HTMLAreaElement.cpp:
   72718         (WebCore::HTMLAreaElement::getRect):
   72719         * html/HTMLImageElement.cpp:
   72720         (WebCore::HTMLImageElement::x):
   72721         (WebCore::HTMLImageElement::y):
   72722         * html/HTMLInputElement.cpp:
   72723         (WebCore::HTMLInputElement::defaultEventHandler):
   72724         * html/HTMLInputElement.h:
   72725         * page/AccessibilityRenderObject.cpp:
   72726         (WebCore::AccessibilityRenderObject::boundingBoxRect):
   72727         * page/EventHandler.cpp:
   72728         (WebCore::EventHandler::handleDrag):
   72729         * platform/graphics/FloatPoint.h:
   72730         (WebCore::roundedIntPoint):
   72731         * platform/graphics/IntSize.h:
   72732         (WebCore::IntSize::expand):
   72733         * rendering/LayoutState.cpp:
   72734         (WebCore::LayoutState::LayoutState):
   72735         * rendering/RenderBlock.cpp:
   72736         (WebCore::RenderBlock::layoutBlock):
   72737         (WebCore::RenderBlock::paintObject):
   72738         (WebCore::RenderBlock::selectionGapRects):
   72739         (WebCore::RenderBlock::fillBlockSelectionGaps):
   72740         (WebCore::RenderBlock::nodeAtPoint):
   72741         (WebCore::RenderBlock::positionForCoordinates):
   72742         * rendering/RenderBox.cpp:
   72743         (WebCore::RenderBox::localToAbsolute):
   72744         (WebCore::RenderBox::computeAbsoluteRepaintRect):
   72745         (WebCore::RenderBox::caretRect):
   72746         * rendering/RenderBox.h:
   72747         (WebCore::RenderBox::relativePositionOffset):
   72748         * rendering/RenderContainer.cpp:
   72749         (WebCore::RenderContainer::addLineBoxRects):
   72750         * rendering/RenderFlow.cpp:
   72751         (WebCore::RenderFlow::absoluteClippedOverflowRect):
   72752         (WebCore::RenderFlow::caretRect):
   72753         (WebCore::RenderFlow::addFocusRingRects):
   72754         * rendering/RenderLayer.cpp:
   72755         (WebCore::RenderLayer::updateLayerPosition):
   72756         (WebCore::RenderLayer::convertToLayerCoords):
   72757         (WebCore::RenderLayer::addScrolledContentOffset):
   72758         (WebCore::RenderLayer::subtractScrolledContentOffset):
   72759         (WebCore::RenderLayer::scrollRectToVisible):
   72760         * rendering/RenderLayer.h:
   72761         (WebCore::RenderLayer::scrolledContentOffset):
   72762         (WebCore::RenderLayer::relativePositionOffset):
   72763         * rendering/RenderListBox.cpp:
   72764         (WebCore::RenderListBox::panScroll):
   72765         (WebCore::RenderListBox::scrollToward):
   72766         * rendering/RenderListMarker.cpp:
   72767         (WebCore::RenderListMarker::selectionRect):
   72768         * rendering/RenderObject.cpp:
   72769         (WebCore::RenderObject::absoluteBoundingBoxRect):
   72770         (WebCore::RenderObject::computeAbsoluteRepaintRect):
   72771         (WebCore::RenderObject::localToAbsolute):
   72772         (WebCore::RenderObject::addDashboardRegions):
   72773         (WebCore::RenderObject::absoluteContentBox):
   72774         (WebCore::RenderObject::absoluteOutlineBox):
   72775         * rendering/RenderObject.h:
   72776         (WebCore::RenderObject::localToAbsoluteForContent):
   72777         * rendering/RenderPart.cpp:
   72778         (WebCore::RenderPart::updateWidgetPosition):
   72779         * rendering/RenderReplaced.cpp:
   72780         (WebCore::RenderReplaced::selectionRect):
   72781         * rendering/RenderSVGInlineText.cpp:
   72782         (WebCore::RenderSVGInlineText::computeAbsoluteRectForRange):
   72783         * rendering/RenderSVGText.cpp:
   72784         (WebCore::RenderSVGText::absoluteRects):
   72785         * rendering/RenderTableCell.cpp:
   72786         (WebCore::RenderTableCell::localToAbsolute):
   72787         * rendering/RenderTableCell.h:
   72788         * rendering/RenderText.cpp:
   72789         (WebCore::RenderText::addLineBoxRects):
   72790         (WebCore::RenderText::caretRect):
   72791         (WebCore::RenderText::selectionRect):
   72792         * rendering/RenderVideo.cpp:
   72793         (WebCore::RenderVideo::updatePlayer):
   72794         * rendering/RenderView.cpp:
   72795         (WebCore::RenderView::localToAbsolute):
   72796         * rendering/RenderView.h:
   72797         * rendering/RenderWidget.cpp:
   72798         (WebCore::RenderWidget::updateWidgetPosition):
   72799         * svg/SVGSVGElement.cpp:
   72800         (WebCore::SVGSVGElement::getScreenCTM):
   72801 
   72802 2008-11-03  Yael Aharon  <yael.aharon (a] nokia.com>
   72803 
   72804         Reviewed by Simon Hausmann.
   72805 
   72806         Add methods for getting and setting user data on History Item.
   72807         This change is limited to QT port only. Tests were added in
   72808         the patch for https://bugs.webkit.org/show_bug.cgi?id=21864.
   72809 
   72810         Minor change by Simon: made the functions inline and added a missing
   72811         const.
   72812 
   72813         * history/HistoryItem.h:
   72814 
   72815 2008-11-01  Alexey Proskuryakov  <ap (a] webkit.org>
   72816 
   72817         Reviewed by Darin Adler.
   72818 
   72819         https://bugs.webkit.org/show_bug.cgi?id=22030
   72820         Make EventNames usable from multiple threads
   72821 
   72822         * platform/text/AtomicString.cpp:
   72823         (WebCore::stringTable):
   72824         (WebCore::AtomicString::add):
   72825         (WebCore::AtomicString::remove):
   72826         (WebCore::AtomicString::find):
   72827         (WebCore::AtomicString::init):
   72828         * platform/text/AtomicString.h:
   72829         Atomic string table is now per-thread. Individual strings cannot be shared between threads,
   72830         so global AtomicString constants cannot be used from threads other than the main one.
   72831 
   72832         * dom/EventNames.cpp:
   72833         (WebCore::EventNames::EventNames):
   72834         (WebCore::eventNames):
   72835         (WebCore::EventNames::init):
   72836         * dom/EventNames.h:
   72837         Made EventNames a ThreadSpecific struct. Individual event names are now accessed as
   72838         eventNames().fooEvent, not EventNames::fooEvent. This makes EventNames usable from all
   72839         threads.
   72840 
   72841         * WebCore.base.exp:
   72842         * bindings/js/JSDOMWindowBase.cpp:
   72843         * bindings/js/JSEventListener.cpp:
   72844         * bindings/js/ScriptController.cpp:
   72845         (WebCore::ScriptController::processingUserGesture):
   72846         * dom/BeforeTextInsertedEvent.cpp:
   72847         (WebCore::BeforeTextInsertedEvent::BeforeTextInsertedEvent):
   72848         * dom/BeforeUnloadEvent.cpp:
   72849         (WebCore::BeforeUnloadEvent::BeforeUnloadEvent):
   72850         * dom/CharacterData.cpp:
   72851         (WebCore::CharacterData::dispatchModifiedEvent):
   72852         * dom/ContainerNode.cpp:
   72853         (WebCore::dispatchChildInsertionEvents):
   72854         (WebCore::dispatchChildRemovalEvents):
   72855         * dom/DedicatedWorker.cpp:
   72856         (WebCore::DedicatedWorker::dispatchErrorEvent):
   72857         * dom/Document.cpp:
   72858         (WebCore::Document::implicitClose):
   72859         (WebCore::Document::setFocusedNode):
   72860         (WebCore::Document::addListenerTypeIfNeeded):
   72861         (WebCore::Document::removeWindowInlineEventListenerForType):
   72862         (WebCore::Document::addWindowEventListener):
   72863         (WebCore::Document::removeWindowEventListener):
   72864         (WebCore::Document::finishedParsing):
   72865         * dom/EventTargetNode.cpp:
   72866         (WebCore::EventTargetNode::dispatchGenericEvent):
   72867         (WebCore::EventTargetNode::dispatchSubtreeModifiedEvent):
   72868         (WebCore::EventTargetNode::dispatchWindowEvent):
   72869         (WebCore::EventTargetNode::dispatchUIEvent):
   72870         (WebCore::EventTargetNode::dispatchSimulatedClick):
   72871         (WebCore::EventTargetNode::dispatchMouseEvent):
   72872         (WebCore::EventTargetNode::dispatchFocusEvent):
   72873         (WebCore::EventTargetNode::dispatchBlurEvent):
   72874         (WebCore::EventTargetNode::defaultEventHandler):
   72875         (WebCore::EventTargetNode::on*): (multiple methods)
   72876         (WebCore::EventTargetNode::setOn*): (multiple methods)
   72877         * dom/KeyboardEvent.cpp:
   72878         (WebCore::eventTypeForKeyboardEventType):
   72879         (WebCore::KeyboardEvent::keyCode):
   72880         (WebCore::KeyboardEvent::charCode):
   72881         * dom/MessageEvent.cpp:
   72882         (WebCore::MessageEvent::MessageEvent):
   72883         * dom/MessagePort.cpp:
   72884         (WebCore::MessagePort::dispatchMessages):
   72885         (WebCore::MessagePort::dispatchCloseEvent):
   72886         * dom/MouseEvent.cpp:
   72887         (WebCore::MouseEvent::isDragEvent):
   72888         (WebCore::MouseEvent::toElement):
   72889         (WebCore::MouseEvent::fromElement):
   72890         * dom/OverflowEvent.cpp:
   72891         (WebCore::OverflowEvent::OverflowEvent):
   72892         * dom/TextEvent.cpp:
   72893         (WebCore::TextEvent::TextEvent):
   72894         * dom/WebKitAnimationEvent.cpp:
   72895         (WebCore::WebKitAnimationEvent::WebKitAnimationEvent):
   72896         (WebCore::WebKitAnimationEvent::~WebKitAnimationEvent):
   72897         (WebCore::WebKitAnimationEvent::initWebKitAnimationEvent):
   72898         (WebCore::WebKitAnimationEvent::animationName):
   72899         (WebCore::WebKitAnimationEvent::elapsedTime):
   72900         * dom/WebKitTransitionEvent.cpp:
   72901         (WebCore::WebKitTransitionEvent::WebKitTransitionEvent):
   72902         (WebCore::WebKitTransitionEvent::~WebKitTransitionEvent):
   72903         (WebCore::WebKitTransitionEvent::initWebKitTransitionEvent):
   72904         (WebCore::WebKitTransitionEvent::propertyName):
   72905         (WebCore::WebKitTransitionEvent::elapsedTime):
   72906         * dom/WheelEvent.cpp:
   72907         (WebCore::WheelEvent::WheelEvent):
   72908         (WebCore::WheelEvent::initWheelEvent):
   72909         * dom/XMLTokenizerLibxml2.cpp:
   72910         * dom/XMLTokenizerQt.cpp:
   72911         * editing/DeleteButton.cpp:
   72912         (WebCore::DeleteButton::defaultEventHandler):
   72913         * editing/EditCommand.cpp:
   72914         * editing/Editor.cpp:
   72915         (WebCore::Editor::canDHTMLCut):
   72916         (WebCore::Editor::canDHTMLCopy):
   72917         (WebCore::Editor::canDHTMLPaste):
   72918         (WebCore::Editor::tryDHTMLCopy):
   72919         (WebCore::Editor::tryDHTMLCut):
   72920         (WebCore::Editor::tryDHTMLPaste):
   72921         (WebCore::dispatchEditableContentChangedEvents):
   72922         * editing/ReplaceSelectionCommand.cpp:
   72923         (WebCore::ReplacementFragment::ReplacementFragment):
   72924         * editing/SelectionController.cpp:
   72925         (WebCore::SelectionController::setFocused):
   72926         * html/HTMLAnchorElement.cpp:
   72927         (WebCore::HTMLAnchorElement::defaultEventHandler):
   72928         * html/HTMLBodyElement.cpp:
   72929         (WebCore::HTMLBodyElement::parseMappedAttribute):
   72930         * html/HTMLButtonElement.cpp:
   72931         (WebCore::HTMLButtonElement::parseMappedAttribute):
   72932         (WebCore::HTMLButtonElement::defaultEventHandler):
   72933         * html/HTMLElement.cpp:
   72934         (WebCore::HTMLElement::parseMappedAttribute):
   72935         * html/HTMLFormControlElement.cpp:
   72936         (WebCore::HTMLFormControlElement::onChange):
   72937         * html/HTMLFormElement.cpp:
   72938         (WebCore::HTMLFormElement::handleLocalEvents):
   72939         (WebCore::HTMLFormElement::prepareSubmit):
   72940         (WebCore::HTMLFormElement::reset):
   72941         (WebCore::HTMLFormElement::parseMappedAttribute):
   72942         * html/HTMLFrameElementBase.cpp:
   72943         (WebCore::HTMLFrameElementBase::parseMappedAttribute):
   72944         * html/HTMLFrameSetElement.cpp:
   72945         (WebCore::HTMLFrameSetElement::parseMappedAttribute):
   72946         * html/HTMLImageElement.cpp:
   72947         (WebCore::HTMLImageElement::parseMappedAttribute):
   72948         * html/HTMLImageLoader.cpp:
   72949         (WebCore::HTMLImageLoader::dispatchLoadEvent):
   72950         * html/HTMLInputElement.cpp:
   72951         (WebCore::HTMLInputElement::parseMappedAttribute):
   72952         (WebCore::HTMLInputElement::setValueFromRenderer):
   72953         (WebCore::HTMLInputElement::preDispatchEventHandler):
   72954         (WebCore::HTMLInputElement::postDispatchEventHandler):
   72955         (WebCore::HTMLInputElement::defaultEventHandler):
   72956         (WebCore::HTMLInputElement::onSearch):
   72957         * html/HTMLLabelElement.cpp:
   72958         (WebCore::HTMLLabelElement::defaultEventHandler):
   72959         * html/HTMLMediaElement.cpp:
   72960         (WebCore::HTMLMediaElement::load):
   72961         (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged):
   72962         (WebCore::HTMLMediaElement::setReadyState):
   72963         (WebCore::HTMLMediaElement::progressEventTimerFired):
   72964         (WebCore::HTMLMediaElement::seek):
   72965         (WebCore::HTMLMediaElement::setDefaultPlaybackRate):
   72966         (WebCore::HTMLMediaElement::setPlaybackRate):
   72967         (WebCore::HTMLMediaElement::play):
   72968         (WebCore::HTMLMediaElement::pause):
   72969         (WebCore::HTMLMediaElement::setVolume):
   72970         (WebCore::HTMLMediaElement::setMuted):
   72971         (WebCore::HTMLMediaElement::mediaPlayerTimeChanged):
   72972         (WebCore::HTMLMediaElement::documentWillBecomeInactive):
   72973         * html/HTMLObjectElement.cpp:
   72974         (WebCore::HTMLObjectElement::parseMappedAttribute):
   72975         * html/HTMLOptionElement.cpp:
   72976         * html/HTMLScriptElement.cpp:
   72977         (WebCore::HTMLScriptElement::parseMappedAttribute):
   72978         (WebCore::HTMLScriptElement::dispatchLoadEvent):
   72979         (WebCore::HTMLScriptElement::dispatchErrorEvent):
   72980         * html/HTMLSelectElement.cpp:
   72981         (WebCore::HTMLSelectElement::parseMappedAttribute):
   72982         (WebCore::HTMLSelectElement::defaultEventHandler):
   72983         (WebCore::HTMLSelectElement::menuListDefaultEventHandler):
   72984         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
   72985         * html/HTMLTextAreaElement.cpp:
   72986         (WebCore::HTMLTextAreaElement::parseMappedAttribute):
   72987         (WebCore::HTMLTextAreaElement::defaultEventHandler):
   72988         * html/HTMLTokenizer.cpp:
   72989         (WebCore::HTMLTokenizer::notifyFinished):
   72990         * loader/FrameLoader.cpp:
   72991         (WebCore::FrameLoader::stopLoading):
   72992         (WebCore::FrameLoader::canCachePage):
   72993         * loader/ImageDocument.cpp:
   72994         (WebCore::ImageEventListener::handleEvent):
   72995         * loader/ImageLoader.cpp:
   72996         * loader/MediaDocument.cpp:
   72997         (WebCore::MediaDocument::defaultEventHandler):
   72998         * loader/appcache/DOMApplicationCache.cpp:
   72999         (WebCore::DOMApplicationCache::callCheckingListener):
   73000         (WebCore::DOMApplicationCache::callErrorListener):
   73001         (WebCore::DOMApplicationCache::callNoUpdateListener):
   73002         (WebCore::DOMApplicationCache::callDownloadingListener):
   73003         (WebCore::DOMApplicationCache::callProgressListener):
   73004         (WebCore::DOMApplicationCache::callUpdateReadyListener):
   73005         (WebCore::DOMApplicationCache::callCachedListener):
   73006         * page/AccessibilityObject.cpp:
   73007         * page/AccessibilityRenderObject.cpp:
   73008         (WebCore::AccessibilityRenderObject::mouseButtonListener):
   73009         * page/ContextMenuController.cpp:
   73010         (WebCore::ContextMenuController::handleContextMenuEvent):
   73011         * page/DOMWindow.cpp:
   73012         (WebCore::DOMWindow::on*): (multiple methods)
   73013         (WebCore::DOMWindow::setOn*): (multiple methods)
   73014         * page/EventHandler.cpp:
   73015         (WebCore::EventHandler::handleMousePressEvent):
   73016         (WebCore::EventHandler::handleMouseDoubleClickEvent):
   73017         (WebCore::EventHandler::handleMouseMoveEvent):
   73018         (WebCore::EventHandler::handleMouseReleaseEvent):
   73019         (WebCore::EventHandler::updateDragAndDrop):
   73020         (WebCore::EventHandler::cancelDragAndDrop):
   73021         (WebCore::EventHandler::performDragAndDrop):
   73022         (WebCore::EventHandler::updateMouseEventTargetNode):
   73023         (WebCore::EventHandler::dispatchMouseEvent):
   73024         (WebCore::EventHandler::sendContextMenuEvent):
   73025         (WebCore::EventHandler::canMouseDownStartSelect):
   73026         (WebCore::EventHandler::canMouseDragExtendSelect):
   73027         (WebCore::EventHandler::defaultKeyboardEventHandler):
   73028         (WebCore::EventHandler::dragSourceMovedTo):
   73029         (WebCore::EventHandler::dragSourceEndedAt):
   73030         (WebCore::EventHandler::handleDrag):
   73031         (WebCore::EventHandler::handleTextInputEvent):
   73032         * page/FocusController.cpp:
   73033         * page/Frame.cpp:
   73034         (WebCore::Frame::sendResizeEvent):
   73035         (WebCore::Frame::sendScrollEvent):
   73036         * page/Page.cpp:
   73037         (WebCore::networkStateChanged):
   73038         * page/animation/AnimationBase.cpp:
   73039         (WebCore::AnimationBase::updateStateMachine):
   73040         (WebCore::AnimationBase::animationTimerCallbackFired):
   73041         (WebCore::AnimationBase::primeEventTimers):
   73042         * page/animation/ImplicitAnimation.cpp:
   73043         (WebCore::ImplicitAnimation::onAnimationEnd):
   73044         (WebCore::ImplicitAnimation::sendTransitionEvent):
   73045         * page/animation/KeyframeAnimation.cpp:
   73046         (WebCore::KeyframeAnimation::onAnimationStart):
   73047         (WebCore::KeyframeAnimation::onAnimationIteration):
   73048         (WebCore::KeyframeAnimation::onAnimationEnd):
   73049         (WebCore::KeyframeAnimation::sendAnimationEvent):
   73050         * page/gtk/EventHandlerGtk.cpp:
   73051         * page/mac/EventHandlerMac.mm:
   73052         (WebCore::isKeyboardOptionTab):
   73053         * page/mac/FrameMac.mm:
   73054         * page/qt/EventHandlerQt.cpp:
   73055         (WebCore::isKeyboardOptionTab):
   73056         * plugins/PluginView.cpp:
   73057         * plugins/gtk/PluginViewGtk.cpp:
   73058         * plugins/qt/PluginViewQt.cpp:
   73059         * plugins/win/PluginViewWin.cpp:
   73060         (WebCore::PluginView::handleKeyboardEvent):
   73061         (WebCore::PluginView::handleMouseEvent):
   73062         * rendering/MediaControlElements.cpp:
   73063         (WebCore::MediaControlMuteButtonElement::defaultEventHandler):
   73064         (WebCore::MediaControlPlayButtonElement::defaultEventHandler):
   73065         (WebCore::MediaControlSeekButtonElement::defaultEventHandler):
   73066         (WebCore::MediaControlTimelineElement::defaultEventHandler):
   73067         (WebCore::MediaControlFullscreenButtonElement::defaultEventHandler):
   73068         * rendering/RenderFrameSet.cpp:
   73069         (WebCore::RenderFrameSet::userResize):
   73070         * rendering/RenderLayer.cpp:
   73071         (WebCore::RenderLayer::scrollToOffset):
   73072         * rendering/RenderListBox.cpp:
   73073         (WebCore::RenderListBox::valueChanged):
   73074         * rendering/RenderMedia.cpp:
   73075         (WebCore::RenderMedia::forwardEvent):
   73076         * rendering/RenderObject.cpp:
   73077         * rendering/RenderSlider.cpp:
   73078         (WebCore::HTMLSliderThumbElement::defaultEventHandler):
   73079         * rendering/RenderTextControl.cpp:
   73080         (WebCore::RenderTextControl::forwardEvent):
   73081         (WebCore::RenderTextControl::selectionChanged):
   73082         * rendering/RenderWidget.cpp:
   73083         * rendering/TextControlInnerElements.cpp:
   73084         (WebCore::TextControlInnerTextElement::defaultEventHandler):
   73085         (WebCore::SearchFieldResultsButtonElement::defaultEventHandler):
   73086         (WebCore::SearchFieldCancelButtonElement::defaultEventHandler):
   73087         * storage/LocalStorageArea.cpp:
   73088         (WebCore::LocalStorageArea::dispatchStorageEvent):
   73089         * storage/SessionStorageArea.cpp:
   73090         (WebCore::SessionStorageArea::dispatchStorageEvent):
   73091         * svg/SVGAElement.cpp:
   73092         (WebCore::SVGAElement::defaultEventHandler):
   73093         * svg/SVGDocument.cpp:
   73094         (WebCore::SVGDocument::dispatchZoomEvent):
   73095         (WebCore::SVGDocument::dispatchScrollEvent):
   73096         * svg/SVGElement.cpp:
   73097         (WebCore::SVGElement::parseMappedAttribute):
   73098         (WebCore::hasLoadListener):
   73099         (WebCore::SVGElement::sendSVGLoadEventIfPossible):
   73100         * svg/SVGElementInstance.cpp:
   73101         (WebCore::SVGElementInstance::on*): (multiple methods)
   73102         (WebCore::SVGElementInstance::setOn*): (multiple methods)
   73103         * svg/SVGImageLoader.cpp:
   73104         (WebCore::SVGImageLoader::dispatchLoadEvent):
   73105         * svg/SVGSVGElement.cpp:
   73106         (WebCore::SVGSVGElement::parseMappedAttribute):
   73107         * svg/SVGScriptElement.cpp:
   73108         (WebCore::SVGScriptElement::dispatchErrorEvent):
   73109         * xml/XMLHttpRequest.cpp:
   73110         (WebCore::XMLHttpRequest::dispatchReadyStateChangeEvent):
   73111         (WebCore::XMLHttpRequest::dispatchAbortEvent):
   73112         (WebCore::XMLHttpRequest::dispatchErrorEvent):
   73113         (WebCore::XMLHttpRequest::dispatchLoadEvent):
   73114         (WebCore::XMLHttpRequest::dispatchLoadStartEvent):
   73115         (WebCore::XMLHttpRequest::dispatchProgressEvent):
   73116         * xml/XMLHttpRequestUpload.cpp:
   73117         (WebCore::XMLHttpRequestUpload::dispatchAbortEvent):
   73118         (WebCore::XMLHttpRequestUpload::dispatchErrorEvent):
   73119         (WebCore::XMLHttpRequestUpload::dispatchLoadEvent):
   73120         (WebCore::XMLHttpRequestUpload::dispatchLoadStartEvent):
   73121         (WebCore::XMLHttpRequestUpload::dispatchProgressEvent):
   73122         * xml/XPathResult.cpp:
   73123         (WebCore::XPathResult::XPathResult):
   73124         (WebCore::XPathResult::~XPathResult):
   73125         (WebCore::XPathResult::invalidateIteratorState):
   73126         Access event names via eventNames() function.
   73127 
   73128 2008-11-04  Cameron Zwarich  <zwarich (a] apple.com>
   73129 
   73130         Reviewed by Mark Rowe.
   73131 
   73132         Delete unused forwarding headers.
   73133 
   73134         * ForwardingHeaders/kjs/Activation.h: Removed.
   73135         * ForwardingHeaders/kjs/Register.h: Removed.
   73136         * ForwardingHeaders/kjs/RegisterID.h: Removed.
   73137 
   73138 2008-11-04  Cameron Zwarich  <zwarich (a] apple.com>
   73139 
   73140         Not reviewed.
   73141 
   73142         Fix stupid typo in previous build fix.
   73143 
   73144         * bindings/js/JSStorageCustom.cpp:
   73145         * bindings/scripts/CodeGeneratorJS.pm:
   73146         * bridge/NP_jsobject.cpp:
   73147 
   73148 2008-11-03  Cameron Zwarich  <zwarich (a] apple.com>
   73149 
   73150         Not reviewed.
   73151 
   73152         Fix the build for all non-Mac platforms.
   73153 
   73154         * ForwardingHeaders/kjs/PropertyNameArray.h: Removed.
   73155         * ForwardingHeaders/runtime/PropertyNameArray.h: Copied from ForwardingHeaders/kjs/PropertyNameArray.h.
   73156         * bindings/js/JSStorageCustom.cpp:
   73157         * bindings/scripts/CodeGeneratorJS.pm:
   73158         * bridge/NP_jsobject.cpp:
   73159 
   73160 2008-11-03  Cameron Zwarich  <zwarich (a] apple.com>
   73161 
   73162         Not reviewed.
   73163 
   73164         Fix the wxWindows build.
   73165 
   73166         * bridge/c/c_instance.cpp:
   73167 
   73168 2008-11-03  Cameron Zwarich  <zwarich (a] apple.com>
   73169 
   73170         Rubber-stamped by Maciej Stachowiak.
   73171 
   73172         Move more files into the runtime subdirectory of JavaScriptCore.
   73173 
   73174         * ForwardingHeaders/kjs/ArgList.h: Removed.
   73175         * ForwardingHeaders/kjs/CollectorHeapIterator.h: Removed.
   73176         * ForwardingHeaders/kjs/ExecState.h: Removed.
   73177         * ForwardingHeaders/kjs/InitializeThreading.h: Removed.
   73178         * ForwardingHeaders/kjs/JSGlobalData.h: Removed.
   73179         * ForwardingHeaders/kjs/JSLock.h: Removed.
   73180         * ForwardingHeaders/kjs/SymbolTable.h: Removed.
   73181         * ForwardingHeaders/runtime/ArgList.h: Copied from ForwardingHeaders/kjs/ArgList.h.
   73182         * ForwardingHeaders/runtime/CollectorHeapIterator.h: Copied from ForwardingHeaders/kjs/CollectorHeapIterator.h.
   73183         * ForwardingHeaders/runtime/ExecState.h: Copied from ForwardingHeaders/kjs/ExecState.h.
   73184         * ForwardingHeaders/runtime/InitializeThreading.h: Copied from ForwardingHeaders/kjs/InitializeThreading.h.
   73185         * ForwardingHeaders/runtime/JSGlobalData.h: Copied from ForwardingHeaders/kjs/JSGlobalData.h.
   73186         * ForwardingHeaders/runtime/JSLock.h: Copied from ForwardingHeaders/kjs/JSLock.h.
   73187         * ForwardingHeaders/runtime/SymbolTable.h: Copied from ForwardingHeaders/kjs/SymbolTable.h.
   73188         * bindings/js/GCController.cpp:
   73189         * bindings/js/JSCustomPositionCallback.cpp:
   73190         * bindings/js/JSCustomPositionErrorCallback.cpp:
   73191         * bindings/js/JSCustomSQLStatementCallback.cpp:
   73192         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
   73193         * bindings/js/JSCustomSQLTransactionCallback.cpp:
   73194         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
   73195         * bindings/js/JSCustomVoidCallback.cpp:
   73196         * bindings/js/JSCustomXPathNSResolver.cpp:
   73197         * bindings/js/JSDOMWindowBase.cpp:
   73198         * bindings/js/JSEventCustom.cpp:
   73199         * bindings/js/JSEventListener.cpp:
   73200         * bindings/js/JSNodeFilterCondition.cpp:
   73201         * bindings/js/ScheduledAction.cpp:
   73202         * bindings/js/ScriptController.cpp:
   73203         * bindings/js/ScriptControllerMac.mm:
   73204         * bindings/objc/WebScriptObject.mm:
   73205         * bridge/NP_jsobject.cpp:
   73206         * bridge/c/c_class.cpp:
   73207         * bridge/c/c_instance.cpp:
   73208         * bridge/c/c_runtime.cpp:
   73209         * bridge/c/c_utility.cpp:
   73210         * bridge/jni/jni_class.cpp:
   73211         * bridge/jni/jni_instance.cpp:
   73212         * bridge/jni/jni_jsobject.mm:
   73213         * bridge/jni/jni_objc.mm:
   73214         * bridge/jni/jni_runtime.cpp:
   73215         * bridge/jni/jni_runtime.h:
   73216         * bridge/jni/jni_utility.cpp:
   73217         * bridge/npruntime.cpp:
   73218         * bridge/objc/objc_instance.mm:
   73219         * bridge/objc/objc_runtime.mm:
   73220         * bridge/objc/objc_utility.mm:
   73221         * bridge/runtime.cpp:
   73222         * dom/Document.cpp:
   73223         * dom/Node.cpp:
   73224         * dom/NodeFilter.cpp:
   73225         * dom/NodeIterator.cpp:
   73226         * dom/TreeWalker.cpp:
   73227         * history/CachedPage.cpp:
   73228         * inspector/InspectorController.cpp:
   73229         * inspector/JavaScriptCallFrame.cpp:
   73230         * inspector/JavaScriptCallFrame.h:
   73231         * inspector/JavaScriptDebugServer.cpp:
   73232         * inspector/JavaScriptProfileNode.cpp:
   73233         * loader/FrameLoader.cpp:
   73234         * loader/icon/IconDatabase.cpp:
   73235         * page/Console.cpp:
   73236         * page/Page.cpp:
   73237         * page/mac/FrameMac.mm:
   73238         * plugins/PluginView.cpp:
   73239         * plugins/gtk/PluginViewGtk.cpp:
   73240         * plugins/qt/PluginViewQt.cpp:
   73241         * plugins/win/PluginViewWin.cpp:
   73242         * storage/Database.cpp:
   73243         * xml/XMLHttpRequest.cpp:
   73244 
   73245 2008-11-03  Cameron Zwarich  <zwarich (a] apple.com>
   73246 
   73247         Reviewed by Sam Weinig.
   73248 
   73249         Remove the forwarding header for FunctionCallProfile, because it was
   73250         renamed to ProfileNode in r33466.
   73251 
   73252         * ForwardingHeaders/kjs/FunctionCallProfile.h: Removed.
   73253 
   73254 2008-11-03  Simon Fraser  <simon.fraser (a] apple.com>
   73255 
   73256         Reviewed by Dave Hyatt
   73257 
   73258         https://bugs.webkit.org/show_bug.cgi?id=22026
   73259 
   73260         When computing the bounds of the transparency layer, we need to
   73261         map the clipRect through the enclosing transform.
   73262 
   73263         Test: fast/layers/opacity-transforms.html
   73264 
   73265         * rendering/RenderLayer.cpp:
   73266         (WebCore::transparencyClipBox):
   73267 
   73268 2008-11-03  Kevin Decker  <kdecker (a] apple.com>
   73269 
   73270         Reviewed by Anders Carlsson.
   73271 
   73272         https://bugs.webkit.org/show_bug.cgi?id=22053
   73273 
   73274         Added additional support needed for the NPDrawingModelCoreAnimation drawing model.
   73275 
   73276         * bridge/npapi.h:
   73277 
   73278 2008-11-03  Xan Lopez  <xan (a] gnome.org>
   73279 
   73280         Reviewed by Alp Toker.
   73281 
   73282         Update parseDataUrl() function in the libsoup http backend with
   73283         the one from the curl backend which has recent correctness and crash
   73284         fixes.
   73285 
   73286         * platform/network/soup/ResourceHandleSoup.cpp:
   73287         (WebCore::parseDataUrl):
   73288 
   73289 2008-11-03  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   73290 
   73291         Reviewed by Alp Toker.
   73292 
   73293         https://bugs.webkit.org/show_bug.cgi?id=22041
   73294         Fix CURL crashes on the test suite
   73295 
   73296         Fix segfault with setDefersLoading(). Do not call into curl when we
   73297         don't have a CURL handle.
   73298 
   73299         It is attempted to defer the loading before the load has been
   73300         started (no curl handle was allocated yet). If that happens then
   73301         just remember that. ResourceHandleManager::startJob is already taking
   73302         care of this and in initResourceHandle the the downloading will
   73303         be paused if needed.
   73304 
   73305         Fixes fast/loader/simultaneous-reloads-assert.html
   73306 
   73307         * platform/network/curl/ResourceHandleCurl.cpp:
   73308         (WebCore::ResourceHandle::setDefersLoading):
   73309 
   73310 2008-11-03  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   73311 
   73312         Reviewed by Alp Toker.
   73313 
   73314         https://bugs.webkit.org/show_bug.cgi?id=22041
   73315         Fix CURL crashes on the test suite
   73316 
   73317         Do not send "no data" to WebCore in parseDataUrl().
   73318 
   73319         Fixes assert on fast/tokenizer/image-empty-crash.html
   73320 
   73321         * platform/network/curl/ResourceHandleManager.cpp:
   73322         (WebCore::parseDataUrl):
   73323 
   73324 2008-11-02  Xan Lopez  <xan (a] gnome.org>
   73325 
   73326         Reviewed by Holger Freyther.
   73327 
   73328         https://bugs.webkit.org/show_bug.cgi?id=22009
   73329         HTML5 Video with GStreamer pulls gnome-vfs without using it
   73330 
   73331         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
   73332         Remove gnome-vfs include.
   73333 
   73334 2008-11-01  Adam Barth  <abarth (a] webkit.org>
   73335 
   73336         Reviewed by Sam Weinig.
   73337 
   73338         Be sure to check the final URLs of requested resources to make sure we
   73339         don't get fooled by HTTP redirects.
   73340 
   73341         https://bugs.webkit.org/show_bug.cgi?id=21963
   73342 
   73343         Tests: http/tests/security/xss-DENIED-xsl-document-redirect.xml
   73344                http/tests/security/xss-DENIED-xsl-external-entity-redirect.xml
   73345 
   73346         * dom/XMLTokenizerLibxml2.cpp:
   73347         (WebCore::openFunc):
   73348         * loader/DocLoader.cpp:
   73349         (WebCore::DocLoader::canRequest):
   73350         (WebCore::DocLoader::requestResource):
   73351         * loader/DocLoader.h:
   73352         * xml/XSLTProcessor.cpp:
   73353         (WebCore::docLoaderFunc):
   73354 
   73355 2008-11-01  Alexey Proskuryakov  <ap (a] webkit.org>
   73356 
   73357         Reviewed by Darin Adler.
   73358 
   73359         https://bugs.webkit.org/show_bug.cgi?id=22001
   73360         AtomicStringImpl* keys of event listener maps can outlive their strings
   73361 
   73362         Test: fast/events/destroyed-atomic-string.html
   73363 
   73364         * dom/MessagePort.cpp:
   73365         (WebCore::MessagePort::addEventListener):
   73366         (WebCore::MessagePort::removeEventListener):
   73367         (WebCore::MessagePort::dispatchEvent):
   73368         * dom/MessagePort.h:
   73369         * loader/appcache/DOMApplicationCache.cpp:
   73370         (WebCore::DOMApplicationCache::addEventListener):
   73371         (WebCore::DOMApplicationCache::removeEventListener):
   73372         (WebCore::DOMApplicationCache::dispatchEvent):
   73373         * loader/appcache/DOMApplicationCache.h:
   73374         * xml/XMLHttpRequest.cpp:
   73375         (WebCore::XMLHttpRequest::addEventListener):
   73376         (WebCore::XMLHttpRequest::removeEventListener):
   73377         (WebCore::XMLHttpRequest::dispatchEvent):
   73378         * xml/XMLHttpRequest.h:
   73379         * xml/XMLHttpRequestUpload.cpp:
   73380         (WebCore::XMLHttpRequestUpload::addEventListener):
   73381         (WebCore::XMLHttpRequestUpload::removeEventListener):
   73382         (WebCore::XMLHttpRequestUpload::dispatchEvent):
   73383         * xml/XMLHttpRequestUpload.h:
   73384         Changed EventListenersMap to use AtomicString as key (instead of AtomicStringImpl*).
   73385 
   73386 2008-10-31  Alexey Proskuryakov  <ap (a] webkit.org>
   73387 
   73388         Reviewed by Darin Adler.
   73389 
   73390         https://bugs.webkit.org/show_bug.cgi?id=21998
   73391         Use JSDOMGlobalObject in EventListener-related bindings
   73392 
   73393         * dom/MessagePort.idl: Auto-generate bindings for onclose and onmessage.
   73394 
   73395         * bindings/scripts/CodeGeneratorJS.pm: Use JSDOMGlobalObject instead of JSDOMWindow in JS
   73396         bindings for inline event handlers.
   73397 
   73398         * bindings/js/JSDOMApplicationCacheCustom.cpp:
   73399         (WebCore::JSDOMApplicationCache::addEventListener):
   73400         (WebCore::JSDOMApplicationCache::removeEventListener):
   73401         * bindings/js/JSEventTargetNodeCustom.cpp:
   73402         (WebCore::JSEventTargetNode::addEventListener):
   73403         (WebCore::JSEventTargetNode::removeEventListener):
   73404         * bindings/js/JSMessagePortCustom.cpp:
   73405         (WebCore::JSMessagePort::removeEventListener):
   73406         * bindings/js/JSSVGElementInstanceCustom.cpp:
   73407         (WebCore::JSSVGElementInstance::addEventListener):
   73408         (WebCore::JSSVGElementInstance::removeEventListener):
   73409         * bindings/js/JSXMLHttpRequestCustom.cpp:
   73410         (WebCore::JSXMLHttpRequest::addEventListener):
   73411         (WebCore::JSXMLHttpRequest::removeEventListener):
   73412         * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
   73413         (WebCore::JSXMLHttpRequestUpload::addEventListener):
   73414         (WebCore::JSXMLHttpRequestUpload::removeEventListener):
   73415         Use ScriptExecutionContext and JSDOMGlobalObject in bindings.
   73416 
   73417         * dom/EventTarget.h:
   73418         * dom/EventTargetNode.cpp:
   73419         (WebCore::EventTargetNode::scriptExecutionContext):
   73420         * dom/EventTargetNode.h:
   73421         * dom/MessagePort.cpp:
   73422         * dom/MessagePort.h:
   73423         (WebCore::MessagePort::scriptExecutionContext):
   73424         * loader/appcache/DOMApplicationCache.cpp:
   73425         (WebCore::DOMApplicationCache::scriptExecutionContext):
   73426         * loader/appcache/DOMApplicationCache.h:
   73427         * svg/SVGElementInstance.cpp:
   73428         (WebCore::SVGElementInstance::scriptExecutionContext):
   73429         * svg/SVGElementInstance.h:
   73430         * xml/XMLHttpRequest.cpp:
   73431         (WebCore::XMLHttpRequest::scriptExecutionContext):
   73432         * xml/XMLHttpRequest.h:
   73433         * xml/XMLHttpRequestUpload.cpp:
   73434         (WebCore::XMLHttpRequestUpload::scriptExecutionContext):
   73435         * xml/XMLHttpRequestUpload.h:
   73436         Remove associatedFrame() method, and provide scriptExecutionContext() where it wasn't
   73437         available yet.
   73438 
   73439 2008-10-31  Cameron Zwarich  <zwarich (a] apple.com>
   73440 
   73441         Rubber-stamped by Geoff Garen.
   73442 
   73443         Rename SourceRange.h to SourceCode.h.
   73444 
   73445         * ForwardingHeaders/kjs/SourceCode.h: Copied from ForwardingHeaders/kjs/SourceRange.h.
   73446         * ForwardingHeaders/kjs/SourceRange.h: Removed.
   73447         * bindings/js/StringSourceProvider.h:
   73448         * bridge/NP_jsobject.cpp:
   73449 
   73450 2008-10-31  Cameron Zwarich  <zwarich (a] apple.com>
   73451 
   73452         Reviewed by Darin Adler.
   73453 
   73454         Bug 22019: Move JSC::Interpreter::shouldPrintExceptions() to WebCore::Console
   73455         <https://bugs.webkit.org/show_bug.cgi?id=22019>
   73456 
   73457         * WebCore.base.exp:
   73458         * page/Console.cpp:
   73459         (WebCore::printToStandardOut):
   73460         (WebCore::Console::shouldPrintExceptions):
   73461         (WebCore::Console::setShouldPrintExceptions):
   73462         * page/Console.h:
   73463 
   73464 2008-10-31  Dan Bernstein  <mitz (a] apple.com>
   73465 
   73466         Reviewed by John Sullivan.
   73467 
   73468         - WebCore part of <rdar://problem/6334641> Add WebView SPI for disabling document.cookie
   73469 
   73470         * dom/Document.cpp:
   73471         (WebCore::Document::cookie): Added checking if cookies are disabled.
   73472         (WebCore::Document::setCookie): Ditto.
   73473         * page/Navigator.cpp:
   73474         (WebCore::Navigator::cookieEnabled): Ditto.
   73475         * page/Page.cpp:
   73476         (WebCore::Page::Page): Initialize m_cookieEnabled to true.
   73477         * page/Page.h:
   73478         (WebCore::Page::cookieEnabled): Added.
   73479         (WebCore::Page::setCookieEnabled): Added.
   73480 
   73481 2008-10-31  Adele Peterson  <adele (a] apple.com>
   73482 
   73483         Reviewed by Darin Adler.
   73484 
   73485         WebCore Windows part of fix for <rdar://problem/5839256> FILE CONTROL: multi-file upload.
   73486         https://bugs.webkit.org/show_bug.cgi?id=22008
   73487 
   73488         * platform/FileChooser.cpp: (WebCore::FileChooser::chooseIcon):
   73489         Rename newIconForFile and newIconForFiles to createIconForFile and createIconForFiles.
   73490         * platform/graphics/Icon.h: ditto.
   73491         * platform/graphics/gtk/IconGtk.cpp:
   73492         (WebCore::Icon::createIconForFile): ditto.
   73493         (WebCore::Icon::createIconForFiles): ditto.
   73494         * platform/graphics/mac/IconMac.mm:
   73495         (WebCore::Icon::createIconForFile): ditto.
   73496         (WebCore::Icon::createIconForFiles): ditto.
   73497         * platform/graphics/qt/IconQt.cpp:
   73498         (WebCore::Icon::createIconForFile): ditto.
   73499         (WebCore::Icon::createIconForFiles): ditto.
   73500         * platform/wx/TemporaryLinkStubs.cpp:
   73501         (Icon::createIconForFile): ditto.
   73502         (Icon::createIconForFiles): ditto.
   73503         * platform/graphics/win/IconWin.cpp:
   73504         (WebCore::Icon::createIconForFile): ditto.
   73505         (WebCore::Icon::createIconForFiles): Add creation of an icon for multiple files.
   73506 
   73507         * rendering/RenderThemeWin.cpp: (WebCore::RenderThemeWin::paintSearchFieldResultsDecoration):
   73508         Improve icon creation code to match new code in Icon::createIconForFiles
   73509 
   73510 2008-10-31  Timothy Hatcher  <timothy (a] apple.com>
   73511 
   73512         Add manual tests that check breakpoints on a blockless body of "for" loops.
   73513 
   73514         https://bugs.webkit.org/show_bug.cgi?id=22004
   73515 
   73516         Reviewed by Darin Adler.
   73517 
   73518         * manual-tests/inspector/debugger-pause-on-for-in-statements.html: Added.
   73519         * manual-tests/inspector/debugger-pause-on-for-statements.html: Added.
   73520 
   73521 2008-10-31  Darin Adler  <darin (a] apple.com>
   73522 
   73523         - fix build
   73524 
   73525         * platform/win/WCDataObject.cpp: Added missing include of "config.h".
   73526 
   73527 2008-10-30  Alexey Proskuryakov  <ap (a] webkit.org>
   73528 
   73529         Reviewed by Darin Adler.
   73530 
   73531         https://bugs.webkit.org/show_bug.cgi?id=21970
   73532         Make MessagePort event dispatch work in workers
   73533 
   73534         * bindings/js/JSDOMGlobalObject.cpp:
   73535         (WebCore::JSDOMGlobalObject::JSDOMGlobalObjectData::JSDOMGlobalObjectData):
   73536         (WebCore::JSDOMGlobalObject::~JSDOMGlobalObject):
   73537         (WebCore::JSDOMGlobalObject::findJSEventListener):
   73538         (WebCore::JSDOMGlobalObject::findOrCreateJSEventListener):
   73539         (WebCore::JSDOMGlobalObject::findJSUnprotectedEventListener):
   73540         (WebCore::JSDOMGlobalObject::findOrCreateJSUnprotectedEventListener):
   73541         (WebCore::JSDOMGlobalObject::jsEventListeners):
   73542         (WebCore::JSDOMGlobalObject::jsInlineEventListeners):
   73543         (WebCore::JSDOMGlobalObject::jsUnprotectedEventListeners):
   73544         (WebCore::JSDOMGlobalObject::jsUnprotectedInlineEventListeners):
   73545         (WebCore::JSDOMGlobalObject::setCurrentEvent):
   73546         (WebCore::JSDOMGlobalObject::currentEvent):
   73547         (WebCore::toJSDOMGlobalObject):
   73548         * bindings/js/JSDOMGlobalObject.h:
   73549         * bindings/js/JSDOMWindowBase.cpp:
   73550         (WebCore::JSDOMWindowBase::JSDOMWindowBaseData::JSDOMWindowBaseData):
   73551         (WebCore::JSDOMWindowBase::~JSDOMWindowBase):
   73552         (WebCore::JSDOMWindowBase::clearHelperObjectProperties):
   73553         * bindings/js/JSDOMWindowBase.h:
   73554         Moved event listener tracking from JSDOMWindow to JSDOMGlobalObject.
   73555 
   73556         * bindings/js/JSEventListener.cpp:
   73557         (WebCore::JSAbstractEventListener::handleEvent):
   73558         (WebCore::JSUnprotectedEventListener::JSUnprotectedEventListener):
   73559         (WebCore::JSUnprotectedEventListener::~JSUnprotectedEventListener):
   73560         (WebCore::JSUnprotectedEventListener::globalObject):
   73561         (WebCore::JSUnprotectedEventListener::clearGlobalObject):
   73562         (WebCore::JSEventListener::JSEventListener):
   73563         (WebCore::JSEventListener::~JSEventListener):
   73564         (WebCore::JSEventListener::globalObject):
   73565         (WebCore::JSEventListener::clearGlobalObject):
   73566         (WebCore::JSLazyEventListener::JSLazyEventListener):
   73567         (WebCore::JSLazyEventListener::parseCode):
   73568         * bindings/js/JSEventListener.h:
   73569         (WebCore::JSUnprotectedEventListener::create):
   73570         (WebCore::JSEventListener::create):
   73571         (WebCore::JSLazyEventListener::create):
   73572         Changed to use JSDOMGlobalObject and ScriptExecutionContext.
   73573 
   73574         * bindings/js/JSMessagePortCustom.cpp:
   73575         (WebCore::JSMessagePort::startConversation):
   73576         (WebCore::JSMessagePort::addEventListener):
   73577         (WebCore::JSMessagePort::removeEventListener):
   73578         (WebCore::JSMessagePort::setOnmessage):
   73579         (WebCore::JSMessagePort::setOnclose):
   73580         Updated bindings to work with JSDOMGlobalObject. Next step is to make code generator emit
   73581         such code, and stop using a custom implementation for JSMessagePort inline event handler
   73582         getters and setters.
   73583 
   73584         * dom/Document.cpp:
   73585         (WebCore::Document::virtualURL):
   73586         * dom/Document.h:
   73587         * dom/ScriptExecutionContext.h:
   73588         Expose url() method on ScriptExecutionContext (necessary for compiling scripts in
   73589         JSLazyEventListener).
   73590 
   73591 2008-10-31  Cameron Zwarich  <zwarich (a] apple.com>
   73592 
   73593         Not reviewed.
   73594 
   73595         Speculative wxWindows build fix.
   73596 
   73597         * webcore-base.bkl:
   73598 
   73599 2008-10-30  Mark Rowe  <mrowe (a] apple.com>
   73600 
   73601         Reviewed by Jon Homeycutt.
   73602 
   73603         Explicitly default to building for only the native architecture in debug and release builds.
   73604 
   73605         * Configurations/DebugRelease.xcconfig:
   73606 
   73607 2008-10-30  Cameron Zwarich  <zwarich (a] apple.com>
   73608 
   73609         Rubber-stamped by Sam Weinig.
   73610 
   73611         Create a debugger directory in JavaScriptCore and move the relevant
   73612         files to it.
   73613 
   73614         * ForwardingHeaders/debugger: Added.
   73615         * ForwardingHeaders/debugger/Debugger.h: Copied from ForwardingHeaders/kjs/debugger.h.
   73616         * ForwardingHeaders/debugger/DebuggerCallFrame.h: Copied from ForwardingHeaders/kjs/DebuggerCallFrame.h.
   73617         * ForwardingHeaders/kjs/DebuggerCallFrame.h: Removed.
   73618         * ForwardingHeaders/kjs/debugger.h: Removed.
   73619         * WebCore.pro:
   73620         * bindings/js/ScriptController.cpp:
   73621         * inspector/JavaScriptCallFrame.cpp:
   73622         * inspector/JavaScriptCallFrame.h:
   73623         * inspector/JavaScriptDebugServer.cpp:
   73624         * inspector/JavaScriptDebugServer.h:
   73625 
   73626 2008-10-30  Tony Chang <tony (a] chromium.org>
   73627 
   73628         Fix 2 Windows theme bugs:
   73629         1) Checkboxes marked readonly were rendered incorrectly
   73630         2) If a button has focus and is pressed, it was rendered
   73631            as focused rather than pressed.
   73632 
   73633         https://bugs.webkit.org/show_bug.cgi?id=21859
   73634 
   73635         Reviewed by Dave Hyatt.
   73636 
   73637         * rendering/RenderThemeWin.cpp:
   73638         (WebCore::RenderThemeWin::determineState):
   73639         (WebCore::RenderThemeWin::determineButtonState):
   73640 
   73641 2008-10-30  Benjamin K. Stuhl  <bks24 (a] cornell.edu>
   73642 
   73643         gcc 4.3.3/linux-x86 generates "suggest parentheses around && within ||"
   73644         warnings; add some parentheses to disambiguate things. No functional
   73645         changes, so no tests.
   73646 
   73647         https://bugs.webkit.org/show_bug.cgi?id=21973
   73648         Add parentheses to clean up some gcc warnings
   73649 
   73650         Reviewed by Dan Bernstein.
   73651 
   73652         * platform/graphics/Font.h:
   73653         (WebCore::Font::treatAsZeroWidthSpace):
   73654 
   73655 2008-10-30  Aaron Boodman  <aa (a] chromium.org>
   73656 
   73657         Added an explicit dependency on HashMap.h. It was getting pulled in via
   73658         <kjs/identifier.h> in the case of JSC, causing errors for the Chromium port.
   73659 
   73660         Reviewed by Darin Adler.
   73661 
   73662         * platform/text/PlatformString.h:
   73663 
   73664 2008-10-30  Greg Bolsinga  <bolsinga (a] apple.com>
   73665 
   73666         Reviewed by Sam Weinig
   73667 
   73668         https://bugs.webkit.org/show_bug.cgi?id=21967
   73669 
   73670         For some platforms the GeolocationService must be suspended and resumed.
   73671 
   73672         * page/Geolocation.cpp:
   73673         (WebCore::Geolocation::clearWatch): now uses Geolocation::hasListeners()
   73674         (WebCore::Geolocation::suspend): calls GeolocationService::suspend() if there are listeners
   73675         (WebCore::Geolocation::resume): calls GeolocationService::resume() if there are listeners
   73676         (WebCore::Geolocation::geolocationServicePositionChanged): now uses Geolocation::hasListeners()
   73677         * page/Geolocation.h:
   73678         (WebCore::Geolocation::hasListeners): Indicates of the Geolocation has interested GeolocationService listeners
   73679         * platform/GeolocationService.h:
   73680         (WebCore::GeolocationService::suspend): empty implementation
   73681         (WebCore::GeolocationService::resume): empty implementation
   73682 
   73683 2008-10-30  Greg Bolsinga  <bolsinga (a] apple.com>
   73684 
   73685         Reviewed by Sam Weinig
   73686 
   73687         https://bugs.webkit.org/show_bug.cgi?id=21966
   73688 
   73689         The Geolocation spec was updated on 10/27/2008. This brings WebCore up to date.
   73690         http://dev.w3.org/geo/api/spec-source.html
   73691 
   73692         * page/Geolocation.cpp:
   73693         (WebCore::Geolocation::GeoNotifier::GeoNotifier): PositionOptions' timeout now unsigned
   73694         * page/Geoposition.cpp: velocity is now called speed
   73695         (WebCore::Geoposition::toString):
   73696         * page/Geoposition.h: velocity is now called speed
   73697         (WebCore::Geoposition::create):
   73698         (WebCore::Geoposition::speed):
   73699         (WebCore::Geoposition::Geoposition):
   73700         * page/Geoposition.idl: velocity is now called speed
   73701         * page/PositionOptions.h: timeout is now unsigned
   73702         (WebCore::PositionOptions::create):
   73703         (WebCore::PositionOptions::timeout):
   73704         (WebCore::PositionOptions::setTimeout):
   73705         (WebCore::PositionOptions::PositionOptions):
   73706         * page/PositionOptions.idl: timeout is now unsigned long
   73707 
   73708 2008-10-30  Justin Garcia  <justin.garcia (a] apple.com>
   73709 
   73710         Also handle preserved newlines.
   73711 
   73712         * editing/BreakBlockquoteCommand.cpp:
   73713         (WebCore::BreakBlockquoteCommand::doApply):
   73714 
   73715 2008-10-30  Justin Garcia  <justin.garcia (a] apple.com>
   73716 
   73717         Reviewed by Beth Dakin.
   73718 
   73719         <rdar://problem/6104369> Hitting return at the end of a quoted line creates an extraneous quoted line
   73720 
   73721         * editing/BreakBlockquoteCommand.cpp:
   73722         (WebCore::BreakBlockquoteCommand::doApply):
   73723         Don't store the endingSelection() in selection, just call endingSelection() in the few places it's
   73724         needed.  This function is cheap since it just returns a reference to a Selection instead of creating one.
   73725         Don't store an affinity.  In the one place that it was used, isLastVisiblePositionInNode(VisiblePosition(pos, affinity), topBlockquote),
   73726         we now use visiblePos (in order to avoid VisiblePosition creation).
   73727         Set pos after we delete the current selection (if there is one), and be consistent about what we set
   73728         pos to.  Before, we upstream()ed it if there was a selection to delete and left it alone otherwise.  In fact...
   73729         ...we need to use downstream() for pos so that when a caret is at the boundary between two nodes, pos is
   73730         in the first node that we want to move.  This fixes the bug, since it lets code that checks for the case
   73731         where the caret is between text and a br work correctly.
   73732 
   73733 2008-10-30  Yael Aharon  <yael.aharon (a] nokia.com>
   73734 
   73735         Reviewed by Darin Adler.
   73736 
   73737         Fix the Qt build.
   73738 
   73739         https://bugs.webkit.org/show_bug.cgi?id=21969
   73740 
   73741         * inspector/front-end/WebKit.qrc:
   73742         * platform/graphics/qt/ImageBufferQt.cpp:
   73743         (WebCore::ImageBufferData::ImageBufferData):
   73744         (WebCore::ImageBuffer::ImageBuffer):
   73745         (WebCore::ImageBuffer::context):
   73746         (WebCore::ImageBuffer::image):
   73747         (WebCore::ImageBuffer::toDataURL):
   73748 
   73749 2008-10-30  Justin Garcia  <justin.garcia (a] apple.com>
   73750 
   73751         Reviewed by Darin Adler.
   73752 
   73753         More preparation for:
   73754         <rdar://problem/6104369> Hitting return at the end of a quoted line creates an extraneous quoted line
   73755 
   73756         * editing/BreakBlockquoteCommand.cpp:
   73757         (WebCore::BreakBlockquoteCommand::doApply): Added comments.  Don't need to use newStartNode.  If the
   73758         startNode needs to change, change it.  Afterwords, check to make sure that it hasn't left topBlockquote.
   73759         This is slightly stricter than before, where we just made sure that it still had a topBlockquote.  This
   73760         doesn't really fix a bug, since we can't really get into a situation where we move to a different
   73761         topBlockquote, but it simplifies the code.
   73762 
   73763 2008-10-30  Dirk Schulze  <vbs85 (a] gmx.de>
   73764 
   73765         Reviewed by Alp Toker.
   73766 
   73767         https://bugs.webkit.org/show_bug.cgi?id=21883
   73768         [CAIRO] globalAlpha has to be stored and restored
   73769 
   73770         Cairo's globalAlpha has to be stored and reloaded on calling
   73771         save() and restore(). We use the power of GraphicsContextState for this.
   73772 
   73773         * platform/graphics/GraphicsContextPrivate.h:
   73774         (WebCore::GraphicsContextState::GraphicsContextState):
   73775         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   73776         (WebCore::GraphicsContext::fillPath):
   73777         (WebCore::GraphicsContext::strokePath):
   73778         (WebCore::GraphicsContext::setAlpha):
   73779         (WebCore::GraphicsContext::getAlpha):
   73780         * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
   73781         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
   73782 
   73783 2008-10-29  Alexey Proskuryakov  <ap (a] webkit.org>
   73784 
   73785         Reviewed by Maciej Stachowiak.
   73786 
   73787         Rename "attachedToEventTargetNode" to "isInline".
   73788 
   73789         Inline (onXXX) attributes are used not just with event target nodes, but also with Window,
   73790         XMLHttpRequest, MessagePort et al.
   73791 
   73792         Also renamed createHTMLEventHandler() (which was a leftover from earlier isHTMLEvent ->
   73793         attachedToEventTargetNode rename made for SVG) to createInlineEventListener().
   73794         And also renamed EventTargetNode, Document and Window "eventListenerForType" methods to
   73795         "inlineEventListenerForType", as they work with inline listeners.
   73796 
   73797         * bindings/js/JSDOMApplicationCacheCustom.cpp:
   73798         (WebCore::JSDOMApplicationCache::addEventListener):
   73799         (WebCore::JSDOMApplicationCache::removeEventListener):
   73800         * bindings/js/JSMessagePortCustom.cpp:
   73801         (WebCore::JSMessagePort::setOnmessage):
   73802         (WebCore::JSMessagePort::setOnclose):
   73803         * bindings/js/JSXMLHttpRequestCustom.cpp:
   73804         (WebCore::JSXMLHttpRequest::addEventListener):
   73805         (WebCore::JSXMLHttpRequest::removeEventListener):
   73806         * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
   73807         (WebCore::JSXMLHttpRequestUpload::addEventListener):
   73808         (WebCore::JSXMLHttpRequestUpload::removeEventListener):
   73809         Pass a correct value for this argument - callers used to be confused, because they didn't
   73810         consider themselves event target nodes. This doesn't affect behavior however, as the only
   73811         difference between inline and non-inline event handlers is that the former treat
   73812         "return false" as "event.preventDefault()", which is not important to any of these objects.
   73813 
   73814         * bindings/js/JSEventListener.cpp: (WebCore::JSLazyEventListener::parseCode):
   73815         Assert that isInline is true instead of checking its value, as the constructor of this class
   73816         always sets it to true.
   73817 
   73818         * bindings/js/JSDOMWindowBase.cpp:
   73819         (WebCore::JSDOMWindowBase::~JSDOMWindowBase):
   73820         (WebCore::JSDOMWindowBase::findJSEventListener):
   73821         (WebCore::JSDOMWindowBase::findOrCreateJSEventListener):
   73822         (WebCore::JSDOMWindowBase::findJSUnprotectedEventListener):
   73823         (WebCore::JSDOMWindowBase::findOrCreateJSUnprotectedEventListener):
   73824         (WebCore::JSDOMWindowBase::jsInlineEventListeners):
   73825         (WebCore::JSDOMWindowBase::jsUnprotectedInlineEventListeners):
   73826         * bindings/js/JSDOMWindowBase.h:
   73827         * bindings/js/JSEventListener.cpp:
   73828         (WebCore::JSAbstractEventListener::handleEvent):
   73829         (WebCore::JSAbstractEventListener::isInline):
   73830         (WebCore::JSUnprotectedEventListener::JSUnprotectedEventListener):
   73831         (WebCore::JSUnprotectedEventListener::~JSUnprotectedEventListener):
   73832         (WebCore::JSEventListener::JSEventListener):
   73833         (WebCore::JSEventListener::~JSEventListener):
   73834         (WebCore::JSLazyEventListener::parseCode):
   73835         * bindings/js/JSEventListener.h:
   73836         (WebCore::JSAbstractEventListener::JSAbstractEventListener):
   73837         (WebCore::JSUnprotectedEventListener::create):
   73838         (WebCore::JSEventListener::create):
   73839         * bindings/js/ScriptController.cpp:
   73840         (WebCore::ScriptController::createInlineEventHandler):
   73841         * bindings/js/ScriptController.h:
   73842         * dom/Document.cpp:
   73843         (WebCore::Document::setWindowInlineEventListenerForType):
   73844         (WebCore::Document::windowInlineEventListenerForType):
   73845         (WebCore::Document::removeWindowInlineEventListenerForType):
   73846         (WebCore::Document::createEventListener):
   73847         (WebCore::Document::setWindowInlineEventListenerForTypeAndAttribute):
   73848         * dom/Document.h:
   73849         * dom/EventListener.h:
   73850         (WebCore::EventListener::isInline):
   73851         * dom/EventTargetNode.cpp:
   73852         (WebCore::EventTargetNode::removeInlineEventListenerForType):
   73853         (WebCore::EventTargetNode::setInlineEventListenerForType):
   73854         (WebCore::EventTargetNode::setInlineEventListenerForTypeAndAttribute):
   73855         (WebCore::EventTargetNode::inlineEventListenerForType):
   73856         (WebCore::EventTargetNode::on*): (many methods)
   73857         (WebCore::EventTargetNode::setOn*): (many methods)
   73858         * dom/EventTargetNode.h:
   73859         * editing/ReplaceSelectionCommand.cpp:
   73860         (WebCore::ReplacementFragment::ReplacementFragment):
   73861         * html/HTMLBodyElement.cpp:
   73862         (WebCore::HTMLBodyElement::parseMappedAttribute):
   73863         * html/HTMLButtonElement.cpp:
   73864         (WebCore::HTMLButtonElement::parseMappedAttribute):
   73865         * html/HTMLElement.cpp:
   73866         (WebCore::HTMLElement::parseMappedAttribute):
   73867         * html/HTMLFormElement.cpp:
   73868         (WebCore::HTMLFormElement::parseMappedAttribute):
   73869         * html/HTMLFrameElementBase.cpp:
   73870         (WebCore::HTMLFrameElementBase::parseMappedAttribute):
   73871         * html/HTMLFrameSetElement.cpp:
   73872         (WebCore::HTMLFrameSetElement::parseMappedAttribute):
   73873         * html/HTMLImageElement.cpp:
   73874         (WebCore::HTMLImageElement::parseMappedAttribute):
   73875         * html/HTMLInputElement.cpp:
   73876         (WebCore::HTMLInputElement::parseMappedAttribute):
   73877         * html/HTMLObjectElement.cpp:
   73878         (WebCore::HTMLObjectElement::parseMappedAttribute):
   73879         * html/HTMLScriptElement.cpp:
   73880         (WebCore::HTMLScriptElement::parseMappedAttribute):
   73881         * html/HTMLSelectElement.cpp:
   73882         (WebCore::HTMLSelectElement::parseMappedAttribute):
   73883         * html/HTMLTextAreaElement.cpp:
   73884         (WebCore::HTMLTextAreaElement::parseMappedAttribute):
   73885         * page/AccessibilityRenderObject.cpp:
   73886         (WebCore::AccessibilityRenderObject::mouseButtonListener):
   73887         * page/DOMWindow.cpp:
   73888         (WebCore::DOMWindow::setInlineEventListenerForType):
   73889         (WebCore::DOMWindow::inlineEventListenerForType):
   73890         (WebCore::DOMWindow::on*): (many methods)
   73891         (WebCore::DOMWindow::setOn*): (many methods)
   73892         * page/DOMWindow.h:
   73893         * svg/SVGElement.cpp:
   73894         (WebCore::SVGElement::parseMappedAttribute):
   73895         * svg/SVGElementInstance.cpp:
   73896         (WebCore::SVGElementInstance::on*): (many methods)
   73897         (WebCore::SVGElementInstance::setOn*): (many methods)
   73898         * svg/SVGSVGElement.cpp:
   73899         (WebCore::SVGSVGElement::parseMappedAttribute):
   73900         Rename things, as described above.
   73901 
   73902 2008-10-29  Gustavo Noronha Silva  <gns (a] gnome.org>
   73903 
   73904         Reviewed and slightly changed by Holger Freyther.
   73905 
   73906         Added all the files that need to be installed for the Inspector to
   73907         work.
   73908 
   73909         * GNUmakefile.am: Invoke the shell to get the files.
   73910 
   73911 2008-10-29  Andrew Scherkus  <scherkus (a] chromium.org>
   73912 
   73913         Reviewed by Darin Adler
   73914 
   73915         Add MediaPlayerPrivateChromium to MediaPlayer
   73916         https://bugs.webkit.org/show_bug.cgi?id=21930
   73917 
   73918         * platform/graphics/MediaPlayer.cpp:
   73919 
   73920 2008-10-29  Justin Garcia  <justin.garcia (a] apple.com>
   73921 
   73922         Reviewed by Darin Adler.
   73923 
   73924         Some preparation for:
   73925         <rdar://problem/6104369> Hitting return at the end of a quoted line creates an extraneous quoted line
   73926 
   73927         Added an early return to avoid a level of if-nesting.  No other changes.  We probably don't
   73928         need to rebalance whitespace before the early return but for now don't risk any change in behavior
   73929         I'll revisit that later.
   73930 
   73931         * editing/BreakBlockquoteCommand.cpp:
   73932         (WebCore::BreakBlockquoteCommand::doApply):
   73933 
   73934 2008-10-29  Kevin Ollivier  <kevino (a] theolliviers.com>
   73935 
   73936         wx build fixes after addition of runtime and ImageBuffer changes.
   73937 
   73938         * platform/graphics/wx/ImageBufferData.h: Added.
   73939         * platform/graphics/wx/ImageBufferWx.cpp:
   73940         (WebCore::ImageBufferData::ImageBufferData):
   73941         (WebCore::ImageBuffer::ImageBuffer):
   73942         (WebCore::ImageBuffer::context):
   73943         * webcore-base.bkl:
   73944 
   73945 2008-10-29  Brett Wilson  <brettw (a] chromium.org>
   73946 
   73947         Reviewed by Darin Adler
   73948         https://bugs.webkit.org/attachment.cgi?id=24745
   73949 
   73950         Allow Skia implementations to get text style changed notifications.
   73951 
   73952         * platform/graphics/GraphicsContext.cpp:
   73953 
   73954 2008-10-29  Timothy Hatcher  <timothy (a] apple.com>
   73955 
   73956         Add a manual test that checks breakpoints on a blockless body of
   73957         an "else" statement.
   73958 
   73959         https://bugs.webkit.org/show_bug.cgi?id=21944
   73960 
   73961         Reviewed by Maciej Stachowiak.
   73962 
   73963         * manual-tests/inspector/debugger-pause-on-else-statements.html: Added.
   73964 
   73965 2008-10-29  Alexey Proskuryakov  <ap (a] webkit.org>
   73966 
   73967         Reviewed by Darin Adler.
   73968 
   73969         https://bugs.webkit.org/show_bug.cgi?id=21921
   73970         MessagePort messages are dispatched to documents that are not fully active
   73971 
   73972         Covered by corrected fast/events/message-port-inactive-document.html
   73973 
   73974         * bindings/js/JSEventListener.cpp:
   73975         (WebCore::JSAbstractEventListener::handleEvent): Don't dispatch messages to contexts
   73976         that are not fully active.
   73977 
   73978 2008-10-29  Alexey Proskuryakov  <ap (a] webkit.org>
   73979 
   73980         Reviewed by Sam Weinig.
   73981 
   73982         https://bugs.webkit.org/show_bug.cgi?id=21922
   73983         Expose MessagePort global constructor
   73984 
   73985         Covered by existing dumper tests.
   73986 
   73987         * dom/MessagePort.idl:
   73988         * page/DOMWindow.idl:
   73989 
   73990 2008-10-29  Alexey Proskuryakov  <ap (a] webkit.org>
   73991 
   73992         Reviewed by Darin Adler.
   73993 
   73994         https://bugs.webkit.org/show_bug.cgi?id=21924
   73995         HashTable internal index is not always deleted
   73996 
   73997         * bindings/js/JSDOMBinding.cpp: (WebCore::DOMObjectHashTableMap::~DOMObjectHashTableMap):
   73998         Call deleteTable for HashTables that are being deleted.
   73999 
   74000 2008-10-28  Alexey Proskuryakov  <ap (a] webkit.org>
   74001 
   74002         Reviewed by Darin Adler.
   74003 
   74004         https://bugs.webkit.org/show_bug.cgi?id=21923
   74005         Create an abstraction for script execution context
   74006 
   74007         * GNUmakefile.am:
   74008         * WebCore.pro:
   74009         * WebCore.vcproj/WebCore.vcproj:
   74010         * WebCore.xcodeproj/project.pbxproj:
   74011         * WebCoreSources.bkl:
   74012         Added ScriptExecutionContext.{h,cpp}.
   74013 
   74014         * bindings/js/JSAudioConstructor.cpp:
   74015         (WebCore::JSAudioConstructor::JSAudioConstructor):
   74016         * bindings/js/JSAudioConstructor.h:
   74017         * bindings/js/JSImageConstructor.cpp:
   74018         (WebCore::JSImageConstructor::JSImageConstructor):
   74019         * bindings/js/JSImageConstructor.h:
   74020         * bindings/js/JSOptionConstructor.cpp:
   74021         (WebCore::JSOptionConstructor::JSOptionConstructor):
   74022         * bindings/js/JSOptionConstructor.h:
   74023         * bindings/js/JSXMLHttpRequestConstructor.cpp:
   74024         (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
   74025         * bindings/js/JSXMLHttpRequestConstructor.h:
   74026         Pass ScriptExecutionContext instead of Document to make getDOMConstructor() happy.
   74027         Since these objects can only work within documents now, it is immediately converted back
   74028         to Document.
   74029 
   74030         * bindings/js/JSMessageChannelConstructor.cpp:
   74031         (WebCore::JSMessageChannelConstructor::JSMessageChannelConstructor):
   74032         (WebCore::JSMessageChannelConstructor::construct):
   74033         * bindings/js/JSMessageChannelConstructor.h:
   74034         (WebCore::JSMessageChannelConstructor::scriptExecutionContext):
   74035         MessageChannel needs to be supported in workers right away, so the constructor operates with
   74036         it directly.
   74037 
   74038         * dom/ActiveDOMObject.cpp:
   74039         (WebCore::ActiveDOMObject::ActiveDOMObject):
   74040         (WebCore::ActiveDOMObject::~ActiveDOMObject):
   74041         (WebCore::ActiveDOMObject::contextDestroyed):
   74042         * dom/ActiveDOMObject.h:
   74043         (WebCore::ActiveDOMObject::scriptExecutionContext):
   74044         * bindings/js/JSDOMBinding.cpp:
   74045         (WebCore::markActiveObjectsForContext):
   74046         (WebCore::markCrossHeapDependentObjectsForContext):
   74047         Use ScriptExecutionContext instead of Document, now that ActiveDOMObject and MessagePort
   74048         tracking is handled by ScriptExecutionContext.
   74049 
   74050         * bindings/js/JSDOMBinding.h: (WebCore::getDOMPrototype): Moved to JSDOMGlobalObject.
   74051 
   74052         * bindings/js/JSDOMGlobalObject.h:
   74053         (WebCore::getDOMConstructor): Moved to this file, as constructors live in JSDOMGlobalObject.
   74054         Also, the two-argument version that used to be in JSDOMWindowBase.cpp need to be accessible
   74055         to worker context implementation.
   74056         (WebCore::scriptExecutionContext): Added a pure virtual method to access
   74057         ScriptExecutionContext, implemented by subclasses.
   74058 
   74059         * bindings/js/JSDOMWindowBase.h:
   74060         * bindings/js/JSDOMWindowBase.cpp: (WebCore::JSDOMWindowBase::scriptExecutionContext):
   74061         Implement by returning the associated document. Note that this method currently gives bogus
   74062         results after navigation - DOMWindow Frame reference is not zeroed out, so we get a document
   74063         that is currently in the frame, not the one associated with this window.
   74064 
   74065         * bindings/js/JSDedicatedWorkerConstructor.cpp: Removed unnecessary include of DOMWindow.h.
   74066 
   74067         * bindings/js/JSDocumentCustom.cpp: (WebCore::JSDocument::mark):
   74068         Call markActiveObjectsForContext() by its new name.
   74069 
   74070         * dom/DedicatedWorker.cpp:
   74071         (WebCore::DedicatedWorker::DedicatedWorker):
   74072         (WebCore::DedicatedWorker::document):
   74073         * dom/DedicatedWorker.h:
   74074         * xml/XMLHttpRequest.cpp:
   74075         (WebCore::XMLHttpRequest::document):
   74076         * xml/XMLHttpRequest.h:
   74077         Added a document() function that upcasts ScriptExecutionContext, as these objects only work
   74078         within documents currently (at least for XMLHttpRequest, this will change soon though).
   74079 
   74080         * dom/Document.cpp:
   74081         (WebCore::Document::Document):
   74082         (WebCore::Document::~Document):
   74083         Moved active object and MessagePort tracking up to ScriptExecutionContext, to share code
   74084         with workers.
   74085 
   74086         * dom/Document.h:
   74087         (WebCore::Document::isDocument):
   74088         (WebCore::Document::refScriptExecutionContext):
   74089         (WebCore::Document::derefScriptExecutionContext):
   74090         Inherit from ScriptExecutionContext.
   74091 
   74092         * dom/MessageChannel.cpp:
   74093         (WebCore::MessageChannel::MessageChannel):
   74094         * dom/MessageChannel.h:
   74095         (WebCore::MessageChannel::create):
   74096         Use ScriptExecutionContext instead of Document.
   74097 
   74098         * dom/MessagePort.cpp:
   74099         (WebCore::CloseMessagePortTimer::CloseMessagePortTimer): Make m_port a RefPtr, because
   74100         MessagePort doesn't ref() itself when posting this event any more (this is a fix for an
   74101         unrelated issue that was causing random crashes in layout tests).
   74102         (WebCore::MessagePort::MessagePort):
   74103         (WebCore::MessagePort::~MessagePort):
   74104         (WebCore::MessagePort::associatedFrame):
   74105         (WebCore::MessagePort::clone):
   74106         (WebCore::MessagePort::postMessage):
   74107         (WebCore::MessagePort::startConversation):
   74108         (WebCore::MessagePort::start):
   74109         (WebCore::MessagePort::contextDestroyed):
   74110         (WebCore::MessagePort::dispatchMessages):
   74111         * dom/MessagePort.h:
   74112         (WebCore::MessagePort::create):
   74113         (WebCore::MessagePort::scriptExecutionContext):
   74114         Use ScriptExecutionContext instead of Document. This is a step toward making MessagePort
   74115         work in worker contexts - we need to also make some its method thread safe for cross-thread
   74116         messaging, and make event dispatching thread safe.
   74117 
   74118         * dom/ScriptExecutionContext.cpp: Added.
   74119         * dom/ScriptExecutionContext.h: Added.
   74120         ActiveDOMObject and MessagePort tracking is moved from Document.
   74121         It is debatable whether ScriptExecutionContext should be a parent of Document or DOMWindow,
   74122         but as I'm just moving Document code, and it is Document that is the main context object
   74123         in our implementation currently.
   74124         Changing ScriptExecutionContext to be a parent of DOMWindow causes a number of bugs that
   74125         seem non-trivial to fix, and isn't really a part of this task.
   74126 
   74127 2008-10-28  Alp Toker  <alp (a] nuanti.com>
   74128 
   74129         List newly-added ImageBufferData.h in build system.
   74130 
   74131         * GNUmakefile.am:
   74132 
   74133 2008-10-28  Alp Toker  <alp (a] nuanti.com>
   74134 
   74135         Reviewed by Cameron Zwarich.
   74136 
   74137         De-list unused WebCore ForwardingHeaders to fix the dist target.
   74138 
   74139         * GNUmakefile.am:
   74140 
   74141 2008-10-28  Cameron Zwarich  <zwarich (a] apple.com>
   74142 
   74143         Not reviewed.
   74144 
   74145         Attempt to fix the Windows build by generating Forwardingheaders for the
   74146         runtime directory in JavaScriptCore.
   74147 
   74148         * WebCore.vcproj/WebCore.vcproj:
   74149 
   74150 2008-10-28  Justin Garcia  <justin.garcia (a] apple.com>
   74151 
   74152         Reviewed by Darin Adler.
   74153 
   74154         <rdar://problem/5188560> REGRESSION: Spell checker doesn't clear spelling/grammar marker after error is marked as Ignored
   74155 
   74156         * editing/Editor.cpp:
   74157         (WebCore::Editor::ignoreSpelling): Remove misspelling markers from the word.
   74158         (WebCore::Editor::learnSpelling): Added a FIXME about <rdar://problem/5396072>, which
   74159         will probably require a change more complicated than just marking the learned word as
   74160         misspelled.  I'll address it with a separate patch.
   74161         * editing/EditorCommand.cpp:
   74162         (WebCore::executeIgnoreSpelling): Added.
   74163         (WebCore::CommandEntry::): Added an entry for IgnoreSpelling.
   74164 
   74165 2008-10-28  Cameron Zwarich  <zwarich (a] apple.com>
   74166 
   74167         Reviewed by Mark Rowe.
   74168 
   74169         Move ForwardingHeaders to their correct location after the creation of
   74170         the runtime directory in JavaScriptCore.
   74171 
   74172         * ForwardingHeaders/kjs/ArrayPrototype.h: Removed.
   74173         * ForwardingHeaders/kjs/BooleanObject.h: Removed.
   74174         * ForwardingHeaders/kjs/CallData.h: Removed.
   74175         * ForwardingHeaders/kjs/ConstructData.h: Removed.
   74176         * ForwardingHeaders/kjs/DateInstance.h: Removed.
   74177         * ForwardingHeaders/kjs/Error.h: Removed.
   74178         * ForwardingHeaders/kjs/FunctionConstructor.h: Removed.
   74179         * ForwardingHeaders/kjs/FunctionPrototype.h: Removed.
   74180         * ForwardingHeaders/kjs/InternalFunction.h: Removed.
   74181         * ForwardingHeaders/kjs/JSArray.h: Removed.
   74182         * ForwardingHeaders/kjs/JSFunction.h: Removed.
   74183         * ForwardingHeaders/kjs/JSGlobalObject.h: Removed.
   74184         * ForwardingHeaders/kjs/JSNumberCell.h: Removed.
   74185         * ForwardingHeaders/kjs/JSObject.h: Removed.
   74186         * ForwardingHeaders/kjs/JSString.h: Removed.
   74187         * ForwardingHeaders/kjs/JSValue.h: Removed.
   74188         * ForwardingHeaders/kjs/ObjectPrototype.h: Removed.
   74189         * ForwardingHeaders/kjs/PropertyMap.h: Removed.
   74190         * ForwardingHeaders/kjs/PrototypeFunction.h: Removed.
   74191         * ForwardingHeaders/kjs/StringObject.h: Removed.
   74192         * ForwardingHeaders/kjs/StringObjectThatMasqueradesAsUndefined.h: Removed.
   74193         * ForwardingHeaders/kjs/StringPrototype.h: Removed.
   74194         * ForwardingHeaders/kjs/StructureID.h: Removed.
   74195         * ForwardingHeaders/runtime: Added.
   74196         * ForwardingHeaders/runtime/ArrayPrototype.h: Copied from ForwardingHeaders/kjs/ArrayPrototype.h.
   74197         * ForwardingHeaders/runtime/BooleanObject.h: Copied from ForwardingHeaders/kjs/BooleanObject.h.
   74198         * ForwardingHeaders/runtime/CallData.h: Copied from ForwardingHeaders/kjs/CallData.h.
   74199         * ForwardingHeaders/runtime/ConstructData.h: Copied from ForwardingHeaders/kjs/ConstructData.h.
   74200         * ForwardingHeaders/runtime/DateInstance.h: Copied from ForwardingHeaders/kjs/DateInstance.h.
   74201         * ForwardingHeaders/runtime/Error.h: Copied from ForwardingHeaders/kjs/Error.h.
   74202         * ForwardingHeaders/runtime/FunctionConstructor.h: Copied from ForwardingHeaders/kjs/FunctionConstructor.h.
   74203         * ForwardingHeaders/runtime/FunctionPrototype.h: Copied from ForwardingHeaders/kjs/FunctionPrototype.h.
   74204         * ForwardingHeaders/runtime/InternalFunction.h: Copied from ForwardingHeaders/kjs/InternalFunction.h.
   74205         * ForwardingHeaders/runtime/JSArray.h: Copied from ForwardingHeaders/kjs/JSArray.h.
   74206         * ForwardingHeaders/runtime/JSFunction.h: Copied from ForwardingHeaders/kjs/JSFunction.h.
   74207         * ForwardingHeaders/runtime/JSGlobalObject.h: Copied from ForwardingHeaders/kjs/JSGlobalObject.h.
   74208         * ForwardingHeaders/runtime/JSNumberCell.h: Copied from ForwardingHeaders/kjs/JSNumberCell.h.
   74209         * ForwardingHeaders/runtime/JSObject.h: Copied from ForwardingHeaders/kjs/JSObject.h.
   74210         * ForwardingHeaders/runtime/JSString.h: Copied from ForwardingHeaders/kjs/JSString.h.
   74211         * ForwardingHeaders/runtime/JSValue.h: Copied from ForwardingHeaders/kjs/JSValue.h.
   74212         * ForwardingHeaders/runtime/ObjectPrototype.h: Copied from ForwardingHeaders/kjs/ObjectPrototype.h.
   74213         * ForwardingHeaders/runtime/PropertyMap.h: Copied from ForwardingHeaders/kjs/PropertyMap.h.
   74214         * ForwardingHeaders/runtime/PrototypeFunction.h: Copied from ForwardingHeaders/kjs/PrototypeFunction.h.
   74215         * ForwardingHeaders/runtime/StringObject.h: Copied from ForwardingHeaders/kjs/StringObject.h.
   74216         * ForwardingHeaders/runtime/StringObjectThatMasqueradesAsUndefined.h: Copied from ForwardingHeaders/kjs/StringObjectThatMasqueradesAsUndefined.h.
   74217         * ForwardingHeaders/runtime/StringPrototype.h: Copied from ForwardingHeaders/kjs/StringPrototype.h.
   74218         * ForwardingHeaders/runtime/StructureID.h: Copied from ForwardingHeaders/kjs/StructureID.h.
   74219         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
   74220         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
   74221         * bindings/js/JSClipboardCustom.cpp:
   74222         * bindings/js/JSConsoleCustom.cpp:
   74223         * bindings/js/JSCustomPositionCallback.h:
   74224         * bindings/js/JSCustomPositionErrorCallback.h:
   74225         * bindings/js/JSCustomSQLStatementCallback.h:
   74226         * bindings/js/JSCustomSQLStatementErrorCallback.h:
   74227         * bindings/js/JSCustomSQLTransactionErrorCallback.h:
   74228         * bindings/js/JSCustomVoidCallback.h:
   74229         * bindings/js/JSCustomXPathNSResolver.h:
   74230         * bindings/js/JSDOMBinding.cpp:
   74231         * bindings/js/JSDOMBinding.h:
   74232         * bindings/js/JSDOMGlobalObject.h:
   74233         * bindings/js/JSDOMWindowBase.cpp:
   74234         * bindings/js/JSDOMWindowCustom.cpp:
   74235         * bindings/js/JSDOMWindowShell.cpp:
   74236         * bindings/js/JSDatabaseCustom.cpp:
   74237         * bindings/js/JSEventListener.cpp:
   74238         * bindings/js/JSEventTarget.h:
   74239         * bindings/js/JSHTMLDocumentCustom.cpp:
   74240         * bindings/js/JSHistoryCustom.cpp:
   74241         * bindings/js/JSInspectedObjectWrapper.cpp:
   74242         * bindings/js/JSJavaScriptCallFrameCustom.cpp:
   74243         * bindings/js/JSLocationCustom.cpp:
   74244         * bindings/js/JSNodeFilterCondition.h:
   74245         * bindings/js/JSQuarantinedObjectWrapper.cpp:
   74246         * bindings/js/JSQuarantinedObjectWrapper.h:
   74247         * bindings/js/JSXMLHttpRequestCustom.cpp:
   74248         * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
   74249         * bindings/objc/WebScriptObject.mm:
   74250         * bindings/objc/WebScriptObjectPrivate.h:
   74251         * bindings/scripts/CodeGeneratorJS.pm:
   74252         * bridge/NP_jsobject.cpp:
   74253         * bridge/c/c_instance.cpp:
   74254         * bridge/c/c_utility.cpp:
   74255         * bridge/c/c_utility.h:
   74256         * bridge/jni/jni_instance.cpp:
   74257         * bridge/jni/jni_jsobject.h:
   74258         * bridge/jni/jni_jsobject.mm:
   74259         * bridge/jni/jni_runtime.cpp:
   74260         * bridge/jni/jni_utility.cpp:
   74261         * bridge/jni/jni_utility.h:
   74262         * bridge/objc/objc_instance.mm:
   74263         * bridge/objc/objc_runtime.h:
   74264         * bridge/objc/objc_runtime.mm:
   74265         * bridge/objc/objc_utility.h:
   74266         * bridge/objc/objc_utility.mm:
   74267         * bridge/runtime.h:
   74268         * bridge/runtime_array.cpp:
   74269         * bridge/runtime_array.h:
   74270         * bridge/runtime_method.cpp:
   74271         * bridge/runtime_method.h:
   74272         * bridge/runtime_object.cpp:
   74273         * bridge/runtime_object.h:
   74274         * bridge/runtime_root.cpp:
   74275         * inspector/JavaScriptCallFrame.cpp:
   74276         * inspector/JavaScriptProfile.cpp:
   74277         * inspector/JavaScriptProfile.h:
   74278         * inspector/JavaScriptProfileNode.cpp:
   74279         * inspector/JavaScriptProfileNode.h:
   74280         * loader/FrameLoader.cpp:
   74281         * page/Console.cpp:
   74282         * plugins/PluginView.cpp:
   74283         * plugins/gtk/PluginViewGtk.cpp:
   74284         * plugins/qt/PluginViewQt.cpp:
   74285         * plugins/win/PluginViewWin.cpp:
   74286 
   74287 2008-10-28  Adele Peterson  <adele (a] apple.com>
   74288 
   74289         Windows build fix.  This removes Cairo include directories from non-Cairbo build configurations.
   74290 
   74291         * WebCore.vcproj/WebCore.vcproj:
   74292 
   74293 2008-10-28  Adele Peterson  <adele (a] apple.com>
   74294 
   74295         Windows build fix.
   74296 
   74297         * platform/graphics/ImageBuffer.h:
   74298         (WebCore::ImageBuffer::create):
   74299 
   74300 2008-10-28  Cameron Zwarich  <zwarich (a] apple.com>
   74301 
   74302         Not reviewed.
   74303 
   74304         Roll out a mistaken attempt at fixing the GTK build in r37947.
   74305 
   74306         * GNUmakefile.am:
   74307 
   74308 2008-10-28  Adele Peterson  <adele (a] apple.com>
   74309 
   74310         Reviewed by John Sullivan.
   74311 
   74312         Fix for https://bugs.webkit.org/show_bug.cgi?id=21880
   74313         "files" string for multifile uploads needs to be localized
   74314 
   74315         * page/mac/WebCoreViewFactory.h:
   74316         * platform/LocalizedStrings.h:
   74317         * platform/gtk/FileChooserGtk.cpp: (WebCore::FileChooser::basenameForWidth):
   74318         * platform/gtk/LocalizedStringsGtk.cpp: (WebCore::multipleFileUploadText):
   74319         * platform/mac/FileChooserMac.mm: (WebCore::FileChooser::basenameForWidth):
   74320         * platform/mac/LocalizedStringsMac.mm: (WebCore::multipleFileUploadText):
   74321         * platform/qt/Localizations.cpp: (WebCore::multipleFileUploadText):
   74322         * platform/wx/LocalizedStringsWx.cpp: (WebCore::multipleFileUploadText):
   74323 
   74324 2008-10-28  Brett Wilson  <brettw (a] chromium.org>
   74325 
   74326         Reviewed by Darin Adler.
   74327 
   74328         https://bugs.webkit.org/show_bug.cgi?id=21816
   74329 
   74330         Remove platform ifdefs in ImageBuffer.h by moving platform specific code
   74331         into a new PlatformImageBuffer class. Move the static create function
   74332         into the header because it can be cross-platform. Initialization now
   74333         happens in the cunstructor which sets a flag that create uses to know
   74334         whether it should return null or not. I also made passing of IntSize
   74335         more consistent (always by reference).
   74336 
   74337         This change also changes the ifdefs in GraphicsContext to allow Skia
   74338         ports to implement text drawing modes.
   74339 
   74340         * platform/graphics/ImageBuffer.h:
   74341         (WebCore::ImageBuffer::create):
   74342         (WebCore::ImageBuffer::size):
   74343         * platform/graphics/cairo/ImageBufferCairo.cpp:
   74344         (WebCore::ImageBufferData::ImageBufferData):
   74345         (WebCore::ImageBuffer::ImageBuffer):
   74346         (WebCore::ImageBuffer::~ImageBuffer):
   74347         (WebCore::ImageBuffer::image):
   74348         (WebCore::ImageBuffer::getImageData):
   74349         (WebCore::ImageBuffer::putImageData):
   74350         * platform/graphics/cairo/ImageBufferData.h:
   74351         * platform/graphics/cg/ImageBufferCG.cpp:
   74352         (WebCore::ImageBufferData::ImageBufferData):
   74353         (WebCore::ImageBuffer::ImageBuffer):
   74354         (WebCore::ImageBuffer::~ImageBuffer):
   74355         (WebCore::ImageBuffer::getImageData):
   74356         (WebCore::ImageBuffer::putImageData):
   74357         * platform/graphics/cg/ImageBufferData.h:
   74358         * platform/graphics/qt/ImageBufferData.h:
   74359         * platform/graphics/qt/ImageBufferQt.cpp:
   74360         (WebCore::ImageBufferData::ImageBufferData):
   74361         (WebCore::ImageBuffer::ImageBuffer):
   74362         (WebCore::ImageBuffer::~ImageBuffer):
   74363 
   74364 2008-10-28  Cameron Zwarich  <zwarich (a] apple.com>
   74365 
   74366         Not reviewed.
   74367 
   74368         Fix the GTK build.
   74369 
   74370         * GNUmakefile.am:
   74371 
   74372 2008-10-28  Cameron Zwarich  <zwarich (a] apple.com>
   74373 
   74374         Not reviewed.
   74375 
   74376         Another Qt build fix.
   74377 
   74378         * WebCore.pro:
   74379 
   74380 2008-10-28  Greg Bolsinga  <bolsinga (a] apple.com>
   74381 
   74382         Reviewed by David Kilzer.
   74383 
   74384         https://bugs.webkit.org/show_bug.cgi?id=21932
   74385         Add non-pointer constant lookups to SoftLinking.h
   74386 
   74387         * platform/mac/SoftLinking.h:
   74388 
   74389 2008-10-28  Greg Bolsinga  <bolsinga (a] apple.com>
   74390 
   74391         Reviewed by David Kilzer.
   74392 
   74393         https://bugs.webkit.org/show_bug.cgi?id=2192
   74394         Missing semi-colons in Geoposition.idl
   74395 
   74396         * page/Geoposition.idl: Add missing semi-colons
   74397 
   74398 2008-10-28  Timothy Hatcher  <timothy (a] apple.com>
   74399 
   74400         Make the Profiles panel in the Web Inspector have an enable screen.
   74401         Profiling now needs to be enabled before console.profile() works.
   74402 
   74403         <rdar://problem/6211578> Make the JavaScript profiler opt-in, so it does
   74404         not slow down JavaScript all the time
   74405 
   74406         Reviewed by Darin Adler and Kevin McCullough.
   74407 
   74408         * English.lproj/localizedStrings.js: New strings.
   74409         * WebCore.base.exp: New and changed exports.
   74410         * WebCore.vcproj/WebCore.vcproj: Add the PanelEnablerView.js file.
   74411         * bindings/js/JSDOMWindowBase.cpp:
   74412         (WebCore::JSDOMWindowBase::supportsProfiling): Call InspectorController:profilerEnabled.
   74413         * inspector/InspectorController.cpp:
   74414         (WebCore::InspectorController::InspectorController): Initialize the m_startProfiling
   74415         Timer to call InspectorController::startUserInitiatedProfiling.
   74416         (WebCore::InspectorController::startUserInitiatedProfilingSoon): Start a one-shot timer
   74417         that calls InspectorController::startUserInitiatedProfiling.
   74418         (WebCore::InspectorController::startUserInitiatedProfiling): Recompile all JavaScript
   74419         and enable the profiler if the profiler was not enabled.
   74420         (WebCore::InspectorController::stopUserInitiatedProfiling): Rearrange code for readability.
   74421         (WebCore::InspectorController::enableProfiler): Recompile all the JavaScript functions
   74422         if the skipRecompile argument is false. Call the profilerWasEnabled script function.
   74423         (WebCore::InspectorController::disableProfiler): Recompile all the JavaScript functions.
   74424         Call the profilerWasEnabled script function.
   74425         (WebCore::InspectorController::disableDebugger): Set m_attachDebuggerWhenShown to false,
   74426         so it won't be started later.
   74427         * inspector/InspectorController.h:
   74428         (WebCore::InspectorController::profilerEnabled): Return enabled() && m_profilerEnabled.
   74429         * inspector/front-end/Images/debuggingButtons.png: Remove.
   74430         * inspector/front-end/Images/enableButtons.png: Added.
   74431         * inspector/front-end/Images/profilesSilhouette.png: Added.
   74432         * inspector/front-end/Images/scriptsSilhouette.png: Added.
   74433         * inspector/front-end/PanelEnablerView.js: Added.
   74434         (WebInspector.PanelEnablerView):
   74435         (WebInspector.PanelEnablerView.prototype._enableButtonCicked): Fire the "enable clicked"
   74436         event so listeners can do their thing.
   74437         (WebInspector.PanelEnablerView.prototype._windowResized): Test if the icon should be hidden.
   74438         * inspector/front-end/ProfilesPanel.js:
   74439         (WebInspector.ProfilesPanel): Create the PanelEnablerView and the strings needed for it.
   74440         (WebInspector.ProfilesPanel.prototype.get statusBarItems): Include the enableToggleButton.
   74441         (WebInspector.ProfilesPanel.prototype.profilerWasEnabled): Call reset and populateInterface.
   74442         (WebInspector.ProfilesPanel.prototype.profilerWasDisabled): Call reset.
   74443         (WebInspector.ProfilesPanel.prototype.reset): Call _updateInterface.
   74444         (WebInspector.ProfilesPanel.prototype.setRecordingProfile): Moved in the code, no changes.
   74445         (WebInspector.ProfilesPanel.prototype._updateInterface): Update the toggle button and
   74446         show/hide other buttons. Also show/hide the PanelEnablerView.
   74447         (WebInspector.ProfilesPanel.prototype._enableProfiling): Call _toggleProfiling if not enabled.
   74448         (WebInspector.ProfilesPanel.prototype._toggleProfiling): Call InspectorController's
   74449         disableProfiler or enableProfiler.
   74450         * inspector/front-end/ScriptsPanel.js:
   74451         (WebInspector.ScriptsPanel): Replace the overlay element with a PanelEnablerView. Replace the
   74452         debuggingButton with the enableToggleButton.
   74453         (WebInspector.ScriptsPanel.prototype.get statusBarItems): Replace the debuggingButton with
   74454         the enableToggleButton.
   74455         (WebInspector.ScriptsPanel.prototype._updateDebuggerButtons): Hide/show the pauseOnExceptionButton
   74456         when needed. Replace the overlay element with a PanelEnablerView. Replace the debuggingButton
   74457         with the enableToggleButton.
   74458         (WebInspector.ScriptsPanel.prototype._enableDebugging): Call _toggleDebugging when not enabled.
   74459         (WebInspector.ScriptsPanel.prototype._toggleDebugging): Remove the call to _clearInterface,
   74460         since reset is called from debuggerWasEnabled and debuggerWasDisabled.
   74461         * inspector/front-end/View.js: Inherit from WebInspector.Object.
   74462         * inspector/front-end/WebKit.qrc: Add the PanelEnablerView.js file.
   74463         * inspector/front-end/inspector.css: New styles for the PanelEnablerView.
   74464         * inspector/front-end/inspector.html: Add the PanelEnablerView.js file.
   74465         * inspector/front-end/inspector.js:
   74466         (WebInspector.profilerWasEnabled): Added. Calls the ProfilesPanel.
   74467         (WebInspector.profilerWasDisabled): Ditto.
   74468         * page/Console.cpp:
   74469         (WebCore::Console::error): Remove null check for m_frame, since m_frame isn't used.
   74470         (WebCore::Console::info): Ditto.
   74471         (WebCore::Console::log): Ditto.
   74472         (WebCore::Console::assertCondition): Ditto.
   74473         (WebCore::Console::dirxml): Remove null check for m_frame and use this->page().
   74474         (WebCore::Console::count): Ditto.
   74475         (WebCore::Console::profile): Return early if InspectorController::profilerEnabled is false.
   74476         (WebCore::Console::profileEnd): Ditto.
   74477         (WebCore::Console::warn): Remove null check for m_frame, since m_frame isn't used.
   74478         * page/Settings.cpp:
   74479         (WebCore::Settings::Settings): Remove initialization of m_didInitializeDeveloperExtrasEnabled.
   74480         (WebCore::Settings::setDeveloperExtrasEnabled): Remove code that recompiled functions.
   74481         Now just sets the member boolean.
   74482         * page/Settings.h: Remove m_didInitializeDeveloperExtrasEnabled.
   74483 
   74484 2008-10-28  Timothy Hatcher  <timothy (a] apple.com>
   74485 
   74486         Rename a few methods related to attaching and detaching the debugger. Also
   74487         adds stub methods for enabling and disabling the profiler.
   74488 
   74489         * Rename attachDebugger to enableDebugger.
   74490         * Rename detachDebugger to disableDebugger.
   74491         * Rename the debuggerAttached getter to debuggerEnabled.
   74492         * Rename the debuggerAttached callback to debuggerWasEnabled.
   74493         * Rename the debuggerDetached callback to debuggerWasDisabled.
   74494 
   74495         Reviewed by Darin Adler.
   74496 
   74497         * WebCore.base.exp:
   74498         * inspector/InspectorController.cpp:
   74499         (WebCore::InspectorController::InspectorController):
   74500         (WebCore::InspectorController::setWindowVisible):
   74501         (WebCore::InspectorController::windowScriptObjectAvailable):
   74502         (WebCore::InspectorController::close):
   74503         (WebCore::InspectorController::enableProfiler):
   74504         (WebCore::InspectorController::disableProfiler):
   74505         (WebCore::InspectorController::enableDebugger):
   74506         (WebCore::InspectorController::disableDebugger):
   74507         (WebCore::InspectorController::pauseInDebugger):
   74508         (WebCore::InspectorController::resumeDebugger):
   74509         (WebCore::InspectorController::stepOverStatementInDebugger):
   74510         (WebCore::InspectorController::stepIntoStatementInDebugger):
   74511         (WebCore::InspectorController::stepOutOfFunctionInDebugger):
   74512         * inspector/InspectorController.h:
   74513         (WebCore::InspectorController::profilerEnabled):
   74514         (WebCore::InspectorController::debuggerEnabled):
   74515         * inspector/front-end/BreakpointsSidebarPane.js:
   74516         (WebInspector.BreakpointsSidebarPane.prototype.addBreakpoint):
   74517         (WebInspector.BreakpointsSidebarPane.prototype.removeBreakpoint):
   74518         (WebInspector.BreakpointsSidebarPane.prototype._breakpointEnableChanged):
   74519         * inspector/front-end/Object.js:
   74520         * inspector/front-end/ProfilesPanel.js:
   74521         (WebInspector.ProfilesPanel):
   74522         * inspector/front-end/ScriptsPanel.js:
   74523         (WebInspector.ScriptsPanel):
   74524         (WebInspector.ScriptsPanel.prototype.get statusBarItems):
   74525         (WebInspector.ScriptsPanel.prototype.debuggerWasEnabled):
   74526         (WebInspector.ScriptsPanel.prototype.debuggerWasDetached):
   74527         (WebInspector.ScriptsPanel.prototype.reset):
   74528         (WebInspector.ScriptsPanel.prototype.canShowResource):
   74529         (WebInspector.ScriptsPanel.prototype._updatePauseOnExceptionsButton):
   74530         (WebInspector.ScriptsPanel.prototype._updateDebuggerButtons):
   74531         (WebInspector.ScriptsPanel.prototype._toggleDebugging):
   74532         * inspector/front-end/View.js:
   74533         * inspector/front-end/inspector.css:
   74534         * inspector/front-end/inspector.html:
   74535         * inspector/front-end/inspector.js:
   74536         (WebInspector.addResource):
   74537         (WebInspector.debuggerWasEnabled):
   74538         (WebInspector.debuggerWasDisabled):
   74539 
   74540 2008-10-28  Timothy Hatcher  <timothy (a] apple.com>
   74541 
   74542         Fix an exception when searching the Resources panel while there
   74543         and resources queued to be added to the list.
   74544 
   74545         Reviewed by Kevin McCullough.
   74546 
   74547         * inspector/front-end/ResourcesPanel.js:
   74548         (WebInspector.ResourcesPanel.prototype.searchCanceled): Null check
   74549         the _resourcesTreeElement property.
   74550         (WebInspector.ResourcesPanel.prototype.performSearch): Ditto.
   74551 
   74552 2008-10-28  Alp Toker  <alp (a] nuanti.com>
   74553 
   74554         GTK+ build fix for older versions of Pango where PANGO_VERSION_CHECK
   74555         isn't defined.
   74556 
   74557         * platform/graphics/gtk/FontGtk.cpp:
   74558         (WebCore::getDefaultPangoLayout):
   74559         * platform/graphics/gtk/FontPlatformDataPango.cpp:
   74560 
   74561 2008-10-28  Alexey Proskuryakov  <ap (a] webkit.org>
   74562 
   74563         Reviewed by Darin Adler.
   74564 
   74565         https://bugs.webkit.org/show_bug.cgi?id=21893
   74566         Character set is incorrect for external scripts in XHTML pages
   74567 
   74568         <rdar://problem/6317451> Incorrect encoding for text in a popup at http://xpoint.ru/
   74569 
   74570         Test: fast/encoding/external-script-charset.xhtml
   74571 
   74572         Expose scriptCharset() function on all ScriptElements, and call it from XML tokenizer.
   74573 
   74574         * dom/ScriptElement.h:
   74575         * dom/XMLTokenizerLibxml2.cpp:
   74576         (WebCore::XMLTokenizer::endElementNs):
   74577         * dom/XMLTokenizerQt.cpp:
   74578         (WebCore::XMLTokenizer::parseEndElement):
   74579         * html/HTMLScriptElement.h:
   74580         * svg/SVGScriptElement.cpp:
   74581         (WebCore::SVGScriptElement::scriptCharset):
   74582         * svg/SVGScriptElement.h:
   74583 
   74584 2008-10-28  Alp Toker  <alp (a] nuanti.com>
   74585 
   74586         Include copyright license files in the autotools dist target and
   74587         exclude unused zlib headers.
   74588 
   74589         Change suggested by Mike Hommey.
   74590 
   74591         * GNUmakefile.am:
   74592 
   74593 2008-10-27  Sam Weinig  <sam (a] webkit.org>
   74594 
   74595         Reviewed by Maciej Stachowiak.
   74596 
   74597         Clear the window shell when destroying a page to allow documents
   74598         which have no way of being reached anymore, to be torn down.
   74599 
   74600         * page/Frame.cpp:
   74601         (WebCore::Frame::pageDestroyed):
   74602 
   74603 2008-10-27  Kevin Watters  <kevinwatters (a] gmail.com>
   74604 
   74605         Reviewed by Kevin Ollivier.
   74606 
   74607         Update the active state as well as the focused state as both need to be true
   74608         for the caret to be drawn.
   74609 
   74610         https://bugs.webkit.org/show_bug.cgi?id=21900
   74611 
   74612         * WebView.cpp:
   74613         (wxWebView::OnSetFocus):
   74614         (wxWebView::OnKillFocus):
   74615 
   74616 2008-10-27  Kevin Ollivier  <kevino (a] theolliviers.com>
   74617 
   74618         wx build fix on Linux/GTK. Enable support for #include <JavaScriptCore/XYZ.h> style includes.
   74619 
   74620         * webcore-wx.bkl:
   74621 
   74622 2008-10-27  Michael Knaup  <michael.knaup (a] mac.com>
   74623 
   74624         Reviewed and tweaked by Darin Adler.
   74625 
   74626         - https://bugs.webkit.org/show_bug.cgi?id=8988
   74627 
   74628         Bug 8988: Add support for Mozilla CSS custom cursors.
   74629         Added -webkit-grab and -webkit-grabbing cursor suppport
   74630         for the Mac, dummy implementations for other platforms.
   74631 
   74632         * css/CSSParser.cpp:
   74633         (WebCore::CSSParser::parseValue): Updated since the
   74634         -webkit-grabbing cursor is now the last one.
   74635 
   74636         * css/CSSPrimitiveValueMappings.h:
   74637         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Added
   74638         CURSOR_WEBKIT_GRAB and CURSOR_WEBKIT_GRABBING.
   74639 
   74640         * css/CSSValueKeywords.in: Added -webkit-grab and
   74641         -webkit-grabbing.
   74642 
   74643         * manual-tests/cursor.html: Added -webkit-zoom-in,
   74644         webkit-zoom-out, -webkit-grab, and -webkit-grabbing.
   74645 
   74646         * page/EventHandler.cpp:
   74647         (WebCore::EventHandler::selectCursor): Added
   74648         CURSOR_WEBKIT_GRAB and CURSOR_WEBKIT_GRABBING.
   74649 
   74650         * platform/Cursor.h: Added grabCursor and grabbingCursor.
   74651 
   74652         * platform/gtk/CursorGtk.cpp:
   74653         (WebCore::grabCursor): Added.
   74654         (WebCore::grabbingCursor): Added.
   74655         * platform/mac/CursorMac.mm:
   74656         (WebCore::grabCursor): Added.
   74657         (WebCore::grabbingCursor): Added.
   74658         * platform/qt/CursorQt.cpp:
   74659         (WebCore::grabCursor): Added.
   74660         (WebCore::grabbingCursor): Added.
   74661         * platform/win/CursorWin.cpp:
   74662         (WebCore::grabCursor): Added.
   74663         (WebCore::grabbingCursor): Added.
   74664         * platform/wx/CursorWx.cpp:
   74665         (WebCore::grabCursor): Added.
   74666         (WebCore::grabbingCursor): Added.
   74667 
   74668         * rendering/style/RenderStyleConstants.h:
   74669         Added CURSOR_WEBKIT_GRAB and CURSOR_WEBKIT_GRABBING.
   74670         Also broke ECursor out into a single constant per line.
   74671         Also added a couple of comments.
   74672 
   74673 2008-10-27  Dimitri Glazkov  <dglazkov (a] chromium.org>
   74674 
   74675         Reviewed by Darin Adler.
   74676 
   74677         * svg/SVGAnimatedTemplate.h: needed a HashMap define
   74678 
   74679 2008-10-21  Eric Seidel  <eric (a] webkit.org>
   74680 
   74681         Reviewed by Dave Hyatt.
   74682 
   74683         Infinite recursion crash in WebCore::RenderSVGRoot::absoluteClippedOverflowRect on a <stop> element outside of a gradient block
   74684         https://bugs.webkit.org/show_bug.cgi?id=20400
   74685 
   74686         Test: svg/custom/stop-crash.svg
   74687 
   74688         * WebCore.xcodeproj/project.pbxproj:
   74689         * rendering/RenderSVGGradientStop.h:
   74690         (WebCore::RenderSVGGradientStop::absoluteClippedOverflowRect):
   74691 
   74692 2008-10-27  Anders Carlsson  <andersca (a] apple.com>
   74693 
   74694         Reviewed by Sam Weinig.
   74695 
   74696         No need to call release if the connection is null.
   74697 
   74698         * platform/network/mac/ResourceHandleMac.mm:
   74699         (WebCore::ResourceHandle::start):
   74700 
   74701 2008-10-27  Anders Carlsson  <andersca (a] apple.com>
   74702 
   74703         Reviewed by Kevin Decker.
   74704 
   74705         <rdar://problem/6322650> Crash in fast/loader/simultaneous-reloads-assert.html
   74706 
   74707         Make sure to null check the NSURLConnection object.
   74708 
   74709         * platform/network/mac/ResourceHandleMac.mm:
   74710         (WebCore::ResourceHandle::start):
   74711         (WebCore::ResourceHandle::setDefersLoading):
   74712 
   74713 2008-10-27  Alexey Proskuryakov  <ap (a] webkit.org>
   74714 
   74715         Fix non-Mac builds.
   74716 
   74717         * GNUmakefile.am:
   74718         * WebCore.pro:
   74719         * WebCore.vcproj/WebCore.vcproj:
   74720         * WebCoreSources.bkl:
   74721         Renamed JSHTMLOptionElementConstructor to JSOptionConstructor.
   74722 
   74723 2008-10-26  Alexey Proskuryakov  <ap (a] webkit.org>
   74724 
   74725         Reviewed by Sam Weinig.
   74726 
   74727         https://bugs.webkit.org/show_bug.cgi?id=21886
   74728         window.HTMLOptionElement == "[object HTMLElementConstructor]" instead of HTMLOptionElementConstructor
   74729 
   74730         Test: fast/dom/HTMLOptionElement/option-prototype.html
   74731 
   74732         We now have separate objects for window.Option and window.HTMLOptionElement - the latter
   74733         "constructor" cannot be used to construct anything. This matches Firefox behavior.
   74734 
   74735         * WebCore.xcodeproj/project.pbxproj:
   74736         * bindings/js/JSDOMWindowBase.cpp:
   74737         (jsDOMWindowBaseOption):
   74738         * bindings/js/JSHTMLOptionElementConstructor.cpp: Removed.
   74739         * bindings/js/JSHTMLOptionElementConstructor.h: Removed.
   74740         * bindings/js/JSOptionConstructor.cpp: Copied from WebCore/bindings/js/JSHTMLOptionElementConstructor.cpp.
   74741         * bindings/js/JSOptionConstructor.h: Copied from WebCore/bindings/js/JSHTMLOptionElementConstructor.h.
   74742         * html/HTMLOptionElement.idl:
   74743         Renamed JSHTMLOptionElementConstructor to JSOptionConstructor.
   74744 
   74745         * html/HTMLOptionElement.idl: Generate a constructor.
   74746 
   74747 2008-10-25  Geoffrey Garen  <ggaren (a] apple.com>
   74748 
   74749         Not reviewed.
   74750 
   74751         Try to fix Mac debug build on the buildbot.
   74752 
   74753         * platform/FileChooser.cpp:
   74754         (WebCore::FileChooserClient::~FileChooserClient):
   74755         * platform/FileChooser.h: Moved destructor to .cpp file, to avoid a
   74756         weak exported symbol.
   74757 
   74758 2008-10-25  Jade Han  <jade.han (a] nokia.com>
   74759 
   74760         Reviewed by Anders.
   74761 
   74762         Enable custom properties for Qt runtime objects in QtWebKit
   74763 
   74764         https://bugs.webkit.org/show_bug.cgi?id=21813
   74765 
   74766         * bridge/runtime_object.cpp:
   74767         (JSC::RuntimeObjectImp::getOwnPropertySlot):
   74768         (JSC::RuntimeObjectImp::put):
   74769 
   74770 2008-10-24  Sam Weinig  <sam (a] webkit.org>
   74771 
   74772         Fix windows build.
   74773 
   74774         * page/Chrome.cpp:
   74775         * page/Chrome.h:
   74776 
   74777 2008-10-24  Sam Weinig  <sam (a] webkit.org>
   74778 
   74779         Fix Qt build.
   74780 
   74781         * platform/qt/FileChooserQt.cpp:
   74782 
   74783 2008-10-24  Sam Weinig  <sam (a] webkit.org>
   74784 
   74785         Reviewed by Dan Bernstein.
   74786 
   74787         Fix https://bugs.webkit.org/show_bug.cgi?id=21759
   74788         Layering violation: FileChooser should not depend on Document/Frame/Page
   74789 
   74790         Move file choosing into WebKit ChromeClient.
   74791 
   74792         * loader/EmptyClients.h:
   74793         (WebCore::EmptyChromeClient::runOpenPanel):
   74794         * page/Chrome.cpp:
   74795         (WebCore::Chrome::runOpenPanel):
   74796         * page/Chrome.h:
   74797         * page/ChromeClient.h:
   74798         * page/mac/ChromeMac.mm:
   74799         * platform/FileChooser.h:
   74800         * platform/mac/FileChooserMac.mm:
   74801         * platform/qt/FileChooserQt.cpp:
   74802         * platform/win/FileChooserWin.cpp:
   74803         * platform/wx/TemporaryLinkStubs.cpp:
   74804         * rendering/RenderFileUploadControl.cpp:
   74805         (WebCore::RenderFileUploadControl::click):
   74806 
   74807 2008-10-24  Kevin Ollivier  <kevino (a] theolliviers.com>
   74808 
   74809         wx build fix - add newIconForFiles stub.
   74810 
   74811         * platform/wx/TemporaryLinkStubs.cpp:
   74812         (Icon::newIconForFiles):
   74813 
   74814 2008-10-24  Kevin Watters  <kevinwatters (a] gmail.com>
   74815 
   74816         Reviewed by Kevin Ollivier.
   74817 
   74818         Use the CGFont metrics APIs for more accurate measurements, and tweak the y
   74819         value the text is drawn at (it was a couple pixels off before because wx
   74820         internally adds to the y value.
   74821 
   74822         https://bugs.webkit.org/show_bug.cgi?id=21853
   74823 
   74824         * platform/wx/wxcode/mac/carbon/fontprops.cpp:
   74825         (wxFontProperties::wxFontProperties):
   74826         * platform/wx/wxcode/mac/carbon/non-kerned-drawing.cpp:
   74827         (WebCore::drawTextWithSpacing):
   74828 
   74829 2008-10-24  Eric Seidel  <eric (a] webkit.org>
   74830 
   74831         Reviewed by Sam Weinig.
   74832 
   74833         Generate missing constructors and add test to prevent missing ones in the future
   74834         https://bugs.webkit.org/show_bug.cgi?id=21846
   74835 
   74836         Test: fast/js/global-constructors.html
   74837 
   74838         * css/CSSStyleSheet.idl:
   74839         * css/RGBColor.idl:
   74840         * dom/NodeIterator.idl:
   74841         * dom/TreeWalker.idl:
   74842         * xml/XPathExpression.idl:
   74843 
   74844 2008-10-24  Alexey Proskuryakov  <ap (a] webkit.org>
   74845 
   74846         Reviewed by Darin Adler.
   74847 
   74848         https://bugs.webkit.org/show_bug.cgi?id=21836
   74849         REGRESSION: Sign-in on Fancast.com causes crash in Webkit nightly
   74850 
   74851         Test: http/tests/xmlhttprequest/detaching-frame.html
   74852 
   74853         * xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::dropProtection): Null check the window -
   74854         even though XHR needs a context (AKA frame) to be serviced, the frame may be disconnected
   74855         when dispatching the same callback that results in this function being called.
   74856 
   74857 2008-10-24  David Kilzer  <ddkilzer (a] apple.com>
   74858 
   74859         Gtk build fix.
   74860 
   74861         * platform/gtk/TemporaryLinkStubs.cpp:
   74862         (WebCore::setFocusRingColorChangeFunction): Removed in r37858.
   74863 
   74864 2008-10-24  Mark Rowe  <mrowe (a] apple.com>
   74865 
   74866         Reviewed by Sam Weinig.
   74867 
   74868         <rdar://problem/6164952> Use constant kCGInterpolationMedium in GraphicsContextCG.cpp rather than hard-coded values.
   74869 
   74870         * platform/graphics/cg/GraphicsContextCG.cpp:
   74871         (WebCore::GraphicsContext::setImageInterpolationQuality):
   74872         (WebCore::GraphicsContext::imageInterpolationQuality):
   74873 
   74874 2008-10-24  Anders Carlsson  <andersca (a] apple.com>
   74875 
   74876         Reviewed by Sam Weinig.
   74877 
   74878         <rdar://problem/5440917> Support NPN_Construct
   74879 
   74880         * WebCore.NPAPI.exp:
   74881         Export _NPN_Construct.
   74882 
   74883         * bridge/NP_jsobject.cpp:
   74884         (_NPN_Construct):
   74885         Implement this.
   74886 
   74887         * bridge/c/c_instance.cpp:
   74888         (JSC::Bindings::CInstance::supportsConstruct):
   74889         (JSC::Bindings::CInstance::invokeConstruct):
   74890         Have this call the appropriate NPClass method.
   74891 
   74892         * bridge/npruntime.h:
   74893         Add NPN_Construct.
   74894 
   74895         * bridge/npruntime_impl.h:
   74896         Add _NPN_Construct.
   74897 
   74898         * bridge/runtime.h:
   74899         (JSC::Bindings::Instance::supportsConstruct):
   74900         (JSC::Bindings::Instance::invokeConstruct):
   74901         New methods.
   74902 
   74903         * bridge/runtime_object.cpp:
   74904         (JSC::callRuntimeConstructor):
   74905         Call the native instance.
   74906 
   74907         (JSC::RuntimeObjectImp::getConstructData):
   74908         Implement this.
   74909 
   74910         * bridge/runtime_object.h:
   74911         Add new method declarations.
   74912 
   74913         * plugins/gtk/PluginPackageGtk.cpp:
   74914         (WebCore::PluginPackage::load):
   74915         * plugins/qt/PluginPackageQt.cpp:
   74916         (WebCore::PluginPackage::load):
   74917         * plugins/win/PluginPackageWin.cpp:
   74918         (WebCore::PluginPackage::load):
   74919         Initialize m_pluginFuncs.construct.
   74920 
   74921 2008-10-24  Adele Peterson  <adele (a] apple.com>
   74922 
   74923         Build fix.
   74924 
   74925         * platform/FileChooser.h: (WebCore::FileChooserClient::~FileChooserClient):
   74926         * platform/graphics/mac/IconMac.mm: (WebCore::Icon::newIconForFiles):
   74927 
   74928 2008-10-24  Greg Bolsinga  <bolsinga (a] apple.com>
   74929 
   74930         Fix GTK build break.
   74931 
   74932         Reviewed by David Kilzer.
   74933 
   74934         * GNUmakefile.am: Do not include .idl files whose generated files should not be
   74935         compiled.
   74936 
   74937 2008-10-24  David Kilzer  <ddkilzer (a] apple.com>
   74938 
   74939         Wx build fix.
   74940 
   74941         * platform/wx/TemporaryLinkStubs.cpp:
   74942         (WebCore::setFocusRingColorChangeFunction): Removed in r37858.
   74943 
   74944 2008-10-24  Adele Peterson  <adele (a] apple.com>
   74945 
   74946         Reviewed by Sam Weinig.
   74947 
   74948         WebCore part of fix for <rdar://problem/5839256> FILE CONTROL: multi-file upload.
   74949 
   74950         This change adds support for multiple file selection in an <input type="file"> control when the "multiple" attribute is used.
   74951         This is consistent with the direction HTML5 will be going in the future.
   74952 
   74953         The initial implementation here will show "n files" as the text next to the control when multiple files are selected.  You can view
   74954         the individual files in a tooltip for now.  Improvements to this control will come later.
   74955 
   74956         Web developers will be able to access the FileList from the HTMLInputElement element, where they can get a base name and a size for each file.
   74957         These FileList Files can also be sent in an XMLHTTPRequest.
   74958 
   74959         * manual-tests/post-multi-file-upload.html: Added.
   74960         * manual-tests/resources/multiFileResources: Added.
   74961         * manual-tests/resources/multiFileResources/post-echo-and-notify-done.cgi: Added.
   74962         * manual-tests/resources/multiFileResources/testFile1.html: Added.
   74963         * manual-tests/resources/multiFileResources/testFile2.html: Added.
   74964         * manual-tests/resources/multiFileResources/testFile3.html: Added.
   74965 
   74966         * WebCore.base.exp: Added support to export the new "chooseFilenames" method to be used in WebKit.
   74967 
   74968         * html/HTMLInputElement.cpp:
   74969         (WebCore::HTMLInputElement::parseMappedAttribute): Add support for the multiple attribute.
   74970         (WebCore::HTMLInputElement::value): Added comments.  The HTML5 spec says that value shouldn't apply for the file upload control,
   74971         but we don't want to break the behavior for existing websites that may rely on this.
   74972         (WebCore::HTMLInputElement::setValue): ditto.
   74973         (WebCore::HTMLInputElement::setValueFromRenderer): This is no longer used for file upload controls. setFileListFromRenderer is used instead.
   74974         (WebCore::HTMLInputElement::setFileListFromRenderer): Added.
   74975         * html/HTMLInputElement.h:
   74976 
   74977         * page/Chrome.cpp: (WebCore::Chrome::setToolTip): Show a tooltip with the file name list for the multi-file upload control.
   74978 
   74979         * page/DragController.cpp: (WebCore::DragController::concludeDrag): Updated to support multiple files.
   74980 
   74981         * platform/FileChooser.cpp: Add support for maintaining a list of file paths that can be retrieved by the renderer.
   74982         (WebCore::FileChooser::FileChooser):
   74983         (WebCore::FileChooser::create):
   74984         (WebCore::FileChooser::clear):
   74985         (WebCore::FileChooser::chooseFile):
   74986         (WebCore::FileChooser::chooseFiles):
   74987         (WebCore::FileChooser::chooseIcon):
   74988         * platform/FileChooser.h:
   74989         (WebCore::FileChooser::filePaths):
   74990         (WebCore::FileChooser::allowsMultipleFiles):
   74991 
   74992         * platform/graphics/Icon.h:
   74993         * platform/graphics/mac/IconMac.mm: (WebCore::Icon::newIconForFiles): Returns a generic icon for multiple files.
   74994         * platform/graphics/gtk/IconGtk.cpp: (WebCore::Icon::newIconForFiles): stubbed out.
   74995         * platform/graphics/qt/IconQt.cpp: (WebCore::Icon::newIconForFiles): ditto.
   74996         * platform/graphics/win/IconWin.cpp: (WebCore::Icon::newIconForFiles): ditto.
   74997 
   74998         * platform/gtk/FileChooserGtk.cpp: (WebCore::FileChooser::basenameForWidth):  Updated to deal with new filenames vector.
   74999         * platform/mac/FileChooserMac.mm: (WebCore::FileChooser::basenameForWidth): ditto.
   75000         * platform/qt/FileChooserQt.cpp:
   75001         (WebCore::FileChooser::openFileChooser):
   75002         (WebCore::FileChooser::basenameForWidth):
   75003         * platform/win/FileChooserWin.cpp: (WebCore::FileChooser::basenameForWidth):
   75004 
   75005         * platform/network/mac/FormDataStreamMac.mm: (WebCore::disassociateStreamWithResourceHandle):
   75006         Removed unnecessary assertion.  This can get hit when connectionDidFinishLoading and cancel
   75007         both get called for the same ResourceHandle.  This getting called twice has no negative effect.
   75008 
   75009         * rendering/RenderFileUploadControl.cpp:
   75010         (WebCore::RenderFileUploadControl::valueChanged):  Calls setFileListFromRenderer.
   75011         (WebCore::RenderFileUploadControl::allowsMultipleFiles):  Added.
   75012         (WebCore::RenderFileUploadControl::updateFromElement):  Uses the new filenames call from FileChooser.
   75013         (WebCore::RenderFileUploadControl::receiveDroppedFiles):  Updated to support multiple files.
   75014         * rendering/RenderFileUploadControl.h:
   75015 
   75016 2008-10-23  Peter Kasting  <pkasting (a] google.com>
   75017 
   75018         Reviewed by David Hyatt.
   75019 
   75020         https://bugs.webkit.org/show_bug.cgi?id=21844
   75021         Remove setFocusRingColorChangeFunction.
   75022 
   75023         * page/Page.cpp:
   75024         (WebCore::Page::Page):
   75025         * platform/graphics/Color.h:
   75026         * platform/graphics/mac/ColorMac.mm:
   75027         (WebCore::focusRingColor):
   75028         * platform/graphics/qt/GraphicsContextQt.cpp:
   75029         * platform/graphics/win/ColorSafari.cpp:
   75030 
   75031 2008-10-24  David Kilzer  <ddkilzer (a] apple.com>
   75032 
   75033         Build fix for Qt.
   75034 
   75035         Reviewed by Greg.
   75036 
   75037         * WebCore.pro: Added missing *.idl files.
   75038 
   75039 2008-10-24  Greg Bolsinga  <bolsinga (a] apple.com>
   75040 
   75041         Reviewed by Sam Weinig.
   75042 
   75043         https://bugs.webkit.org/show_bug.cgi?id=21475
   75044 
   75045         Provide support for the Geolocation API
   75046 
   75047         http://dev.w3.org/geo/api/spec-source.html
   75048 
   75049         Test: geolocation/geolocation-not-implemented.html
   75050 
   75051         * DerivedSources.make:
   75052         * GNUmakefile.am: Added Geolocation support
   75053         * WebCore.pro: Added Geolocation support
   75054         * WebCore.vcproj/WebCore.vcproj: Added Geolocation support
   75055         * WebCore.xcodeproj/project.pbxproj: Added Geolocation support
   75056         * WebCoreSources.bkl: Added Geolocation support
   75057         * bindings/js/JSCustomPositionCallback.cpp: Added.
   75058         (WebCore::JSCustomPositionCallback::JSCustomPositionCallback):
   75059         (WebCore::JSCustomPositionCallback::handleEvent):
   75060         * bindings/js/JSCustomPositionCallback.h: Added.
   75061         (WebCore::JSCustomPositionCallback::create):
   75062         * bindings/js/JSCustomPositionErrorCallback.cpp: Added.
   75063         (WebCore::JSCustomPositionErrorCallback::JSCustomPositionErrorCallback):
   75064         (WebCore::JSCustomPositionErrorCallback::handleEvent):
   75065         * bindings/js/JSCustomPositionErrorCallback.h: Added.
   75066         (WebCore::JSCustomPositionErrorCallback::create):
   75067         * bindings/js/JSDOMBinding.cpp: move markDOMObjectWrapper here from JSDOMWindowCustom
   75068         (WebCore::markDOMObjectWrapper):
   75069         * bindings/js/JSDOMBinding.h: move markDOMObjectWrapper here from JSDOMWindowCustom
   75070         * bindings/js/JSDOMWindowCustom.cpp: move markDOMObjectWrapper to JSDOMBinding
   75071         * bindings/js/JSGeolocationCustom.cpp: Added.
   75072         (WebCore::JSGeolocation::getCurrentPosition):
   75073         (WebCore::JSGeolocation::watchPosition):
   75074         * bindings/js/JSNavigatorCustom.cpp: handle marking Geolocation
   75075         (WebCore::JSNavigator::mark):
   75076         * dom/Document.cpp:
   75077         (WebCore::Document::Document):
   75078         * dom/Document.h:
   75079         (WebCore::Document::setUsingGeolocation):
   75080         (WebCore::Document::usingGeolocation):
   75081         * loader/FrameLoader.cpp: don't add to back forward cache if using Geolocation
   75082         (WebCore::FrameLoader::canCachePage):
   75083         * page/Geolocation.cpp: Added.
   75084         (WebCore::Geolocation::GeoNotifier::GeoNotifier):
   75085         (WebCore::Geolocation::GeoNotifier::timerFired):
   75086         (WebCore::Geolocation::Geolocation):
   75087         (WebCore::Geolocation::disconnectFrame):
   75088         (WebCore::Geolocation::getCurrentPosition):
   75089         (WebCore::Geolocation::watchPosition):
   75090         (WebCore::Geolocation::clearWatch):
   75091         (WebCore::Geolocation::stopUpdatingIfEmpty):
   75092         (WebCore::Geolocation::sendErrorToOneShots):
   75093         (WebCore::Geolocation::sendErrorToWatchers):
   75094         (WebCore::Geolocation::sendPositionToOneShots):
   75095         (WebCore::Geolocation::sendPositionToWatchers):
   75096         (WebCore::Geolocation::handleError):
   75097         (WebCore::Geolocation::geolocationServicePositionChanged):
   75098         (WebCore::Geolocation::geolocationServiceErrorOccurred):
   75099         * page/Geolocation.h: Added.
   75100         (WebCore::Geolocation::create):
   75101         (WebCore::Geolocation::~Geolocation):
   75102         (WebCore::Geolocation::lastPosition):
   75103         (WebCore::Geolocation::GeoNotifier::create):
   75104         * page/Geolocation.idl: Added.
   75105         * page/Geoposition.cpp: Added.
   75106         (WebCore::Geoposition::toString):
   75107         * page/Geoposition.h: Added.
   75108         (WebCore::Geoposition::create):
   75109         (WebCore::Geoposition::latitude):
   75110         (WebCore::Geoposition::longitude):
   75111         (WebCore::Geoposition::altitude):
   75112         (WebCore::Geoposition::accuracy):
   75113         (WebCore::Geoposition::altitudeAccuracy):
   75114         (WebCore::Geoposition::heading):
   75115         (WebCore::Geoposition::velocity):
   75116         (WebCore::Geoposition::timestamp):
   75117         (WebCore::Geoposition::Geoposition):
   75118         * page/Geoposition.idl: Added.
   75119         * page/Navigator.cpp:
   75120         (WebCore::Navigator::disconnectFrame): disconnect Geolocation
   75121         (WebCore::Navigator::geolocation): accessor for Geolocation
   75122         * page/Navigator.h:
   75123         (WebCore::Navigator::optionalGeolocation): accessor for Geolocation
   75124         * page/Navigator.idl: accessor for Geolocation
   75125         * page/PositionCallback.h: Added.
   75126         (WebCore::PositionCallback::~PositionCallback):
   75127         * page/PositionCallback.idl: Added.
   75128         * page/PositionError.h: Added.
   75129         (WebCore::PositionError::):
   75130         (WebCore::PositionError::create):
   75131         (WebCore::PositionError::code):
   75132         (WebCore::PositionError::message):
   75133         (WebCore::PositionError::PositionError):
   75134         * page/PositionError.idl: Added.
   75135         * page/PositionErrorCallback.h: Added.
   75136         (WebCore::PositionErrorCallback::~PositionErrorCallback):
   75137         * page/PositionErrorCallback.idl: Added.
   75138         * page/PositionOptions.h: Added.
   75139         (WebCore::PositionOptions::create):
   75140         (WebCore::PositionOptions::enableHighAccuracy):
   75141         (WebCore::PositionOptions::setEnableHighAccuracy):
   75142         (WebCore::PositionOptions::timeout):
   75143         (WebCore::PositionOptions::setTimeout):
   75144         (WebCore::PositionOptions::PositionOptions):
   75145         * page/PositionOptions.idl: Added.
   75146         * platform/GeolocationService.cpp: Added.
   75147         (WebCore::GeolocationService::GeolocationService):
   75148         (WebCore::GeolocationService::positionChanged):
   75149         (WebCore::GeolocationService::errorOccurred):
   75150         * platform/GeolocationService.h: Added.
   75151         (WebCore::GeolocationServiceClient::~GeolocationServiceClient):
   75152         (WebCore::GeolocationServiceClient::geolocationServicePositionChanged):
   75153         (WebCore::GeolocationServiceClient::geolocationServiceErrorOccurred):
   75154         (WebCore::GeolocationService::~GeolocationService):
   75155 
   75156 2008-10-24  Simon Fraser  <simon.fraser (a] apple.com>
   75157 
   75158         Reviewed by Darin Adler
   75159 
   75160         https://bugs.webkit.org/show_bug.cgi?id=21818
   75161 
   75162         Add HashTraits for AtomicString so that AtomicString can be used as
   75163         the key for a HashMap or HashSet.
   75164 
   75165         * GNUmakefile.am: add AtomicStringHash.h
   75166         * WebCore.vcproj/WebCore.vcproj: add AtomicStringHash.h
   75167         * WebCore.xcodeproj/project.pbxproj: add AtomicStringHash.h
   75168         * platform/text/AtomicString.h:
   75169         (WebCore::AtomicString::AtomicString):
   75170         (WebCore::AtomicString::isHashTableDeletedValue):
   75171             specialize DefaultHash for AtomicString to use AtomicStringHash
   75172         * platform/text/AtomicStringHash.h: Added.
   75173         * platform/text/StringImpl.cpp:
   75174         (WebCore::StringImpl::StringImpl):
   75175             compute the hash up-front for the empty string
   75176         * platform/text/StringImpl.h:
   75177         (WebCore::StringImpl::existingHash):
   75178             method to get the hash without a test and branch, for callers like
   75179             AtomicStringHash who can guarantee that the hash has already been computed.
   75180 
   75181 2008-10-24  Simon Fraser  <simon.fraser (a] apple.com>
   75182 
   75183         Reviewed by Sam Weinig
   75184 
   75185         https://bugs.webkit.org/show_bug.cgi?id=21857
   75186 
   75187         Add WebKitCSSKeyframeRule and WebKitCSSKeyframesRule to the
   75188         switch in _wrapCSSRule.
   75189 
   75190         * bindings/objc/DOMCSS.mm:
   75191         (+[DOMCSSRule _wrapCSSRule:WebCore::]):
   75192 
   75193 2008-10-24  Adam Roben  <aroben (a] apple.com>
   75194 
   75195         Windows build fix
   75196 
   75197         * plugins/PluginView.cpp:
   75198 
   75199 2008-10-24  Dan Bernstein  <mitz (a] apple.com>
   75200 
   75201         Reviewed by Sam Weinig.
   75202 
   75203         - fix https://bugs.webkit.org/show_bug.cgi?id=21851
   75204           <rdar://problem/6304151> REGRESSION (r36513): Crash when removing a widget with percent height
   75205 
   75206         Test: fast/replaced/percent-height-in-anonymous-block-widget.html
   75207 
   75208         * rendering/RenderWidget.cpp:
   75209         (WebCore::RenderWidget::destroy): Copied code added to
   75210         RenderBox::destroy() in r36513 into this function.
   75211 
   75212 2008-10-24  Timothy Hatcher  <timothy (a] apple.com>
   75213 
   75214         Add a mechanism to ask the InspectorClient for key/value setting pairs.
   75215         These settings can be strings, numbers, booleans or string vectors. The
   75216         settings are also bridged to and from JavaScript.
   75217 
   75218         https://bugs.webkit.org/show_bug.cgi?id=21856
   75219 
   75220         Reviewed by Darin Adler.
   75221 
   75222         * WebCore.base.exp: Expose the String CFStringRef constructor.
   75223         * inspector/InspectorClient.h:
   75224         (WebCore::InspectorClient::populateSetting): Added, pure virtual.
   75225         (WebCore::InspectorClient::storeSetting): Ditto.
   75226         (WebCore::InspectorClient::removeSetting): Ditto.
   75227         * inspector/InspectorController.cpp:
   75228         (WebCore::setting): Calls InspectorController::setting and wraps the result in script types.
   75229         (WebCore::setSetting): Calls InspectorController::setSetting after converting from script types.
   75230         (WebCore::InspectorController::InspectorController): Increment a global static
   75231         to track the number of live InspectorControllers.
   75232         (WebCore::InspectorController::~InspectorController): Decrement the global static
   75233         that tracks the number of live InspectorControllers. Delete the setting cache if there
   75234         are no more live controllers.
   75235         (WebCore::InspectorController::setting): Check the cache and return the setting from there,
   75236         otherwise make a new Setting and ask the client to populate it.
   75237         (WebCore::InspectorController::setSetting): Change the cache and ask the client to store it.
   75238         (WebCore::InspectorController::windowScriptObjectAvailable): Add setting and setSetting
   75239         to the InspectorController script class.
   75240         * inspector/InspectorController.h:
   75241         (WebCore::InspectorController::Setting::Setting):
   75242         (WebCore::InspectorController::Setting::operator=):
   75243         (WebCore::InspectorController::Setting::type): Return m_type.
   75244         (WebCore::InspectorController::Setting::string): Return m_string. Assert the type is correct.
   75245         (WebCore::InspectorController::Setting::stringVector): Return m_stringVector.
   75246         Assert the type is correct.
   75247         (WebCore::InspectorController::Setting::doubleValue): Return m_simpleContent.m_double.
   75248         Assert the type is correct.
   75249         (WebCore::InspectorController::Setting::integerValue): Return m_simpleContent.m_integer.
   75250         Assert the type is correct.
   75251         (WebCore::InspectorController::Setting::booleanValue): Return m_simpleContent.m_boolean.
   75252         Assert the type is correct.
   75253         (WebCore::InspectorController::Setting::set): Overloaded for each data type, sets the right
   75254         field and the type.
   75255         * loader/EmptyClients.h:
   75256         (WebCore::EmptyInspectorClient::populateSetting): Added, empty method.
   75257         (WebCore::EmptyInspectorClient::storeSetting): Ditto.
   75258         (WebCore::EmptyInspectorClient::removeSetting): Ditto.
   75259 
   75260 2008-10-24  Cameron Zwarich  <zwarich (a] apple.com>
   75261 
   75262         Reviewed by Sam Weinig.
   75263 
   75264         Remove some C-style casts.
   75265 
   75266         * html/HTMLViewSourceDocument.cpp:
   75267         (WebCore::HTMLViewSourceDocument::addViewSourceToken):
   75268 
   75269 2008-10-24  Darin Adler  <darin (a] apple.com>
   75270 
   75271         - finish rolling out https://bugs.webkit.org/show_bug.cgi?id=21732
   75272 
   75273         * bindings/js/JSAttrCustom.cpp:
   75274         * bindings/js/JSCSSRuleCustom.cpp:
   75275         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
   75276         * bindings/js/JSCSSValueCustom.cpp:
   75277         * bindings/js/JSCanvasPixelArrayCustom.h:
   75278         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
   75279         * bindings/js/JSClipboardCustom.cpp:
   75280         * bindings/js/JSConsoleCustom.cpp:
   75281         * bindings/js/JSCustomSQLStatementCallback.cpp:
   75282         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
   75283         * bindings/js/JSCustomSQLTransactionCallback.cpp:
   75284         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
   75285         * bindings/js/JSCustomVoidCallback.cpp:
   75286         * bindings/js/JSCustomVoidCallback.h:
   75287         * bindings/js/JSCustomXPathNSResolver.cpp:
   75288         * bindings/js/JSCustomXPathNSResolver.h:
   75289         * bindings/js/JSDOMApplicationCacheCustom.cpp:
   75290         * bindings/js/JSDOMBinding.cpp:
   75291         * bindings/js/JSDOMBinding.h:
   75292         * bindings/js/JSDOMWindowBase.cpp:
   75293         * bindings/js/JSDOMWindowBase.h:
   75294         * bindings/js/JSDOMWindowCustom.cpp:
   75295         * bindings/js/JSDOMWindowCustom.h:
   75296         * bindings/js/JSDOMWindowShell.cpp:
   75297         * bindings/js/JSDOMWindowShell.h:
   75298         * bindings/js/JSDatabaseCustom.cpp:
   75299         * bindings/js/JSDedicatedWorkerCustom.cpp:
   75300         * bindings/js/JSDocumentCustom.cpp:
   75301         * bindings/js/JSElementCustom.cpp:
   75302         * bindings/js/JSEventCustom.cpp:
   75303         * bindings/js/JSEventListener.cpp:
   75304         * bindings/js/JSEventTarget.cpp:
   75305         * bindings/js/JSEventTarget.h:
   75306         * bindings/js/JSEventTargetBase.h:
   75307         * bindings/js/JSEventTargetNodeCustom.cpp:
   75308         * bindings/js/JSHTMLAllCollection.h:
   75309         * bindings/js/JSHTMLAppletElementCustom.cpp:
   75310         * bindings/js/JSHTMLCollectionCustom.cpp:
   75311         * bindings/js/JSHTMLDocumentCustom.cpp:
   75312         * bindings/js/JSHTMLEmbedElementCustom.cpp:
   75313         * bindings/js/JSHTMLFormElementCustom.cpp:
   75314         * bindings/js/JSHTMLFrameElementCustom.cpp:
   75315         * bindings/js/JSHTMLFrameSetElementCustom.cpp:
   75316         * bindings/js/JSHTMLIFrameElementCustom.cpp:
   75317         * bindings/js/JSHTMLInputElementCustom.cpp:
   75318         * bindings/js/JSHTMLObjectElementCustom.cpp:
   75319         * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
   75320         * bindings/js/JSHTMLSelectElementCustom.cpp:
   75321         * bindings/js/JSHTMLSelectElementCustom.h:
   75322         * bindings/js/JSHistoryCustom.cpp:
   75323         * bindings/js/JSImageDataCustom.cpp:
   75324         * bindings/js/JSInspectedObjectWrapper.cpp:
   75325         * bindings/js/JSInspectedObjectWrapper.h:
   75326         * bindings/js/JSInspectorCallbackWrapper.cpp:
   75327         * bindings/js/JSInspectorCallbackWrapper.h:
   75328         * bindings/js/JSJavaScriptCallFrameCustom.cpp:
   75329         * bindings/js/JSLocationCustom.cpp:
   75330         * bindings/js/JSMessagePortCustom.cpp:
   75331         * bindings/js/JSMimeTypeArrayCustom.cpp:
   75332         * bindings/js/JSNamedNodeMapCustom.cpp:
   75333         * bindings/js/JSNamedNodesCollection.cpp:
   75334         * bindings/js/JSNamedNodesCollection.h:
   75335         * bindings/js/JSNavigatorCustom.cpp:
   75336         * bindings/js/JSNodeCustom.cpp:
   75337         * bindings/js/JSNodeFilterCondition.cpp:
   75338         * bindings/js/JSNodeFilterCondition.h:
   75339         * bindings/js/JSNodeFilterCustom.cpp:
   75340         * bindings/js/JSNodeIteratorCustom.cpp:
   75341         * bindings/js/JSNodeListCustom.cpp:
   75342         * bindings/js/JSPluginArrayCustom.cpp:
   75343         * bindings/js/JSPluginCustom.cpp:
   75344         * bindings/js/JSPluginElementFunctions.cpp:
   75345         * bindings/js/JSPluginElementFunctions.h:
   75346         * bindings/js/JSQuarantinedObjectWrapper.cpp:
   75347         * bindings/js/JSQuarantinedObjectWrapper.h:
   75348         * bindings/js/JSRGBColor.cpp:
   75349         * bindings/js/JSRGBColor.h:
   75350         * bindings/js/JSSQLResultSetRowListCustom.cpp:
   75351         * bindings/js/JSSQLTransactionCustom.cpp:
   75352         * bindings/js/JSSVGElementInstanceCustom.cpp:
   75353         * bindings/js/JSSVGLengthCustom.cpp:
   75354         * bindings/js/JSSVGMatrixCustom.cpp:
   75355         * bindings/js/JSSVGPathSegCustom.cpp:
   75356         * bindings/js/JSSVGPathSegListCustom.cpp:
   75357         * bindings/js/JSSVGPointListCustom.cpp:
   75358         * bindings/js/JSSVGTransformListCustom.cpp:
   75359         * bindings/js/JSStorageCustom.cpp:
   75360         * bindings/js/JSStyleSheetCustom.cpp:
   75361         * bindings/js/JSStyleSheetListCustom.cpp:
   75362         * bindings/js/JSTextCustom.cpp:
   75363         * bindings/js/JSTreeWalkerCustom.cpp:
   75364         * bindings/js/JSXMLHttpRequestCustom.cpp:
   75365         * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
   75366         * bindings/js/JSXSLTProcessorCustom.cpp:
   75367         * bindings/js/ScheduledAction.cpp:
   75368         * bindings/js/ScheduledAction.h:
   75369         * bindings/js/ScriptController.cpp:
   75370         * bindings/js/ScriptController.h:
   75371         * bindings/objc/WebScriptObject.mm:
   75372         * bindings/objc/WebScriptObjectPrivate.h:
   75373         * bindings/scripts/CodeGeneratorJS.pm:
   75374         * bridge/NP_jsobject.cpp:
   75375         * bridge/c/c_instance.cpp:
   75376         * bridge/c/c_instance.h:
   75377         * bridge/c/c_runtime.cpp:
   75378         * bridge/c/c_runtime.h:
   75379         * bridge/c/c_utility.cpp:
   75380         * bridge/c/c_utility.h:
   75381         * bridge/jni/jni_instance.cpp:
   75382         * bridge/jni/jni_instance.h:
   75383         * bridge/jni/jni_jsobject.h:
   75384         * bridge/jni/jni_jsobject.mm:
   75385         * bridge/jni/jni_objc.mm:
   75386         * bridge/jni/jni_runtime.cpp:
   75387         * bridge/jni/jni_runtime.h:
   75388         * bridge/jni/jni_utility.cpp:
   75389         * bridge/jni/jni_utility.h:
   75390         * bridge/objc/WebScriptObject.h:
   75391         * bridge/objc/objc_class.h:
   75392         * bridge/objc/objc_class.mm:
   75393         * bridge/objc/objc_instance.h:
   75394         * bridge/objc/objc_instance.mm:
   75395         * bridge/objc/objc_runtime.h:
   75396         * bridge/objc/objc_runtime.mm:
   75397         * bridge/objc/objc_utility.h:
   75398         * bridge/objc/objc_utility.mm:
   75399         * bridge/qt/qt_class.cpp:
   75400         * bridge/qt/qt_class.h:
   75401         * bridge/qt/qt_instance.cpp:
   75402         * bridge/qt/qt_instance.h:
   75403         * bridge/qt/qt_runtime.cpp:
   75404         * bridge/qt/qt_runtime.h:
   75405         * bridge/runtime.cpp:
   75406         * bridge/runtime.h:
   75407         * bridge/runtime_array.cpp:
   75408         * bridge/runtime_array.h:
   75409         * bridge/runtime_method.cpp:
   75410         * bridge/runtime_method.h:
   75411         * bridge/runtime_object.cpp:
   75412         * bridge/runtime_object.h:
   75413         * bridge/testqtbindings.cpp:
   75414         * inspector/JavaScriptCallFrame.cpp:
   75415         * inspector/JavaScriptCallFrame.h:
   75416         * inspector/JavaScriptProfile.cpp:
   75417         * inspector/JavaScriptProfile.h:
   75418         * inspector/JavaScriptProfileNode.cpp:
   75419         * inspector/JavaScriptProfileNode.h:
   75420         * loader/FrameLoader.cpp:
   75421         * loader/FrameLoader.h:
   75422         * page/Console.cpp:
   75423         * page/Console.h:
   75424         * plugins/MimeTypeArray.h:
   75425         * plugins/Plugin.h:
   75426         * plugins/PluginArray.h:
   75427         * plugins/PluginView.cpp:
   75428         * xml/XMLHttpRequest.cpp:
   75429         Use JSValue* instead of JSValuePtr.
   75430 
   75431 2008-10-24  Simon Hausmann  <hausmann (a] webkit.org>
   75432 
   75433         Fix the Qt build.
   75434 
   75435         * bridge/qt/qt_instance.cpp:
   75436         (JSC::Bindings::QtField::valueFromInstance):
   75437 
   75438 2008-10-24  David Kilzer  <ddkilzer (a] apple.com>
   75439 
   75440         Rolled out r37840 and r37841.
   75441 
   75442         * DerivedSources.make:
   75443         * GNUmakefile.am:
   75444         * WebCore.pro:
   75445         * WebCore.vcproj/WebCore.vcproj:
   75446         * WebCore.xcodeproj/project.pbxproj:
   75447         * WebCoreSources.bkl:
   75448         * bindings/js/JSCustomPositionCallback.cpp: Removed.
   75449         * bindings/js/JSCustomPositionCallback.h: Removed.
   75450         * bindings/js/JSCustomPositionErrorCallback.cpp: Removed.
   75451         * bindings/js/JSCustomPositionErrorCallback.h: Removed.
   75452         * bindings/js/JSDOMBinding.cpp:
   75453         * bindings/js/JSDOMBinding.h:
   75454         * bindings/js/JSDOMWindowCustom.cpp:
   75455         (WebCore::markDOMObjectWrapper):
   75456         * bindings/js/JSGeolocationCustom.cpp: Removed.
   75457         * bindings/js/JSNavigatorCustom.cpp:
   75458         * dom/Document.cpp:
   75459         (WebCore::Document::Document):
   75460         * dom/Document.h:
   75461         * loader/FrameLoader.cpp:
   75462         (WebCore::FrameLoader::canCachePage):
   75463         * page/Geolocation.cpp: Removed.
   75464         * page/Geolocation.h: Removed.
   75465         * page/Geolocation.idl: Removed.
   75466         * page/Geoposition.cpp: Removed.
   75467         * page/Geoposition.h: Removed.
   75468         * page/Geoposition.idl: Removed.
   75469         * page/Navigator.cpp:
   75470         (WebCore::Navigator::disconnectFrame):
   75471         * page/Navigator.h:
   75472         * page/Navigator.idl:
   75473         * page/PositionCallback.h: Removed.
   75474         * page/PositionCallback.idl: Removed.
   75475         * page/PositionError.h: Removed.
   75476         * page/PositionError.idl: Removed.
   75477         * page/PositionErrorCallback.h: Removed.
   75478         * page/PositionErrorCallback.idl: Removed.
   75479         * page/PositionOptions.h: Removed.
   75480         * page/PositionOptions.idl: Removed.
   75481         * platform/GeolocationService.cpp: Removed.
   75482         * platform/GeolocationService.h: Removed.
   75483 
   75484 2008-10-23  David Kilzer  <ddkilzer (a] apple.com>
   75485 
   75486         Attempt to fix GTK build.
   75487 
   75488         * GNUmakefile.am: Added new *.idl files that were missing.
   75489 
   75490 2008-10-23  Greg Bolsinga  <bolsinga (a] apple.com>
   75491 
   75492         Reviewed by Sam Weinig.
   75493 
   75494         https://bugs.webkit.org/show_bug.cgi?id=21475
   75495 
   75496         Provide support for the Geolocation API
   75497 
   75498         http://dev.w3.org/geo/api/spec-source.html
   75499 
   75500         Test: geolocation/geolocation-not-implemented.html
   75501 
   75502         * DerivedSources.make:
   75503         * GNUmakefile.am: Added Geolocation support
   75504         * WebCore.pro: Added Geolocation support
   75505         * WebCore.vcproj/WebCore.vcproj: Added Geolocation support
   75506         * WebCore.xcodeproj/project.pbxproj: Added Geolocation support
   75507         * WebCoreSources.bkl: Added Geolocation support
   75508         * bindings/js/JSCustomPositionCallback.cpp: Added.
   75509         (WebCore::JSCustomPositionCallback::JSCustomPositionCallback):
   75510         (WebCore::JSCustomPositionCallback::handleEvent):
   75511         * bindings/js/JSCustomPositionCallback.h: Added.
   75512         (WebCore::JSCustomPositionCallback::create):
   75513         * bindings/js/JSCustomPositionErrorCallback.cpp: Added.
   75514         (WebCore::JSCustomPositionErrorCallback::JSCustomPositionErrorCallback):
   75515         (WebCore::JSCustomPositionErrorCallback::handleEvent):
   75516         * bindings/js/JSCustomPositionErrorCallback.h: Added.
   75517         (WebCore::JSCustomPositionErrorCallback::create):
   75518         * bindings/js/JSDOMBinding.cpp: move markDOMObjectWrapper here from JSDOMWindowCustom
   75519         (WebCore::markDOMObjectWrapper):
   75520         * bindings/js/JSDOMBinding.h: move markDOMObjectWrapper here from JSDOMWindowCustom
   75521         * bindings/js/JSDOMWindowCustom.cpp: move markDOMObjectWrapper to JSDOMBinding
   75522         * bindings/js/JSGeolocationCustom.cpp: Added.
   75523         (WebCore::JSGeolocation::getCurrentPosition):
   75524         (WebCore::JSGeolocation::watchPosition):
   75525         * bindings/js/JSNavigatorCustom.cpp: handle marking Geolocation
   75526         (WebCore::JSNavigator::mark):
   75527         * dom/Document.cpp:
   75528         (WebCore::Document::Document):
   75529         * dom/Document.h:
   75530         (WebCore::Document::setUsingGeolocation):
   75531         (WebCore::Document::usingGeolocation):
   75532         * loader/FrameLoader.cpp: don't add to back forward cache if using Geolocation
   75533         (WebCore::FrameLoader::canCachePage):
   75534         * page/Geolocation.cpp: Added.
   75535         (WebCore::Geolocation::GeoNotifier::GeoNotifier):
   75536         (WebCore::Geolocation::GeoNotifier::timerFired):
   75537         (WebCore::Geolocation::Geolocation):
   75538         (WebCore::Geolocation::disconnectFrame):
   75539         (WebCore::Geolocation::getCurrentPosition):
   75540         (WebCore::Geolocation::watchPosition):
   75541         (WebCore::Geolocation::clearWatch):
   75542         (WebCore::Geolocation::stopUpdatingIfEmpty):
   75543         (WebCore::Geolocation::sendErrorToOneShots):
   75544         (WebCore::Geolocation::sendErrorToWatchers):
   75545         (WebCore::Geolocation::sendPositionToOneShots):
   75546         (WebCore::Geolocation::sendPositionToWatchers):
   75547         (WebCore::Geolocation::handleError):
   75548         (WebCore::Geolocation::geolocationServicePositionChanged):
   75549         (WebCore::Geolocation::geolocationServiceErrorOccurred):
   75550         * page/Geolocation.h: Added.
   75551         (WebCore::Geolocation::create):
   75552         (WebCore::Geolocation::~Geolocation):
   75553         (WebCore::Geolocation::lastPosition):
   75554         (WebCore::Geolocation::GeoNotifier::create):
   75555         * page/Geolocation.idl: Added.
   75556         * page/Geoposition.cpp: Added.
   75557         (WebCore::Geoposition::toString):
   75558         * page/Geoposition.h: Added.
   75559         (WebCore::Geoposition::create):
   75560         (WebCore::Geoposition::latitude):
   75561         (WebCore::Geoposition::longitude):
   75562         (WebCore::Geoposition::altitude):
   75563         (WebCore::Geoposition::accuracy):
   75564         (WebCore::Geoposition::altitudeAccuracy):
   75565         (WebCore::Geoposition::heading):
   75566         (WebCore::Geoposition::velocity):
   75567         (WebCore::Geoposition::timestamp):
   75568         (WebCore::Geoposition::Geoposition):
   75569         * page/Geoposition.idl: Added.
   75570         * page/Navigator.cpp:
   75571         (WebCore::Navigator::disconnectFrame): disconnect Geolocation
   75572         (WebCore::Navigator::geolocation): accessor for Geolocation
   75573         * page/Navigator.h:
   75574         (WebCore::Navigator::optionalGeolocation): accessor for Geolocation
   75575         * page/Navigator.idl: accessor for Geolocation
   75576         * page/PositionCallback.h: Added.
   75577         (WebCore::PositionCallback::~PositionCallback):
   75578         * page/PositionCallback.idl: Added.
   75579         * page/PositionError.h: Added.
   75580         (WebCore::PositionError::):
   75581         (WebCore::PositionError::create):
   75582         (WebCore::PositionError::code):
   75583         (WebCore::PositionError::message):
   75584         (WebCore::PositionError::PositionError):
   75585         * page/PositionError.idl: Added.
   75586         * page/PositionErrorCallback.h: Added.
   75587         (WebCore::PositionErrorCallback::~PositionErrorCallback):
   75588         * page/PositionErrorCallback.idl: Added.
   75589         * page/PositionOptions.h: Added.
   75590         (WebCore::PositionOptions::create):
   75591         (WebCore::PositionOptions::enableHighAccuracy):
   75592         (WebCore::PositionOptions::setEnableHighAccuracy):
   75593         (WebCore::PositionOptions::timeout):
   75594         (WebCore::PositionOptions::setTimeout):
   75595         (WebCore::PositionOptions::PositionOptions):
   75596         * page/PositionOptions.idl: Added.
   75597         * platform/GeolocationService.cpp: Added.
   75598         (WebCore::GeolocationService::GeolocationService):
   75599         (WebCore::GeolocationService::positionChanged):
   75600         (WebCore::GeolocationService::errorOccurred):
   75601         * platform/GeolocationService.h: Added.
   75602         (WebCore::GeolocationServiceClient::~GeolocationServiceClient):
   75603         (WebCore::GeolocationServiceClient::geolocationServicePositionChanged):
   75604         (WebCore::GeolocationServiceClient::geolocationServiceErrorOccurred):
   75605         (WebCore::GeolocationService::~GeolocationService):
   75606 
   75607 2008-10-23  Alp Toker  <alp (a] nuanti.com>
   75608 
   75609         Fix typo in comment in previous commit. GTK -> GLIB
   75610 
   75611         * platform/gtk/guriescape.c:
   75612 
   75613 2008-10-23  Kalle Vahlman  <kalle.vahlman (a] movial.com>
   75614 
   75615         Reviewed by Alp Toker.
   75616 
   75617         https://bugs.webkit.org/show_bug.cgi?id=21824
   75618         [GTK] FileSystem abstraction uses features from Glib 2.16
   75619 
   75620         Wrap g_uri_unescape_string() to fix building with pre-2.16 Glib
   75621 
   75622         * platform/gtk/guriescape.c:
   75623         (unescape_character):
   75624         (_webcore_g_uri_unescape_segment):
   75625         (_webcore_g_uri_unescape_string):
   75626         * platform/gtk/guriescape.h:
   75627 
   75628 2008-10-23  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   75629 
   75630         Fix Gtk build typo introduced in http://trac.webkit.org/changeset/37826.
   75631 
   75632         * GNUmakefile.am:
   75633 
   75634 2008-10-23  Darin Fisher  <darin (a] chromium.org>
   75635 
   75636         Reviewed by Eric Seidel.
   75637 
   75638         m_frame null checked but then dereferenced
   75639         https://bugs.webkit.org/show_bug.cgi?id=21845
   75640 
   75641         This error was found using a static analysis tool, and so I do not know
   75642         how to produce a null m_frame on entry to this method.  Hence, I have
   75643         not included a regression test.
   75644 
   75645         * page/EventHandler.cpp:
   75646         (WebCore::EventHandler::allowDHTMLDrag): Add an early return.
   75647 
   75648 2008-10-23  Dan Bernstein  <mitz (a] apple.com>
   75649 
   75650         Reviewed by Sam Weinig with no hesitation.
   75651 
   75652         - fix the HTML/CSS case of https://bugs.webkit.org/show_bug.cgi?id=19839
   75653           <rdar://problem/6304805> A PDF,RLE sequence that should be a no-op affects bidi reordering
   75654 
   75655         Test: fast/text/bidi-embedding-pop-and-push-same.html
   75656 
   75657         * platform/text/BidiResolver.h:
   75658         (WebCore::BidiResolver::embed): Changed to only add the embedding
   75659         operation to a vector of pending operations.
   75660 
   75661         (WebCore::BidiResolver::lowerExplicitEmbeddingLevel): Added. Moved the
   75662         code that used to be in the PDF case of embed() here, except the part
   75663         that sets the context.
   75664 
   75665         (WebCore::BidiResolver::raiseExplicitEmbeddingLevel): Added. Moved the
   75666         code that used to be in the non-PDF case of embed() here, except the
   75667         part the sets the context.
   75668 
   75669         (WebCore::BidiResolver::commitExplicitEmbedding): Added. Processes the
   75670         explicit embedding operations in the vector by creating an updated
   75671         context and determining the old and new embedding levels. If the levels
   75672         are not the same, calls {lower,raise}ExplicitEmbeddingLevel(). Always
   75673         sets the context to the new one.
   75674 
   75675         (WebCore::BidiResolver::createBidiRunsForLine): Added calls to
   75676         commitExplicitEmbedding() after calling embed() and after calling
   75677         increment().
   75678 
   75679         * rendering/bidi.cpp:
   75680         (WebCore::bidiFirst): Added calls to commitExplicitEmbedding() because
   75681         this function increments the resolver.
   75682 
   75683         (WebCore::RenderBlock::skipLeadingWhitespace): Ditto.
   75684 
   75685 2008-10-23  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   75686 
   75687         Gtk build fix. Not reviewed.
   75688 
   75689         Add DNSCurl and DNSSoup to the Gtk build
   75690 
   75691         * GNUmakefile.am:
   75692         * platform/gtk/TemporaryLinkStubs.cpp:
   75693         * platform/network/soup/DNSSoup.cpp: Copied from WebCore/platform/network/curl/DNSCurl.cpp.
   75694         (WebCore::prefetchDNS):
   75695 
   75696 2008-10-23  Eric Seidel  <eric (a] webkit.org>
   75697 
   75698         Reviewed by Sam Weinig.
   75699 
   75700         Un-break the Darwin build.
   75701 
   75702         * platform/graphics/cg/GraphicsContextPlatformPrivateCG.h:
   75703         * platform/graphics/cg/ImageCG.cpp:
   75704 
   75705 2008-10-23  Darin Fisher  <darin (a] chromium.org>
   75706 
   75707         Reviewed by Eric Seidel.
   75708 
   75709         Fix forward decls to be struct instead of class.
   75710         https://bugs.webkit.org/show_bug.cgi?id=21838
   75711 
   75712         * rendering/style/StyleRareInheritedData.h:
   75713         * rendering/style/StyleRareNonInheritedData.h:
   75714 
   75715 2008-10-23  Brent Fulgham  <bfulgham (a] gmail.com>
   75716 
   75717         Reviewed by Oliver Hunt.
   75718 
   75719         * platform/network/curl/ResourceRequest.h:  A better implementation
   75720           of CFURLRequest, rather than void*.  This gives better compatibility
   75721           with the WebKit.idl interface.
   75722         (WebCore::ResourceRequest::cfURLRequest):
   75723 
   75724 2008-10-23  Mike Pinkerton  <pinkerton (a] chromium.org>
   75725 
   75726         Reviewed by Eric Seidel.
   75727 
   75728         PLATFORM(CHROMIUM) uses CG the same way PLATFORM(MAC) does so fix
   75729         ifdefs to reflect that.
   75730 
   75731         * platform/graphics/cg/GraphicsContextPlatformPrivateCG.h:
   75732         * platform/graphics/cg/ImageCG.cpp:
   75733 
   75734 2008-10-23  Peter Kasting  <pkasting (a] google.com>
   75735 
   75736         Reviewed by Adam Roben.
   75737 
   75738         https://bugs.webkit.org/show_bug.cgi?id=21833
   75739         Place JavaScript Debugger hooks under #if ENABLE(JAVASCRIPT_DEBUGGER).
   75740 
   75741         * inspector/InspectorController.cpp:
   75742         (WebCore::InspectorController::InspectorController):
   75743         (WebCore::InspectorController::setWindowVisible):
   75744         (WebCore::InspectorController::windowScriptObjectAvailable):
   75745         (WebCore::InspectorController::close):
   75746         * inspector/InspectorController.h:
   75747         * page/Page.cpp:
   75748         (WebCore::Page::Page):
   75749 
   75750 2008-10-23  Kevin McCullough  <kmccullough (a] apple.com>
   75751 
   75752         Reviewed by Tim Hatcher.
   75753 
   75754         https://bugs.webkit.org/show_bug.cgi?id=21817
   75755         Bug 21817: Manual profiler tests should be made into layout tests
   75756 
   75757         -Moving the tests before diffing so that it's clear what changed.
   75758 
   75759         * manual-tests/inspector/profiler-test-anonymous-event-handler.html: Removed.
   75760         * manual-tests/inspector/profiler-test-anonymous-function-called-from-different-contexts.html: Removed.
   75761         * manual-tests/inspector/profiler-test-anonymous-function-calls-built-in-functions.html: Removed.
   75762         * manual-tests/inspector/profiler-test-anonymous-function-calls-eval.html: Removed.
   75763         * manual-tests/inspector/profiler-test-apply.html: Removed.
   75764         * manual-tests/inspector/profiler-test-built-in-function-calls-anonymous.html: Removed.
   75765         * manual-tests/inspector/profiler-test-built-in-function-calls-user-defined-function.html: Removed.
   75766         * manual-tests/inspector/profiler-test-call-nodelist-as-function.html: Removed.
   75767         * manual-tests/inspector/profiler-test-calling-the-function-that-started-the-profiler-from-another-scope.html: Removed.
   75768         * manual-tests/inspector/profiler-test-compare-multiple-profiles.html: Removed.
   75769         * manual-tests/inspector/profiler-test-constructor.html: Removed.
   75770         * manual-tests/inspector/profiler-test-dead-time.html: Removed.
   75771         * manual-tests/inspector/profiler-test-deep-recursion.html: Removed.
   75772         * manual-tests/inspector/profiler-test-document-dot-write.html: Removed.
   75773         * manual-tests/inspector/profiler-test-event-handler.html: Removed.
   75774         * manual-tests/inspector/profiler-test-execution-context-and-eval-on-same-line.html: Removed.
   75775         * manual-tests/inspector/profiler-test-heavy-view.html: Removed.
   75776         * manual-tests/inspector/profiler-test-inline-event-handler.html: Removed.
   75777         * manual-tests/inspector/profiler-test-multiple-and-different-scoped-anonymous-function-calls.html: Removed.
   75778         * manual-tests/inspector/profiler-test-multiple-and-different-scoped-function-calls.html: Removed.
   75779         * manual-tests/inspector/profiler-test-multiple-frames.html: Removed.
   75780         * manual-tests/inspector/profiler-test-multiple-windows.html: Removed.
   75781         * manual-tests/inspector/profiler-test-nested-anonymous-functon.html: Removed.
   75782         * manual-tests/inspector/profiler-test-nested-start-and-stop-profiler.html: Removed.
   75783         * manual-tests/inspector/profiler-test-no-execution-context.html: Removed.
   75784         * manual-tests/inspector/profiler-test-one-execution-context.html: Removed.
   75785         * manual-tests/inspector/profiler-test-profile-calls-in-included-file.html: Removed.
   75786         * manual-tests/inspector/profiler-test-profiling-from-a-nested-location-but-stop-profiling-outside-the-nesting.html: Removed.
   75787         * manual-tests/inspector/profiler-test-profiling-from-a-nested-location.html: Removed.
   75788         * manual-tests/inspector/profiler-test-simple-event-call.html: Removed.
   75789         * manual-tests/inspector/profiler-test-simple-no-level-change.html: Removed.
   75790         * manual-tests/inspector/profiler-test-start-and-stop-profiler-multiple-times.html: Removed.
   75791         * manual-tests/inspector/profiler-test-start-and-stop-profiling-in-the-same-function.html: Removed.
   75792         * manual-tests/inspector/profiler-test-start-but-dont-stop-profiling.html: Removed.
   75793         * manual-tests/inspector/profiler-test-stop-profiling-after-setTimeout.html: Removed.
   75794         * manual-tests/inspector/profiler-test-stop-then-function-call.html: Removed.
   75795         * manual-tests/inspector/profiler-test-throw-exception-from-eval.html: Removed.
   75796         * manual-tests/inspector/profiler-test-two-execution-contexts.html: Removed.
   75797         * manual-tests/inspector/profiler-test-user-defined-function-calls-built-in-functions.html: Removed.
   75798         * manual-tests/inspector/profiler-test-window-dot-eval.html: Removed.
   75799         * manual-tests/inspector/resources/other-frame.html: Removed.
   75800         * manual-tests/inspector/resources/other-window.html: Removed.
   75801         * manual-tests/inspector/resources/profiler-test-JS-resources.js: Removed.
   75802 
   75803 2008-10-23  Adam Barth  <abarth (a] webkit.org>
   75804 
   75805         Reviewed by Sam Weinig.
   75806 
   75807         https://bugs.webkit.org/show_bug.cgi?id=21826
   75808 
   75809         Add accessor for SecurityOrigin::m_domainWasSetInDOM.
   75810 
   75811         * page/SecurityOrigin.h:
   75812         (WebCore::SecurityOrigin::domainWasSetInDOM):
   75813 
   75814 2008-10-23  Darin Adler  <darin (a] apple.com>
   75815 
   75816         - roll out https://bugs.webkit.org/show_bug.cgi?id=21732
   75817 
   75818         * bindings/js/ScheduledAction.h:
   75819         * inspector/InspectorController.cpp:
   75820         ProtectedPtr<JSValue> instead of ProtectedPtr<JSValuePtr>.
   75821 
   75822 2008-10-23  Simon Hausmann  <hausmann (a] webkit.org>
   75823 
   75824         Fix the Qt build.
   75825 
   75826         * bridge/qt/qt_runtime.cpp:
   75827         (JSC::Bindings::QtConnectionObject::execute):
   75828         * bridge/qt/qt_runtime.h:
   75829         (JSC::Bindings::QtRuntimeMethod::createStructureID):
   75830 
   75831 2008-10-23  Alexey Proskuryakov  <ap (a] webkit.org>
   75832 
   75833         Reviewed by Maciej Stachowiak.
   75834 
   75835         https://bugs.webkit.org/show_bug.cgi?id=21825
   75836         JSDOMBinding should not blindly cast the global object to JSDOMWindow
   75837 
   75838         * bindings/js/JSDOMGlobalObject.cpp:
   75839         * bindings/js/JSDOMGlobalObject.h:
   75840         * GNUmakefile.am:
   75841         * WebCore.pro:
   75842         * WebCore.vcproj/WebCore.vcproj:
   75843         * WebCore.xcodeproj/project.pbxproj:
   75844         * WebCoreSources.bkl:
   75845         Added JSDOMGlobalObject, a base class to be used by both Window and worker contexts.
   75846 
   75847         * bindings/js/JSDOMBinding.cpp:
   75848         (WebCore::getCachedDOMStructure):
   75849         (WebCore::cacheDOMStructure):
   75850         (WebCore::getCachedDOMConstructor):
   75851         (WebCore::cacheDOMConstructor):
   75852         Cast to JSDOMGlobalObject, as DOM objects live in DOM global objects.
   75853 
   75854         * bindings/js/JSDOMWindowBase.cpp:
   75855         (WebCore::JSDOMWindowBase::JSDOMWindowBase):
   75856         * bindings/js/JSDOMWindowBase.h:
   75857         * bindings/js/JSDOMWindowCustom.cpp:
   75858         (WebCore::JSDOMWindow::mark):
   75859         Moved constructor and structure tracking to JSDOMGlobalObject.
   75860 
   75861 2008-10-23  Adam Barth  <abarth (a] webkit.org>
   75862 
   75863         Reviewed by Sam Weinig.
   75864 
   75865         https://bugs.webkit.org/show_bug.cgi?id=21787
   75866 
   75867         Update postMessage to send origin = "null" for non-serializable
   75868         origins to match latest spec.  Merge SecurityOrigin::toString and
   75869         SecurityOrigin::toHTTPOrigin because they are now the same.
   75870 
   75871         Test: http/tests/security/postMessage/data-url-sends-null-origin.html
   75872 
   75873         * loader/FrameLoader.cpp:
   75874         (WebCore::FrameLoader::outgoingOrigin):
   75875         (WebCore::FrameLoader::loadURL):
   75876         (WebCore::FrameLoader::addHTTPOriginIfNeeded):
   75877         (WebCore::FrameLoader::loadItem):
   75878         * loader/loader.cpp:
   75879         (WebCore::Loader::Host::servePendingRequests):
   75880         * page/SecurityOrigin.cpp:
   75881         (WebCore::SecurityOrigin::toString):
   75882         * page/SecurityOrigin.h:
   75883         * xml/XMLHttpRequest.cpp:
   75884         (WebCore::XMLHttpRequest::makeSimpleCrossSiteAccessRequest):
   75885         (WebCore::XMLHttpRequest::makeCrossSiteAccessRequestWithPreflight):
   75886         (WebCore::XMLHttpRequest::handleAsynchronousPreflightResult):
   75887         (WebCore::XMLHttpRequest::didReceiveResponsePreflight):
   75888 
   75889 2008-10-22  David Kilzer  <ddkilzer (a] apple.com>
   75890 
   75891         Bug 21781: WebCore::Settings should have a maximum decoded image size setting
   75892 
   75893         <https://bugs.webkit.org/show_bug.cgi?id=21781>
   75894 
   75895         Reviewed by Antti.
   75896 
   75897         No tests since there is no change in behavior.
   75898 
   75899         * loader/CachedImage.cpp:
   75900         (WebCore::CachedImage::maximumDecodedImageSize): Added.  Returns
   75901         WebCore::Settings::maximumDecodedImageSize() or 0 on error.
   75902         (WebCore::CachedImage::data): Flag an error if the image being
   75903         loaded is too big.
   75904         * loader/CachedImage.h:
   75905         (WebCore::CachedImage::maximumDecodedImageSize): Added declaration.
   75906         * page/Settings.cpp:
   75907         (WebCore::Settings::Settings): Initialize m_maximumDecodedImageSize
   75908         to the maximum value of size_t.
   75909         * page/Settings.h:
   75910         (WebCore::Settings::setMaximumDecodedImageSize): Added method.
   75911         (WebCore::Settings::maximumDecodedImageSize): Ditto.
   75912 
   75913 2008-10-22  Mike Pinkerton  <pinkerton (a] chromium.org>
   75914 
   75915         Reviewed by Dan Bernstein.
   75916         Landed and tweaked a bit by Darin Adler.
   75917 
   75918         - fix https://bugs.webkit.org/show_bug.cgi?id=21809
   75919 
   75920         Remove PLATFORM(MAC) wrapping USE(ATSUI). It's redundant and inhibits
   75921         its use for PLATFORM(CHROMIUM) in the future.
   75922 
   75923         * platform/graphics/SimpleFontData.h:
   75924 
   75925 2008-10-22  David Smith  <catfish.man (a] gmail.com>
   75926 
   75927         Reviewed by Anders Carlsson.
   75928 
   75929         https://bugs.webkit.org/show_bug.cgi?id=19974
   75930         getElementsByClassName not live enough
   75931 
   75932         Test: fast/dom/getElementsByClassName/015.html
   75933 
   75934         * dom/StyledElement.cpp:
   75935         (WebCore::StyledElement::classAttributeChanged): call dispatchSubtreeModifiedEvent()
   75936 
   75937 2008-10-22  Darin Adler  <darin (a] apple.com>
   75938 
   75939         Reviewed by Sam Weinig.
   75940 
   75941         - fix https://bugs.webkit.org/show_bug.cgi?id=21294
   75942           Bug 21294: Devirtualize getOwnPropertySlot()
   75943 
   75944         * bindings/js/JSDOMWindowShell.h:
   75945         (WebCore::JSDOMWindowShell::createStructureID): Added. Returns a structure without
   75946         HasStandardGetOwnPropertySlot since this class overrides getOwnPropertySlot.
   75947 
   75948         * bindings/js/JSInspectorCallbackWrapper.cpp:
   75949         (WebCore::JSInspectorCallbackWrapper::wrap): Change to use a unique structure
   75950         for this class rather than sharing nullProtoStructureID, which no longer exists.
   75951 
   75952         * bindings/js/JSNamedNodesCollection.h:
   75953         (WebCore::JSNamedNodesCollection::createStructureID): Added. Returns a structure without
   75954         HasStandardGetOwnPropertySlot since this class overrides getOwnPropertySlot.
   75955         * bindings/js/JSRGBColor.h:
   75956         (WebCore::JSRGBColor::createStructureID): Ditto.
   75957 
   75958         * bindings/scripts/CodeGeneratorJS.pm: Added createStructureID functions for the wrappers,
   75959         constructors, and prototypes in any case where they override getOwnPropertySlot, without
   75960         HasStandardGetOwnPropertySlot.
   75961 
   75962         * bridge/objc/objc_runtime.h:
   75963         (JSC::Bindings::ObjcFallbackObjectImp::createStructureID): Added. Returns a structure
   75964         without HasStandardGetOwnPropertySlot since this class overrides getOwnPropertySlot.
   75965         * bridge/qt/qt_runtime.h:
   75966         (JSC::Bindings::QtRuntimeMethod::createStructureID): Ditto.
   75967         * bridge/runtime_array.h:
   75968         (JSC::RuntimeArray::createStructureID): Ditto.
   75969         * bridge/runtime_method.h:
   75970         (JSC::RuntimeMethod::createStructureID): Ditto.
   75971         * bridge/runtime_object.h:
   75972         (JSC::RuntimeObjectImp::createStructureID): Ditto.
   75973 
   75974 2008-10-22  Brent Fulgham  <bfulgham (a] gmail.com>
   75975 
   75976         Bring Windows Cairo Port's font handling in line with CG.
   75977         http://bugs.webkit.org/show_bug.cgi?id=21812.
   75978 
   75979         Reviewed by Adam Roben.
   75980 
   75981         * platform/graphics/win/FontCacheWin.cpp:
   75982         (WebCore::createGDIFont): Remove unnecessary special-case for Cairo
   75983         TrueType font search. It should match CG in all font selections.
   75984 
   75985 2008-10-22  Brent Fulgham  <bfulgham (a] gmail.com>
   75986 
   75987         http://bugs.webkit.org/show_bug.cgi?id=21812.
   75988         Bring Windows Cairo Port's font handling in line with CG.
   75989 
   75990         Reviewed by David Hyatt.
   75991 
   75992         * platform/graphics/win/FontCacheWin.cpp:
   75993         (WebCore::createGDIFont):  Remove unnecessary special-case for Cairo TrueType font search.  It should match CG in all font selections.
   75994 
   75995 2008-10-22  Brady Eidson  <beidson (a] apple.com>
   75996 
   75997         Reviewed by Adam Roben
   75998 
   75999         <rdar://6261773> - autocomplete="off" doesn't work on Windows
   76000 
   76001         Visual Studio makes a poor decision regarding the combination of enums and bitfields, such that a
   76002         statement like "m_autocomplete = Off" followed by "return m_autocomplete == Off" would return "false"
   76003         instead of the much more correct "true."
   76004 
   76005         In the past we have worked around this by declaring the bitfield member as an unsigned instead
   76006         of the enum type.
   76007 
   76008         For more discussion, see http://trac.webkit.org/changeset/25329
   76009 
   76010         * html/HTMLInputElement.h:  Work around insane Visual Studio enum issue  *sigh*
   76011 
   76012 2008-10-22  Kevin McCullough  <kmccullough (a] apple.com>
   76013 
   76014         Reviewed by Oliver Hunt and Tim Hatcher.
   76015 
   76016         https://bugs.webkit.org/show_bug.cgi?id=19225
   76017         Bug 19225: JSProfiler: Create automated profiler tests
   76018         - This change exports profiles on the console object so that they can be
   76019         iterated over via JavaScript, and thus can be used in automated tests.
   76020 
   76021         * bindings/js/JSConsoleCustom.cpp: Get the profiles and return an array
   76022         that JS can use.
   76023         (WebCore::JSConsole::profiles):
   76024         * inspector/InspectorController.h: Use the new typedef.
   76025         (WebCore::InspectorController::profiles):
   76026         * page/Console.cpp: Keep our own array of profile objects.
   76027         (WebCore::Console::profileEnd):
   76028         * page/Console.h: Ditto.
   76029         (WebCore::Console::profiles):
   76030         * page/Console.idl: Expose the profiles to JS.
   76031 
   76032 2008-10-22  David Hyatt  <hyatt (a] apple.com>
   76033 
   76034         https://bugs.webkit.org/show_bug.cgi?id=21775
   76035 
   76036         Convert buttons over to use the new Theme API on OS X.
   76037 
   76038         Reviewed by Adam Roben
   76039 
   76040         * platform/LengthBox.h:
   76041         (WebCore::LengthBox::LengthBox):
   76042         * platform/Theme.cpp:
   76043         (WebCore::Theme::controlBorder):
   76044         (WebCore::Theme::controlPadding):
   76045         * platform/Theme.h:
   76046         (WebCore::Theme::controlFont):
   76047         (WebCore::Theme::controlSize):
   76048         (WebCore::Theme::minControlSize):
   76049         (WebCore::Theme::controlRequiresPreWhiteSpace):
   76050         * platform/mac/ThemeMac.h:
   76051         (WebCore::ThemeMac::controlRequiresPreWhiteSpace):
   76052         * platform/mac/ThemeMac.mm:
   76053         (WebCore::checkboxSize):
   76054         (WebCore::radioSize):
   76055         (WebCore::buttonSizes):
   76056         (WebCore::buttonMargins):
   76057         (WebCore::button):
   76058         (WebCore::paintButton):
   76059         (WebCore::ThemeMac::controlFont):
   76060         (WebCore::ThemeMac::controlSize):
   76061         (WebCore::ThemeMac::minControlSize):
   76062         (WebCore::ThemeMac::controlBorder):
   76063         (WebCore::ThemeMac::controlPadding):
   76064         (WebCore::ThemeMac::inflateControlPaintRect):
   76065         (WebCore::ThemeMac::paint):
   76066         * rendering/RenderTheme.cpp:
   76067         (WebCore::RenderTheme::adjustStyle):
   76068         (WebCore::RenderTheme::paint):
   76069         (WebCore::RenderTheme::controlStatesForRenderer):
   76070         (WebCore::RenderTheme::isDefault):
   76071         (WebCore::RenderTheme::adjustRadioStyle):
   76072         * rendering/RenderTheme.h:
   76073         (WebCore::RenderTheme::setRadioSize):
   76074         * rendering/RenderThemeMac.h:
   76075         * rendering/RenderThemeMac.mm:
   76076         (WebCore::RenderThemeMac::adjustRepaintRect):
   76077         (WebCore::menuListButtonSizes):
   76078         (WebCore::RenderThemeMac::adjustMenuListStyle):
   76079         * rendering/style/RenderStyle.h:
   76080         (WebCore::InheritedFlags::paddingBox):
   76081         (WebCore::InheritedFlags::setPaddingBox):
   76082 
   76083 2008-10-22  Chris Marrin  <cmarrin (a] apple.com>
   76084 
   76085         Reviewed by Dave Hyatt
   76086 
   76087         Make sure that the AtomicString that identifies a set of animation keyframes
   76088         stays live by keeping a copy in the WebKitCSSKeyframesRule.
   76089 
   76090         Also call styleSheetChanged() when the keyframes name changes, but
   76091         add an internal method that doesn't call styleSheetChanged() for use
   76092         during normal stylesheet parsing.
   76093 
   76094         Test: animations/change-keyframes-name.html
   76095 
   76096         * css/CSSGrammar.y:
   76097         * css/WebKitCSSKeyframesRule.cpp:
   76098         (WebCore::WebKitCSSKeyframesRule::setName):
   76099         * css/WebKitCSSKeyframesRule.h:
   76100         (WebCore::WebKitCSSKeyframesRule::setNameInternal):
   76101 
   76102 2008-10-22  Alexey Proskuryakov  <ap (a] webkit.org>
   76103 
   76104         Reviewed by Sam Weinig.
   76105 
   76106         https://bugs.webkit.org/show_bug.cgi?id=21791
   76107         WebCore JS bindings should be able to use non-static hash tables for properties
   76108 
   76109         Add a map for HashTables to WebCore JS client data.
   76110 
   76111         This makes property access noticeably slower, so it is an opt-in. For classes that need to be
   76112         supported in workers in forseeable future this is not critical.
   76113 
   76114         * bindings/js/JSDOMBinding.cpp:
   76115         (WebCore::DOMObjectHashTableMap::get):
   76116         (WebCore::DOMObjectHashTableMap::mapFor):
   76117         (WebCore::getHashTableForGlobalData):
   76118         (WebCore::DOMObjectWrapperMap::mapFor):
   76119         WebCore client data is now a class that contains both a DOM wrapper map and a property hash
   76120         table one.
   76121 
   76122         * bindings/js/JSDOMBinding.h: Added getHashTableForGlobalData() to query the hash table map.
   76123 
   76124         * bindings/scripts/CodeGeneratorJS.pm: If the class has a NoStaticTables attribute, use
   76125         JSDOMBinding map to access its property hash tables.
   76126 
   76127         * dom/MessageChannel.idl:
   76128         * dom/MessagePort.idl:
   76129         Added NoStaticTables attribute.
   76130 
   76131 2008-10-22  Gustavo Noronha Silva  <gns (a] gnome.org>
   76132 
   76133         Reviewed by Timothy Hatcher.
   76134 
   76135         Build failure because of missing include
   76136         https://bugs.webkit.org/show_bug.cgi?id=21765
   76137 
   76138         Build failure fix for WebKit/GTK+; added missing
   76139         include (GOwnPtr.h)
   76140 
   76141         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
   76142 
   76143 2008-10-22  Alp Toker  <alp (a] nuanti.com>
   76144 
   76145         Reviewed by Adam Roben.
   76146 
   76147         Fix crashes on older GTK+ versions (2.8). gtk_widget_style_get()
   76148         doesn't initialize values if the requested property doesn't exist, so
   76149         initialize the values to the documented defaults before calling it
   76150         where necessary. Additionally, avoid critical warnings by not calling
   76151         gtk_widget_style_get() when we know the property isn't available.
   76152 
   76153         Note that this is an imported source file which doesn't follow the
   76154         WebKit coding style.
   76155 
   76156         * platform/gtk/gtk2drawing.c:
   76157         (moz_gtk_init):
   76158         (moz_gtk_button_get_inner_border):
   76159         (moz_gtk_combo_box_paint):
   76160         (moz_gtk_toolbar_separator_paint):
   76161         (moz_gtk_menu_separator_paint):
   76162         (moz_gtk_get_widget_border):
   76163         (moz_gtk_get_tab_scroll_arrow_size):
   76164         (moz_gtk_get_toolbar_separator_width):
   76165         (moz_gtk_get_menu_separator_height):
   76166 
   76167 2008-10-22  Alp Toker  <alp (a] nuanti.com>
   76168 
   76169         Fix build for Cairo 1.2.
   76170 
   76171         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   76172         (WebCore::GraphicsContext::clipOut):
   76173         * platform/gtk/RenderThemeGtk.cpp:
   76174         (WebCore::paintMozWidget):
   76175 
   76176 2008-10-22  Darin Fisher  <darin (a] chromium.org>
   76177 
   76178         Reviewed by Eric Seidel.
   76179 
   76180         A little more PLATFORM(CHROMIUM) in WebCore
   76181         https://bugs.webkit.org/show_bug.cgi?id=21758
   76182 
   76183         * page/AccessibilityObject.h:
   76184         * platform/graphics/Icon.h:
   76185 
   76186 2008-10-21  Alexey Proskuryakov  <ap (a] webkit.org>
   76187 
   76188         Reviewed by Darin Adler.
   76189 
   76190         Test: fast/events/message-channel-gc-3.html
   76191 
   76192         https://bugs.webkit.org/show_bug.cgi?id=21769
   76193         MessagePort should be GC protected if there are messages to be delivered
   76194 
   76195         * dom/MessagePort.h: Removed pending activity count. Now we track if a close event is
   76196         pending, and check if the queue is non-empty.
   76197         (WebCore::MessagePort::workerContext): Added a stub implementation for a cross-heap GC bug
   76198         fix (below).
   76199 
   76200         * dom/MessagePort.cpp:
   76201         (WebCore::CloseMessagePortTimer::fired):
   76202         (WebCore::MessagePort::MessagePort):
   76203         (WebCore::MessagePort::queueCloseEvent):
   76204         (WebCore::MessagePort::dispatchCloseEvent):
   76205         (WebCore::MessagePort::hasPendingActivity):
   76206         Track message and close event activity separately.
   76207 
   76208         * bindings/js/JSDOMBinding.cpp:
   76209         (WebCore::markCrossHeapDependentObjectsForDocument): Fixed a bug in cross-heap GC that was
   76210         causing same-heap ports to never be deleted.
   76211 
   76212 2008-10-21  Dan Bernstein  <mitz (a] apple.com>
   76213 
   76214         Reviewed by Sam Weinig.
   76215 
   76216         - remove unreachable code
   76217 
   76218         * platform/text/BidiResolver.h:
   76219         (WebCore::::embed):
   76220 
   76221 2008-10-21  Beth Dakin  <bdakin (a] apple.com>
   76222 
   76223         Reviewed by Darin Adler.
   76224 
   76225         Fix for https://bugs.webkit.org/show_bug.cgi?id=20352
   76226         REGRESSION(r31030-31055): Choosing "Print window" from frame set
   76227         prints blank page
   76228         and corresponding: <rdar://problem/6142398>
   76229 
   76230         viewHeight() and viewWidth() only return valuable information if we
   76231         are not printing. Everywhere else in the code, we make sure we are
   76232         not printing before we call these functions. Adding a check for
   76233         printing here fixes this bug, and framesets print again.
   76234 
   76235         * rendering/RenderFrameSet.cpp:
   76236         (WebCore::RenderFrameSet::layout):
   76237 
   76238 2008-10-21  Yael Aharon <yael.aharon (a] nokia.com>
   76239 
   76240         Reviewed by Simon.
   76241 
   76242         Pixmap in canvas tag was not getting initialized.
   76243 
   76244         See https://bugs.webkit.org/show_bug.cgi?id=21771
   76245 
   76246         * platform/graphics/qt/ImageBufferQt.cpp:
   76247         (WebCore::ImageBuffer::create):
   76248 
   76249 2008-10-20  Simon Fraser  <simon.fraser (a] apple.com>
   76250 
   76251         Reviewed by Dan Bernstein
   76252 
   76253         Add a comment explaining layoutDelta(), and an assertion
   76254         that checks that delta changes were correctly paired during layout.
   76255 
   76256         * rendering/RenderView.cpp:
   76257         (WebCore::RenderView::layout):
   76258         * rendering/RenderView.h:
   76259 
   76260 2008-10-20  Timothy Hatcher  <timothy (a] apple.com>
   76261 
   76262         Make auto-complete only suggest properties that are valid syntax
   76263         when using dot-notation. Also when completing numeric properties,
   76264         the quotes are omitted inside the brackets.
   76265 
   76266         https://bugs.webkit.org/show_bug.cgi?id=21760
   76267         https://bugs.webkit.org/show_bug.cgi?id=21761
   76268 
   76269         Reviewed by Oliver Hunt.
   76270 
   76271         * inspector/front-end/Console.js:
   76272         (WebInspector.Console.prototype.completions): Skip properties that
   76273         are not valid identifies when using dot-notation. And omit the quotes
   76274         when completing numbers in bracket-notation.
   76275 
   76276 2008-10-20  Timothy Hatcher  <timothy (a] apple.com>
   76277 
   76278         Fixes the Profiles panel in the Web Inspector, which was broken by
   76279         the JSValue base-class changes. Also renames some functions and
   76280         variables in JavaScriptProfileNode.cpp that where title case.
   76281 
   76282         https://bugs.webkit.org/show_bug.cgi?id=21764
   76283 
   76284         Reviewed by Oliver Hunt.
   76285 
   76286         * inspector/JavaScriptProfile.cpp:
   76287         (WebCore::toJS): Use a JSObject pointer instead of JSValuePtr so the
   76288         returned JSValuePtr will be treated as an object and not a value.
   76289         * inspector/JavaScriptProfileNode.cpp:
   76290         (WebCore::toJS): Ditto.
   76291 
   76292 2008-10-20  Sam Weinig  <sam (a] webkit.org>
   76293 
   76294         Reviewed by Anders Carlsson.
   76295 
   76296         Remove FrameLoaderClient::detachedFromParent4.  It is no longer used by any port.
   76297 
   76298         * loader/EmptyClients.h:
   76299         (WebCore::EmptyFrameLoaderClient::detachedFromParent4):.
   76300         * loader/FrameLoader.cpp:
   76301         (WebCore::FrameLoader::detachFromParent):
   76302         * loader/FrameLoaderClient.h:
   76303 
   76304 2008-10-20  Antti Koivisto  <antti (a] apple.com>
   76305 
   76306         Reviewed by Adele Peterson.
   76307 
   76308         Fix https://bugs.webkit.org/show_bug.cgi?id=21763
   76309         REGRESSION (r36108-r36113): Can't load picture content on wired.com galleries
   76310         <rdar://problem/6285025
   76311 
   76312         If we get 304 response we need to explicitly check if that completes the frame load.
   76313 
   76314         No test case, simulating the condition is pretty difficult.
   76315 
   76316         * loader/loader.cpp:
   76317         (WebCore::Loader::Host::didReceiveResponse):
   76318 
   76319 2008-10-20  Anders Carlsson  <andersca (a] apple.com>
   76320 
   76321         Reviewed by Mark Rowe.
   76322 
   76323         Work around <rdar://problem/6301728>.
   76324 
   76325         Don't assert that loads are deferred when we're using CFNetwork on Mac or Windows.
   76326 
   76327         * loader/MainResourceLoader.cpp:
   76328         (WebCore::MainResourceLoader::didReceiveResponse):
   76329         (WebCore::MainResourceLoader::didReceiveData):
   76330         (WebCore::MainResourceLoader::didFinishLoading):
   76331         (WebCore::MainResourceLoader::didFail):
   76332 
   76333 2008-10-20  Beth Dakin  <bdakin (a] apple.com>
   76334 
   76335         Reviewed by Adele Peterson.
   76336 
   76337         Speculative fix for <rdar://problem/6242585> CrashTracer: [USER] 19
   76338         crashes in Safari at com.apple.WebCore
   76339         WebCore::ScrollView::visibleContentRect const + 153
   76340 
   76341         d->m_view can be null and is null-checked at other points in the
   76342         code. The logs indicate that this crash occurs when closing a
   76343         window containing a PDF, so in case where we crash, the PDF's view
   76344         is probably already null. So the fix is to simply add a null-check.
   76345 
   76346         * page/Frame.cpp:
   76347         (WebCore::Frame::selectionRect):
   76348 
   76349 2008-10-20  Adele Peterson  <adele (a] apple.com>
   76350 
   76351         Reviewed by Darin Adler.
   76352 
   76353         * html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::formData):
   76354         Removed stray increment that would screw up any form with multiple files in it.
   76355 
   76356 2008-10-20  Sam Weinig  <sam (a] webkit.org>
   76357 
   76358         Rubber-stamped by David Hyatt.
   76359 
   76360         Split LengthBox and LengthSize into their own files.
   76361 
   76362         * GNUmakefile.am:
   76363         * WebCore.vcproj/WebCore.vcproj:
   76364         * WebCore.xcodeproj/project.pbxproj:
   76365         * platform/Length.h:
   76366         (WebCore::Length::blend):
   76367         * platform/LengthBox.h: Copied from platform/Length.h.
   76368         (WebCore::LengthBox::LengthBox):
   76369         (WebCore::LengthBox::nonZero):
   76370         * platform/LengthSize.h: Copied from platform/Length.h.
   76371         (WebCore::LengthSize::LengthSize):
   76372         (WebCore::LengthSize::setWidth):
   76373         (WebCore::LengthSize::setHeight):
   76374         (WebCore::LengthSize::height):
   76375         * platform/Theme.h:
   76376         * rendering/style/FillLayer.h:
   76377         * rendering/style/NinePieceImage.h:
   76378         (WebCore::NinePieceImage::NinePieceImage):
   76379         * rendering/style/RenderStyle.h:
   76380         * rendering/style/StyleDashboardRegion.h:
   76381         * rendering/style/StyleSurroundData.h:
   76382         * rendering/style/StyleVisualData.h:
   76383 
   76384 2008-10-20  Dan Bernstein  <mitz (a] apple.com>
   76385 
   76386         - Mac build fix
   76387 
   76388         * WebCore.xcodeproj/project.pbxproj:
   76389 
   76390 2008-10-20  Alp Toker  <alp (a] nuanti.com>
   76391 
   76392         Fix autotools dist build target by listing recently added header
   76393         files only. Not reviewed.
   76394 
   76395         * GNUmakefile.am:
   76396 
   76397 2008-10-20  David Hyatt  <hyatt (a] apple.com>
   76398 
   76399         Clean up some USE(NEW_THEME) ifdefs (I botched one of them and have broken non-Mac platforms).  Also
   76400         refactor some of the code that I put in ThemeMac to be cross-platform, since it was in RenderTheme.cpp
   76401         originally.
   76402 
   76403         ifdef some methods in RenderTheme.cpp also that are no longer needed with the new Theme.
   76404 
   76405         Reviewed by Adam Roben
   76406 
   76407         * WebCore.xcodeproj/project.pbxproj:
   76408         * platform/Theme.cpp: Added.
   76409         (WebCore::Theme::controlSupportsBorder):
   76410         (WebCore::Theme::controlSupportsPadding):
   76411         * platform/Theme.h:
   76412         * platform/mac/ThemeMac.h:
   76413         * platform/mac/ThemeMac.mm:
   76414         * rendering/RenderTheme.cpp:
   76415         (WebCore::RenderTheme::adjustStyle):
   76416         * rendering/RenderTheme.h:
   76417 
   76418 2008-10-20  David Hyatt  <hyatt (a] apple.com>
   76419 
   76420         Rename LengthBox's members to have m_ in front of them.
   76421 
   76422         Reviewed by Sam Weinig
   76423 
   76424         * css/CSSComputedStyleDeclaration.cpp:
   76425         (WebCore::valueForNinePieceImage):
   76426         (WebCore::getPositionOffsetValue):
   76427         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   76428         * css/CSSStyleSelector.cpp:
   76429         (WebCore::CSSStyleSelector::mapNinePieceImage):
   76430         * platform/Length.h:
   76431         (WebCore::LengthBox::LengthBox):
   76432         (WebCore::LengthBox::left):
   76433         (WebCore::LengthBox::right):
   76434         (WebCore::LengthBox::top):
   76435         (WebCore::LengthBox::bottom):
   76436         (WebCore::LengthBox::operator==):
   76437         (WebCore::LengthBox::nonZero):
   76438         * rendering/RenderObject.cpp:
   76439         (WebCore::RenderObject::paintNinePieceImage):
   76440         (WebCore::RenderObject::addDashboardRegions):
   76441         * rendering/style/RenderStyle.cpp:
   76442         (WebCore::positionedObjectMoved):
   76443         (WebCore::RenderStyle::setClip):
   76444         (WebCore::RenderStyle::noneDashboardRegions):
   76445         * rendering/style/RenderStyle.h:
   76446         (WebCore::InheritedFlags::left):
   76447         (WebCore::InheritedFlags::right):
   76448         (WebCore::InheritedFlags::top):
   76449         (WebCore::InheritedFlags::bottom):
   76450         (WebCore::InheritedFlags::clipLeft):
   76451         (WebCore::InheritedFlags::clipRight):
   76452         (WebCore::InheritedFlags::clipTop):
   76453         (WebCore::InheritedFlags::clipBottom):
   76454         (WebCore::InheritedFlags::marginTop):
   76455         (WebCore::InheritedFlags::marginBottom):
   76456         (WebCore::InheritedFlags::marginLeft):
   76457         (WebCore::InheritedFlags::marginRight):
   76458         (WebCore::InheritedFlags::paddingTop):
   76459         (WebCore::InheritedFlags::paddingBottom):
   76460         (WebCore::InheritedFlags::paddingLeft):
   76461         (WebCore::InheritedFlags::paddingRight):
   76462         (WebCore::InheritedFlags::setLeft):
   76463         (WebCore::InheritedFlags::setRight):
   76464         (WebCore::InheritedFlags::setTop):
   76465         (WebCore::InheritedFlags::setBottom):
   76466         (WebCore::InheritedFlags::setDashboardRegion):
   76467         (WebCore::InheritedFlags::setClipLeft):
   76468         (WebCore::InheritedFlags::setClipRight):
   76469         (WebCore::InheritedFlags::setClipTop):
   76470         (WebCore::InheritedFlags::setClipBottom):
   76471         (WebCore::InheritedFlags::setMarginTop):
   76472         (WebCore::InheritedFlags::setMarginBottom):
   76473         (WebCore::InheritedFlags::setMarginLeft):
   76474         (WebCore::InheritedFlags::setMarginRight):
   76475         (WebCore::InheritedFlags::setPaddingTop):
   76476         (WebCore::InheritedFlags::setPaddingBottom):
   76477         (WebCore::InheritedFlags::setPaddingLeft):
   76478         (WebCore::InheritedFlags::setPaddingRight):
   76479 
   76480 2008-10-20  Timothy Hatcher  <timothy (a] apple.com>
   76481 
   76482         Make the Resource panel perform graph updates atomically, so when resources
   76483         are added the graph and summary graph update at the same time.
   76484 
   76485         https://bugs.webkit.org/show_bug.cgi?id=21755
   76486 
   76487         Reviewed by Kevin McCullough.
   76488 
   76489         * inspector/front-end/Resource.js:
   76490         (WebInspector.Resource.prototype.get startTime): Return -1 if the _startTime
   76491         property is undefined, null or 0. This allows callers to check for -1 and not
   76492         the other values when there is no startTime yet.
   76493         (WebInspector.Resource.prototype.get responseReceivedTime): Ditto.
   76494         (WebInspector.Resource.prototype.get endTime): Ditto.
   76495         (WebInspector.Resource.prototype.get duration): Remove an extra empty line.
   76496         (WebInspector.Resource.prototype.get latency): Ditto.
   76497         (WebInspector.Resource.prototype.get contentLength): Return 0 if the _duration
   76498         property is undefined or null. This allows callers to always assume a number.
   76499         (WebInspector.Resource.prototype.get expectedContentLength): Ditto.
   76500         (WebInspector.Resource.prototype.get errors): Simplify the case where there is
   76501         no _errors property yet.
   76502         (WebInspector.Resource.prototype.set errors): Remove the check if the new value
   76503         if the same as the previous value, since there is no work to guard.
   76504         (WebInspector.Resource.prototype.get warnings): Simplify the case where there is
   76505         no _warnings property yet.
   76506         (WebInspector.Resource.prototype.set warnings): Remove the check if the new value
   76507         if the same as the previous value, since there is no work to guard.
   76508         (WebInspector.Resource.CompareByResponseReceivedTime): Add cases for when the
   76509         responseReceivedTime is -1.
   76510         (WebInspector.Resource.CompareByEndTime): Add cases for when the endTime is -1.
   76511         * inspector/front-end/ResourcesPanel.js:
   76512         (WebInspector.ResourcesPanel.prototype.get searchableViews): If a resource does not
   76513         have a _resourcesTreeElement yet, exclude it from the searchable views.
   76514         (WebInspector.ResourcesPanel.prototype.set calculator): Set _staleResource to _resources
   76515         and call refresh to refresh the entire graph.
   76516         (WebInspector.ResourcesPanel.prototype.set needsRefresh): Set a timeout if the panel
   76517         is visible that calls refresh.
   76518         (WebInspector.ResourcesPanel.prototype.refresh): Create the resource tree element and
   76519         graph for a resource if it hasn't been created yet. If the boundaries changed during
   76520         the first stale resource pass, do a full pass of all resources when updating the graphs.
   76521         (WebInspector.ResourcesPanel.prototype.reset): Remove the legend items.
   76522         (WebInspector.ResourcesPanel.prototype.addResource): Don't create the tree element and
   76523         graph, these are now created during the first refresh.
   76524         (WebInspector.ResourcesPanel.prototype.removeResource): Null check _resourcesTreeElement.
   76525         (WebInspector.ResourcesPanel.prototype.addMessageToResource): Ditto.
   76526         (WebInspector.ResourcesPanel.prototype.clearMessages): Ditto.
   76527         (WebInspector.ResourcesPanel.prototype.refreshResource): Remove most of the work, just
   76528         add the resource to the _staleResources and set needsRefresh.
   76529         (WebInspector.ResourcesPanel.prototype.recreateViewForResourceIfNeeded): Null check
   76530         _resourcesTreeElement.
   76531         (WebInspector.ResourcesPanel.prototype._sortResourcesIfNeeded): Remove code to clear
   76532         the timeout used by the deleted _sortResourcesSoonIfNeeded. Remove call to removeChild
   76533         since the insertBefore call will do it if needed.
   76534         (WebInspector.ResourcesPanel.prototype._updateGraphDividersIfNeeded): Remove code to
   76535         clear the timeout used by the deleted _updateGraphDividersSoonIfNeeded.
   76536         (WebInspector.ResourcesPanel.prototype._updateSummaryGraph): Remove code to clear the
   76537         timeout used by the deleted _updateSummaryGraphSoon. No need to remove the totalLegendLabel,
   76538         since all the legend items are removed in one pass right before.
   76539         (WebInspector.ResourcesPanel.prototype._changeSortingFunction): Set the sortingFunction
   76540         before the calculator so the correct sortingFunction is there when a refresh happens.
   76541         (WebInspector.ResourceTimeCalculator.prototype.computeBarGraphPercentages): Set start to 0
   76542         when the startTime is -1, since that looks best visually. Also set middle and end
   76543         to the start and middle (respectfully) when startAtZero. This looks best visually.
   76544         (WebInspector.ResourceGraph): Start the graph as hidden until the first refresh.
   76545         (WebInspector.ResourceGraph.prototype.refresh): Remove the hidden class.
   76546 
   76547 2008-10-20  David Hyatt  <hyatt (a] apple.com>
   76548 
   76549         https://bugs.webkit.org/show_bug.cgi?id=21733
   76550 
   76551         Make sure that the haveMetadata flag is set to true for generated images from image buffers, so that
   76552         no attempt is made to re-cache the frame from a non-existent image source.
   76553 
   76554         Reviewed by Sam Weinig
   76555 
   76556         * platform/graphics/cairo/ImageCairo.cpp:
   76557         (WebCore::BitmapImage::BitmapImage):
   76558         * platform/graphics/cg/ImageCG.cpp:
   76559         (WebCore::BitmapImage::BitmapImage):
   76560 
   76561 2008-10-20  Dan Bernstein  <mitz (a] apple.com>
   76562 
   76563         Reviewed by John Sullivan.
   76564 
   76565         - make hasARenderedDescendant() have internal linkage
   76566 
   76567         * editing/CompositeEditCommand.cpp:
   76568         (WebCore::hasARenderedDescendant):
   76569 
   76570 2008-10-20  Chris Fleizach  <cfleizach (a] apple.com>
   76571 
   76572         Reviewed by Jon Honeycutt
   76573 
   76574         Fix a crash in Accessibility where a table section was being
   76575         referenced without first checking if it was null
   76576 
   76577         https://bugs.webkit.org/show_bug.cgi?id=21721
   76578 
   76579         Test: accessibility/table-nofirstbody.html
   76580 
   76581         * page/AccessibilityTable.cpp:
   76582         (WebCore::AccessibilityTable::addChildren):
   76583 
   76584 2008-10-20  David Hyatt  <hyatt (a] apple.com>
   76585 
   76586         Avoid some stderr spew from CG by checking if we have a decoder yet in ImageSourceCG.
   76587 
   76588         Reviewed by Darin Adler
   76589 
   76590         * platform/graphics/cg/ImageSourceCG.cpp:
   76591         (WebCore::ImageSource::repetitionCount):
   76592         (WebCore::ImageSource::frameDurationAtIndex):
   76593 
   76594 2008-10-20  Alp Toker  <alp (a] nuanti.com>
   76595 
   76596         Reviewed by Mark Rowe.
   76597 
   76598         Fix the pthread conditionals in the FTP code to correctly define
   76599         threadsafe *_r functions on Windows. Partly fixes the GTK+/Win32
   76600         build.
   76601 
   76602         * loader/FTPDirectoryDocument.cpp:
   76603         * loader/FTPDirectoryParser.cpp:
   76604 
   76605 2008-10-20  David Hyatt  <hyatt (a] apple.com>
   76606 
   76607         https://bugs.webkit.org/show_bug.cgi?id=21751
   76608 
   76609         Convert checkboxes and radio buttons on OS X over to the new Theme API.
   76610 
   76611         Reviewed by Adam Roben
   76612 
   76613         * css/CSSComputedStyleDeclaration.cpp:
   76614         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   76615         * css/CSSStyleSelector.cpp:
   76616         (WebCore::CSSStyleSelector::mapFillSize):
   76617         * platform/Length.h:
   76618         (WebCore::LengthSize::LengthSize):
   76619         (WebCore::LengthSize::operator==):
   76620         (WebCore::LengthSize::width):
   76621         (WebCore::LengthSize::height):
   76622         (WebCore::LengthSize::setWidth):
   76623         (WebCore::LengthSize::setHeight):
   76624         * platform/Theme.h:
   76625         (WebCore::Theme::controlSize):
   76626         (WebCore::Theme::controlSupportsBorder):
   76627         (WebCore::Theme::controlSupportsPadding):
   76628         (WebCore::Theme::paint):
   76629         (WebCore::Theme::inflateControlPaintRect):
   76630         * platform/ThemeTypes.h:
   76631         (WebCore::):
   76632         * platform/mac/ThemeMac.h:
   76633         * platform/mac/ThemeMac.mm:
   76634         (WebCore::):
   76635         (WebCore::controlSizeForFont):
   76636         (WebCore::sizeFromFont):
   76637         (WebCore::setControlSize):
   76638         (WebCore::updateStates):
   76639         (WebCore::inflateRect):
   76640         (WebCore::checkboxSizes):
   76641         (WebCore::checkboxMargins):
   76642         (WebCore::checkboxSize):
   76643         (WebCore::checkbox):
   76644         (WebCore::paintCheckbox):
   76645         (WebCore::radioSizes):
   76646         (WebCore::radioMargins):
   76647         (WebCore::radioSize):
   76648         (WebCore::radio):
   76649         (WebCore::paintRadio):
   76650         (WebCore::ThemeMac::baselinePositionAdjustment):
   76651         (WebCore::ThemeMac::controlSize):
   76652         (WebCore::ThemeMac::controlSupportsBorder):
   76653         (WebCore::ThemeMac::controlSupportsPadding):
   76654         (WebCore::ThemeMac::inflateControlPaintRect):
   76655         (WebCore::ThemeMac::paint):
   76656         * rendering/RenderBox.cpp:
   76657         (WebCore::RenderBox::calculateBackgroundSize):
   76658         * rendering/RenderObject.cpp:
   76659         (WebCore::mustRepaintFillLayers):
   76660         * rendering/RenderTheme.cpp:
   76661         (WebCore::RenderTheme::adjustStyle):
   76662         (WebCore::RenderTheme::paint):
   76663         (WebCore::RenderTheme::baselinePosition):
   76664         (WebCore::RenderTheme::adjustRepaintRect):
   76665         (WebCore::RenderTheme::controlStatesForRenderer):
   76666         (WebCore::RenderTheme::isFocused):
   76667         * rendering/RenderTheme.h:
   76668         * rendering/RenderThemeMac.h:
   76669         * rendering/RenderThemeMac.mm:
   76670         (WebCore::RenderThemeMac::adjustRepaintRect):
   76671         * rendering/style/FillLayer.cpp:
   76672         (WebCore::FillLayer::operator==):
   76673 
   76674 2008-10-18  Geoffrey Garen  <ggaren (a] apple.com>
   76675 
   76676         Reviewed by Darin Adler.
   76677 
   76678         Fixed https://bugs.webkit.org/show_bug.cgi?id=21735
   76679         Emit profiling instrumentation only if the Web Inspector's profiling
   76680         feature is enabled
   76681 
   76682         * bindings/js/JSDOMWindowBase.cpp:
   76683         (WebCore::JSDOMWindowBase::supportsProfiling):
   76684         * bindings/js/JSDOMWindowBase.h: Implemented the interface for specifying
   76685         whether a target global object has the Web Inspector's profiling feature
   76686         enabled.
   76687 
   76688         * inspector/JavaScriptDebugServer.cpp:
   76689         (WebCore::JavaScriptDebugServer::recompileAllJSFunctionsSoon):
   76690         (WebCore::JavaScriptDebugServer::didAddListener):
   76691         (WebCore::JavaScriptDebugServer::didRemoveListener):
   76692         * inspector/JavaScriptDebugServer.h: Exported an API for recompiling,
   76693         used by the Settings object.
   76694 
   76695         * page/Settings.cpp:
   76696         (WebCore::Settings::Settings):
   76697         (WebCore::Settings::setDeveloperExtrasEnabled):
   76698         * page/Settings.h: Recompile when the developer menu is enabled/disabled
   76699         for the first time, to add/remove profiling hooks. In the future, with
   76700         better Web Inspector UI, we can do this on a page-by-page basis,
   76701         instead of a global basis.
   76702 
   76703 2008-10-20  David Hyatt  <hyatt (a] apple.com>
   76704 
   76705         Move Length to platform/.
   76706 
   76707         Reviewed by Adam Roben
   76708 
   76709         * GNUmakefile.am:
   76710         * WebCore.pro:
   76711         * WebCore.vcproj/WebCore.vcproj:
   76712         * WebCore.xcodeproj/project.pbxproj:
   76713         * WebCoreSources.bkl:
   76714         * platform/Length.cpp: Copied from rendering/Length.cpp.
   76715         * platform/Length.h: Copied from rendering/Length.h.
   76716 
   76717 2008-10-20  Darin Adler  <darin (a] apple.com>
   76718 
   76719         - try to fix Qt build
   76720 
   76721         * bridge/qt/qt_runtime.cpp:
   76722         (JSC::Bindings::QtRuntimeMetaMethod::connectGetter): Add asObject calls.
   76723         (JSC::Bindings::QtRuntimeMetaMethod::disconnectGetter): Ditto.
   76724 
   76725 2008-10-20  Darin Adler  <darin (a] apple.com>
   76726 
   76727         - try to fix Qt build
   76728 
   76729         * bridge/qt/qt_instance.cpp:
   76730         (JSC::Bindings::QtInstance::mark): Use JSValue* instead of JSValuePtr.
   76731         (JSC::Bindings::QtField::valueFromInstance): Ditto.
   76732         * bridge/qt/qt_instance.h: Ditto.
   76733 
   76734 2008-10-20  Darin Adler  <darin (a] apple.com>
   76735 
   76736         - try to fix Tiger build
   76737 
   76738         * bridge/objc/objc_instance.mm:
   76739         (ObjcInstance::invokeMethod): Add a const_cast to remove the unwanted
   76740         volatile qualifier.
   76741         (ObjcInstance::invokeDefaultMethod): Ditto.
   76742         (ObjcInstance::getValueOfUndefinedField): Ditto.
   76743         * bridge/objc/objc_runtime.mm:
   76744         (JSC::Bindings::ObjcField::valueFromInstance): Ditto.
   76745 
   76746 2008-10-20  Alexey Proskuryakov  <ap (a] webkit.org>
   76747 
   76748         Reviewed by Darin Adler.
   76749 
   76750         https://bugs.webkit.org/show_bug.cgi?id=21750
   76751         Eliminate the notion of "temporary events"
   76752 
   76753         We mark some events as temporary when dispatching, for the sole reason of
   76754         manually calling forgetDOMObject when done dispatching.
   76755 
   76756         There doesn't seem to be any reason to call it manually, as JSEvent destructor
   76757         will do this automatically right away.
   76758 
   76759         * bindings/js/ScriptController.cpp:
   76760         * bindings/js/ScriptController.h:
   76761         Removed ScriptController::finishedWithEvent(), which was called after dispatching
   76762         a temporary event.
   76763 
   76764         * dom/ContainerNode.cpp:
   76765         (WebCore::dispatchChildInsertionEvents):
   76766         (WebCore::dispatchChildRemovalEvents):
   76767         * dom/EventTarget.h:
   76768         * dom/EventTargetNode.cpp:
   76769         (WebCore::EventTargetNode::dispatchEvent):
   76770         (WebCore::EventTargetNode::dispatchGenericEvent):
   76771         (WebCore::EventTargetNode::dispatchSubtreeModifiedEvent):
   76772         (WebCore::EventTargetNode::dispatchWindowEvent):
   76773         (WebCore::EventTargetNode::dispatchUIEvent):
   76774         (WebCore::EventTargetNode::dispatchKeyEvent):
   76775         (WebCore::EventTargetNode::dispatchMouseEvent):
   76776         (WebCore::EventTargetNode::dispatchWheelEvent):
   76777         (WebCore::EventTargetNode::dispatchWebKitAnimationEvent):
   76778         (WebCore::EventTargetNode::dispatchWebKitTransitionEvent):
   76779         (WebCore::EventTargetNode::dispatchEventForType):
   76780         (WebCore::EventTargetNode::dispatchProgressEvent):
   76781         (WebCore::EventTargetNode::dispatchStorageEvent):
   76782         * dom/EventTargetNode.h:
   76783         * dom/MessagePort.cpp:
   76784         (WebCore::MessagePort::dispatchMessages):
   76785         (WebCore::MessagePort::dispatchCloseEvent):
   76786         (WebCore::MessagePort::dispatchEvent):
   76787         * dom/MessagePort.h:
   76788         * editing/Editor.cpp:
   76789         (WebCore::Editor::dispatchCPPEvent):
   76790         (WebCore::dispatchEditableContentChangedEvents):
   76791         * editing/ReplaceSelectionCommand.cpp:
   76792         (WebCore::ReplacementFragment::ReplacementFragment):
   76793         * editing/TypingCommand.cpp:
   76794         (WebCore::TypingCommand::insertText):
   76795         * loader/appcache/DOMApplicationCache.cpp:
   76796         (WebCore::DOMApplicationCache::dispatchEvent):
   76797         (WebCore::DOMApplicationCache::callListener):
   76798         * loader/appcache/DOMApplicationCache.h:
   76799         * page/EventHandler.cpp:
   76800         (WebCore::EventHandler::dispatchDragEvent):
   76801         (WebCore::EventHandler::keyEvent):
   76802         (WebCore::EventHandler::handleTextInputEvent):
   76803         * page/FrameView.cpp:
   76804         (WebCore::FrameView::scheduleEvent):
   76805         (WebCore::FrameView::updateOverflowStatus):
   76806         (WebCore::FrameView::dispatchScheduledEvents):
   76807         * page/FrameView.h:
   76808         * rendering/RenderLayer.cpp:
   76809         (WebCore::RenderLayer::scrollToOffset):
   76810         (WebCore::RenderLayer::updateOverflowStatus):
   76811         * svg/SVGElement.cpp:
   76812         (WebCore::SVGElement::sendSVGLoadEventIfPossible):
   76813         * svg/SVGElementInstance.cpp:
   76814         (WebCore::SVGElementInstance::dispatchEvent):
   76815         * svg/SVGElementInstance.h:
   76816         * xml/XMLHttpRequest.cpp:
   76817         (WebCore::XMLHttpRequest::dispatchEvent):
   76818         (WebCore::XMLHttpRequest::dispatchReadyStateChangeEvent):
   76819         (WebCore::XMLHttpRequest::dispatchXMLHttpRequestProgressEvent):
   76820         * xml/XMLHttpRequest.h:
   76821         * xml/XMLHttpRequestUpload.cpp:
   76822         (WebCore::XMLHttpRequestUpload::dispatchEvent):
   76823         (WebCore::XMLHttpRequestUpload::dispatchXMLHttpRequestProgressEvent):
   76824         * xml/XMLHttpRequestUpload.h:
   76825         Don't pass the tempEvent boolean around.
   76826 
   76827 2008-10-20  Alp Toker  <alp (a] nuanti.com>
   76828 
   76829         Remove unused includes only. Partial GTK+/Win build fix.
   76830 
   76831         * platform/graphics/gtk/SimpleFontDataPango.cpp:
   76832 
   76833 2008-10-20  Alexey Proskuryakov  <ap (a] webkit.org>
   76834 
   76835         Reviewed by Oliver Hunt.
   76836 
   76837         https://bugs.webkit.org/show_bug.cgi?id=21705
   76838         Implement Web Workers client-side API
   76839 
   76840         The implementation is experimental, and disabled by default. It doesn't quite match the
   76841         published draft, being influenced by further WHATWG discussions.
   76842 
   76843         This only implements the client-side API, and does not actually create any threads or
   76844         global contexts yet.
   76845 
   76846         * DerivedSources.make: Added DedicatedWorker. SharedWorker is not implemented yet, as I'm
   76847         still not sure if having separate classes for these helps at all.
   76848 
   76849         * WebCore.xcodeproj/project.pbxproj: Added new files.
   76850 
   76851         * bindings/js/JSDOMWindowBase.cpp:
   76852         (jsDOMWindowBaseWorker):
   76853         (WebCore::JSDOMWindowBase::put):
   76854         (setJSDOMWindowBaseWorker):
   76855         Added window.Worker constructor. Moved JSXSLTProcessorConstructor.h include out of ifdef
   76856         to match prevailing style.
   76857 
   76858         * bindings/js/JSDedicatedWorkerConstructor.cpp: Added.
   76859         * bindings/js/JSDedicatedWorkerConstructor.h: Added.
   76860         * bindings/js/JSDedicatedWorkerCustom.cpp: Added.
   76861         The implementation of event listeners are left custom intentionally, for easier implementation
   76862         of listeners that are not tied to any Document in the future.
   76863 
   76864         * dom/DedicatedWorker.cpp: Added.
   76865         * dom/DedicatedWorker.h: Added.
   76866         * dom/DedicatedWorker.idl: Added.
   76867         Added an implementation that can only load requested scripts for now.
   76868 
   76869 2008-10-19  Darin Adler  <darin (a] apple.com>
   76870 
   76871         Reviewed by Dan Bernstein.
   76872 
   76873         - fix assertion seen when opening inspector
   76874 
   76875         * bindings/js/JSQuarantinedObjectWrapper.cpp:
   76876         (WebCore::JSQuarantinedObjectWrapper::getOwnPropertySlot):
   76877         Removed unneeded asObject cast.
   76878 
   76879 2008-10-19  Dan Bernstein  <mitz (a] apple.com>
   76880 
   76881         Rubber-stamped by Timothy Hatcher.
   76882 
   76883         - remove empty directories and correct the MIME type of inspector images
   76884 
   76885         * page/inspector: Removed.
   76886         * page/inspector/Images: Removed.
   76887 
   76888 2008-10-19  Timothy Hatcher  <timothy (a] apple.com>
   76889 
   76890         Make the Web Inspector Resources panel open quicker and change graphs
   76891         faster. There was some accidental n^2 logic at fault when updating the
   76892         graph boundaries.
   76893 
   76894         https://bugs.webkit.org/show_bug.cgi?id=21742
   76895 
   76896         Reviewed by Darin Adler.
   76897 
   76898         * inspector/front-end/ResourcesPanel.js:
   76899         (WebInspector.ResourcesPanel.prototype.set calculator): Return early for
   76900         a null calculator. Remove the second argument passed to _refreshAllResources.
   76901         (WebInspector.ResourcesPanel.prototype.refresh): Call updateBoundaries on
   76902         the calculator for all the stale resources before calling refreshResource.
   76903         Pass true for the first argument of refreshResource to skip the boundary update.
   76904         (WebInspector.ResourcesPanel.prototype._updateGraphBoundariesIfNeeded): Remove
   76905         the second argument passed to _refreshAllResources.
   76906         (WebInspector.ResourcesPanel.prototype._refreshAllResourcesSoon): Remove the
   76907         skipSort argument since every passed true, and it would be bad to pass false.
   76908         (WebInspector.ResourcesPanel.prototype._refreshAllResources): Ditto. And if
   76909         skipBoundaryUpdate is false, call updateBoundaries on the calculator for all
   76910         the resources before calling refreshResource. Pass true for the first argument
   76911         of refreshResource to skip the boundary update.
   76912 
   76913 2008-10-19  Timothy Hatcher  <timothy (a] apple.com>
   76914 
   76915         Visually distinguish resources that loaded from the memory cache.
   76916 
   76917         https://bugs.webkit.org/show_bug.cgi?id=14279
   76918 
   76919         Reviewed by Dan Bernstein.
   76920 
   76921         * English.lproj/localizedStrings.js: New string.
   76922         * inspector/front-end/Images/timelineHollowPillBlue.png: Added.
   76923         * inspector/front-end/Images/timelineHollowPillGray.png: Added.
   76924         * inspector/front-end/Images/timelineHollowPillGreen.png: Added.
   76925         * inspector/front-end/Images/timelineHollowPillOrange.png: Added.
   76926         * inspector/front-end/Images/timelineHollowPillPurple.png: Added.
   76927         * inspector/front-end/Images/timelineHollowPillRed.png: Added.
   76928         * inspector/front-end/Images/timelineHollowPillYellow.png: Added.
   76929         * inspector/front-end/ResourcesPanel.js:
   76930         (WebInspector.ResourceCalculator.prototype.computeBarGraphLabels):
   76931         Add the "(from cache)" suffix to the tooltip.
   76932         (WebInspector.ResourceTimeCalculator.prototype.computeBarGraphLabels):
   76933         Add the "(from cache)" suffix to the tooltip.
   76934         (WebInspector.ResourceGraph): Add the "resource-cached" class.
   76935         * inspector/front-end/inspector.css: New styles to make the timeline
   76936         bars use the hollow pill images.
   76937 
   76938 2008-10-19  Timothy Hatcher  <timothy (a] apple.com>
   76939 
   76940         Update the scroll position in the Resources panel when loading
   76941         a new page or toggling on small resource rows.
   76942 
   76943         https://bugs.webkit.org/show_bug.cgi?id=20114
   76944 
   76945         Reviewed by Darin Adler.
   76946 
   76947         * inspector/front-end/ResourcesPanel.js:
   76948         (WebInspector.ResourcesPanel.prototype.reset): Scroll to the top,
   76949         since all the resource are being removed.
   76950         (WebInspector.ResourcesPanel.prototype.removeResource): Call
   76951         _adjustScrollPosition in case the view is shorter and needs scrolled.
   76952         (WebInspector.ResourcesPanel.prototype._toggleLargerResources): Ditto.
   76953         (WebInspector.ResourcesPanel.prototype._adjustScrollPosition): Check
   76954         the height of the sidebar against the scrollTop and height of the
   76955         resourcesContainerElement. If the sidebar is shorter, scroll up
   76956         so the last resource is at the bottom again.
   76957 
   76958 2008-10-19  Timothy Hatcher  <timothy (a] apple.com>
   76959 
   76960         Show per resource times and sizes when hovering over the bar graph for a resource.
   76961 
   76962         https://bugs.webkit.org/show_bug.cgi?id=14300
   76963         rdar://problem/5712802
   76964 
   76965         Reviewed by Cameron Zwarich.
   76966 
   76967         * English.lproj/localizedStrings.js: Add new strings.
   76968         * inspector/front-end/Images/graphLabelCalloutLeft.png: Added.
   76969         * inspector/front-end/Images/graphLabelCalloutRight.png: Added.
   76970         * inspector/front-end/ResourcesPanel.js:
   76971         (WebInspector.ResourcesPanel.prototype.refreshResource): Pass the calculator to the
   76972         ResourceGraph.refresh function.
   76973         (WebInspector.ResourceCalculator.prototype.computeBarGraphLabels): Default implementation
   76974         returns the formatted value.
   76975         (WebInspector.ResourceTimeCalculator.prototype.computeBarGraphLabels): Return discrete values
   76976         for the latency and download times. Also generate a custom tooltip.
   76977         (WebInspector.ResourceGraph): Add a mouseover event listener that calls refreshLabelPositions.
   76978         (WebInspector.ResourceGraph.prototype.refreshLabelPositions): Added. Updates the label positions
   76979         in case the bar has changed size.
   76980         (WebInspector.ResourceGraph.prototype.refresh): Set the label text and tooltips.
   76981         * inspector/front-end/inspector.css: New styles for the labels.
   76982 
   76983 2008-10-19  Darin Adler  <darin (a] apple.com>
   76984 
   76985         Reviewed by Oliver Hunt.
   76986 
   76987         - next step of https://bugs.webkit.org/show_bug.cgi?id=21732
   76988           improve performance by eliminating JSValue as a base class for JSCell
   76989 
   76990         Remove most uses of JSValue, which will be removed in a future patch.
   76991 
   76992         * bindings/js/JSCustomXPathNSResolver.h: Removed declaration of JSValue
   76993         and used JSValuePtr instead.
   76994         * bindings/js/JSEventTarget.h: Ditto.
   76995         * bindings/js/JSNodeFilterCondition.h: Ditto.
   76996         * bindings/js/ScheduledAction.h: Ditto.
   76997         * bindings/js/ScriptController.h: Ditto.
   76998         * bindings/objc/WebScriptObjectPrivate.h: Ditto.
   76999         * bridge/c/c_utility.h: Ditto.
   77000         * bridge/jni/jni_jsobject.h: Ditto.
   77001         * bridge/jni/jni_utility.h: Ditto.
   77002         * bridge/objc/WebScriptObject.h: Ditto.
   77003         * dom/Traversal.h: Ditto.
   77004         * inspector/InspectorController.cpp: Ditto.
   77005         * inspector/JavaScriptProfile.h: Ditto.
   77006         * inspector/JavaScriptProfileNode.h: Ditto.
   77007         * loader/FrameLoader.h: Ditto.
   77008         * page/Console.h: Ditto.
   77009         * plugins/MimeTypeArray.h: Ditto.
   77010         * plugins/Plugin.h: Ditto.
   77011         * plugins/PluginArray.h: Ditto.
   77012         * plugins/PluginView.cpp:
   77013         (WebCore::getString): Ditto.
   77014         (WebCore::PluginView::performRequest): Ditto.
   77015         * plugins/gtk/PluginViewGtk.cpp: Ditto.
   77016         * plugins/qt/PluginViewQt.cpp: Ditto.
   77017         * plugins/win/PluginViewWin.cpp: Ditto.
   77018 
   77019         * bridge/qt/qt_class.cpp:
   77020         (JSC::Bindings::QtClass::fallbackObject): Use JSValuePtr and JSObject*
   77021         instead of JSValue*.
   77022         * bridge/qt/qt_class.h: Ditto.
   77023         * bridge/qt/qt_instance.cpp:
   77024         (JSC::Bindings::QtInstance::mark): Ditto.
   77025         (JSC::Bindings::QtInstance::invokeMethod): Ditto.
   77026         (JSC::Bindings::QtInstance::defaultValue): Ditto.
   77027         (JSC::Bindings::QtInstance::stringValue): Ditto.
   77028         (JSC::Bindings::QtInstance::numberValue): Ditto.
   77029         (JSC::Bindings::QtInstance::booleanValue): Ditto.
   77030         (JSC::Bindings::QtInstance::valueOf): Ditto.
   77031         (JSC::Bindings::QtField::valueFromInstance): Ditto.
   77032         (JSC::Bindings::QtField::setValueToInstance): Ditto.
   77033         * bridge/qt/qt_instance.h: Ditto.
   77034         * bridge/qt/qt_runtime.cpp: Ditto.
   77035         (JSC::Bindings::valueRealType): Ditto.
   77036         (JSC::Bindings::convertValueToQVariant): Ditto.
   77037         (JSC::Bindings::convertQVariantToValue): Ditto.
   77038         (JSC::Bindings::findMethodIndex): Ditto.
   77039         (JSC::Bindings::QtRuntimeMetaMethod::call): Ditto.
   77040         (JSC::Bindings::QtRuntimeMetaMethod::lengthGetter): Ditto.
   77041         (JSC::Bindings::QtRuntimeMetaMethod::connectGetter): Ditto.
   77042         (JSC::Bindings::QtRuntimeMetaMethod::disconnectGetter): Ditto.
   77043         (JSC::Bindings::QtRuntimeConnectionMethod::call): Ditto.
   77044         (JSC::Bindings::QtRuntimeConnectionMethod::lengthGetter): Ditto.
   77045         (JSC::Bindings::QtArray::setValueAt): Ditto.
   77046         (JSC::Bindings::QtArray::valueAt): Ditto.
   77047         * bridge/qt/qt_runtime.h: Ditto.
   77048 
   77049         * bridge/testqtbindings.cpp:
   77050         (main): Use JSValuePtr.
   77051 
   77052 2008-10-18  Darin Adler  <darin (a] apple.com>
   77053 
   77054         Reviewed by Oliver Hunt.
   77055 
   77056         - next step of https://bugs.webkit.org/show_bug.cgi?id=21732
   77057           improve performance by eliminating JSValue as a base class for JSCell
   77058 
   77059         Tweak a little more to get closer to where we can make JSValuePtr a class.
   77060 
   77061         * bindings/js/JSAudioConstructor.cpp:
   77062         (WebCore::JSAudioConstructor::JSAudioConstructor): Use asObject.
   77063         (WebCore::constructAudio): Ditto.
   77064         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
   77065         (WebCore::JSCSSStyleDeclaration::nameGetter): Ditto.
   77066 
   77067         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
   77068         (WebCore::toHTMLCanvasStyle): Use asString and asObject.
   77069         (WebCore::JSCanvasRenderingContext2D::setFillColor): Ditto.
   77070         (WebCore::JSCanvasRenderingContext2D::setStrokeColor): Ditto.
   77071         (WebCore::JSCanvasRenderingContext2D::drawImage): Ditto.
   77072         (WebCore::JSCanvasRenderingContext2D::drawImageFromRect): Ditto.
   77073         (WebCore::JSCanvasRenderingContext2D::setShadow): Ditto.
   77074         (WebCore::JSCanvasRenderingContext2D::createPattern): Ditto.
   77075 
   77076         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
   77077         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent): Use JSValuePtr.
   77078 
   77079         * bindings/js/JSDOMBinding.cpp:
   77080         (WebCore::setDOMException): Use noValue.
   77081 
   77082         * bindings/js/JSDOMBinding.h:
   77083         (WebCore::getDOMPrototype): Use asObject.
   77084 
   77085         * bindings/js/JSDOMWindowBase.cpp:
   77086         (WebCore::showModalDialog): Use noValue.
   77087         (jsDOMWindowBaseEvent): Use asObject.
   77088         (jsDOMWindowBaseImage): Ditto.
   77089         (jsDOMWindowBaseMessageChannel): Ditto.
   77090         (jsDOMWindowBaseOption): Ditto.
   77091         (jsDOMWindowBaseXMLHttpRequest): Ditto.
   77092         (jsDOMWindowBaseAudio): Ditto.
   77093         (jsDOMWindowBaseXSLTProcessor): Ditto.
   77094         (WebCore::JSDOMWindowBase::childFrameGetter): Ditto.
   77095         (WebCore::JSDOMWindowBase::indexGetter): Ditto.
   77096         (WebCore::JSDOMWindowBase::namedItemGetter): Ditto.
   77097         (WebCore::JSDOMWindowBase::getOwnPropertySlot): Ditto.
   77098         (WebCore::JSDOMWindowBase::findJSEventListener): Ditto.
   77099         (WebCore::JSDOMWindowBase::findOrCreateJSEventListener): Ditto.
   77100         (WebCore::JSDOMWindowBase::findJSUnprotectedEventListener): Ditto.
   77101         (WebCore::JSDOMWindowBase::findOrCreateJSUnprotectedEventListener): Ditto.
   77102         (windowProtoFuncOpen): Use noValue.
   77103         (WebCore::toJSDOMWindow): Use asObject.
   77104 
   77105         * bindings/js/JSDOMWindowCustom.cpp:
   77106         (WebCore::setTimeoutOrInterval): Use asString.
   77107         (WebCore::toDOMWindow): Use asObject.
   77108 
   77109         * bindings/js/JSEventListener.cpp:
   77110         (WebCore::JSAbstractEventListener::handleEvent): Use noValue.
   77111         (WebCore::JSLazyEventListener::parseCode): Use asObject.
   77112 
   77113         * bindings/js/JSHTMLCollectionCustom.cpp:
   77114         (WebCore::JSHTMLCollection::nameGetter): Use asObject.
   77115         * bindings/js/JSHTMLDocumentCustom.cpp:
   77116         (WebCore::JSHTMLDocument::nameGetter): Ditto.
   77117         * bindings/js/JSHTMLElementCustom.cpp:
   77118         (WebCore::JSHTMLElement::pushEventHandlerScope): Ditto.
   77119         * bindings/js/JSHTMLFormElementCustom.cpp:
   77120         (WebCore::JSHTMLFormElement::nameGetter): Ditto.
   77121         * bindings/js/JSHTMLFrameSetElementCustom.cpp:
   77122         (WebCore::JSHTMLFrameSetElement::nameGetter): Ditto.
   77123         * bindings/js/JSHTMLOptionElementConstructor.cpp:
   77124         (WebCore::JSHTMLOptionElementConstructor::JSHTMLOptionElementConstructor): Ditto.
   77125         (WebCore::constructHTMLOptionElement): Ditto.
   77126         * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
   77127         (WebCore::JSHTMLOptionsCollection::remove): Ditto.
   77128         * bindings/js/JSImageConstructor.cpp:
   77129         (WebCore::JSImageConstructor::JSImageConstructor): Ditto.
   77130         (WebCore::constructImage): Ditto.
   77131         * bindings/js/JSInspectedObjectWrapper.cpp:
   77132         (WebCore::JSInspectedObjectWrapper::wrap): Ditto.
   77133         * bindings/js/JSInspectorCallbackWrapper.cpp:
   77134         (WebCore::JSInspectorCallbackWrapper::wrap): Ditto.
   77135 
   77136         * bindings/js/JSJavaScriptCallFrameCustom.cpp:
   77137         (WebCore::JSJavaScriptCallFrame::evaluate): Use noValue.
   77138 
   77139         * bindings/js/JSMessageChannelConstructor.cpp:
   77140         (WebCore::JSMessageChannelConstructor::JSMessageChannelConstructor): Use asObject.
   77141         (WebCore::JSMessageChannelConstructor::construct): Ditto.
   77142         * bindings/js/JSMimeTypeArrayCustom.cpp:
   77143         (WebCore::JSMimeTypeArray::nameGetter): Ditto.
   77144         * bindings/js/JSNamedNodeMapCustom.cpp:
   77145         (WebCore::JSNamedNodeMap::nameGetter): Ditto.
   77146         * bindings/js/JSNamedNodesCollection.cpp:
   77147         (WebCore::JSNamedNodesCollection::lengthGetter): Ditto.
   77148         (WebCore::JSNamedNodesCollection::indexGetter): Ditto.
   77149         * bindings/js/JSNodeFilterCustom.cpp:
   77150         (WebCore::toNodeFilter): Ditto.
   77151         * bindings/js/JSNodeListCustom.cpp:
   77152         (WebCore::JSNodeList::nameGetter): Ditto.
   77153         * bindings/js/JSPluginArrayCustom.cpp:
   77154         (WebCore::JSPluginArray::nameGetter): Ditto.
   77155         * bindings/js/JSPluginCustom.cpp:
   77156         (WebCore::JSPlugin::nameGetter): Ditto.
   77157         * bindings/js/JSPluginElementFunctions.cpp:
   77158         (WebCore::runtimeObjectGetter): Ditto.
   77159         (WebCore::runtimeObjectPropertyGetter): Ditto.
   77160         * bindings/js/JSQuarantinedObjectWrapper.cpp:
   77161         (WebCore::JSQuarantinedObjectWrapper::asWrapper): Ditto.
   77162         (WebCore::JSQuarantinedObjectWrapper::getOwnPropertySlot): Ditto.
   77163         (WebCore::JSQuarantinedObjectWrapper::construct): Ditto.
   77164         * bindings/js/JSRGBColor.cpp:
   77165         (jsRGBColorRed): Ditto.
   77166         (jsRGBColorGreen): Ditto.
   77167         (jsRGBColorBlue): Ditto.
   77168 
   77169         * bindings/js/JSSQLResultSetRowListCustom.cpp:
   77170         (WebCore::JSSQLResultSetRowList::item): Use noValue.
   77171 
   77172         * bindings/js/JSStorageCustom.cpp:
   77173         (WebCore::JSStorage::nameGetter): Use asObject.
   77174         (WebCore::JSStorage::deleteProperty): Ditto.
   77175         (WebCore::JSStorage::customPut): Ditto.
   77176         * bindings/js/JSStyleSheetListCustom.cpp:
   77177         (WebCore::JSStyleSheetList::nameGetter): Ditto.
   77178         * bindings/js/JSXMLHttpRequestConstructor.cpp:
   77179         (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor): Ditto.
   77180         * bindings/js/JSXSLTProcessorCustom.cpp:
   77181         (WebCore::JSXSLTProcessor::importStylesheet): Ditto.
   77182         (WebCore::JSXSLTProcessor::transformToFragment): Ditto.
   77183         (WebCore::JSXSLTProcessor::transformToDocument): Ditto.
   77184 
   77185         * bindings/js/ScriptController.cpp:
   77186         (WebCore::ScriptController::evaluate): Use noValue.
   77187         * bindings/objc/DOMInternal.mm:
   77188         (-[WebScriptObject _initializeScriptDOMNodeImp]): Ditto.
   77189 
   77190         * bindings/objc/WebScriptObject.mm:
   77191         (-[WebScriptObject evaluateWebScript:]): Use JSValuePtr.
   77192         (-[WebScriptObject valueForKey:]): Ditto.
   77193         (-[WebScriptObject webScriptValueAtIndex:]): Ditto.
   77194         (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
   77195         Use asObject and asString.
   77196 
   77197         * bindings/scripts/CodeGeneratorJS.pm: Use asObject.
   77198 
   77199         * bridge/c/c_instance.h: Use JSValuePtr.
   77200         * bridge/c/c_runtime.cpp:
   77201         (JSC::Bindings::CField::setValueToInstance): Ditto.
   77202 
   77203         * bridge/c/c_utility.cpp:
   77204         (JSC::Bindings::convertValueToNPVariant): Use asObject.
   77205 
   77206         * bridge/jni/jni_instance.cpp:
   77207         (JavaInstance::booleanValue): Use JSValuePtr.
   77208         (JavaInstance::invokeMethod): Ditto. And noValue.
   77209         * bridge/jni/jni_jsobject.mm:
   77210         (JavaJSObject::getSlot): Ditto.
   77211         (JavaJSObject::convertValueToJObject): Ditto.
   77212         * bridge/jni/jni_runtime.cpp:
   77213         (JavaField::dispatchValueFromInstance): Ditto.
   77214         (JavaField::valueFromInstance): Ditto.
   77215         (JavaField::dispatchSetValueToInstance): Ditto.
   77216         (JavaField::setValueToInstance): Ditto.
   77217         (JavaArray::setValueAt): Ditto.
   77218         (JavaArray::valueAt): Ditto.
   77219         * bridge/jni/jni_runtime.h: Ditto.
   77220 
   77221         * bridge/jni/jni_utility.cpp:
   77222         (JSC::Bindings::convertArrayInstanceToJavaArray): Take a JSArray*
   77223         instead of a JSValue*.
   77224         (JSC::Bindings::convertValueToJValue): Use asObject and asArray.
   77225 
   77226         * bridge/objc/objc_class.h: Use JSValuePtr.
   77227         * bridge/objc/objc_instance.h: Ditto.
   77228         * bridge/objc/objc_runtime.h: Ditto.
   77229 
   77230         * bridge/objc/objc_runtime.mm:
   77231         (JSC::Bindings::callObjCFallbackObject): Use asObject.
   77232 
   77233         * bridge/objc/objc_utility.h: Use JSValuePtr.
   77234         * bridge/objc/objc_utility.mm:
   77235         (JSC::Bindings::convertValueToObjcValue): Use JSValuePtr and asObject.
   77236         (JSC::Bindings::convertObjcValueToValue): Use jsUndefined() instead of 0.
   77237 
   77238         * bridge/runtime.cpp:
   77239         (JSC::Bindings::Instance::getValueOfField): Use JSValuePtr.
   77240         (JSC::Bindings::Instance::setValueOfField): Ditto.
   77241 
   77242         * bridge/runtime_array.cpp:
   77243         (JSC::RuntimeArray::lengthGetter): Use JSValuePtr and asObject.
   77244         (JSC::RuntimeArray::indexGetter): Ditto.
   77245         * bridge/runtime_array.h: Ditto.
   77246         * bridge/runtime_method.cpp:
   77247         (JSC::RuntimeMethod::lengthGetter): Ditto.
   77248         (JSC::callRuntimeMethod): Ditto.
   77249         * bridge/runtime_object.cpp:
   77250         (JSC::RuntimeObjectImp::fallbackObjectGetter): Ditto.
   77251         (JSC::RuntimeObjectImp::fieldGetter): Ditto.
   77252         (JSC::RuntimeObjectImp::methodGetter): Ditto.
   77253 
   77254         * loader/FrameLoader.cpp:
   77255         (WebCore::FrameLoader::executeScript): Use noValue.
   77256 
   77257         * page/Console.cpp:
   77258         (WebCore::Console::trace): Use asInternalFunction.
   77259 
   77260 2008-10-19  Dan Bernstein  <mitz (a] apple.com>
   77261 
   77262         Reviewed by Timothy Hatcher.
   77263 
   77264         - lower the default button repaint frequency
   77265 
   77266         * rendering/RenderButton.cpp:
   77267         (WebCore::RenderButton::styleDidChange): Changed the timer interval from
   77268         0.01 to 0.03.
   77269 
   77270 2008-10-18  Dan Bernstein  <mitz (a] apple.com>
   77271 
   77272         Reviewed by Mark Rowe.
   77273 
   77274         - Windows build fix
   77275 
   77276         * rendering/RenderThemeSafari.cpp:
   77277         (WebCore::RenderThemeSafari::paintMediaFullscreenButton):
   77278         (WebCore::RenderThemeSafari::paintMediaMuteButton):
   77279         (WebCore::RenderThemeSafari::paintMediaPlayButton):
   77280         (WebCore::RenderThemeSafari::paintMediaSeekBackButton):
   77281         (WebCore::RenderThemeSafari::paintMediaSeekForwardButton):
   77282         (WebCore::RenderThemeSafari::paintMediaSliderThumb):
   77283 
   77284 2008-10-18  Dan Bernstein  <mitz (a] apple.com>
   77285 
   77286         Reviewed by Sam Weinig.
   77287 
   77288         - WebCore part of https://bugs.webkit.org/show_bug.cgi?id=21736
   77289           Long-dead decoded image data make up for most of the object cache's memory use over time
   77290 
   77291         Add a cache setting for how long decoded image data should be allowed to
   77292         persist in memory after the image has died. By default, this is set to
   77293         0, which means "forever".
   77294 
   77295         * loader/Cache.cpp:
   77296         (WebCore::Cache::Cache): Initialize m_deadDecodedDataDeletionInterval.
   77297         * loader/Cache.h:
   77298         (WebCore::Cache::setDeadDecodedDataDeletionInterval): Added a setter.
   77299         (WebCore::Cache::deadDecodedDataDeletionInterval): Added a getter.
   77300         * loader/CachedImage.cpp:
   77301         (WebCore::CachedImage::CachedImage): Initialize the decoded data
   77302         deletion timer.
   77303         (WebCore::CachedImage::decodedDataDeletionTimerFired): Added. Destroys
   77304         the decoded image data.
   77305         (WebCore::CachedImage::addClient): Stop the timer if it is active.
   77306         (WebCore::CachedImage::allClientsRemoved): Start the decoded data
   77307         deletion timer.
   77308         * loader/CachedImage.h:
   77309 
   77310 2008-10-18  Darin Adler  <darin (a] apple.com>
   77311 
   77312         Reviewed by Dan Bernstein.
   77313 
   77314         - fix https://bugs.webkit.org/show_bug.cgi?id=21645
   77315           REGRESSION (r37469-r37605): File Input not Uploaded in Multipart/Form-data Form
   77316 
   77317         * html/HTMLFormElement.cpp:
   77318         (WebCore::HTMLFormElement::formData):
   77319         Fix loop that goes through the FormDataList to go two at a time in a clearer
   77320         way. My last patch screwed up the way it got form content from the items.
   77321         This "two at a time" approach is a confusing way to do things, which explains
   77322         why I got it wrong last time through, but I decided to just fix it locally for
   77323         now rather than changing the design of FormDataList.
   77324 
   77325 2008-10-18  Darin Adler  <darin (a] apple.com>
   77326 
   77327         Reviewed by Cameron Zwarich.
   77328 
   77329         - next step on https://bugs.webkit.org/show_bug.cgi?id=21732
   77330           improve performance by eliminating JSValue as a base class for JSCell
   77331 
   77332         Use JSValuePtr everywhere instead of JSValue*. In the future, we'll be
   77333         changing JSValuePtr to be a class, and then eventually renaming it
   77334         to JSValue once that's done.
   77335 
   77336         * bindings/js/JSAttrCustom.cpp:
   77337         * bindings/js/JSCSSRuleCustom.cpp:
   77338         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
   77339         * bindings/js/JSCSSValueCustom.cpp:
   77340         * bindings/js/JSCanvasPixelArrayCustom.h:
   77341         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
   77342         * bindings/js/JSClipboardCustom.cpp:
   77343         * bindings/js/JSConsoleCustom.cpp:
   77344         * bindings/js/JSCustomSQLStatementCallback.cpp:
   77345         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
   77346         * bindings/js/JSCustomSQLTransactionCallback.cpp:
   77347         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
   77348         * bindings/js/JSCustomVoidCallback.cpp:
   77349         * bindings/js/JSCustomVoidCallback.h:
   77350         * bindings/js/JSCustomXPathNSResolver.cpp:
   77351         * bindings/js/JSDOMApplicationCacheCustom.cpp:
   77352         * bindings/js/JSDOMBinding.cpp:
   77353         * bindings/js/JSDOMBinding.h:
   77354         * bindings/js/JSDOMWindowBase.cpp:
   77355         * bindings/js/JSDOMWindowBase.h:
   77356         * bindings/js/JSDOMWindowCustom.cpp:
   77357         * bindings/js/JSDOMWindowCustom.h:
   77358         * bindings/js/JSDOMWindowShell.cpp:
   77359         * bindings/js/JSDOMWindowShell.h:
   77360         * bindings/js/JSDatabaseCustom.cpp:
   77361         * bindings/js/JSDocumentCustom.cpp:
   77362         * bindings/js/JSElementCustom.cpp:
   77363         * bindings/js/JSEventCustom.cpp:
   77364         * bindings/js/JSEventListener.cpp:
   77365         * bindings/js/JSEventTarget.cpp:
   77366         * bindings/js/JSEventTargetBase.h:
   77367         * bindings/js/JSEventTargetNodeCustom.cpp:
   77368         * bindings/js/JSHTMLAllCollection.h:
   77369         * bindings/js/JSHTMLAppletElementCustom.cpp:
   77370         * bindings/js/JSHTMLCollectionCustom.cpp:
   77371         * bindings/js/JSHTMLDocumentCustom.cpp:
   77372         * bindings/js/JSHTMLEmbedElementCustom.cpp:
   77373         * bindings/js/JSHTMLFormElementCustom.cpp:
   77374         * bindings/js/JSHTMLFrameElementCustom.cpp:
   77375         * bindings/js/JSHTMLFrameSetElementCustom.cpp:
   77376         * bindings/js/JSHTMLIFrameElementCustom.cpp:
   77377         * bindings/js/JSHTMLInputElementCustom.cpp:
   77378         * bindings/js/JSHTMLObjectElementCustom.cpp:
   77379         * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
   77380         * bindings/js/JSHTMLSelectElementCustom.cpp:
   77381         * bindings/js/JSHTMLSelectElementCustom.h:
   77382         * bindings/js/JSHistoryCustom.cpp:
   77383         * bindings/js/JSImageDataCustom.cpp:
   77384         * bindings/js/JSInspectedObjectWrapper.cpp:
   77385         * bindings/js/JSInspectedObjectWrapper.h:
   77386         * bindings/js/JSInspectorCallbackWrapper.cpp:
   77387         * bindings/js/JSInspectorCallbackWrapper.h:
   77388         * bindings/js/JSJavaScriptCallFrameCustom.cpp:
   77389         * bindings/js/JSLocationCustom.cpp:
   77390         * bindings/js/JSMessagePortCustom.cpp:
   77391         * bindings/js/JSMimeTypeArrayCustom.cpp:
   77392         * bindings/js/JSNamedNodeMapCustom.cpp:
   77393         * bindings/js/JSNamedNodesCollection.cpp:
   77394         * bindings/js/JSNamedNodesCollection.h:
   77395         * bindings/js/JSNavigatorCustom.cpp:
   77396         * bindings/js/JSNodeCustom.cpp:
   77397         * bindings/js/JSNodeFilterCondition.cpp:
   77398         * bindings/js/JSNodeFilterCustom.cpp:
   77399         * bindings/js/JSNodeIteratorCustom.cpp:
   77400         * bindings/js/JSNodeListCustom.cpp:
   77401         * bindings/js/JSPluginArrayCustom.cpp:
   77402         * bindings/js/JSPluginCustom.cpp:
   77403         * bindings/js/JSPluginElementFunctions.cpp:
   77404         * bindings/js/JSPluginElementFunctions.h:
   77405         * bindings/js/JSQuarantinedObjectWrapper.cpp:
   77406         * bindings/js/JSQuarantinedObjectWrapper.h:
   77407         * bindings/js/JSRGBColor.cpp:
   77408         * bindings/js/JSRGBColor.h:
   77409         * bindings/js/JSSQLResultSetRowListCustom.cpp:
   77410         * bindings/js/JSSQLTransactionCustom.cpp:
   77411         * bindings/js/JSSVGElementInstanceCustom.cpp:
   77412         * bindings/js/JSSVGLengthCustom.cpp:
   77413         * bindings/js/JSSVGMatrixCustom.cpp:
   77414         * bindings/js/JSSVGPathSegCustom.cpp:
   77415         * bindings/js/JSSVGPathSegListCustom.cpp:
   77416         * bindings/js/JSSVGPointListCustom.cpp:
   77417         * bindings/js/JSSVGTransformListCustom.cpp:
   77418         * bindings/js/JSStorageCustom.cpp:
   77419         * bindings/js/JSStyleSheetCustom.cpp:
   77420         * bindings/js/JSStyleSheetListCustom.cpp:
   77421         * bindings/js/JSTextCustom.cpp:
   77422         * bindings/js/JSTreeWalkerCustom.cpp:
   77423         * bindings/js/JSXMLHttpRequestCustom.cpp:
   77424         * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
   77425         * bindings/js/JSXSLTProcessorCustom.cpp:
   77426         * bindings/js/ScheduledAction.cpp:
   77427         * bindings/js/ScheduledAction.h:
   77428         * bindings/js/ScriptController.cpp:
   77429         * bindings/js/ScriptController.h:
   77430         * bindings/objc/WebScriptObject.mm:
   77431         * bindings/scripts/CodeGeneratorJS.pm:
   77432         * bridge/NP_jsobject.cpp:
   77433         * bridge/c/c_instance.cpp:
   77434         * bridge/c/c_instance.h:
   77435         * bridge/c/c_runtime.cpp:
   77436         * bridge/c/c_runtime.h:
   77437         * bridge/c/c_utility.cpp:
   77438         * bridge/jni/jni_instance.cpp:
   77439         * bridge/jni/jni_instance.h:
   77440         * bridge/jni/jni_jsobject.mm:
   77441         * bridge/jni/jni_objc.mm:
   77442         * bridge/jni/jni_runtime.cpp:
   77443         * bridge/jni/jni_runtime.h:
   77444         * bridge/jni/jni_utility.cpp:
   77445         * bridge/objc/objc_class.mm:
   77446         * bridge/objc/objc_instance.h:
   77447         * bridge/objc/objc_instance.mm:
   77448         * bridge/objc/objc_runtime.h:
   77449         * bridge/objc/objc_runtime.mm:
   77450         * bridge/objc/objc_utility.h:
   77451         * bridge/objc/objc_utility.mm:
   77452         * bridge/runtime.h:
   77453         * bridge/runtime_array.cpp:
   77454         * bridge/runtime_array.h:
   77455         * bridge/runtime_method.cpp:
   77456         * bridge/runtime_method.h:
   77457         * bridge/runtime_object.cpp:
   77458         * bridge/runtime_object.h:
   77459         * inspector/JavaScriptCallFrame.cpp:
   77460         * inspector/JavaScriptCallFrame.h:
   77461         * inspector/JavaScriptProfile.cpp:
   77462         * inspector/JavaScriptProfileNode.cpp:
   77463         * loader/FrameLoader.cpp:
   77464         * loader/FrameLoader.h:
   77465         * page/Console.cpp:
   77466         * page/Console.h:
   77467         * plugins/MimeTypeArray.h:
   77468         * plugins/Plugin.h:
   77469         * plugins/PluginArray.h:
   77470         * xml/XMLHttpRequest.cpp:
   77471         Replace JSValue* with JSValuePtr.
   77472 
   77473 2008-10-18  Darin Adler  <darin (a] apple.com>
   77474 
   77475         Reviewed by Oliver Hunt.
   77476 
   77477         - first step of https://bugs.webkit.org/show_bug.cgi?id=21732
   77478           improve performance by eliminating JSValue as a base class for JSCell
   77479 
   77480         Update for change to make PreferredPrimitiveType no longer
   77481         a member of JSValue.
   77482 
   77483         * bridge/c/c_instance.cpp:
   77484         (JSC::Bindings::CInstance::defaultValue): Removed JSValue:: prefix.
   77485         * bridge/jni/jni_instance.cpp:
   77486         (JavaInstance::defaultValue): Ditto.
   77487         * bridge/objc/objc_instance.mm:
   77488         (ObjcInstance::defaultValue): Ditto.
   77489         * bridge/qt/qt_instance.cpp:
   77490         (JSC::Bindings::QtInstance::defaultValue): Ditto.
   77491         * bridge/runtime.h: Ditto. Also removed typedef.
   77492 
   77493 2008-10-18  Darin Adler  <darin (a] apple.com>
   77494 
   77495         - try to fix Windows build
   77496 
   77497         * rendering/RenderThemeSafari.cpp:
   77498         (WebCore::RenderThemeSafari::paintCheckbox): Explicitly qualify part name with
   77499         SafariTheme namespace, since there is now an identically named constant in
   77500         the ControlPart enum.
   77501         (WebCore::RenderThemeSafari::paintButton): Ditto.
   77502         (WebCore::RenderThemeSafari::paintTextField): Ditto.
   77503         (WebCore::RenderThemeSafari::paintTextArea): Ditto.
   77504         (WebCore::RenderThemeSafari::paintSearchField): Ditto.
   77505         (WebCore::RenderThemeSafari::paintSearchFieldCancelButton): Ditto.
   77506         (WebCore::RenderThemeSafari::paintSearchFieldResultsDecoration): Ditto.
   77507         (WebCore::RenderThemeSafari::paintSearchFieldResultsButton): Ditto.
   77508 
   77509 2008-10-18  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   77510 
   77511         Reviewed by Alp Toker.
   77512 
   77513         [GTK] crash after selecting a file on an <input type=file>
   77514         https://bugs.webkit.org/show_bug.cgi?id=21385
   77515 
   77516         Follow Mac and Win's behaviors for Icon::paint
   77517 
   77518         * platform/graphics/gtk/IconGtk.cpp:
   77519         (WebCore::Icon::paint): check if painting is enabled before
   77520         painting the icon
   77521 
   77522 2008-10-18  Zan Dobersek  <zandobersek (a] gmail.com>
   77523 
   77524         Reviewed by Oliver Hunt.
   77525 
   77526         Qt port build fix.
   77527 
   77528         * platform/qt/RenderThemeQt.h:
   77529 
   77530 2008-10-17  Kevin Watters  <kevinwatters (a] gmail.com>
   77531 
   77532         Reviewed by Kevin Ollivier
   77533 
   77534         Fix wx port's scrollbar and drawing handling after recent changes.
   77535 
   77536         https://bugs.webkit.org/show_bug.cgi?id=21720
   77537 
   77538         * platform/ScrollView.h:
   77539         * platform/wx/ScrollViewWx.cpp:
   77540         (WebCore::ScrollView::platformVisibleContentRect):
   77541         (WebCore::ScrollView::platformContentsSize):
   77542         (WebCore::ScrollView::platformSetContentsSize):
   77543         * platform/wx/WidgetWx.cpp:
   77544         (WebCore::Widget::paint):
   77545 
   77546 2008-10-17  Kevin Ollivier  <kevino (a] theolliviers.com>
   77547 
   77548         wx build fix. EAppearance -> ControlPart.
   77549 
   77550         * platform/wx/RenderThemeWx.cpp:
   77551         (WebCore::RenderThemeWx::isControlStyled):
   77552         (WebCore::RenderThemeWx::adjustRepaintRect):
   77553         (WebCore::RenderThemeWx::controlSupportsTints):
   77554         (WebCore::RenderThemeWx::supportsFocus):
   77555         (WebCore::RenderThemeWx::paintButton):
   77556 
   77557 2008-10-17  David Hyatt  <hyatt (a] apple.com>
   77558 
   77559         Eliminate the EAppearance enum in favor of the new ControlPart enum.  Cut out the scrollbar
   77560         values from the enum since they are handled by ScrollbarTheme instead.
   77561 
   77562         Reviewed by Tim Hatcher
   77563 
   77564         * css/CSSPrimitiveValueMappings.h:
   77565         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
   77566         (WebCore::CSSPrimitiveValue::operator ControlPart):
   77567         * css/CSSStyleSelector.cpp:
   77568         (WebCore::CSSStyleSelector::adjustRenderStyle):
   77569         * css/CSSValueKeywords.in:
   77570         * platform/gtk/RenderThemeGtk.cpp:
   77571         (WebCore::supportsFocus):
   77572         (WebCore::RenderThemeGtk::baselinePosition):
   77573         (WebCore::setToggleSize):
   77574         (WebCore::RenderThemeGtk::setCheckboxSize):
   77575         (WebCore::RenderThemeGtk::setRadioSize):
   77576         (WebCore::RenderThemeGtk::adjustButtonStyle):
   77577         * platform/qt/RenderThemeQt.cpp:
   77578         (WebCore::RenderThemeQt::baselinePosition):
   77579         (WebCore::RenderThemeQt::controlSupportsTints):
   77580         (WebCore::RenderThemeQt::adjustRepaintRect):
   77581         (WebCore::RenderThemeQt::isControlStyled):
   77582         (WebCore::computeSizeBasedOnStyle):
   77583         (WebCore::RenderThemeQt::paintButton):
   77584         (WebCore::RenderThemeQt::paintTextField):
   77585         (WebCore::RenderThemeQt::paintMenuList):
   77586         (WebCore::RenderThemeQt::supportsFocus):
   77587         (WebCore::RenderThemeQt::applyTheme):
   77588         (WebCore::RenderThemeQt::adjustSliderThumbSize):
   77589         * platform/qt/RenderThemeQt.h:
   77590         * rendering/RenderSlider.cpp:
   77591         (WebCore::RenderSlider::createThumbStyle):
   77592         (WebCore::RenderSlider::layout):
   77593         (WebCore::RenderSlider::setValueForPosition):
   77594         (WebCore::RenderSlider::setPositionFromValue):
   77595         (WebCore::RenderSlider::positionForOffset):
   77596         (WebCore::RenderSlider::currentPosition):
   77597         (WebCore::RenderSlider::setCurrentPosition):
   77598         (WebCore::RenderSlider::trackSize):
   77599         * rendering/RenderTheme.cpp:
   77600         (WebCore::RenderTheme::adjustStyle):
   77601         (WebCore::RenderTheme::paint):
   77602         (WebCore::RenderTheme::paintBorderOnly):
   77603         (WebCore::RenderTheme::paintDecorations):
   77604         (WebCore::RenderTheme::isControlContainer):
   77605         (WebCore::RenderTheme::isControlStyled):
   77606         (WebCore::RenderTheme::supportsFocusRing):
   77607         (WebCore::RenderTheme::isDefault):
   77608         * rendering/RenderTheme.h:
   77609         * rendering/RenderThemeMac.mm:
   77610         (WebCore::RenderThemeMac::isControlStyled):
   77611         (WebCore::RenderThemeMac::adjustRepaintRect):
   77612         (WebCore::RenderThemeMac::baselinePosition):
   77613         (WebCore::RenderThemeMac::controlSupportsTints):
   77614         (WebCore::RenderThemeMac::adjustButtonStyle):
   77615         (WebCore::RenderThemeMac::setButtonCellState):
   77616         (WebCore::RenderThemeMac::popupInternalPaddingLeft):
   77617         (WebCore::RenderThemeMac::popupInternalPaddingRight):
   77618         (WebCore::RenderThemeMac::popupInternalPaddingTop):
   77619         (WebCore::RenderThemeMac::popupInternalPaddingBottom):
   77620         (WebCore::RenderThemeMac::paintSliderTrack):
   77621         (WebCore::RenderThemeMac::paintSliderThumb):
   77622         (WebCore::RenderThemeMac::adjustSliderThumbSize):
   77623         * rendering/RenderThemeSafari.cpp:
   77624         (WebCore::RenderThemeSafari::isControlStyled):
   77625         (WebCore::RenderThemeSafari::adjustRepaintRect):
   77626         (WebCore::RenderThemeSafari::baselinePosition):
   77627         (WebCore::RenderThemeSafari::controlSupportsTints):
   77628         (WebCore::RenderThemeSafari::adjustButtonStyle):
   77629         (WebCore::RenderThemeSafari::popupInternalPaddingLeft):
   77630         (WebCore::RenderThemeSafari::popupInternalPaddingRight):
   77631         (WebCore::RenderThemeSafari::popupInternalPaddingTop):
   77632         (WebCore::RenderThemeSafari::popupInternalPaddingBottom):
   77633         (WebCore::RenderThemeSafari::paintSliderTrack):
   77634         (WebCore::RenderThemeSafari::adjustSliderThumbSize):
   77635         * rendering/RenderThemeWin.cpp:
   77636         (WebCore::RenderThemeWin::supportsFocus):
   77637         (WebCore::RenderThemeWin::determineClassicState):
   77638         (WebCore::RenderThemeWin::getClassicThemeData):
   77639         (WebCore::RenderThemeWin::getThemeData):
   77640         (WebCore::drawControl):
   77641         (WebCore::RenderThemeWin::paintSliderTrack):
   77642         (WebCore::RenderThemeWin::adjustSliderThumbSize):
   77643         * rendering/RenderThemeWin.h:
   77644         * rendering/style/RenderStyle.h:
   77645         (WebCore::InheritedFlags::hasAppearance):
   77646         (WebCore::InheritedFlags::appearance):
   77647         (WebCore::InheritedFlags::setAppearance):
   77648         (WebCore::InheritedFlags::initialAppearance):
   77649         * rendering/style/RenderStyleConstants.h:
   77650 
   77651 2008-10-17  David Hyatt  <hyatt (a] apple.com>
   77652 
   77653         Beginning of the RenderTheme re-architecture (to share more code).  Add the new Theme API header
   77654         file.  Add new USE(NEW_THEME) switch that is enabled on Mac.  The Mac theme will be converted first.
   77655 
   77656         Reviewed by Tim Hatcher
   77657 
   77658         * WebCore.vcproj/WebCore.vcproj:
   77659         * WebCore.xcodeproj/project.pbxproj:
   77660         * config.h:
   77661         * platform/Theme.h: Added.
   77662         (WebCore::Theme::Theme):
   77663         (WebCore::Theme::~Theme):
   77664         (WebCore::Theme::baselinePositionAdjustment):
   77665         (WebCore::Theme::controlHasInactiveAppearance):
   77666         (WebCore::Theme::controlsCanHaveInactiveAppearance):
   77667         (WebCore::Theme::controlsCanHaveHoveredAppearance):
   77668         (WebCore::Theme::controlDrawsBorder):
   77669         (WebCore::Theme::controlDrawsBackground):
   77670         (WebCore::Theme::controlDrawsFocusOutline):
   77671         (WebCore::Theme::selectionColor):
   77672         (WebCore::Theme::textSearchHighlightColor):
   77673         (WebCore::Theme::systemColor):
   77674         (WebCore::Theme::systemFont):
   77675         (WebCore::Theme::caretBlinkFrequency):
   77676         (WebCore::Theme::themeChanged):
   77677         (WebCore::Theme::controlSize):
   77678         (WebCore::Theme::controlFont):
   77679         (WebCore::Theme::controlPadding):
   77680         (WebCore::Theme::controlInternalPadding):
   77681         (WebCore::Theme::controlBorder):
   77682         (WebCore::Theme::controlBorderRadius):
   77683         (WebCore::Theme::paint):
   77684         (WebCore::Theme::inflateControlPaintRect):
   77685         * platform/ThemeTypes.h: Added.
   77686         (WebCore::):
   77687         (WebCore::ControlBox::ControlBox):
   77688         (WebCore::ControlBox::top):
   77689         (WebCore::ControlBox::right):
   77690         (WebCore::ControlBox::bottom):
   77691         (WebCore::ControlBox::left):
   77692         * platform/mac/ThemeMac.h: Added.
   77693         (WebCore::ThemeMac::ThemeMac):
   77694         (WebCore::ThemeMac::~ThemeMac):
   77695         * platform/mac/ThemeMac.mm: Added.
   77696         (WebCore::platformTheme):
   77697         * rendering/RenderTheme.cpp:
   77698         (WebCore::RenderTheme::RenderTheme):
   77699         * rendering/RenderTheme.h:
   77700 
   77701 2008-10-17  Marco Barisione  <marco.barisione (a] collabora.co.uk>
   77702 
   77703         Reviewed by Sam Weinig. Landed by Jan Alonzo.
   77704 
   77705         https://bugs.webkit.org/show_bug.cgi?id=21603
   77706         [GTK] Minor fixes to GOwnPtr
   77707 
   77708         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
   77709         (WebCore::mediaPlayerPrivateErrorCallback):
   77710 
   77711 2008-10-17  Timothy Hatcher  <timothy (a] apple.com>
   77712 
   77713         Recompile the JavaScript functions when removing any listener, so functions that are
   77714         not being debugged can resume normal speed again.
   77715 
   77716         https://bugs.webkit.org/show_bug.cgi?id=21715
   77717 
   77718         Reviewed by Geoffrey Garen.
   77719 
   77720         * bindings/js/JSDOMWindowBase.cpp:
   77721         (WebCore::JSDOMWindowBase::globalExec): Changed an assert into an if check. This assert
   77722         was firing when closing the window and having the recompile fire after. This was an
   77723         overzelious assert now.
   77724         * inspector/JavaScriptDebugServer.cpp:
   77725         (WebCore::JavaScriptDebugServer::didRemoveListener): Start the recompile timer.
   77726         (WebCore::JavaScriptDebugServer::didRemoveLastListener): Removed the recompile timer start.
   77727 
   77728 2008-10-17  Timothy Hatcher  <timothy (a] apple.com>
   77729 
   77730         Fixes a regression where starting a debugging session in
   77731         another Web Inspector window would not show any scripts.
   77732         Also only attach the debugger to only the required Pages.
   77733 
   77734         https://bugs.webkit.org/show_bug.cgi?id=21708
   77735 
   77736         Reviewed by Darin Adler.
   77737 
   77738         * inspector/JavaScriptDebugServer.cpp:
   77739         (WebCore::JavaScriptDebugServer::addListener): Add an assert and
   77740         remove the call to willAddFirstListener(). Add a call to
   77741         didAddListener().
   77742         (WebCore::JavaScriptDebugServer::removeListener): Add an assert
   77743         and call to didRemoveListener().
   77744         (WebCore::JavaScriptDebugServer::pageCreated): Attach the debugger
   77745         if there is a listener interested in the new Page.
   77746         (WebCore::JavaScriptDebugServer::hasListenersInterestedInPage):
   77747         Use hasGlobalListeners() instead of isEmpty().
   77748         (WebCore::JavaScriptDebugServer::sourceParsed): Ditto.
   77749         (WebCore::JavaScriptDebugServer::didAddListener): Added. Attach the
   77750         debugger to the page if non-null, or all pages if page is null.
   77751         (WebCore::JavaScriptDebugServer::didRemoveListener): Added. Detach
   77752         the debugger only if there are no interested listeners.
   77753         (WebCore::JavaScriptDebugServer::didRemoveLastListener): Remove the
   77754         call to Page::setDebuggerForAllPages().
   77755         * inspector/JavaScriptDebugServer.h:
   77756         (WebCore::JavaScriptDebugServer::hasGlobalListeners): Added.
   77757 
   77758 2008-10-15  Brett Wilson  <brettw (a] chromium.org>
   77759 
   77760         Reviewed by Timothy Hatcher.
   77761 
   77762         Have ImageDocument generate its own filename for the title of images
   77763         without relying on the suggested filename from the network layer, which
   77764         may be nonexistant or not relevant.
   77765         https://bugs.webkit.org/show_bug.cgi?id=21565
   77766 
   77767         * loader/ImageDocument.cpp:
   77768         (WebCore::ImageTokenizer::finish):
   77769 
   77770 2008-10-17  Alexey Proskuryakov  <ap (a] webkit.org>
   77771 
   77772         Non-Mac build fix.
   77773 
   77774         * GNUmakefile.am:
   77775         * WebCore.pro:
   77776         * WebCore.vcproj/WebCore.vcproj:
   77777         * WebCoreSources.bkl:
   77778         Added ActiveDOMObject to the build.
   77779 
   77780 2008-10-17  Alexey Proskuryakov  <ap (a] webkit.org>
   77781 
   77782         Reviewed by Sam Weinig.
   77783 
   77784         https://bugs.webkit.org/show_bug.cgi?id=21642
   77785         Abstract out active object tracking
   77786 
   77787         * WebCore.xcodeproj/project.pbxproj:
   77788         * bindings/js/JSDOMBinding.cpp:
   77789         (WebCore::markActiveObjectsForDocument):
   77790         * dom/ActiveDOMObject.cpp: Added.
   77791         (WebCore::ActiveDOMObject::ActiveDOMObject):
   77792         (WebCore::ActiveDOMObject::~ActiveDOMObject):
   77793         (WebCore::ActiveDOMObject::contextDestroyed):
   77794         (WebCore::ActiveDOMObject::stop):
   77795         * dom/ActiveDOMObject.h: Added.
   77796         (WebCore::ActiveDOMObject::document):
   77797         (WebCore::ActiveDOMObject::hasPendingActivity):
   77798         (WebCore::ActiveDOMObject::setPendingActivity):
   77799         (WebCore::ActiveDOMObject::unsetPendingActivity):
   77800         * dom/Document.cpp:
   77801         (WebCore::Document::~Document):
   77802         (WebCore::Document::stopActiveDOMObjects):
   77803         (WebCore::Document::createdActiveDOMObject):
   77804         (WebCore::Document::destroyedActiveDOMObject):
   77805         * dom/Document.h:
   77806         (WebCore::Document::activeDOMObjects):
   77807         * dom/MessagePort.cpp:
   77808         (WebCore::MessagePort::contextDestroyed):
   77809         * dom/MessagePort.h:
   77810         * loader/FrameLoader.cpp:
   77811         (WebCore::FrameLoader::stopLoading):
   77812         * xml/XMLHttpRequest.cpp:
   77813         (WebCore::XMLHttpRequest::XMLHttpRequest):
   77814         (WebCore::XMLHttpRequest::~XMLHttpRequest):
   77815         (WebCore::XMLHttpRequest::associatedFrame):
   77816         (WebCore::XMLHttpRequest::responseXML):
   77817         (WebCore::XMLHttpRequest::callReadyStateChangeListener):
   77818         (WebCore::XMLHttpRequest::initSend):
   77819         (WebCore::XMLHttpRequest::send):
   77820         (WebCore::XMLHttpRequest::createRequest):
   77821         (WebCore::XMLHttpRequest::makeSimpleCrossSiteAccessRequest):
   77822         (WebCore::XMLHttpRequest::makeCrossSiteAccessRequestWithPreflight):
   77823         (WebCore::XMLHttpRequest::handleAsynchronousPreflightResult):
   77824         (WebCore::XMLHttpRequest::loadRequestSynchronously):
   77825         (WebCore::XMLHttpRequest::loadRequestAsynchronously):
   77826         (WebCore::XMLHttpRequest::dropProtection):
   77827         (WebCore::XMLHttpRequest::setRequestHeader):
   77828         (WebCore::XMLHttpRequest::processSyncLoadResults):
   77829         (WebCore::XMLHttpRequest::didFinishLoading):
   77830         (WebCore::XMLHttpRequest::didFinishLoadingPreflight):
   77831         (WebCore::XMLHttpRequest::willSendRequest):
   77832         (WebCore::XMLHttpRequest::accessControlCheck):
   77833         (WebCore::XMLHttpRequest::didReceiveResponsePreflight):
   77834         (WebCore::XMLHttpRequest::stop):
   77835         (WebCore::XMLHttpRequest::contextDestroyed):
   77836         * xml/XMLHttpRequest.h:
   77837         Move activity tracking to a new ActiveDOMObject class.
   77838 
   77839 2008-10-16  David Hyatt  <hyatt (a] apple.com>
   77840 
   77841         Simplify styleForRenderer to avoid confusion.  Callers in the SVG filter code thought "forRenderer" meant
   77842         they would be given a style that corresponded to the RenderObject* passed in.  This is not what the code
   77843         did though.  This patch removes the renderer argument and the Element subclass shadow implementation
   77844         so that confusion like this can't occur again.
   77845 
   77846         Reviewed by Oliver Hunt
   77847 
   77848         * dom/Element.cpp:
   77849         * dom/Element.h:
   77850         * dom/Node.cpp:
   77851         (WebCore::Node::createRendererIfNeeded):
   77852         (WebCore::Node::styleForRenderer):
   77853         * dom/Node.h:
   77854         * html/HTMLOptGroupElement.cpp:
   77855         (WebCore::HTMLOptGroupElement::attach):
   77856         * html/HTMLOptionElement.cpp:
   77857         (WebCore::HTMLOptionElement::attach):
   77858         * svg/SVGClipPathElement.cpp:
   77859         (WebCore::SVGClipPathElement::canvasResource):
   77860         * svg/SVGFEDiffuseLightingElement.cpp:
   77861         (WebCore::SVGFEDiffuseLightingElement::build):
   77862         * svg/SVGFEFloodElement.cpp:
   77863         (WebCore::SVGFEFloodElement::build):
   77864         * svg/SVGFESpecularLightingElement.cpp:
   77865         (WebCore::SVGFESpecularLightingElement::build):
   77866         * svg/SVGGradientElement.cpp:
   77867         (WebCore::SVGGradientElement::buildStops):
   77868         * svg/SVGUseElement.cpp:
   77869         (WebCore::SVGUseElement::attachShadowTree):
   77870 
   77871 2008-10-16  David Hyatt  <hyatt (a] apple.com>
   77872 
   77873         https://bugs.webkit.org/attachment.cgi?bugid=21647
   77874 
   77875         Make RenderStyle inherit from RefCounted so that it works with RefPtr.  RenderStyle was being malloced
   77876         out of the RenderArena.  Years and years ago (before TCMalloc), the plan was to make RenderStyles and
   77877         all their associated sub-structs use the arena.  However only the RenderStyle itself was ever changed
   77878         to use the arena.
   77879 
   77880         At a later point style sharing was implemented, which made using the arena for styles pretty pointless,
   77881         as the bulk of the styles on a given page are actually shared.  Not ever making the sub-structs use the
   77882         arena also limited the usefulness.
   77883 
   77884         Now that we have RefPtr/PassRefPtr to eliminate manual ref/deref and now that we use TCMalloc for fast
   77885         mallocs, there is no reason to keep RenderStyles in the arena.  The benefits of being able to eliminate
   77886         manual ref/deref far outweigh keeping them in the arena.
   77887 
   77888         Reviewed by Adam Roben
   77889 
   77890         * css/CSSStyleSelector.cpp:
   77891         (WebCore::CSSStyleSelector::CSSStyleSelector):
   77892         (WebCore::CSSStyleSelector::~CSSStyleSelector):
   77893         (WebCore::CSSStyleSelector::styleForElement):
   77894         (WebCore::CSSStyleSelector::keyframeStylesForAnimation):
   77895         (WebCore::CSSStyleSelector::pseudoStyleForElement):
   77896         These methods now return a PassRefPtr.  They will null out the m_style variable as they hand it back
   77897         so that it isn't left pointing to the previous style resolve RenderStyle (which is what the old code did).
   77898 
   77899         (WebCore::CSSStyleSelector::updateFont):
   77900         (WebCore::CSSStyleSelector::checkSelector):
   77901         (WebCore::CSSStyleSelector::applyProperty):
   77902         (WebCore::CSSStyleSelector::mapFillSize):
   77903         (WebCore::CSSStyleSelector::mapFillXPosition):
   77904         (WebCore::CSSStyleSelector::mapFillYPosition):
   77905         * css/CSSStyleSelector.h:
   77906         (WebCore::CSSStyleSelector::style):
   77907         * dom/Document.cpp:
   77908         (WebCore::Document::recalcStyle):
   77909         * dom/Element.cpp:
   77910         (WebCore::Element::styleForRenderer):
   77911         (WebCore::Element::recalcStyle):
   77912         (WebCore::Element::computedStyle):
   77913         * dom/Element.h:
   77914         * dom/ElementRareData.h:
   77915         (WebCore::ElementRareData::ElementRareData):
   77916         (WebCore::ElementRareData::resetComputedStyle):
   77917         * dom/Node.cpp:
   77918         (WebCore::Node::diff):
   77919         (WebCore::Node::createRendererIfNeeded):
   77920         (WebCore::Node::styleForRenderer):
   77921         (WebCore::Node::setRenderStyle):
   77922         * dom/Node.h:
   77923         * html/CanvasRenderingContext2D.cpp:
   77924         (WebCore::CanvasRenderingContext2D::setFont):
   77925         * html/HTMLOptGroupElement.cpp:
   77926         (WebCore::HTMLOptGroupElement::attach):
   77927         (WebCore::HTMLOptGroupElement::detach):
   77928         (WebCore::HTMLOptGroupElement::setRenderStyle):
   77929         (WebCore::HTMLOptGroupElement::nonRendererRenderStyle):
   77930         * html/HTMLOptGroupElement.h:
   77931         * html/HTMLOptionElement.cpp:
   77932         (WebCore::HTMLOptionElement::attach):
   77933         (WebCore::HTMLOptionElement::detach):
   77934         (WebCore::HTMLOptionElement::setRenderStyle):
   77935         (WebCore::HTMLOptionElement::nonRendererRenderStyle):
   77936         * html/HTMLOptionElement.h:
   77937         * page/animation/AnimationBase.h:
   77938         (WebCore::AnimationBase::animate):
   77939         * page/animation/AnimationController.cpp:
   77940         (WebCore::AnimationController::updateAnimations):
   77941         * page/animation/AnimationController.h:
   77942         * page/animation/CompositeAnimation.cpp:
   77943         (WebCore::CompositeAnimationPrivate::updateTransitions):
   77944         (WebCore::CompositeAnimationPrivate::updateKeyframeAnimations):
   77945         (WebCore::CompositeAnimationPrivate::animate):
   77946         (WebCore::CompositeAnimation::animate):
   77947         * page/animation/CompositeAnimation.h:
   77948         * page/animation/ImplicitAnimation.cpp:
   77949         (WebCore::ImplicitAnimation::ImplicitAnimation):
   77950         (WebCore::ImplicitAnimation::~ImplicitAnimation):
   77951         (WebCore::ImplicitAnimation::animate):
   77952         (WebCore::ImplicitAnimation::reset):
   77953         (WebCore::ImplicitAnimation::isTargetPropertyEqual):
   77954         (WebCore::ImplicitAnimation::blendPropertyValueInStyle):
   77955         * page/animation/ImplicitAnimation.h:
   77956         (WebCore::ImplicitAnimation::create):
   77957         * page/animation/KeyframeAnimation.cpp:
   77958         (WebCore::KeyframeAnimation::KeyframeAnimation):
   77959         (WebCore::KeyframeAnimation::~KeyframeAnimation):
   77960         (WebCore::KeyframeAnimation::animate):
   77961         (WebCore::KeyframeAnimation::validateTransformFunctionList):
   77962         * page/animation/KeyframeAnimation.h:
   77963         (WebCore::KeyframeAnimation::create):
   77964         (WebCore::KeyframeAnimation::unanimatedStyle):
   77965         * rendering/InlineTextBox.cpp:
   77966         (WebCore::InlineTextBox::paint):
   77967         * rendering/MediaControlElements.cpp:
   77968         (WebCore::MediaControlShadowRootElement::MediaControlShadowRootElement):
   77969         (WebCore::MediaControlInputElement::MediaControlInputElement):
   77970         * rendering/RenderBlock.cpp:
   77971         (WebCore::RenderBlock::styleDidChange):
   77972         (WebCore::RenderBlock::updateFirstLetter):
   77973         * rendering/RenderContainer.cpp:
   77974         (WebCore::RenderContainer::addChild):
   77975         (WebCore::RenderContainer::updateBeforeAfterContentForContainer):
   77976         * rendering/RenderFileUploadControl.cpp:
   77977         (WebCore::RenderFileUploadControl::updateFromElement):
   77978         (WebCore::RenderFileUploadControl::createButtonStyle):
   77979         * rendering/RenderFileUploadControl.h:
   77980         * rendering/RenderFlow.cpp:
   77981         (WebCore::RenderFlow::createAnonymousFlow):
   77982         * rendering/RenderFlow.h:
   77983         * rendering/RenderInline.cpp:
   77984         (WebCore::RenderInline::addChildToFlow):
   77985         * rendering/RenderLayer.cpp:
   77986         (WebCore::RenderLayer::updateScrollCornerStyle):
   77987         (WebCore::RenderLayer::updateResizerStyle):
   77988         (WebCore::RenderLayer::updateReflectionStyle):
   77989         * rendering/RenderListItem.cpp:
   77990         (WebCore::RenderListItem::styleDidChange):
   77991         * rendering/RenderMedia.cpp:
   77992         (WebCore::RenderMedia::createPanel):
   77993         (WebCore::RenderMedia::createTimeDisplay):
   77994         (WebCore::RenderMedia::changeOpacity):
   77995         * rendering/RenderObject.cpp:
   77996         (WebCore::RenderObject::selectionBackgroundColor):
   77997         (WebCore::RenderObject::selectionForegroundColor):
   77998         (WebCore::RenderObject::createAnonymousBlock):
   77999         (WebCore::RenderObject::setAnimatableStyle):
   78000         (WebCore::RenderObject::setStyle):
   78001         (WebCore::RenderObject::setStyleInternal):
   78002         (WebCore::RenderObject::arenaDelete):
   78003         (WebCore::RenderObject::firstLineStyle):
   78004         (WebCore::RenderObject::getPseudoStyle):
   78005         * rendering/RenderObject.h:
   78006         (WebCore::RenderObject::style):
   78007         * rendering/RenderSVGBlock.cpp:
   78008         (WebCore::RenderSVGBlock::setStyle):
   78009         * rendering/RenderSVGBlock.h:
   78010         * rendering/RenderScrollbar.cpp:
   78011         (WebCore::RenderScrollbar::getScrollbarPseudoStyle):
   78012         (WebCore::RenderScrollbar::updateScrollbarPart):
   78013         * rendering/RenderScrollbar.h:
   78014         * rendering/RenderSlider.cpp:
   78015         (WebCore::RenderSlider::styleDidChange):
   78016         (WebCore::RenderSlider::createThumbStyle):
   78017         (WebCore::RenderSlider::updateFromElement):
   78018         * rendering/RenderSlider.h:
   78019         * rendering/RenderTable.cpp:
   78020         (WebCore::RenderTable::addChild):
   78021         * rendering/RenderTableRow.cpp:
   78022         (WebCore::RenderTableRow::addChild):
   78023         * rendering/RenderTableSection.cpp:
   78024         (WebCore::RenderTableSection::addChild):
   78025         * rendering/RenderTextControl.cpp:
   78026         (WebCore::RenderTextControl::styleDidChange):
   78027         (WebCore::RenderTextControl::createInnerBlockStyle):
   78028         (WebCore::RenderTextControl::createInnerTextStyle):
   78029         (WebCore::RenderTextControl::createResultsButtonStyle):
   78030         (WebCore::RenderTextControl::createCancelButtonStyle):
   78031         (WebCore::RenderTextControl::createSubtreeIfNeeded):
   78032         (WebCore::RenderTextControl::updatePlaceholderVisibility):
   78033         * rendering/RenderTextControl.h:
   78034         * rendering/TextControlInnerElements.cpp:
   78035         (WebCore::TextControlInnerElement::attachInnerElement):
   78036         * rendering/TextControlInnerElements.h:
   78037         * rendering/style/KeyframeList.cpp:
   78038         (WebCore::KeyframeList::clear):
   78039         (WebCore::KeyframeList::operator==):
   78040         (WebCore::KeyframeList::insert):
   78041         * rendering/style/KeyframeList.h:
   78042         (WebCore::KeyframeValue::KeyframeValue):
   78043         (WebCore::KeyframeValue::~KeyframeValue):
   78044         (WebCore::KeyframeValue::key):
   78045         (WebCore::KeyframeValue::style):
   78046         * rendering/style/RenderStyle.cpp:
   78047         (WebCore::defaultStyle):
   78048         (WebCore::RenderStyle::create):
   78049         (WebCore::RenderStyle::createDefaultStyle):
   78050         (WebCore::RenderStyle::clone):
   78051         (WebCore::RenderStyle::RenderStyle):
   78052         (WebCore::RenderStyle::getCachedPseudoStyle):
   78053         (WebCore::RenderStyle::addCachedPseudoStyle):
   78054         * rendering/style/RenderStyle.h:
   78055         (WebCore::):
   78056         (WebCore::InheritedFlags::operator!=):
   78057         * svg/SVGClipPathElement.cpp:
   78058         (WebCore::SVGClipPathElement::canvasResource):
   78059         * svg/SVGGradientElement.cpp:
   78060         (WebCore::SVGGradientElement::buildStops):
   78061         * svg/SVGStyledElement.cpp:
   78062         (WebCore::SVGStyledElement::resolveStyle):
   78063         * svg/SVGStyledElement.h:
   78064         * svg/SVGUseElement.cpp:
   78065         (WebCore::SVGUseElement::recalcStyle):
   78066         (WebCore::SVGUseElement::attachShadowTree):
   78067 
   78068 2008-10-16  Kenneth Russell  <kenneth.russell (a] sun.com>
   78069 
   78070         Reviewed and landed by Anders Carlsson.
   78071 
   78072         https://bugs.webkit.org/show_bug.cgi?id=21587
   78073         NPN_PluginThreadAsyncCall does not work properly
   78074 
   78075         * plugins/PluginMainThreadScheduler.cpp:
   78076         (WebCore::PluginMainThreadScheduler::dispatchCalls):
   78077         Make sure to set m_callPending to false once the queue has been cleared.
   78078 
   78079 2008-10-15  Alexey Proskuryakov  <ap (a] webkit.org>
   78080 
   78081         Reviewed by Darin Adler.
   78082 
   78083         https://bugs.webkit.org/show_bug.cgi?id=21609
   78084         Make MessagePorts protect their peers across heaps
   78085 
   78086         * dom/MessagePort.cpp:
   78087         (WebCore::MessagePort::MessagePort):
   78088         * dom/MessagePort.h:
   78089         (WebCore::MessagePort::setJSWrapperIsKnownToBeInaccessible):
   78090         (WebCore::MessagePort::jsWrapperIsKnownToBeInaccessible):
   78091         Track objects whose JS wrappers are no longer reachable in MessagePort. Unfortunately, this
   78092         means that the implementation object knows about JS bindings - but it is not possible to
   78093         access JS wrappers from another heap/thread.
   78094 
   78095         * bindings/js/JSDOMBinding.cpp:
   78096         (WebCore::markCrossHeapDependentObjectsForDocument):
   78097         * bindings/js/JSDOMBinding.h:
   78098         * bindings/js/JSDOMWindowBase.cpp:
   78099         (WebCore::JSDOMWindowBase::markCrossHeapDependentObjects):
   78100         * bindings/js/JSDOMWindowBase.h:
   78101         Implement cross-heap dependency tracking for entangled MessagePorts. If a wrapper object
   78102         hasn't been marked normally, it is marked as inaccessible. It is then marked manually,
   78103         as long as its entangled port is accessible itself.
   78104 
   78105 2008-10-15  Jon Honeycutt  <jhoneycutt (a] apple.com>
   78106 
   78107         Remove unneeded check of whether a Page defers loading before running it
   78108         in a modal dialog.
   78109 
   78110         No test possible.
   78111 
   78112         Reviewed by Tim Hatcher.
   78113 
   78114         * page/Chrome.cpp:
   78115 
   78116 2008-10-15  Geoffrey Garen  <ggaren (a] apple.com>
   78117 
   78118         Reviewed by Cameron Zwarich.
   78119 
   78120         Fixed https://bugs.webkit.org/show_bug.cgi?id=21345
   78121         Start the debugger without reloading the inspected page
   78122 
   78123         * WebCore.base.exp: New symbols.
   78124 
   78125         * ForwardingHeaders/kjs/CollectorHeapIterator.h: Copied from ForwardingHeaders/kjs/ustring.h.
   78126         * ForwardingHeaders/kjs/Parser.h: Copied from ForwardingHeaders/kjs/ustring.h.
   78127         * WebCore.xcodeproj/project.pbxproj: New forwarding headers.
   78128 
   78129         * inspector/InspectorController.cpp:
   78130         (WebCore::InspectorController::setWindowVisible):
   78131         (WebCore::InspectorController::windowScriptObjectAvailable):
   78132         (WebCore::InspectorController::startDebugging):
   78133         * inspector/InspectorController.h: Renamed startDebuggingAndReloadInspectedPage
   78134         to startDebugging, and changed its behavior to match.
   78135 
   78136         * inspector/JavaScriptDebugListener.h:
   78137         * inspector/JavaScriptDebugServer.cpp:
   78138         (WebCore::JavaScriptDebugServer::JavaScriptDebugServer):
   78139         (WebCore::JavaScriptDebugServer::addListener):
   78140         (WebCore::JavaScriptDebugServer::removeListener):
   78141         (WebCore::JavaScriptDebugServer::recompileAllJSFunctions):
   78142         (WebCore::JavaScriptDebugServer::willAddFirstListener):
   78143         (WebCore::JavaScriptDebugServer::didRemoveLastListener):
   78144         * inspector/JavaScriptDebugServer.h: Refactored the
   78145         JavaScriptDebugServer to centralize handling of adding the first listener
   78146         and removing the last. Then, added a feature to recompile all JS functions
   78147         in these cases. This allows us to dynamically add and remove hooks like
   78148         the debugger hooks without reloading the page.
   78149 
   78150         * inspector/front-end/ScriptsPanel.js:
   78151         * English.lproj/localizedStrings.js: Updated for startDebuggingAndReloadInspectedPage =>
   78152         startDebugging rename. Removed all UI that claimed that starting the
   78153         debugger would reload the page.
   78154 
   78155 2008-10-15  Adele Peterson  <adele (a] apple.com>
   78156 
   78157         Attempt to fix the Tiger build.
   78158 
   78159         * platform/network/mac/ResourceHandleMac.mm:
   78160 
   78161 2008-10-15  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   78162 
   78163         Build fix attempt.
   78164 
   78165         Try to fix static/non-static declaration of g_string_append_uri_escape
   78166         by renaming that string. Another look needs to be taken.
   78167 
   78168         * platform/gtk/guriescape.c:
   78169         (_webcore_g_string_append_uri_escaped):
   78170         (_webcore_g_uri_escape_string):
   78171 
   78172 2008-10-15  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   78173 
   78174         Build fix.
   78175 
   78176         m_animatingImageType is gone.
   78177 
   78178         * platform/graphics/cairo/ImageCairo.cpp:
   78179         (WebCore::BitmapImage::BitmapImage):
   78180 
   78181 2008-10-15  Jeff Cook <cookiecaper (a] gmail.com>
   78182 
   78183         Reviewed by Holger Freyther.
   78184 
   78185         Stop SIGSEGV when leaving a page with a Flash object by reordering
   78186         window destruction and plugin stop.
   78187 
   78188         See https://bugs.webkit.org/show_bug.cgi?id=20779
   78189 
   78190         * plugins/gtk/PluginViewGtk.cpp:
   78191         (WebCore::PluginView::stop):
   78192 
   78193 2008-10-15  Adele Peterson  <adele (a] apple.com>
   78194 
   78195         Reviewed by Sam Weinig.
   78196 
   78197         Implement didSendBodyData delegate method, and use older code path when that delegate doesn't exist.
   78198 
   78199         * platform/network/ResourceHandle.h:
   78200         * platform/network/mac/FormDataStreamMac.mm: (WebCore::formRead):
   78201         * platform/network/mac/ResourceHandleMac.mm:
   78202         (WebCore::ResourceHandle::didSendBodyDataDelegateExists):
   78203         (WebCore::ResourceHandle::start):
   78204         (WebCore::ResourceHandle::cancel):
   78205         (-[WebCoreResourceHandleAsDelegate connection:willSendRequest:redirectResponse:]):
   78206         (-[WebCoreResourceHandleAsDelegate connection:didSendBodyData:totalBytesWritten:totalBytesExpectedToWrite:]):
   78207         (-[WebCoreResourceHandleAsDelegate connectionDidFinishLoading:]):
   78208         (-[WebCoreResourceHandleAsDelegate connection:didFailWithError:]):
   78209 
   78210 2008-10-15  Peter Kasting  <pkasting (a] google.com>
   78211 
   78212         Reviewed by David Hyatt.
   78213 
   78214         Qt build bustage fix.
   78215 
   78216         * platform/graphics/qt/StillImageQt.h:
   78217         (WebCore::StillImage::destroyDecodedData):
   78218 
   78219 2008-10-15  David Hyatt  <hyatt (a] apple.com>
   78220 
   78221         Make sure scrollbar styles get deleted if they aren't assigned to a renderer.
   78222 
   78223         Reviewed by Mark Rowe
   78224 
   78225         * rendering/RenderScrollbar.cpp:
   78226         (WebCore::RenderScrollbar::getScrollbarPseudoStyle):
   78227         (WebCore::RenderScrollbar::updateScrollbarPart):
   78228 
   78229 2008-10-15  Peter Kasting  <pkasting (a] google.com>
   78230 
   78231         Reviewed by David Hyatt.
   78232 
   78233         https://bugs.webkit.org/show_bug.cgi?id=19663 (Second attempt)
   78234         Account for paint and timer lag when animating images.  Also pretend
   78235         that images whose animations were paused (by becoming invisible)
   78236         continued to animate, by "catching up" to the correct frame when they're
   78237         shown again.
   78238 
   78239         * platform/graphics/BitmapImage.cpp:
   78240         (WebCore::BitmapImage::BitmapImage):
   78241         (WebCore::BitmapImage::destroyDecodedData):
   78242         (WebCore::BitmapImage::cacheFrame):
   78243         (WebCore::BitmapImage::frameIsCompleteAtIndex):
   78244         (WebCore::BitmapImage::frameDurationAtIndex):
   78245         (WebCore::BitmapImage::frameHasAlphaAtIndex):
   78246         (WebCore::BitmapImage::repetitionCount):
   78247         (WebCore::BitmapImage::shouldAnimate):
   78248         (WebCore::BitmapImage::startAnimation):
   78249         (WebCore::BitmapImage::resetAnimation):
   78250         (WebCore::BitmapImage::advanceAnimation):
   78251         (WebCore::BitmapImage::internalAdvanceAnimation):
   78252         (WebCore::BitmapImage::notifyObserverAndTrimDecodedData):
   78253         * platform/graphics/BitmapImage.h:
   78254         (WebCore::FrameData::FrameData):
   78255         (WebCore::BitmapImage::):
   78256         * platform/graphics/GeneratedImage.h:
   78257         (WebCore::GeneratedImage::destroyDecodedData):
   78258         * platform/graphics/Image.h:
   78259         * platform/graphics/cairo/ImageCairo.cpp:
   78260         (WebCore::FrameData::clear):
   78261         (WebCore::BitmapImage::BitmapImage):
   78262         (WebCore::BitmapImage::draw):
   78263         * platform/graphics/cg/ImageCG.cpp:
   78264         (WebCore::FrameData::clear):
   78265         (WebCore::BitmapImage::BitmapImage):
   78266         (WebCore::BitmapImage::draw):
   78267         * platform/graphics/cg/PDFDocumentImage.h:
   78268         (WebCore::PDFDocumentImage::destroyDecodedData):
   78269         * platform/graphics/qt/ImageQt.cpp:
   78270         (WebCore::FrameData::clear):
   78271         (WebCore::BitmapImage::draw):
   78272         * platform/graphics/wx/ImageWx.cpp:
   78273         (WebCore::FrameData::clear):
   78274         (WebCore::BitmapImage::draw):
   78275         * svg/graphics/SVGImage.h:
   78276         (WebCore::SVGImage::destroyDecodedData):
   78277 
   78278 2008-10-14  Maxime Britto  <britto (a] apple.com>
   78279 
   78280         Reviewed by Darin Adler, tweaked and landed by Beth.
   78281 
   78282         * WebCore.base.exp: Exposes two functions to be able to create a
   78283         selection from a point on the screen. Also exposes the new
   78284         TextIterator::currentNode function.
   78285         * WebCore/editing/TextIterator.cpp:
   78286         (TextIterator::currentNode) : New function that returns the current
   78287         text node or NULL if there is no text node.
   78288 
   78289 2008-10-15  Marco Barisione  <marco.barisione (a] collabora.co.uk>
   78290 
   78291         Reviewed by Holger Freyther.
   78292 
   78293         http://bugs.webkit.org/show_bug.cgi?id=21211
   78294         [CURL] Upload doesn't work because cancel is called
   78295 
   78296         FormDataStream::read returns 0 when retrieving data from the form
   78297         fails, but also when there is no more data to send. This means that
   78298         ResourceHandleManager::cancel is always called even when the data was
   78299         successfully sent.
   78300 
   78301         Check if there are more elements in the form before calling
   78302         FormDataStream::read.
   78303 
   78304         * platform/network/curl/FormDataStreamCurl.cpp:
   78305         (WebCore::FormDataStream::hasMoreElements):
   78306         * platform/network/curl/FormDataStreamCurl.h:
   78307         * platform/network/curl/ResourceHandleManager.cpp:
   78308         (WebCore::readCallback):
   78309 
   78310 2008-10-15  Marco Barisione  <marco.barisione (a] collabora.co.uk>
   78311 
   78312         Reviewed by Holger Freyther.
   78313 
   78314         http://bugs.webkit.org/show_bug.cgi?id=20664
   78315         [GTK] File names are not always encodable in UTF-8
   78316 
   78317         On Linux file names are just raw data and cannot always be directly
   78318         encoded in UTF-8 or in any other encodings, so we escape them before
   78319         storing the file name in a String and unescape them before passing
   78320         them to native functions handling files.
   78321 
   78322         * GNUmakefile.am:
   78323         * platform/FileSystem.h:
   78324         * platform/gtk/FileChooserGtk.cpp:
   78325         (WebCore::stringByAdoptingFileSystemRepresentation):
   78326         (WebCore::FileChooser::basenameForWidth):
   78327         * platform/gtk/FileSystemGtk.cpp:
   78328         (WebCore::filenameToString):
   78329         (WebCore::filenameFromString):
   78330         (WebCore::filenameForDisplay):
   78331         (WebCore::fileExists):
   78332         (WebCore::deleteFile):
   78333         (WebCore::deleteEmptyDirectory):
   78334         (WebCore::getFileSize):
   78335         (WebCore::getFileModificationTime):
   78336         (WebCore::makeAllDirectories):
   78337         (WebCore::homeDirectoryPath):
   78338         (WebCore::pathGetFileName):
   78339         (WebCore::listDirectory):
   78340         * platform/gtk/KURLGtk.cpp:
   78341         (WebCore::KURL::fileSystemPath):
   78342         * platform/gtk/SharedBufferGtk.cpp:
   78343         (WebCore::SharedBuffer::createWithContentsOfFile):
   78344         * platform/gtk/guriescape.c: Added.
   78345         (is_valid):
   78346         (gunichar_ok):
   78347         (g_string_append_uri_escaped):
   78348         (_webcore_g_uri_escape_string):
   78349         * platform/gtk/guriescape.h: Added.
   78350 
   78351 2008-10-15  Dirk Schulze  <vbs85 (a] gmx.de>
   78352 
   78353         Reviewed by Eric Seidel.
   78354 
   78355         - part of https://bugs.webkit.org/show_bug.cgi?id=20543
   78356           Moved gradient spread method out of SVG into the GraphicsContext.
   78357 
   78358         * platform/graphics/GraphicsContext.cpp:
   78359         (WebCore::GraphicsContext::spreadMethod):
   78360         (WebCore::GraphicsContext::setSpreadMethod):
   78361         * platform/graphics/GraphicsContext.h:
   78362         (WebCore::):
   78363         * platform/graphics/GraphicsContextPrivate.h:
   78364         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   78365         (WebCore::applySpreadMethod):
   78366         (WebCore::GraphicsContext::fillPath):
   78367         (WebCore::GraphicsContext::strokePath):
   78368         * platform/graphics/qt/GraphicsContextQt.cpp:
   78369         (WebCore::applySpreadMethod):
   78370         (WebCore::GraphicsContext::fillPath):
   78371         (WebCore::GraphicsContext::strokePath):
   78372         * svg/GradientAttributes.h:
   78373         (WebCore::GradientAttributes::GradientAttributes):
   78374         (WebCore::GradientAttributes::spreadMethod):
   78375         (WebCore::GradientAttributes::setSpreadMethod):
   78376         * svg/SVGGradientElement.cpp:
   78377         (WebCore::SVGGradientElement::parseMappedAttribute):
   78378         * svg/SVGGradientElement.h:
   78379         * svg/SVGLinearGradientElement.cpp:
   78380         (WebCore::SVGLinearGradientElement::collectGradientProperties):
   78381         * svg/SVGRadialGradientElement.cpp:
   78382         (WebCore::SVGRadialGradientElement::collectGradientProperties):
   78383         * svg/graphics/SVGPaintServerGradient.cpp:
   78384         (WebCore::operator<<):
   78385         (WebCore::SVGPaintServerGradient::SVGPaintServerGradient):
   78386         (WebCore::SVGPaintServerGradient::spreadMethod):
   78387         (WebCore::SVGPaintServerGradient::setGradientSpreadMethod):
   78388         (WebCore::SVGPaintServerGradient::externalRepresentation):
   78389         * svg/graphics/SVGPaintServerGradient.h:
   78390         * svg/graphics/cairo/SVGPaintServerGradientCairo.cpp:
   78391         (WebCore::SVGPaintServerGradient::setup):
   78392         * svg/graphics/qt/SVGPaintServerGradientQt.cpp:
   78393         (WebCore::SVGPaintServerGradient::setup):
   78394 
   78395 2008-10-09  Darin Fisher  <darin (a] chromium.org>
   78396 
   78397         Reviewed by Sam Weinig.
   78398 
   78399         Make pan scrolling a platform configurable option
   78400         https://bugs.webkit.org/show_bug.cgi?id=21515
   78401 
   78402         * page/EventHandler.cpp:
   78403         (WebCore::EventHandler::handleAutoscroll):
   78404         (WebCore::EventHandler::autoscrollTimerFired):
   78405         (WebCore::EventHandler::stopAutoscrollTimer):
   78406         (WebCore::EventHandler::handleMousePressEvent):
   78407         (WebCore::EventHandler::keyEvent):
   78408 
   78409 2008-10-10  Darin Fisher  <darin (a] chromium.org>
   78410 
   78411         Reviewed by Darin Adler.
   78412 
   78413         Add some PLATFORM(CHROMIUM) ifdefs to WebCore
   78414         https://bugs.webkit.org/show_bug.cgi?id=21511
   78415 
   78416         * loader/FTPDirectoryDocument.cpp:
   78417         * loader/FTPDirectoryParser.cpp:
   78418         * loader/FrameLoader.cpp:
   78419         (WebCore::FrameLoader::finishedLoadingDocument):
   78420         * platform/ContextMenuItem.h:
   78421         * platform/Cursor.h:
   78422         * platform/DragData.h:
   78423         * platform/DragImage.h:
   78424         * platform/Pasteboard.h:
   78425         * platform/PlatformKeyboardEvent.h:
   78426         (WebCore::PlatformKeyboardEvent::isSystemKey):
   78427         * platform/PlatformMenuDescription.h:
   78428         * platform/PlatformMouseEvent.h:
   78429         * platform/PlatformWheelEvent.h:
   78430         * platform/PopupMenu.h:
   78431         * platform/ScrollView.h:
   78432         * platform/Widget.h:
   78433         * platform/network/NetworkStateNotifier.h:
   78434 
   78435 2008-10-14  Chris Marrin  <cmarrin (a] apple.com>
   78436 
   78437         Reviewed by Darin Adler.
   78438 
   78439         Fixed https://bugs.webkit.org/show_bug.cgi?id=21490
   78440         Optimize keyframe style sheet changes by avoiding styleSheetChanged()
   78441 
   78442         Test: css3/change-keyframes.html
   78443 
   78444         * css/WebKitCSSKeyframesRule.cpp:
   78445         (WebCore::WebKitCSSKeyframesRule::append):
   78446         (WebCore::WebKitCSSKeyframesRule::deleteRule):
   78447 
   78448 2008-10-14  David Hyatt  <hyatt (a] apple.com>
   78449 
   78450         https://bugs.webkit.org/show_bug.cgi?id=21595
   78451 
   78452         Clean up background and overflow propagation from the body to the viewport.  Make it match the
   78453         latest CSS2.1 spec thinking.
   78454 
   78455         Reviewed by Adam Roben
   78456 
   78457         Added many tests at fast/body-propagation/.  These are Simon Pieters' tests of propagation handling
   78458         (available at http://simon.html5.org/test/css/magic-body/).
   78459 
   78460         * dom/Document.cpp:
   78461         (WebCore::Document::body):
   78462         * page/FrameView.cpp:
   78463         (WebCore::FrameView::layout):
   78464         * rendering/RenderBox.cpp:
   78465         (WebCore::RenderBox::styleDidChange):
   78466         (WebCore::RenderBox::paintRootBoxDecorations):
   78467         (WebCore::RenderBox::paintBoxDecorations):
   78468         (WebCore::RenderBox::repaintLayerRectsForImage):
   78469 
   78470 2008-10-14  Dimitri Glazkov  <dglazkov (a] chromium.org>
   78471 
   78472         Reviewed and landed by Sam Weinig.
   78473 
   78474         Due to change in spec (http://dev.w3.org/2006/webapi/selectors-api/#namespace),
   78475         remove NSResolver code, leaving only checking for selectors that need
   78476         NS resolution and throwing a coresponding error.
   78477 
   78478         * WebCore.pro:
   78479         * WebCore.vcproj/WebCore.vcproj:
   78480         * WebCore.xcodeproj/project.pbxproj:
   78481         * WebCoreSources.bkl:
   78482         * bindings/js/JSDocumentCustom.cpp:
   78483         * bindings/js/JSDocumentFragmentCustom.cpp:
   78484         * bindings/js/JSElementCustom.cpp:
   78485         * bindings/js/JSNSResolver.cpp: Removed.
   78486         * bindings/js/JSNSResolver.h: Removed.
   78487         * dom/Document.idl:
   78488         * dom/DocumentFragment.idl:
   78489         * dom/Element.idl:
   78490         * dom/NSResolver.h: Removed.
   78491         * dom/NSResolver.idl: Removed.
   78492         * dom/Node.h:
   78493         * dom/Node.cpp:
   78494         (WebCore::forEachTagSelector):
   78495         (WebCore::SelectorNeedsNamespaceResolutionFunctor::operator()):
   78496         (WebCore::selectorNeedsNamespaceResolution):
   78497         (WebCore::Node::querySelector):
   78498         (WebCore::Node::querySelectorAll):
   78499 
   78500 2008-10-14  Darin Adler  <darin (a] apple.com>
   78501 
   78502         Reviewed by Sam Weinig (all but the FormDataListItem rename).
   78503 
   78504         - https://bugs.webkit.org/show_bug.cgi?id=21593
   78505           Bug 21593: add multiple-file support to HTMLFormElement
   78506 
   78507         * html/FormDataList.cpp: Removed appendFile since it's now inline.
   78508         Also took incorrect old copyrights off of this file that are left
   78509         over from when it was split.
   78510         * html/FormDataList.h: Ditto. Renamed FormDataListItem to Item and
   78511         made it a member of FormDataList. Changed it to hold a File object
   78512         instead of a path. And made its data members private. Changed
   78513         FormDataList::appendFile accordingly.
   78514 
   78515         * html/HTMLFormElement.cpp:
   78516         (WebCore::HTMLFormElement::formData): Updated for above changes.
   78517         Removed the code that special-cases HTMLInputElement, because now
   78518         the FormDataListItem has everything we need. And if there are
   78519         multiple files, we'll get multiple list items for them.
   78520 
   78521         * html/HTMLInputElement.cpp:
   78522         (WebCore::HTMLInputElement::appendFormData): Changed the code for
   78523         <input type=file> to use File objects instead of path strings and
   78524         also to append multiple files if the file list has them.
   78525 
   78526 2008-10-14  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   78527 
   78528         Reviewed by Simon.
   78529 
   78530         Fix QtWebKit scrollbar painting errors
   78531 
   78532         * platform/qt/ScrollbarThemeQt.cpp:
   78533         (WebCore::ScrollbarThemeQt::paint):
   78534         (WebCore::ScrollbarThemeQt::paintScrollCorner):
   78535 
   78536 2008-10-14  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   78537 
   78538         Reviewed by Simon.
   78539 
   78540         Fix scrollbar arrows for horizontal scrollbars
   78541 
   78542         * platform/qt/ScrollbarThemeQt.cpp:
   78543         (WebCore::styleOptionSlider):
   78544 
   78545 2008-10-14  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   78546 
   78547         Reviewed by Simon.
   78548 
   78549         Use style-painter to draw scrollbars in ScrollbarThemeQt
   78550 
   78551         This has the benefit of setting up the painter properly without
   78552         antialiasing and saving and restoring the brush. It also ensures
   78553         that we use the style of the QWebView over the QApplication style
   78554         if possible.
   78555 
   78556         * platform/qt/RenderThemeQt.cpp:
   78557         (WebCore::StylePainter::StylePainter):
   78558         (WebCore::StylePainter::init):
   78559         * platform/qt/RenderThemeQt.h:
   78560         * platform/qt/ScrollbarThemeQt.cpp:
   78561         (WebCore::ScrollbarThemeQt::paint):
   78562 
   78563 2008-10-13  David Hyatt  <hyatt (a] apple.com>
   78564 
   78565         Add support for CSS transitions on some SVG properties.  This patch is intended to be a guideline
   78566         for how to add support for the rest.
   78567 
   78568         Reviewed by Oliver Hunt
   78569 
   78570         * page/animation/AnimationBase.cpp:
   78571         (WebCore::ensurePropertyMap):
   78572         * rendering/style/RenderStyle.h:
   78573         (WebCore::RenderStyle::fillOpacity):
   78574         (WebCore::RenderStyle::setFillOpacity):
   78575         (WebCore::RenderStyle::strokeOpacity):
   78576         (WebCore::RenderStyle::setStrokeOpacity):
   78577         (WebCore::RenderStyle::floodOpacity):
   78578         (WebCore::RenderStyle::setFloodOpacity):
   78579 
   78580 2008-10-13  David Hyatt  <hyatt (a] apple.com>
   78581 
   78582         <rdar://problem/6289712> REGRESSION(r37432-37490): Scroll bar is not drawn in Bookmark View, Preferences sheets.
   78583 
   78584         Fix for disabled scrollbars not painting in Windows Safari.  Make sure that the Windows theme
   78585         implements paintTrackBackground so that when the thumb is not present the track still paints.
   78586 
   78587         Reviewed by Oliver Hunt
   78588 
   78589         * platform/ScrollbarThemeComposite.cpp:
   78590         (WebCore::ScrollbarThemeComposite::paint):
   78591         * platform/win/ScrollbarThemeWin.cpp:
   78592         (WebCore::ScrollbarThemeWin::paintTrackBackground):
   78593         * platform/win/ScrollbarThemeWin.h:
   78594 
   78595 2008-10-13  David Hyatt  <hyatt (a] apple.com>
   78596 
   78597         Fix over-invalidation of native scrollbars.
   78598 
   78599         Reviewed by Oliver Hunt
   78600 
   78601         * platform/Scrollbar.h:
   78602         (WebCore::Scrollbar::styleChanged):
   78603         * platform/mac/ScrollbarThemeMac.mm:
   78604         (+[ScrollbarPrefsObserver appearancePrefsChanged:]):
   78605         * rendering/RenderScrollbar.cpp:
   78606         (WebCore::RenderScrollbar::styleChanged):
   78607 
   78608 2008-10-13  Alp Toker  <alp (a] nuanti.com>
   78609 
   78610         Fix autotools dist build target by listing recently added header
   78611         files only. Not reviewed.
   78612 
   78613         * GNUmakefile.am:
   78614 
   78615 2008-10-13  Mark Rowe  <mrowe (a] apple.com>
   78616 
   78617         Reviewed by Brady Eidson.
   78618 
   78619         Don't run a SQLite query on every iteration of the sync thread when the query
   78620         will touch a large portion of the icon database while performing no useful work.
   78621 
   78622         * loader/icon/IconDatabase.cpp:
   78623         (WebCore::IconDatabase::writeToDatabase): Don't call checkForDanglingPageURLs unless
   78624         we modified the database.
   78625         (WebCore::IconDatabase::checkForDanglingPageURLs): Don't do any work in a release build
   78626         unless we've been asked to prune any dangling pageURLs that we find.
   78627 
   78628 2008-10-13  Maciej Stachowiak  <mjs (a] apple.com>
   78629 
   78630         Rubber stamped by Mark Rowe.
   78631 
   78632         - use gcc 4.2 when building with Xcode 3.1 or newer on Leopard, even though this is not the default
   78633 
   78634         * Configurations/DebugRelease.xcconfig:
   78635 
   78636 2008-10-13  David Hyatt  <hyatt (a] apple.com>
   78637 
   78638         Make dropdown lists on Windows work with CSS custom scrollbars.
   78639 
   78640         Reviewed by Adele
   78641 
   78642         * platform/PopupMenu.h:
   78643         (WebCore::PopupMenu::scrollbarCornerPresent):
   78644         * platform/PopupMenuClient.h:
   78645         * platform/win/PopupMenuWin.cpp:
   78646         (WebCore::PopupMenu::show):
   78647         * rendering/RenderMenuList.cpp:
   78648         (WebCore::RenderMenuList::createScrollbar):
   78649         * rendering/RenderMenuList.h:
   78650         * rendering/RenderTextControl.cpp:
   78651         (WebCore::RenderTextControl::createScrollbar):
   78652         * rendering/RenderTextControl.h:
   78653 
   78654 2008-10-13  Chris Fleizach  <cfleizach (a] apple.com>
   78655 
   78656         Reviewed by Beth Dakin.
   78657 
   78658         <rdar://problem/6271864> Links from image maps not being included in AXLinkUIElements
   78659 
   78660         Links from image maps were not being included in the web area's AXLinkUIElements attribute.
   78661         The position of image map links was being reported incorrectly and the parent-chain
   78662         hierarchy for image map links was incorrect because image map links did not have a reference
   78663         to their parent image.
   78664 
   78665         Test: accessibility/document-links.html
   78666 
   78667         * page/AccessibilityImageMapLink.cpp:
   78668         (WebCore::AccessibilityImageMapLink::parentObject):
   78669         (WebCore::AccessibilityImageMapLink::actionElement):
   78670         (WebCore::AccessibilityImageMapLink::elementRect):
   78671         * page/AccessibilityImageMapLink.h:
   78672         (WebCore::AccessibilityImageMapLink::setHTMLMapElement):
   78673         (WebCore::AccessibilityImageMapLink::setParent):
   78674         * page/AccessibilityObject.cpp:
   78675         * page/AccessibilityObject.h:
   78676         * page/AccessibilityRenderObject.cpp:
   78677         (WebCore::AccessibilityRenderObject::accessibilityParentForImageMap):
   78678         (WebCore::AccessibilityRenderObject::getDocumentLinks):
   78679         (WebCore::AccessibilityRenderObject::addChildren):
   78680         * page/AccessibilityRenderObject.h:
   78681         * page/mac/AccessibilityObjectWrapper.mm:
   78682         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
   78683 
   78684 2008-10-13  David Hyatt  <hyatt (a] apple.com>
   78685 
   78686         Make RenderListBox work with CSS scrollbars.  Refactoring this code to support creation/destruction in
   78687         the same way RenderLayer does also fixes a bug where the PLT would assert on the next-to-last page (no
   78688         idea how to make a test case for that, though, since I couldn't repro without running the whole PLT).
   78689 
   78690         Reviewed by Tim Hatcher
   78691 
   78692         Added scrollbars/listbox-scrollbar-combinations.html
   78693 
   78694         * rendering/RenderListBox.cpp:
   78695         (WebCore::RenderListBox::~RenderListBox):
   78696         (WebCore::RenderListBox::updateFromElement):
   78697         (WebCore::RenderListBox::createScrollbar):
   78698         (WebCore::RenderListBox::destroyScrollbar):
   78699         (WebCore::RenderListBox::setHasVerticalScrollbar):
   78700         * rendering/RenderListBox.h:
   78701 
   78702 2008-10-13  David Hyatt  <hyatt (a] apple.com>
   78703 
   78704         In order to always match the :corner-present pseudo-class properly, delay initial updating of
   78705         scrollbar styles until the layer has the scrollbars in its member variables.
   78706 
   78707         Reviewed by Tim Hatcher
   78708 
   78709         * rendering/RenderLayer.cpp:
   78710         (WebCore::RenderLayer::setHasHorizontalScrollbar):
   78711         (WebCore::RenderLayer::setHasVerticalScrollbar):
   78712         * rendering/RenderScrollbar.cpp:
   78713         (WebCore::RenderScrollbar::RenderScrollbar):
   78714 
   78715 2008-10-13  Sam Weinig  <sam (a] webkit.org>
   78716 
   78717         Reviewed by Dan Bernstein.
   78718 
   78719         Fix for https://bugs.webkit.org/show_bug.cgi?id=21577
   78720         5 false positive StructureID leaks
   78721 
   78722         In WebCore, we intentionally leak the common JSGlobalData which in turn
   78723         leaks 5 StructureIDs.  Use the new JSGlobalData::createLeaked in order to
   78724         ignore the StructureIDs leaked within.
   78725 
   78726         * bindings/js/JSDOMWindowBase.cpp:
   78727         (WebCore::JSDOMWindowBase::commonJSGlobalData):
   78728 
   78729 2008-10-13  David Hyatt  <hyatt (a] apple.com>
   78730 
   78731         Add support for the :corner-present pseudoclass, which enables scrollbar pieces to change their
   78732         artwork based on whether there is a scrollbar corner present.
   78733 
   78734         Reviewed by Tim Hatcher
   78735 
   78736         * css/CSSSelector.cpp:
   78737         (WebCore::CSSSelector::extractPseudoType):
   78738         * css/CSSSelector.h:
   78739         (WebCore::CSSSelector::):
   78740         * css/CSSStyleSelector.cpp:
   78741         (WebCore::CSSStyleSelector::SelectorChecker::checkScrollbarPseudoClass):
   78742         * platform/ScrollView.cpp:
   78743         (WebCore::ScrollView::scrollbarCornerPresent):
   78744         * platform/ScrollView.h:
   78745         * platform/ScrollbarClient.h:
   78746         * rendering/RenderLayer.cpp:
   78747         (WebCore::cornerRect):
   78748         (WebCore::scrollCornerRect):
   78749         (WebCore::resizerCornerRect):
   78750         (WebCore::RenderLayer::scrollbarCornerPresent):
   78751         (WebCore::RenderLayer::setHasHorizontalScrollbar):
   78752         (WebCore::RenderLayer::setHasVerticalScrollbar):
   78753         * rendering/RenderLayer.h:
   78754         (WebCore::RenderLayer::horizontalScrollbar):
   78755         (WebCore::RenderLayer::verticalScrollbar):
   78756         * rendering/RenderListBox.h:
   78757         (WebCore::RenderListBox::scrollbarCornerPresent):
   78758 
   78759 2008-10-13  David Hyatt  <hyatt (a] apple.com>
   78760 
   78761         Make resizers and scrollbar corners respect :window-inactive (one more bug fix and then Tim's master
   78762         test case for all this can land).
   78763 
   78764         Reviewed by Tim Hatcher
   78765 
   78766         * css/CSSStyleSelector.cpp:
   78767         (WebCore::CSSStyleSelector::SelectorChecker::checkSelector):
   78768         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
   78769         (WebCore::CSSStyleSelector::SelectorChecker::checkScrollbarPseudoClass):
   78770         * rendering/RenderLayer.cpp:
   78771         (WebCore::RenderLayer::paintOverflowControls):
   78772         (WebCore::RenderLayer::paintScrollCorner):
   78773         (WebCore::RenderLayer::paintResizer):
   78774         (WebCore::RenderLayer::styleChanged):
   78775         (WebCore::RenderLayer::updateScrollCornerStyle):
   78776         (WebCore::RenderLayer::updateResizerStyle):
   78777         * rendering/RenderLayer.h:
   78778         * rendering/RenderScrollbar.cpp:
   78779         (WebCore::RenderScrollbar::paint):
   78780         * rendering/RenderScrollbarPart.cpp:
   78781         (WebCore::RenderScrollbarPart::paintIntoRect):
   78782 
   78783 2008-10-13  David Hyatt  <hyatt (a] apple.com>
   78784 
   78785         Rework resizer and scroll corner painting so that custom resizers and scroll corners will paint
   78786         and invalidate properly as images load, etc.
   78787 
   78788         Reviewed by Tim Hatcher
   78789 
   78790         * rendering/RenderLayer.cpp:
   78791         (WebCore::cornerRect):
   78792         (WebCore::scrollCornerRect):
   78793         (WebCore::resizerCornerRect):
   78794         (WebCore::RenderLayer::positionOverflowControls):
   78795         (WebCore::RenderLayer::paintOverflowControls):
   78796         (WebCore::RenderLayer::paintScrollCorner):
   78797         (WebCore::RenderLayer::paintResizer):
   78798         (WebCore::RenderLayer::isPointInResizeControl):
   78799         (WebCore::RenderLayer::hitTestOverflowControls):
   78800         (WebCore::RenderLayer::styleChanged):
   78801         * rendering/RenderLayer.h:
   78802         * rendering/RenderObject.h:
   78803         (WebCore::RenderObject::setRect):
   78804         * rendering/RenderScrollbarPart.cpp:
   78805         (WebCore::RenderScrollbarPart::styleDidChange):
   78806         (WebCore::RenderScrollbarPart::imageChanged):
   78807 
   78808 2008-10-13  Marco Barisione  <marco.barisione (a] collabora.co.uk>
   78809 
   78810         Reviewed by Darin Adler. Landed by Jan Alonzo.
   78811 
   78812         WebKit GTK Port needs a smartpointer to handle g_free (GFreePtr?)
   78813         http://bugs.webkit.org/show_bug.cgi?id=20483
   78814 
   78815         Start the conversion to use GOwnPtr and fix a memory leak.
   78816 
   78817         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
   78818         (WebCore::mediaPlayerPrivateErrorCallback):
   78819 
   78820 2008-10-12  Jon Honeycutt  <jhoneycutt (a] apple.com>
   78821 
   78822         Windows build fix.
   78823 
   78824         * loader/TextResourceDecoder.cpp:
   78825 
   78826 2008-10-12  Darin Fisher  <darin (a] chromium.org>
   78827 
   78828         Reviewed by Darin Adler.
   78829 
   78830         - fix https://bugs.webkit.org/show_bug.cgi?id=21229
   78831           Bug 21229: NetworkStateNotifier.h lacks a #include <windows.h> for PLATFORM(WIN)
   78832 
   78833         * platform/network/NetworkStateNotifier.h: Add the #include.
   78834 
   78835 2008-10-12  Darin Adler  <darin (a] apple.com>
   78836 
   78837         Based on work by Holger Freyther.
   78838 
   78839         - part of https://bugs.webkit.org/show_bug.cgi?id=20953
   78840           Split WidthIterator into its own source file.
   78841 
   78842         * GNUmakefile.am: Added new source files.
   78843         * WebCore.vcproj/WebCore.vcproj: Ditto.
   78844         * WebCore.xcodeproj/project.pbxproj: Ditto.
   78845         * WebCoreSources.bkl: Ditto.
   78846 
   78847         * platform/graphics/Font.cpp: Use WidthIterator from its new place.
   78848         * platform/graphics/WidthIterator.cpp: Added.
   78849         * platform/graphics/WidthIterator.h: Added.
   78850 
   78851 2008-10-12  Tony Chang  <tony (a] chromium.org>
   78852 
   78853         Reviewed by Sam Weinig.
   78854 
   78855         - https://bugs.webkit.org/show_bug.cgi?id=21480
   78856           Remove duplicate definitions of MimeClassInfo and PluginInfo.
   78857 
   78858         * plugins/PluginInfoStore.cpp: Added an include.
   78859         * plugins/PluginInfoStore.h: Removed struct declarations.
   78860 
   78861 2008-10-12  Darin Adler  <darin (a] apple.com>
   78862 
   78863         Reviewed by Dan Bernstein.
   78864 
   78865         - https://bugs.webkit.org/show_bug.cgi?id=21563
   78866           Bug 21563: platform Gradient class should not use the CSS parser
   78867 
   78868         * platform/graphics/Gradient.cpp: Removed the overload of addColorStop
   78869         that accepts a CSS color string. That's handled in the DOM now, not here.
   78870         (WebCore::Gradient::addColorStop): Use getRGBA instead of having our own
   78871         copy of it here.
   78872         * platform/graphics/Gradient.h: More of the same. Tweak formatting a bit.
   78873 
   78874 2008-10-12  Glenn Wilson  <gwilson (a] google.com>
   78875 
   78876         Reviewed by Darin Adler.
   78877 
   78878         - https://bugs.webkit.org/show_bug.cgi?id=20461
   78879 
   78880         Added feature to allow multi-line inputs into text fields.
   78881         HTMLInputElement would cut the set text at the first 'system' character,
   78882         so it would truncate at the first carriage return or newline.
   78883         This fix modifies that behavior to truncate at any non-space system character
   78884         but changes \r, \n, and \r\n to a single space.
   78885 
   78886         Tests: editing/pasteboard/paste-multiline-text-input.html
   78887 
   78888         * html/HTMLInputElement.cpp:
   78889         (WebCore::HTMLInputElement::constrainValue):
   78890 
   78891 2008-10-12  Dirk Schulze  <vbs85 (a] gmx.de>
   78892 
   78893         Reviewed by Eric Seidel.
   78894 
   78895         - https://bugs.webkit.org/show_bug.cgi?id=20435
   78896 
   78897         Added exception codes to canvas gradients to match current specification.
   78898 
   78899         Tests: fast/canvas/gradient-addColorStop-with-invalid-color.html
   78900                fast/canvas/linearGradient-infinite-values.html
   78901                fast/canvas/radialGradient-infinite-values.html
   78902 
   78903         * html/CanvasGradient.cpp:
   78904         (WebCore::CanvasGradient::addColorStop):
   78905         * html/CanvasGradient.h:
   78906         * html/CanvasGradient.idl:
   78907         * html/CanvasRenderingContext2D.cpp:
   78908         (WebCore::CanvasRenderingContext2D::createLinearGradient):
   78909         (WebCore::CanvasRenderingContext2D::createRadialGradient):
   78910         * html/CanvasRenderingContext2D.h:
   78911         * html/CanvasRenderingContext2D.idl:
   78912 
   78913 2008-10-12  Eric Roman  <eroman (a] chromium.org>
   78914 
   78915         - https://bugs.webkit.org/show_bug.cgi?id=20246
   78916           Implement RenderThemeWin::systemColor() to match Windows colors.
   78917 
   78918         Reviewed by David Hyatt.
   78919 
   78920         * rendering/RenderThemeWin.cpp:
   78921         (WebCore::cssValueIdToSysColorIndex):
   78922         (WebCore::RenderThemeWin::systemColor):
   78923         * rendering/RenderThemeWin.h:
   78924 
   78925 2008-10-12  Aaron Bockover  <abockover (a] novell.com>
   78926 
   78927         Reviewed by Alp Toker.
   78928 
   78929         Add version parsing for Flash, and the PluginQuirkDontSetNullWindowHandleOnDestroy
   78930         plugin quirk if Flash 10 or newer since at least in b218, setting a NULL window
   78931         handler on destroy crashes WebKit <https://bugs.webkit.org/show_bug.cgi?id=19859>
   78932 
   78933         * plugins/gtk/PluginPackageGtk.cpp:
   78934 
   78935 2008-10-12  Jonathon Jongsma  <jonathon.jongsma (a] collabora.co.uk>
   78936 
   78937         Reviewed by Oliver Hunt.
   78938 
   78939         - https://bugs.webkit.org/show_bug.cgi?id=19331
   78940           <rdar://problem/5984433>: Drag and drop of links in edit mode violates assert in MoveSelectionCommand::doApply()
   78941 
   78942         * page/DragController.cpp:
   78943         (WebCore::DragController::startDrag): When a link is dragged without any
   78944         text selected (note: for this to work, the EditableLinkBehavior setting must be
   78945         set to 'live' or 'default') and then dropped into an editable html document it
   78946         will eventually violate an ASSERT in MoveSelectionCommand that requires that there
   78947         is a selection.  To prevent this, expand the selection to the enclosing anchor tag
   78948         when the drag begins.
   78949 
   78950 2008-10-12  Darin Adler  <darin (a] apple.com>
   78951 
   78952         Reviewed by Mark Rowe.
   78953 
   78954         - fix https://bugs.webkit.org/show_bug.cgi?id=21557
   78955           Bug 21557: REGRESSION: generated-layer-scrollbar-crash.html is crashing
   78956 
   78957         * rendering/RenderObject.cpp:
   78958         (WebCore::RenderObject::getPseudoStyle): Keep walking up the parent chain
   78959         until we hit an Element. Nowadays, Node::isElementNode() is just as efficient
   78960         as RenderObject::isText(), and this guarantees that the node can be cast to
   78961         Element*, which is done just below. The reason this is hit is that RenderLayer
   78962         can call getPseudoStyle on a RenderView, which has the document as its
   78963         element() -- and a document is neither a Text node nor an Element. A loose
   78964         end is that this seems to mean you can't style the scrollbar corner or the
   78965         resizer on a RenderView. Hyatt may want to look into that later.
   78966 
   78967 2008-10-12  Darin Adler  <darin (a] apple.com>
   78968 
   78969         Reviewed by Sam Weinig.
   78970 
   78971         - https://bugs.webkit.org/show_bug.cgi?id=21556
   78972           Bug 21556: non-ASCII digits are allowed in places where only ASCII should be
   78973 
   78974         Tests: fast/dom/HTMLFontElement/size-attribute.html
   78975                fast/dom/HTMLInputElement/size-attribute.html
   78976                fast/dom/HTMLTableElement/cellpadding-attribute.html
   78977 
   78978         * html/HTMLFontElement.cpp:
   78979         (WebCore::parseFontSizeNumber): Use isASCIIDigit instead of
   78980         Unicode::isDigit, since non-ASCII digits are not valid here.
   78981         * html/HTMLFontElement.h: Tweaked formatting a bit and removed
   78982         the unneeded destructor declaration.
   78983         * platform/text/String.cpp:
   78984         (WebCore::lengthOfCharactersAsInteger): Use isASCIIDigit instead
   78985         of Unicode::isDigit, since non-ASCII digits are not valid.
   78986 
   78987 2008-10-12  Jungshik Shin  <jshin (a] chromium.org>
   78988 
   78989         Reviewed by Darin Adler.
   78990 
   78991         Treat x-user-defined as windows-1252 for html files with meta charset
   78992         declaration to be compatible with Indian web sites.
   78993         ( https://bugs.webkit.org/show_bug.cgi?id=18270 )
   78994 
   78995         Test: fast/encoding/charset-xuser-defined.html
   78996 
   78997         * loader/TextResourceDecoder.cpp:
   78998         (WebCore::TextResourceDecoder::setEncoding):
   78999 
   79000 2008-10-12  Sam Weinig  <sam (a] webkit.org>
   79001 
   79002         Reviewed by Dan Bernstein.
   79003 
   79004         Remove unneeded forward declaration.
   79005 
   79006         * platform/graphics/ImageBuffer.h:
   79007 
   79008 2008-10-12  Sam Weinig  <sam (a] webkit.org>
   79009 
   79010         Reviewed by Darin Adler.
   79011 
   79012         Fix for https://bugs.webkit.org/show_bug.cgi?id=21560
   79013         Layering violation: String should not be responsible for creating Lengths
   79014 
   79015         It was a layering violation for String to know haw to parse
   79016         into Lengths, LengthArrays, and CoordsArrays.
   79017 
   79018         * GNUmakefile.am:
   79019         * WebCore.pro:
   79020         * WebCore.vcproj/WebCore.vcproj:
   79021         * WebCore.xcodeproj/project.pbxproj:
   79022         * WebCoreSources.bkl:
   79023         * html/HTMLAreaElement.cpp:
   79024         (WebCore::HTMLAreaElement::parseMappedAttribute):
   79025         * html/HTMLFrameSetElement.cpp:
   79026         (WebCore::HTMLFrameSetElement::parseMappedAttribute):
   79027         * platform/text/AtomicString.h:
   79028         (WebCore::AtomicString::percentage):
   79029         * platform/text/PlatformString.h:
   79030         * platform/text/String.cpp:
   79031         * platform/text/StringImpl.cpp:
   79032         * platform/text/StringImpl.h:
   79033         * rendering/Length.cpp: Added.
   79034         (WebCore::parseLength):
   79035         (WebCore::countCharacter):
   79036         (WebCore::newCoordsArray):
   79037         (WebCore::newLengthArray):
   79038         * rendering/Length.h:
   79039         (WebCore::LengthSize::LengthSize):
   79040 
   79041 2008-10-12  Brad Garcia  <bgarcia (a] google.com>
   79042 
   79043         Reviewed by Darin Adler.
   79044 
   79045         Interpret fractional percentage values for %MultiLength values.
   79046         Fix for https://bugs.webkit.org/show_bug.cgi?id=3591
   79047         Test: fast/frames/frame-length-fractional-percentage.html
   79048 
   79049         * platform/text/StringImpl.cpp:
   79050         (WebCore::parseLength):
   79051 
   79052 2008-10-12  Timothy Hatcher  <timothy (a] apple.com>
   79053 
   79054         Remember the expanded state of the rules in the Styles pane. So
   79055         collapsing a rule will persist across all the elements that have
   79056         that same rule. The same applies to Computed Style, so the Computed
   79057         Style rule is now collapsed by default. This should help lessen the
   79058         confusion on why Computed Style can't be edited (a common confusion.)
   79059 
   79060         https://bugs.webkit.org/show_bug.cgi?id=21553
   79061 
   79062         Reviewed by Darin Adler.
   79063 
   79064         * inspector/front-end/PropertiesSection.js:
   79065         (WebInspector.PropertiesSection): Set the _expanded property directly,
   79066         instead of using the setter. Expanded is the default, so no work is needed.
   79067         This prevents calling StylesSidebarPane.collapse before object initialization
   79068         is complete.
   79069         * inspector/front-end/StylesSidebarPane.js:
   79070         (WebInspector.StylesSidebarPane.prototype.update): Check the Preferences object
   79071         for the expanded state of the StylePropertiesSection. Collapse computed style
   79072         by default and expand everything else.
   79073         (WebInspector.StylePropertiesSection): Make a semi unique identifier to be used
   79074         when remembering expanded state.
   79075         (WebInspector.StylePropertiesSection.prototype.expand): Set the expanded state
   79076         to true for this identifier in Preferences.styleRulesExpandedState. Don't remember
   79077         the state if the dontRememberState property is true.
   79078         (WebInspector.StylePropertiesSection.prototype.collapse): Set the expanded state
   79079         to false for this identifier in Preferences.styleRulesExpandedState.
   79080         * inspector/front-end/inspector.js:
   79081         (Preferences.styleRulesExpandedState): Initialize to an empty object.
   79082 
   79083 2008-10-12  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   79084 
   79085         Reviewed by Alp Toker.
   79086 
   79087         [Gtk] Remove libWebCoreJS.la when doing make clean
   79088         https://bugs.webkit.org/show_bug.cgi?id=21544
   79089 
   79090         Remove libWebCoreJS.la when doing a clean target
   79091 
   79092         * GNUmakefile.am: add libWebCoreJS.la to CLEANFILES
   79093 
   79094 2008-10-11  Alp Toker  <alp (a] nuanti.com>
   79095 
   79096         Reviewed by Darin Adler.
   79097 
   79098         https://bugs.webkit.org/show_bug.cgi?id=20592
   79099         The focus ring is not shown while navigating on some pages
   79100 
   79101         Fix drawFocusRing() so it doesn't depend on the current graphics
   79102         state, thus matching other platforms which already work this way.
   79103 
   79104         This patch provides two code paths: one using straight Cairo and
   79105         one specialised for the GTK+ port with a more conventional appearance.
   79106 
   79107         Also change focusRingColor() to return a null color, allowing the
   79108         focus ring to pick up the style's current color if it isn't overridden
   79109         with CSS.
   79110 
   79111         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   79112         (WebCore::GraphicsContext::drawFocusRing):
   79113         * platform/gtk/TemporaryLinkStubs.cpp:
   79114         (WebCore::focusRingColor):
   79115 
   79116 2008-10-11  Dan Bernstein  <mitz (a] apple.com>
   79117 
   79118         Rubber-stamped by Sam Weinig.
   79119 
   79120         - change all internal callers to use Cache::evict() instead of remove()
   79121 
   79122         * loader/Cache.cpp:
   79123         (WebCore::Cache::revalidateResource):
   79124         (WebCore::Cache::revalidationSucceeded):
   79125         (WebCore::Cache::pruneDeadResources):
   79126         (WebCore::Cache::setDisabled):
   79127 
   79128 2008-10-11  David Hyatt  <hyatt (a] apple.com>
   79129 
   79130         Make sure invalidatePart knows how to invalidate the track and scrollbar backgrounds.
   79131 
   79132         Reviewed by Tim Hatcher
   79133 
   79134         * platform/ScrollbarThemeComposite.cpp:
   79135         (WebCore::ScrollbarThemeComposite::invalidatePart):
   79136 
   79137 2008-10-11  David Hyatt  <hyatt (a] apple.com>
   79138 
   79139         https://bugs.webkit.org/show_bug.cgi?id=21549 (regression in before/after track pieces).
   79140 
   79141         Also fixed resizer positioning problems.
   79142 
   79143         Reviewed by Tim Hatcher
   79144 
   79145         * platform/ScrollbarThemeComposite.cpp:
   79146         (WebCore::ScrollbarThemeComposite::splitTrack):
   79147         (WebCore::ScrollbarThemeComposite::trackPosition):
   79148         (WebCore::ScrollbarThemeComposite::trackLength):
   79149         * platform/ScrollbarThemeComposite.h:
   79150         (WebCore::ScrollbarThemeComposite::constrainTrackRectToTrackPieces):
   79151         * rendering/RenderLayer.cpp:
   79152         (WebCore::scrollCornerRect):
   79153         (WebCore::RenderLayer::positionOverflowControls):
   79154         (WebCore::RenderLayer::paintOverflowControls):
   79155         (WebCore::RenderLayer::isPointInResizeControl):
   79156         (WebCore::RenderLayer::hitTestOverflowControls):
   79157         * rendering/RenderScrollbarTheme.cpp:
   79158         (WebCore::RenderScrollbarTheme::constrainTrackRectToTrackPieces):
   79159         * rendering/RenderScrollbarTheme.h:
   79160 
   79161 2008-10-11  Alp Toker  <alp (a] nuanti.com>
   79162 
   79163         Reviewed by David Hyatt.
   79164 
   79165         Implement release/retain for Widget GTK+.
   79166 
   79167         * platform/Widget.cpp:
   79168         * platform/gtk/WidgetGtk.cpp:
   79169         (WebCore::Widget::~Widget):
   79170         (WebCore::Widget::releasePlatformWidget):
   79171         (WebCore::Widget::retainPlatformWidget):
   79172 
   79173 2008-10-11  Dan Bernstein  <mitz (a] apple.com>
   79174 
   79175         Reviewed by Sam Weinig.
   79176 
   79177         - rename WebCoreSetAlwaysUseATSU to WebCoreSetAlwaysUsesComplexTextCodePath
   79178           and add a corresponding getter; add the same functions on Windows
   79179 
   79180         * WebCore.base.exp:
   79181         * platform/graphics/Font.cpp:
   79182         (WebCore::Font::setCodePath):
   79183         (WebCore::codePath):
   79184         (WebCore::Font::canUseGlyphCache):
   79185         * platform/graphics/Font.h:
   79186         * platform/mac/WebCoreTextRenderer.h:
   79187         * platform/mac/WebCoreTextRenderer.mm:
   79188         (WebCoreSetAlwaysUsesComplexTextCodePath):
   79189         (WebCoreAlwaysUsesComplexTextCodePath):
   79190         * platform/win/WebCoreTextRenderer.cpp:
   79191         (WebCore::WebCoreSetAlwaysUsesComplexTextCodePath):
   79192         (WebCore::WebCoreAlwaysUsesComplexTextCodePath):
   79193         * platform/win/WebCoreTextRenderer.h:
   79194 
   79195 2008-10-11  Sam Weinig  <sam (a] webkit.org>
   79196 
   79197         Reviewed by Cameron Zwarich.
   79198 
   79199         Stop leaking the event parameter names.  The protected strings were showing up
   79200         in the caches window after one use.  No measurable performance loss.
   79201 
   79202         * bindings/js/JSEventListener.cpp:
   79203         (WebCore::eventParameterName):
   79204 
   79205 2008-10-11  Sam Weinig  <sam (a] webkit.org>
   79206 
   79207         Reviewed by Cameron Zwarich.
   79208 
   79209         Remove unused function getNodeEventListener.
   79210 
   79211         * bindings/js/JSEventListener.cpp:
   79212         * bindings/js/JSEventListener.h:
   79213 
   79214 2008-10-11  David Hyatt  <hyatt (a] apple.com>
   79215 
   79216         Add support for both positive and negative margins to tracks and track pieces.
   79217 
   79218         Reviewed by Tim Hatcher
   79219 
   79220         * platform/ScrollbarThemeComposite.cpp:
   79221         (WebCore::ScrollbarThemeComposite::paint):
   79222         (WebCore::ScrollbarThemeComposite::hitTest):
   79223         (WebCore::ScrollbarThemeComposite::splitTrack):
   79224         (WebCore::ScrollbarThemeComposite::trackPieceRects):
   79225         (WebCore::ScrollbarThemeComposite::trackPosition):
   79226         (WebCore::ScrollbarThemeComposite::trackLength):
   79227         * platform/ScrollbarThemeComposite.h:
   79228         (WebCore::ScrollbarThemeComposite::adjustTrackPieceRect):
   79229         * rendering/RenderScrollbar.cpp:
   79230         (WebCore::RenderScrollbar::trackRect):
   79231         (WebCore::RenderScrollbar::trackPieceRectWithMargins):
   79232         * rendering/RenderScrollbar.h:
   79233         * rendering/RenderScrollbarPart.cpp:
   79234         (WebCore::RenderScrollbarPart::computeScrollbarWidth):
   79235         (WebCore::RenderScrollbarPart::computeScrollbarHeight):
   79236         * rendering/RenderScrollbarTheme.cpp:
   79237         (WebCore::RenderScrollbarTheme::adjustTrackPieceRect):
   79238         * rendering/RenderScrollbarTheme.h:
   79239 
   79240 2008-10-10  David Hyatt  <hyatt (a] apple.com>
   79241 
   79242         Drop -webkit-scrollbar- from all the scrollbar pseudo-classes, since they are scoped to
   79243         the scrollbar pseudo-elements anyway.
   79244 
   79245         Reviewed by Tim Hatcher
   79246 
   79247         * css/CSSSelector.cpp:
   79248         (WebCore::CSSSelector::extractPseudoType):
   79249         * css/CSSSelector.h:
   79250         (WebCore::CSSSelector::):
   79251         * css/CSSStyleSelector.cpp:
   79252         (WebCore::CSSStyleSelector::SelectorChecker::checkScrollbarPseudoClass):
   79253 
   79254 2008-10-10  Dan Bernstein  <mitz (a] apple.com>
   79255 
   79256         Reviewed by Sam Weinig.
   79257 
   79258         - separate Cache::remove() into a private method and a public interface,
   79259           then make Cache::pruneDeadResources() use the private method.
   79260 
   79261         * loader/Cache.cpp:
   79262         (WebCore::Cache::pruneDeadResources):
   79263         (WebCore::Cache::evict):
   79264         * loader/Cache.h:
   79265         (WebCore::Cache::remove):
   79266 
   79267 2008-10-10  David Hyatt  <hyatt (a] apple.com>
   79268 
   79269         Fix a math error when splitting a vertical track.  Clean up more of ScrollbarThemeComposite
   79270         now that the track pieces meet under the thumb.
   79271 
   79272         Reviewed by Tim Hatcher
   79273 
   79274         * platform/ScrollbarThemeComposite.cpp:
   79275         (WebCore::ScrollbarThemeComposite::paint):
   79276         (WebCore::ScrollbarThemeComposite::splitTrack):
   79277 
   79278 2008-10-10  David Hyatt  <hyatt (a] apple.com>
   79279 
   79280         Make the track pieces of a scrollbar extend under the thumb (each gets half the thumb).
   79281 
   79282         Reviewed by Tim Hatcher
   79283 
   79284         * platform/ScrollbarThemeComposite.cpp:
   79285         (WebCore::ScrollbarThemeComposite::hitTest):
   79286         (WebCore::ScrollbarThemeComposite::splitTrack):
   79287 
   79288 2008-10-10  David Hyatt  <hyatt (a] apple.com>
   79289 
   79290         Make sure specialized ::scrollbar rules are still triggering custom scrollbar creation.
   79291 
   79292         Reviewed by Tim Hatcher
   79293 
   79294         * rendering/RenderLayer.cpp:
   79295         (WebCore::RenderLayer::createScrollbar):
   79296         * rendering/RenderScrollbar.cpp:
   79297         (WebCore::RenderScrollbar::createCustomScrollbar):
   79298         (WebCore::RenderScrollbar::RenderScrollbar):
   79299         (WebCore::RenderScrollbar::setParent):
   79300         (WebCore::RenderScrollbar::updateScrollbarParts):
   79301         (WebCore::RenderScrollbar::updateScrollbarPart):
   79302         * rendering/RenderScrollbar.h:
   79303         * rendering/style/RenderStyle.h:
   79304         (WebCore::RenderStyle::):
   79305 
   79306 2008-10-10  David Hyatt  <hyatt (a] apple.com>
   79307 
   79308         Make sure scrollbar background images cause proper part invalidation to occur.
   79309 
   79310         Reviewed by Tim Hatcher
   79311 
   79312         * rendering/RenderScrollbar.cpp:
   79313         (WebCore::RenderScrollbar::setHoveredPart):
   79314         (WebCore::RenderScrollbar::setPressedPart):
   79315         * rendering/RenderScrollbarPart.cpp:
   79316         (WebCore::RenderScrollbarPart::styleDidChange):
   79317         (WebCore::RenderScrollbarPart::imageChanged):
   79318         * rendering/RenderScrollbarPart.h:
   79319 
   79320 2008-10-10  Simon Fraser  <simon.fraser (a] apple.com>
   79321 
   79322         Reviewed by Darin Adler
   79323 
   79324         https://bugs.webkit.org/show_bug.cgi?id=21538
   79325 
   79326         The blendFunc() for TransformOperations should never mess with the
   79327         operation lists by replacing some ops with identity, otherwise the lists
   79328         no longer match and transitions break.
   79329 
   79330         Test: transitions/matched-transform-functions.html
   79331 
   79332         * page/animation/AnimationBase.cpp:
   79333         (WebCore::blendFunc):
   79334 
   79335 2008-10-10  Simon Fraser  <simon.fraser (a] apple.com>
   79336 
   79337         Reviewed by Darin Adler
   79338 
   79339         https://bugs.webkit.org/show_bug.cgi?id=21537
   79340 
   79341         Fix re-targetting a running transition; if the target property
   79342         changes, we do need to make a new ImplicitAnimation.
   79343 
   79344         Test: transitions/retargetted-transition.html
   79345 
   79346         * page/animation/CompositeAnimation.cpp:
   79347         (WebCore::CompositeAnimationPrivate::updateTransitions):
   79348 
   79349 2008-10-10  Oliver Hunt  <oliver (a] apple.com>
   79350 
   79351         Reviewed by Cameron Zwarich.
   79352 
   79353         Part of <rdar://problem/6278147> Cannot stop a slow script -- Fix assertion.
   79354 
   79355         When JS is terminated by the user choosing to stop a slow script
   79356         the exception toString method throws, yet the console logger does
   79357         not perform exception checks after logging.  This leaves an
   79358         exception on the Machine, which in turn results in an assertion
   79359         failure next time we attempt to enter JS.  The solution is just to
   79360         clear the exception state after attempting to record the exception.
   79361 
   79362         * page/Console.cpp:
   79363         (WebCore::Console::reportException):
   79364 
   79365 2008-10-10  David Hyatt  <hyatt (a] apple.com>
   79366 
   79367         Make textareas work with custom CSS scrollbars and resizers.  Need to access the correct renderer
   79368         when looking for pseudo styles.
   79369 
   79370         Reviewed by Tim Hatcher
   79371 
   79372         * rendering/RenderLayer.cpp:
   79373         (WebCore::RenderLayer::createScrollbar):
   79374         (WebCore::RenderLayer::styleChanged):
   79375 
   79376 2008-10-10  David Hyatt  <hyatt (a] apple.com>
   79377 
   79378         Add the ability to style the scroll corner and the resizer from CSS.
   79379 
   79380         Reviewed by Tim Hatcher
   79381 
   79382         * css/CSSSelector.cpp:
   79383         (WebCore::CSSSelector::extractPseudoType):
   79384         * css/CSSSelector.h:
   79385         (WebCore::CSSSelector::):
   79386         * css/CSSStyleSelector.cpp:
   79387         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
   79388         * rendering/RenderLayer.cpp:
   79389         (WebCore::RenderLayer::RenderLayer):
   79390         (WebCore::RenderLayer::~RenderLayer):
   79391         (WebCore::RenderLayer::paintOverflowControls):
   79392         (WebCore::RenderLayer::paintScrollCorner):
   79393         (WebCore::RenderLayer::paintResizer):
   79394         (WebCore::RenderLayer::styleChanged):
   79395         * rendering/RenderLayer.h:
   79396         * rendering/RenderScrollbar.cpp:
   79397         (WebCore::RenderScrollbar::updateScrollbarPart):
   79398         (WebCore::RenderScrollbar::paintPart):
   79399         * rendering/RenderScrollbarPart.cpp:
   79400         (WebCore::RenderScrollbarPart::RenderScrollbarPart):
   79401         (WebCore::RenderScrollbarPart::paintIntoRect):
   79402         * rendering/RenderScrollbarPart.h:
   79403         * rendering/style/RenderStyle.h:
   79404         (WebCore::RenderStyle::):
   79405 
   79406 2008-10-10  David Hyatt  <hyatt (a] apple.com>
   79407 
   79408         Make CSS scrollbars respect the OS setting regarding where buttons should be placed.
   79409 
   79410         Reviewed by Sam Weinig
   79411 
   79412         No test case possible, since the OS setting can vary.
   79413 
   79414         * css/CSSSelector.cpp:
   79415         (WebCore::CSSSelector::extractPseudoType):
   79416         * css/CSSSelector.h:
   79417         (WebCore::CSSSelector::):
   79418         * css/CSSStyleSelector.cpp:
   79419         (WebCore::CSSStyleSelector::SelectorChecker::checkScrollbarPseudoClass):
   79420         * platform/Scrollbar.h:
   79421         (WebCore::Scrollbar::styleChanged):
   79422         * platform/mac/ScrollbarThemeMac.mm:
   79423         (+[ScrollbarPrefsObserver appearancePrefsChanged:]):
   79424         (WebCore::ScrollbarThemeMac::preferencesChanged):
   79425         * rendering/RenderLayer.cpp:
   79426         (WebCore::RenderLayer::invalidateScrollbarRect):
   79427         * rendering/RenderScrollbar.cpp:
   79428         (WebCore::RenderScrollbar::styleChanged):
   79429         (WebCore::RenderScrollbar::updateScrollbarPart):
   79430         * rendering/RenderScrollbar.h:
   79431         * rendering/RenderScrollbarTheme.h:
   79432         (WebCore::RenderScrollbarTheme::buttonsPlacement):
   79433 
   79434 2008-10-10  Timothy Hatcher  <timothy (a] apple.com>
   79435 
   79436         Fixes a regression with input search fields, where the placeholder text
   79437         would not be updated when the value of the placeholder attribute changed.
   79438 
   79439         https://bugs.webkit.org/show_bug.cgi?id=21521
   79440 
   79441         Reviewed by Adele Peterson.
   79442 
   79443         Test: fast/forms/search-placeholder-value-changed.html
   79444 
   79445         * html/HTMLInputElement.cpp:
   79446         (WebCore::HTMLInputElement::parseMappedAttribute): Pass true for the
   79447         placeholderValueChanged parameter of updatePlaceholderVisibility.
   79448         (WebCore::HTMLInputElement::updatePlaceholderVisibility): Add parameter
   79449         for placeholderValueChanged that informs the method that the value changed.
   79450         * html/HTMLInputElement.h: Add the placeholderValueChanged to the
   79451         updatePlaceholderVisibility method. Made it default to false.
   79452 
   79453 2008-10-10  David Hyatt  <hyatt (a] apple.com>
   79454 
   79455         Allow the track part to have negative margins so that it can slightly overlap buttons.  This
   79456         is necessary to emulate the Aqua look in CSS.
   79457 
   79458         Reviewed by Sam Weinig
   79459 
   79460         * platform/ScrollbarThemeComposite.cpp:
   79461         (WebCore::ScrollbarThemeComposite::paint):
   79462         (WebCore::ScrollbarThemeComposite::hitTest):
   79463         * rendering/RenderScrollbar.cpp:
   79464         (WebCore::RenderScrollbar::setHoveredPart):
   79465         (WebCore::RenderScrollbar::trackRect):
   79466         * rendering/RenderScrollbar.h:
   79467         * rendering/RenderScrollbarPart.cpp:
   79468         (WebCore::RenderScrollbarPart::computeScrollbarWidth):
   79469         (WebCore::RenderScrollbarPart::computeScrollbarHeight):
   79470         * rendering/RenderScrollbarTheme.cpp:
   79471         (WebCore::RenderScrollbarTheme::backButtonRect):
   79472         (WebCore::RenderScrollbarTheme::forwardButtonRect):
   79473         (WebCore::RenderScrollbarTheme::trackRect):
   79474 
   79475 2008-10-10  David Hyatt  <hyatt (a] apple.com>
   79476 
   79477         https://bugs.webkit.org/show_bug.cgi?id=21527
   79478 
   79479         Make CSS scrollbars support :not, :hover and :active.
   79480 
   79481         Reviewed by Adam Roben
   79482 
   79483         Added WebCore/manual-tests/scrollbar-hover-active.html
   79484 
   79485         * css/CSSStyleSelector.cpp:
   79486         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
   79487         (WebCore::CSSStyleSelector::SelectorChecker::checkScrollbarPseudoClass):
   79488         * platform/Scrollbar.cpp:
   79489         (WebCore::Scrollbar::autoscrollPressedPart):
   79490         (WebCore::Scrollbar::startTimerIfNeeded):
   79491         (WebCore::Scrollbar::setHoveredPart):
   79492         (WebCore::Scrollbar::setPressedPart):
   79493         (WebCore::Scrollbar::mouseMoved):
   79494         (WebCore::Scrollbar::mouseExited):
   79495         (WebCore::Scrollbar::mouseUp):
   79496         (WebCore::Scrollbar::mouseDown):
   79497         * platform/Scrollbar.h:
   79498         * rendering/RenderScrollbar.cpp:
   79499         (WebCore::RenderScrollbar::setHoveredPart):
   79500         (WebCore::RenderScrollbar::setPressedPart):
   79501         (WebCore::RenderScrollbar::updateScrollbarParts):
   79502         (WebCore::pseudoForScrollbarPart):
   79503         (WebCore::RenderScrollbar::updateScrollbarPart):
   79504         * rendering/RenderScrollbar.h:
   79505 
   79506 2008-10-10  Chris Marrin  <cmarrin (a] apple.com>
   79507 
   79508         Reviewed by Dan Bernstein.
   79509 
   79510         Fix for https://bugs.webkit.org/show_bug.cgi?id=21025
   79511         CSS transition with duration=0 and delay=0 doesn't override ongoing transition
   79512 
   79513         Test: transitions/interrupt-zero-duration.html
   79514 
   79515         * page/animation/CompositeAnimation.cpp:
   79516         (WebCore::CompositeAnimation::updateTransitions):
   79517 
   79518 2008-10-10  Kevin Ollivier  <kevino (a] theolliviers.com>
   79519 
   79520         wx build fix. Add new scrollbar-related sources.
   79521 
   79522         * WebCoreSources.bkl:
   79523 
   79524 2008-10-10  David Hyatt  <hyatt (a] apple.com>
   79525 
   79526         https://bugs.webkit.org/show_bug.cgi?id=21522
   79527 
   79528         Support increment/decrement/start/end on scrollbars.  Allows a fully functional scrollbar to be
   79529         created.  (Just :hover/:active left to finish it up.)
   79530 
   79531         Reviewed by Adam Roben
   79532 
   79533         Added scrollbars/scrollbar-buttons.html
   79534 
   79535         * css/CSSStyleSelector.cpp:
   79536         (WebCore::CSSStyleSelector::SelectorChecker::checkScrollbarPseudoClass):
   79537 
   79538 2008-10-10  David Hyatt  <hyatt (a] apple.com>
   79539 
   79540         Rename some pseudoclasses.  Removing "-scrollbar-" from a bunch of the pseudoclasses.  Renaming
   79541         back/forward to decrement/increment.  Adding start/end pseudoclasses.
   79542 
   79543         Reviewed by Eric Seidel
   79544 
   79545         * css/CSSSelector.cpp:
   79546         (WebCore::CSSSelector::extractPseudoType):
   79547         * css/CSSSelector.h:
   79548         (WebCore::CSSSelector::):
   79549         * css/CSSStyleSelector.cpp:
   79550         (WebCore::CSSStyleSelector::SelectorChecker::checkScrollbarPseudoClass):
   79551 
   79552 2008-10-10  David Hyatt  <hyatt (a] apple.com>
   79553 
   79554         Switch window-active to window-inactive, since that will work better as far as degrading in other
   79555         browsers.
   79556 
   79557         Reviewed by Tim Hatcher
   79558 
   79559         * css/CSSSelector.cpp:
   79560         (WebCore::CSSSelector::extractPseudoType):
   79561         * css/CSSSelector.h:
   79562         (WebCore::CSSSelector::):
   79563         * css/CSSStyleSelector.cpp:
   79564         (WebCore::CSSStyleSelector::SelectorChecker::checkScrollbarPseudoClass):
   79565 
   79566 2008-10-09  Chris Marrin  <cmarrin (a] apple.com>
   79567 
   79568         Reviewed by Dan Bernstein.
   79569 
   79570         https://bugs.webkit.org/show_bug.cgi?id=21310
   79571 
   79572         Redesigned how animation events are sent in order to get rid of
   79573         AnimationEventDispatcher. ImplicitAnimation and KeyframeAnimation
   79574         are now ref counted. While calling the event handler, I keep a
   79575         reference to this class to avoid it getting destroyed out from under me.
   79576 
   79577         I also moved most of the functionality of CompositeAnimation to
   79578         and internal class (CompositeAnimationPrivate) to reduce the exposure
   79579         of the internals of the various animation classes.
   79580 
   79581         We have several transition and animation LayoutTests which verify that
   79582         this fix works as expected and continues to avoid crashes.
   79583 
   79584         * page/animation/AnimationBase.cpp:
   79585         (WebCore::AnimationBase::AnimationBase):
   79586         * page/animation/AnimationBase.h:
   79587         (WebCore::AnimationBase::cancelTimers):
   79588         (WebCore::AnimationBase::waitingForStyleAvailable):
   79589         * page/animation/CompositeAnimation.cpp:
   79590         (WebCore::CompositeAnimationPrivate::CompositeAnimationPrivate):
   79591         (WebCore::CompositeAnimationPrivate::suspended):
   79592         (WebCore::CompositeAnimationPrivate::~CompositeAnimationPrivate):
   79593         (WebCore::CompositeAnimationPrivate::updateTransitions):
   79594         (WebCore::CompositeAnimationPrivate::updateKeyframeAnimations):
   79595         (WebCore::CompositeAnimationPrivate::animate):
   79596         (WebCore::CompositeAnimationPrivate::setAnimating):
   79597         (WebCore::CompositeAnimationPrivate::animating):
   79598         (WebCore::CompositeAnimationPrivate::getAnimationForProperty):
   79599         (WebCore::CompositeAnimationPrivate::resetTransitions):
   79600         (WebCore::CompositeAnimationPrivate::resetAnimations):
   79601         (WebCore::CompositeAnimationPrivate::cleanupFinishedAnimations):
   79602         (WebCore::CompositeAnimationPrivate::setAnimationStartTime):
   79603         (WebCore::CompositeAnimationPrivate::setTransitionStartTime):
   79604         (WebCore::CompositeAnimationPrivate::suspendAnimations):
   79605         (WebCore::CompositeAnimationPrivate::resumeAnimations):
   79606         (WebCore::CompositeAnimationPrivate::overrideImplicitAnimations):
   79607         (WebCore::CompositeAnimationPrivate::resumeOverriddenImplicitAnimations):
   79608         (WebCore::compareAnimationIndices):
   79609         (WebCore::CompositeAnimationPrivate::styleAvailable):
   79610         (WebCore::CompositeAnimationPrivate::isAnimatingProperty):
   79611         (WebCore::CompositeAnimationPrivate::setWaitingForStyleAvailable):
   79612         (WebCore::CompositeAnimation::CompositeAnimation):
   79613         (WebCore::CompositeAnimation::~CompositeAnimation):
   79614         (WebCore::CompositeAnimation::animate):
   79615         (WebCore::CompositeAnimation::animating):
   79616         (WebCore::CompositeAnimation::setWaitingForStyleAvailable):
   79617         (WebCore::CompositeAnimation::resetTransitions):
   79618         (WebCore::CompositeAnimation::suspendAnimations):
   79619         (WebCore::CompositeAnimation::resumeAnimations):
   79620         (WebCore::CompositeAnimation::suspended):
   79621         (WebCore::CompositeAnimation::styleAvailable):
   79622         (WebCore::CompositeAnimation::setAnimating):
   79623         (WebCore::CompositeAnimation::isAnimatingProperty):
   79624         (WebCore::CompositeAnimation::setAnimationStartTime):
   79625         (WebCore::CompositeAnimation::setTransitionStartTime):
   79626         (WebCore::CompositeAnimation::overrideImplicitAnimations):
   79627         (WebCore::CompositeAnimation::resumeOverriddenImplicitAnimations):
   79628         * page/animation/CompositeAnimation.h:
   79629         * page/animation/ImplicitAnimation.cpp:
   79630         (WebCore::ImplicitAnimation::sendTransitionEvent):
   79631         * page/animation/ImplicitAnimation.h:
   79632         (WebCore::ImplicitAnimation::create):
   79633         * page/animation/KeyframeAnimation.cpp:
   79634         (WebCore::KeyframeAnimation::sendAnimationEvent):
   79635         * page/animation/KeyframeAnimation.h:
   79636         (WebCore::KeyframeAnimation::create):
   79637 
   79638 2008-10-09  David Hyatt  <hyatt (a] apple.com>
   79639 
   79640         Add support for scrollbar orientation as a pseudoclass.  Add support for whether or not the scrollbar
   79641         is active as well.
   79642 
   79643         Reviewed by Tim Hatcher
   79644 
   79645         Added scrollbars/scrollbar-orientation.html
   79646 
   79647         * css/CSSSelector.cpp:
   79648         (WebCore::CSSSelector::extractPseudoType):
   79649         * css/CSSSelector.h:
   79650         (WebCore::CSSSelector::):
   79651         * css/CSSStyleSelector.cpp:
   79652         (WebCore::CSSStyleSelector::SelectorChecker::checkScrollbarPseudoClass):
   79653         * platform/Scrollbar.cpp:
   79654         (WebCore::Scrollbar::isWindowActive):
   79655         * platform/Scrollbar.h:
   79656         * rendering/RenderScrollbar.cpp:
   79657         (WebCore::RenderScrollbar::paint):
   79658         (WebCore::RenderScrollbar::partForStyleResolve):
   79659         * rendering/RenderScrollbar.h:
   79660 
   79661 2008-10-09  David Hyatt  <hyatt (a] apple.com>
   79662 
   79663         Add support for pseudo classes on scrollbar pseudo elements.  As an initial proof of concept only
   79664         :enabled/:disabled are supported.  More pseudo classes will follow quickly now that this works.
   79665 
   79666         Reviewed by Tim Hatcher
   79667 
   79668         Added scrollbars/disabled-scrollbar.html
   79669 
   79670         * css/CSSStyleSelector.cpp:
   79671         (WebCore::CSSStyleSelector::SelectorChecker::checkSelector):
   79672         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
   79673         (WebCore::CSSStyleSelector::SelectorChecker::checkScrollbarPseudoClass):
   79674         * css/CSSStyleSelector.h:
   79675         * rendering/RenderObject.cpp:
   79676         (WebCore::RenderObject::getPseudoStyle):
   79677         * rendering/RenderObject.h:
   79678         * rendering/RenderScrollbar.cpp:
   79679         (WebCore::RenderScrollbar::setEnabled):
   79680         (WebCore::RenderScrollbar::scrollbarForStyleResolve):
   79681         (WebCore::RenderScrollbar::getScrollbarPseudoStyle):
   79682         (WebCore::RenderScrollbar::paintPart):
   79683         * rendering/RenderScrollbar.h:
   79684 
   79685 2008-10-09  Eric Carlson  <eric.carlson (a] apple.com>
   79686 
   79687         Media controls should not show when element is not visible
   79688 
   79689         https://bugs.webkit.org/show_bug.cgi?id=21155
   79690 
   79691         Reviewed by Adele Peterson.
   79692 
   79693         * html/HTMLMediaElement.cpp:
   79694         (WebCore::HTMLMediaElement::recalcStyle): New, call renderer()->updateFromElement to stay
   79695         in sync with visibility changes
   79696         * html/HTMLMediaElement.h:
   79697         * rendering/RenderMedia.cpp:
   79698         (WebCore::RenderMedia::RenderMedia): initialize m_previousVisible
   79699         (WebCore::RenderMedia::updateControlVisibility): consider style()->visibility() when determining
   79700         if element is visible or not. Don't animate controller visibility when change triggered by
   79701         showing or hiding media element.
   79702         * rendering/RenderMedia.h: declare m_previousVisible
   79703 
   79704 2008-10-09  Timothy Hatcher  <timothy (a] apple.com>
   79705 
   79706         Annotate the Objective-C DOM APIs with the JavaScriptCore/WebKitAvailability.h
   79707         availability macros and version macros.
   79708 
   79709         https://bugs.webkit.org/show_bug.cgi?id=21496
   79710         rdar://problem/6259225
   79711 
   79712         Reviewed by Sam Weinig.
   79713 
   79714         * bindings/objc/DOMCSS.h: Add a version #if around catgory interface.
   79715         * bindings/objc/DOMEventException.h: Include JavaScriptCore/WebKitAvailability.h
   79716         and add an #if around the enum.
   79717         * bindings/objc/DOMException.h: Ditto. Give the enum a name and remove the
   79718         comment to match the other headers.
   79719         * bindings/objc/DOMExtensions.h: Annotate the methods with version 3.0 or later.
   79720         * bindings/objc/DOMObject.h: Add a version #if around class interface.
   79721         * bindings/objc/DOMRangeException.h: Include JavaScriptCore/WebKitAvailability.h
   79722         and add a version #if around the enum.
   79723         * bindings/objc/DOMSVGException.h: Ditto. Use the latest version since SVG is new.
   79724         * bindings/objc/DOMXPathException.h: Ditto. Use the 3.0 version.
   79725         * bindings/objc/PublicDOMInterfaces.h: Annotate classes and protocols for
   79726         when they where added to WebKit. Also annotate individual methods that are
   79727         deprecated or where added after the class was added to WebKit.
   79728         * bindings/objc/WebScriptObject.h: Include JavaScriptCore/WebKitAvailability.h
   79729         since this header is included by most DOM headers. Annotate the JSObject method.
   79730 
   79731         * bindings/scripts/CodeGeneratorObjC.pm:
   79732         (ReadPublicInterfaces): Parse out the availability macro for each function/property.
   79733         And parse out the availability version for the class/protocol. Default to
   79734         WEBKIT_VERSION_LATEST if the class is new.
   79735         (GenerateHeader): Include JavaScriptCore/WebKitAvailability.h if needed. Add the
   79736         interface availability version check if the class has a required version. Create
   79737         a public interface key (used to lookup in $publicInterfaces) and make a declaration
   79738         suffix that includes the availability macro (if needed). Use the "available in 1.3
   79739         and later but deprecated in 3.0" macro instead of "deprecated in 10.5 and later" as
   79740         the default availability macro for old style methods. Tweak line breaks in the generated
   79741         headers to look good and not have too many extra lines.
   79742 
   79743 2008-10-09  Simon Fraser  <simon.fraser (a] apple.com>
   79744 
   79745         Reviewed by Dave Hyatt
   79746 
   79747         https://bugs.webkit.org/show_bug.cgi?id=20947
   79748 
   79749         Refactor setStyle() methods into styleWillChange()
   79750         and styleDidChange(), so most of the setStyle() overrides can
   79751         be removed.
   79752 
   79753         * rendering/RenderBR.cpp:
   79754         (WebCore::RenderBR::styleDidChange):
   79755         * rendering/RenderBR.h:
   79756         * rendering/RenderBlock.cpp:
   79757         (WebCore::RenderBlock::styleWillChange):
   79758         (WebCore::RenderBlock::styleDidChange):
   79759         * rendering/RenderBlock.h:
   79760         * rendering/RenderBox.cpp:
   79761         (WebCore::RenderBox::~RenderBox):
   79762         (WebCore::RenderBox::destroy):
   79763         (WebCore::RenderBox::styleWillChange):
   79764         (WebCore::RenderBox::styleDidChange):
   79765         * rendering/RenderBox.h:
   79766         * rendering/RenderButton.cpp:
   79767         (WebCore::RenderButton::styleWillChange):
   79768         (WebCore::RenderButton::styleDidChange):
   79769         * rendering/RenderButton.h:
   79770         * rendering/RenderFieldset.cpp:
   79771         (WebCore::RenderFieldset::styleDidChange):
   79772         * rendering/RenderFieldset.h:
   79773         * rendering/RenderFileUploadControl.cpp:
   79774         (WebCore::RenderFileUploadControl::styleDidChange):
   79775         * rendering/RenderFileUploadControl.h:
   79776         * rendering/RenderInline.cpp:
   79777         (WebCore::RenderInline::styleDidChange):
   79778         * rendering/RenderInline.h:
   79779         * rendering/RenderLayer.cpp:
   79780         (WebCore::RenderLayer::styleChanged):
   79781         * rendering/RenderLayer.h:
   79782         * rendering/RenderListBox.cpp:
   79783         (WebCore::RenderListBox::styleDidChange):
   79784         * rendering/RenderListBox.h:
   79785         * rendering/RenderListItem.cpp:
   79786         (WebCore::RenderListItem::styleDidChange):
   79787         * rendering/RenderListItem.h:
   79788         * rendering/RenderListMarker.cpp:
   79789         (WebCore::RenderListMarker::styleWillChange):
   79790         (WebCore::RenderListMarker::styleDidChange):
   79791         * rendering/RenderListMarker.h:
   79792         * rendering/RenderMenuList.cpp:
   79793         (WebCore::RenderMenuList::styleDidChange):
   79794         * rendering/RenderMenuList.h:
   79795         * rendering/RenderObject.cpp:
   79796         (WebCore::RenderObject::setStyle):
   79797         (WebCore::RenderObject::setStyleInternal):
   79798         (WebCore::RenderObject::styleWillChange):
   79799         (WebCore::RenderObject::styleDidChange):
   79800         * rendering/RenderObject.h:
   79801         * rendering/RenderReplaced.cpp:
   79802         (WebCore::RenderReplaced::styleDidChange):
   79803         * rendering/RenderReplaced.h:
   79804         * rendering/RenderSVGGradientStop.cpp:
   79805         (WebCore::RenderSVGGradientStop::styleDidChange):
   79806         * rendering/RenderSVGGradientStop.h:
   79807         * rendering/RenderScrollbarPart.cpp:
   79808         (WebCore::RenderScrollbarPart::styleDidChange):
   79809         * rendering/RenderScrollbarPart.h:
   79810         * rendering/RenderSlider.cpp:
   79811         (WebCore::RenderSlider::styleDidChange):
   79812         * rendering/RenderSlider.h:
   79813         * rendering/RenderTable.cpp:
   79814         (WebCore::RenderTable::styleDidChange):
   79815         * rendering/RenderTable.h:
   79816         * rendering/RenderTableCell.cpp:
   79817         (WebCore::RenderTableCell::styleWillChange):
   79818         (WebCore::RenderTableCell::styleDidChange):
   79819         * rendering/RenderTableCell.h:
   79820         * rendering/RenderTableRow.cpp:
   79821         (WebCore::RenderTableRow::styleWillChange):
   79822         * rendering/RenderTableRow.h:
   79823         * rendering/RenderText.cpp:
   79824         (WebCore::RenderText::styleDidChange):
   79825         * rendering/RenderText.h:
   79826         * rendering/RenderTextControl.cpp:
   79827         (WebCore::RenderTextControl::styleDidChange):
   79828         * rendering/RenderTextControl.h:
   79829         * rendering/RenderWidget.cpp:
   79830         (WebCore::RenderWidget::styleDidChange):
   79831         * rendering/RenderWidget.h:
   79832 
   79833 2008-10-09  David Hyatt  <hyatt (a] apple.com>
   79834 
   79835         Make sure to destroy a custom scrollbar's RenderObjects before the arena goes away.  When our widget
   79836         parent is nulled out is a good time.
   79837 
   79838         Reviewed by Oliver Hunt
   79839 
   79840         * rendering/RenderScrollbar.cpp:
   79841         (WebCore::RenderScrollbar::~RenderScrollbar):
   79842         (WebCore::RenderScrollbar::setParent):
   79843         (WebCore::RenderScrollbar::updateScrollbarPart):
   79844         * rendering/RenderScrollbar.h:
   79845 
   79846 2008-10-09  David Hyatt  <hyatt (a] apple.com>
   79847 
   79848         https://bugs.webkit.org/show_bug.cgi?id=21446
   79849 
   79850         This patch gets CSS scrollbars up and limping.  There's no way to distinguish between states or between
   79851         orientation and back vs. forward on the buttons, but it's a start.
   79852 
   79853         Reviewed by Oliver Hunt
   79854 
   79855         Added scrollbars/basic-scrollbar.html
   79856 
   79857         * WebCore.xcodeproj/project.pbxproj:
   79858         * css/CSSSelector.cpp:
   79859         (WebCore::CSSSelector::extractPseudoType):
   79860         * css/CSSSelector.h:
   79861         (WebCore::CSSSelector::):
   79862         * css/CSSStyleSelector.cpp:
   79863         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
   79864         * platform/ScrollTypes.h:
   79865         (WebCore::):
   79866         * platform/Scrollbar.h:
   79867         (WebCore::Scrollbar::styleChanged):
   79868         * platform/ScrollbarThemeComposite.cpp:
   79869         (WebCore::ScrollbarThemeComposite::paint):
   79870         (WebCore::ScrollbarThemeComposite::splitTrack):
   79871         * platform/ScrollbarThemeComposite.h:
   79872         (WebCore::ScrollbarThemeComposite::paintScrollbarBackground):
   79873         (WebCore::ScrollbarThemeComposite::paintTrackBackground):
   79874         (WebCore::ScrollbarThemeComposite::paintTrackPiece):
   79875         * platform/win/ScrollbarThemeSafari.cpp:
   79876         (WebCore::ScrollbarThemeSafari::paintTrackBackground):
   79877         * platform/win/ScrollbarThemeSafari.h:
   79878         * platform/win/ScrollbarThemeWin.cpp:
   79879         (WebCore::ScrollbarThemeWin::paintTrack):
   79880         * platform/win/ScrollbarThemeWin.h:
   79881         * rendering/RenderLayer.cpp:
   79882         (WebCore::RenderLayer::createScrollbar):
   79883         (WebCore::RenderLayer::styleChanged):
   79884         * rendering/RenderScrollbar.cpp: Added.
   79885         (WebCore::RenderScrollbar::createCustomScrollbar):
   79886         (WebCore::RenderScrollbar::RenderScrollbar):
   79887         (WebCore::RenderScrollbar::~RenderScrollbar):
   79888         (WebCore::RenderScrollbar::getScrollbarPseudoStyle):
   79889         (WebCore::RenderScrollbar::updateScrollbarParts):
   79890         (WebCore::RenderScrollbar::updateScrollbarPart):
   79891         (WebCore::RenderScrollbar::paintPart):
   79892         (WebCore::RenderScrollbar::buttonRect):
   79893         (WebCore::RenderScrollbar::minimumThumbLength):
   79894         * rendering/RenderScrollbar.h: Added.
   79895         (WebCore::RenderScrollbar::styleChanged):
   79896         (WebCore::RenderScrollbar::owningRenderer):
   79897         * rendering/RenderScrollbarPart.cpp: Added.
   79898         (WebCore::RenderScrollbarPart::RenderScrollbarPart):
   79899         (WebCore::RenderScrollbarPart::~RenderScrollbarPart):
   79900         (WebCore::RenderScrollbarPart::layout):
   79901         (WebCore::RenderScrollbarPart::layoutHorizontalPart):
   79902         (WebCore::RenderScrollbarPart::layoutVerticalPart):
   79903         (WebCore::calcScrollbarThicknessUsing):
   79904         (WebCore::RenderScrollbarPart::computeScrollbarWidth):
   79905         (WebCore::RenderScrollbarPart::computeScrollbarHeight):
   79906         (WebCore::RenderScrollbarPart::calcPrefWidths):
   79907         (WebCore::RenderScrollbarPart::setStyle):
   79908         * rendering/RenderScrollbarPart.h: Added.
   79909         (WebCore::RenderScrollbarPart::renderName):
   79910         (WebCore::RenderScrollbarPart::requiresLayer):
   79911         * rendering/RenderScrollbarTheme.cpp: Added.
   79912         (WebCore::RenderScrollbarTheme::renderScrollbarTheme):
   79913         (WebCore::RenderScrollbarTheme::buttonSizesAlongTrackAxis):
   79914         (WebCore::RenderScrollbarTheme::hasButtons):
   79915         (WebCore::RenderScrollbarTheme::hasThumb):
   79916         (WebCore::RenderScrollbarTheme::minimumThumbLength):
   79917         (WebCore::RenderScrollbarTheme::backButtonRect):
   79918         (WebCore::RenderScrollbarTheme::forwardButtonRect):
   79919         (WebCore::RenderScrollbarTheme::trackRect):
   79920         (WebCore::RenderScrollbarTheme::paintScrollCorner):
   79921         (WebCore::RenderScrollbarTheme::paintScrollbarBackground):
   79922         (WebCore::RenderScrollbarTheme::paintTrackBackground):
   79923         (WebCore::RenderScrollbarTheme::paintTrackPiece):
   79924         (WebCore::RenderScrollbarTheme::paintButton):
   79925         (WebCore::RenderScrollbarTheme::paintThumb):
   79926         * rendering/RenderScrollbarTheme.h: Added.
   79927         (WebCore::RenderScrollbarTheme::~RenderScrollbarTheme):
   79928         (WebCore::RenderScrollbarTheme::scrollbarThickness):
   79929         (WebCore::RenderScrollbarTheme::buttonsPlacement):
   79930         (WebCore::RenderScrollbarTheme::supportsControlTints):
   79931         (WebCore::RenderScrollbarTheme::shouldCenterOnThumb):
   79932         (WebCore::RenderScrollbarTheme::initialAutoscrollTimerDelay):
   79933         (WebCore::RenderScrollbarTheme::autoscrollTimerDelay):
   79934         (WebCore::RenderScrollbarTheme::registerScrollbar):
   79935         (WebCore::RenderScrollbarTheme::unregisterScrollbar):
   79936         * rendering/style/RenderStyle.h:
   79937         (WebCore::RenderStyle::):
   79938 
   79939 2008-10-09  Eric Seidel  <eric (a] webkit.org>
   79940 
   79941         Reviewed by Oliver Hunt.
   79942 
   79943         Fix Canvex DOOM Game
   79944         Gradient clips were not getting cleared after filling the
   79945         gradient, this was causing nothing to draw in Canvex
   79946         https://bugs.webkit.org/show_bug.cgi?id=21498
   79947 
   79948         Tests forthcoming.
   79949 
   79950         * WebCore.xcodeproj/project.pbxproj:
   79951         * platform/graphics/cg/GraphicsContextCG.cpp:
   79952         (WebCore::GraphicsContext::fillPath):
   79953         (WebCore::GraphicsContext::strokePath):
   79954         (WebCore::GraphicsContext::fillRect):
   79955 
   79956 2008-10-09  Eric Seidel  <eric (a] webkit.org>
   79957 
   79958         Reviewed by Oliver Hunt.
   79959 
   79960         Fix transformed patterns
   79961         https://bugs.webkit.org/show_bug.cgi?id=21498
   79962 
   79963         Test: fast/canvas/patternfill-repeat.html
   79964 
   79965         * WebCore.xcodeproj/project.pbxproj:
   79966         * platform/graphics/GraphicsContext.cpp:
   79967         (WebCore::GraphicsContext::setStrokePattern):
   79968         (WebCore::GraphicsContext::setFillPattern):
   79969         (WebCore::GraphicsContext::setStrokeGradient):
   79970         (WebCore::GraphicsContext::setFillGradient):
   79971         * platform/graphics/GraphicsContext.h:
   79972         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   79973         * platform/graphics/cg/GraphicsContextCG.cpp:
   79974         (WebCore::applyStrokePattern):
   79975         (WebCore::applyFillPattern):
   79976         (WebCore::GraphicsContext::drawPath):
   79977         (WebCore::GraphicsContext::fillPath):
   79978         (WebCore::GraphicsContext::strokePath):
   79979         (WebCore::GraphicsContext::fillRect):
   79980         * platform/graphics/qt/GraphicsContextQt.cpp:
   79981         * platform/graphics/wx/GraphicsContextWx.cpp:
   79982 
   79983 2008-10-09  Kevin Ollivier  <kevino (a] theolliviers.com>
   79984 
   79985         wx build fixes.
   79986 
   79987         * platform/wx/WidgetWx.cpp:
   79988         * plugins/wx/PluginViewWx.cpp:
   79989         (WebCore::PluginView::invalidateRect):
   79990         * webcore-base.bkl:
   79991 
   79992 2008-10-09  Chris Marrin  <cmarrin (a] apple.com>
   79993 
   79994         Reviewed by Darin Adler.
   79995 
   79996         Fix for https://bugs.webkit.org/show_bug.cgi?id=21217
   79997         Animations assert when navigating from page
   79998 
   79999         Changed assertions to test the right flag for the paused state
   80000 
   80001         * page/animation/AnimationBase.cpp:
   80002         (WebCore::AnimationBase::updateStateMachine):
   80003 
   80004 2008-10-09  Chris Marrin  <cmarrin (a] apple.com>
   80005 
   80006         Reviewed by Dan Bernstein.
   80007 
   80008         Fixed > 180 degree rotation bug
   80009         Ensure that validateTransformFunctionList() is called after updating keyframe styles
   80010 
   80011         https://bugs.webkit.org/show_bug.cgi?id=21420
   80012 
   80013         Test: animations/big-rotation.html
   80014 
   80015         * page/animation/KeyframeAnimation.cpp:
   80016         (WebCore::KeyframeAnimation::KeyframeAnimation):
   80017 
   80018 2008-10-09  Brady Eidson  <beidson (a] apple.com>
   80019 
   80020         Reviewed by Anders
   80021 
   80022         <rdar://problem/6250856> - Calling [WebView close] from within a redirection callback can cause bad things
   80023 
   80024         The API usage to reveal this crash was so particular that a layout test is not possible with our current infrastructure.
   80025 
   80026         * loader/FrameLoader.cpp:
   80027         (WebCore::FrameLoader::changeLocation): Protect the Frame from deletion
   80028         (WebCore::FrameLoader::continueLoadAfterNavigationPolicy): stopAllLoaders() might clear the Frame's page,
   80029           so perform a second null check on the page.  Bail if it has been cleared.
   80030 
   80031 2008-10-09  Alp Toker  <alp (a] nuanti.com>
   80032 
   80033         Build fix for recent DOM generation Makefile changes when custom
   80034         CFLAGS/CXXFLAGS are passed in.
   80035 
   80036         * GNUmakefile.am:
   80037 
   80038 2008-10-09  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   80039 
   80040         Reviewed by Alp Toker.
   80041 
   80042         https://bugs.webkit.org/show_bug.cgi?id=21390
   80043         [Gtk] Linux/Gtk: GtkLauncher crashes on Acid3 (but after test 80 this time)
   80044 
   80045         * platform/gtk/ScrollViewGtk.cpp:
   80046         (WebCore::ScrollView::platformRemoveChild):
   80047 
   80048 2008-10-09  Darin Adler  <darin (a] apple.com>
   80049 
   80050        - try to fix Qt build
   80051 
   80052         * bridge/qt/qt_runtime.cpp:
   80053         (JSC::Bindings::convertQVariantToValue): Pass JSGlobalData instead of ExecState to RegExp constructor.
   80054 
   80055 2008-10-08  Nikolas Zimmermann  <zimmermann (a] kde.org>
   80056 
   80057         Reviewed by Oliver Hunt & Sam Weinig.
   80058 
   80059         Fixes: https://bugs.webkit.org/show_bug.cgi?id=15413 (SVGElementInstance does not implement EventTarget)
   80060         Fixes: https://bugs.webkit.org/show_bug.cgi?id=15430 (SVGElementInstances should rebuild themselves lazily)
   80061         Fixes: https://bugs.webkit.org/show_bug.cgi?id=20550 (SVGUseElement.setAttribute crashes Safari)
   80062 
   80063         Rebuild SVG use element shadow tree lazily. Mark SVGElementInstance with the "needsUpdate" flag.
   80064         Next time SVGUseElement::recalcStyle is invoked (ie. via Document::updateDocumentsRendering()) the
   80065         use tree is rebuild.
   80066 
   80067         Make SVGElementInstance a real EventTarget, as the SVG specification demands.
   80068         When dispatching events to a shadow tree element of a use element, the associated SVGElementInstance
   80069         is used as event target. The SVGElementInstance, the shadow tree element and the corresponding element
   80070         share an event listener list. Every event listener change on the SVGElementInstance object is forwared
   80071         to the corresponding element. Each change marks the SVGElementInstance tree dirty, and causes a reclone.
   80072         Each event listener defined via attributes (onclick/onkeydown/...) is copied from the correspondingElement
   80073         to the shadow tree element - through the cloneNode calls - if the use element's shadow tree gets rebuild.
   80074         Each listener, dynamically created using addEventListener, gets copied to the corersponding element as well.
   80075 
   80076         Now that the target/currentTarget properties of the Events are correct, event bubbling works as expected,
   80077         see resources/use-instanceRoot-event-bubbling.js for details.
   80078 
   80079         Tests: svg/custom/use-elementInstance-event-target.svg (reenabled)
   80080                svg/custom/use-elementInstance-methods.svg (reenabled)
   80081                svg/custom/use-setAttribute-crash.svg (covers bug 20550)
   80082                svg/custom/use-instanceRoot-as-event-target.xhtml (covers bug 15413)
   80083                svg/custom/use-instanceRoot-event-bubbling.xhtml (covers bug 15413)
   80084                svg/custom/use-instanceRoot-event-listeners.xhtml (covers bug 15413 & 15430)
   80085 
   80086         * DerivedSources.make:
   80087         * GNUmakefile.am:
   80088         * WebCore.pro:
   80089         * WebCore.vcproj/WebCore.vcproj:
   80090         * WebCore.xcodeproj/project.pbxproj:
   80091         * bindings/js/JSEventListener.h:
   80092         (WebCore::JSLazyEventListener::wasCreatedFromMarkup):
   80093         * bindings/js/JSEventTarget.cpp:
   80094         * bindings/js/JSEventTargetSVGElementInstance.cpp: Removed.
   80095         * bindings/js/JSEventTargetSVGElementInstance.h: Removed.
   80096         * bindings/js/JSSVGElementInstanceCustom.cpp:
   80097         (WebCore::JSSVGElementInstance::addEventListener):
   80098         (WebCore::JSSVGElementInstance::removeEventListener):
   80099         (WebCore::JSSVGElementInstance::pushEventHandlerScope):
   80100         * bindings/scripts/CodeGeneratorJS.pm:
   80101         * bindings/scripts/CodeGeneratorObjC.pm:
   80102         * dom/EventListener.h:
   80103         (WebCore::EventListener::wasCreatedFromMarkup):
   80104         * dom/EventTargetNode.cpp:
   80105         (WebCore::updateSVGElementInstancesAfterEventListenerChange):
   80106         (WebCore::EventTargetNode::addEventListener):
   80107         (WebCore::EventTargetNode::removeEventListener):
   80108         (WebCore::eventTargetAsSVGElementInstance):
   80109         (WebCore::eventTargetRespectingSVGTargetRules):
   80110         (WebCore::EventTargetNode::dispatchEvent):
   80111         (WebCore::EventTargetNode::dispatchGenericEvent):
   80112         (WebCore::EventTargetNode::removeEventListenerForType):
   80113         * page/EventHandler.cpp:
   80114         (WebCore::EventHandler::clear):
   80115         (WebCore::instanceAssociatedWithShadowTreeElement):
   80116         (WebCore::EventHandler::updateMouseEventTargetNode):
   80117         * page/EventHandler.h:
   80118         * svg/EventTargetSVGElementInstance.cpp: Removed.
   80119         * svg/EventTargetSVGElementInstance.h: Removed.
   80120         * svg/SVGElementInstance.cpp:
   80121         (WebCore::SVGElementInstance::SVGElementInstance):
   80122         (WebCore::SVGElementInstance::~SVGElementInstance):
   80123         (WebCore::SVGElementInstance::childNodes):
   80124         (WebCore::SVGElementInstance::setShadowTreeElement):
   80125         (WebCore::SVGElementInstance::forgetWrapper):
   80126         (WebCore::SVGElementInstance::appendChild):
   80127         (WebCore::SVGElementInstance::invalidateAllInstancesOfElement):
   80128         (WebCore::SVGElementInstance::setNeedsUpdate):
   80129         (WebCore::SVGElementInstance::associatedFrame):
   80130         (WebCore::SVGElementInstance::addEventListener):
   80131         (WebCore::SVGElementInstance::removeEventListener):
   80132         (WebCore::SVGElementInstance::dispatchEvent):
   80133         (WebCore::SVGElementInstance::onabort):
   80134         (WebCore::SVGElementInstance::setOnabort):
   80135         (WebCore::SVGElementInstance::onblur):
   80136         (WebCore::SVGElementInstance::setOnblur):
   80137         (WebCore::SVGElementInstance::onchange):
   80138         (WebCore::SVGElementInstance::setOnchange):
   80139         (WebCore::SVGElementInstance::onclick):
   80140         (WebCore::SVGElementInstance::setOnclick):
   80141         (WebCore::SVGElementInstance::oncontextmenu):
   80142         (WebCore::SVGElementInstance::setOncontextmenu):
   80143         (WebCore::SVGElementInstance::ondblclick):
   80144         (WebCore::SVGElementInstance::setOndblclick):
   80145         (WebCore::SVGElementInstance::onerror):
   80146         (WebCore::SVGElementInstance::setOnerror):
   80147         (WebCore::SVGElementInstance::onfocus):
   80148         (WebCore::SVGElementInstance::setOnfocus):
   80149         (WebCore::SVGElementInstance::oninput):
   80150         (WebCore::SVGElementInstance::setOninput):
   80151         (WebCore::SVGElementInstance::onkeydown):
   80152         (WebCore::SVGElementInstance::setOnkeydown):
   80153         (WebCore::SVGElementInstance::onkeypress):
   80154         (WebCore::SVGElementInstance::setOnkeypress):
   80155         (WebCore::SVGElementInstance::onkeyup):
   80156         (WebCore::SVGElementInstance::setOnkeyup):
   80157         (WebCore::SVGElementInstance::onload):
   80158         (WebCore::SVGElementInstance::setOnload):
   80159         (WebCore::SVGElementInstance::onmousedown):
   80160         (WebCore::SVGElementInstance::setOnmousedown):
   80161         (WebCore::SVGElementInstance::onmousemove):
   80162         (WebCore::SVGElementInstance::setOnmousemove):
   80163         (WebCore::SVGElementInstance::onmouseout):
   80164         (WebCore::SVGElementInstance::setOnmouseout):
   80165         (WebCore::SVGElementInstance::onmouseover):
   80166         (WebCore::SVGElementInstance::setOnmouseover):
   80167         (WebCore::SVGElementInstance::onmouseup):
   80168         (WebCore::SVGElementInstance::setOnmouseup):
   80169         (WebCore::SVGElementInstance::onmousewheel):
   80170         (WebCore::SVGElementInstance::setOnmousewheel):
   80171         (WebCore::SVGElementInstance::onbeforecut):
   80172         (WebCore::SVGElementInstance::setOnbeforecut):
   80173         (WebCore::SVGElementInstance::oncut):
   80174         (WebCore::SVGElementInstance::setOncut):
   80175         (WebCore::SVGElementInstance::onbeforecopy):
   80176         (WebCore::SVGElementInstance::setOnbeforecopy):
   80177         (WebCore::SVGElementInstance::oncopy):
   80178         (WebCore::SVGElementInstance::setOncopy):
   80179         (WebCore::SVGElementInstance::onbeforepaste):
   80180         (WebCore::SVGElementInstance::setOnbeforepaste):
   80181         (WebCore::SVGElementInstance::onpaste):
   80182         (WebCore::SVGElementInstance::setOnpaste):
   80183         (WebCore::SVGElementInstance::ondragenter):
   80184         (WebCore::SVGElementInstance::setOndragenter):
   80185         (WebCore::SVGElementInstance::ondragover):
   80186         (WebCore::SVGElementInstance::setOndragover):
   80187         (WebCore::SVGElementInstance::ondragleave):
   80188         (WebCore::SVGElementInstance::setOndragleave):
   80189         (WebCore::SVGElementInstance::ondrop):
   80190         (WebCore::SVGElementInstance::setOndrop):
   80191         (WebCore::SVGElementInstance::ondragstart):
   80192         (WebCore::SVGElementInstance::setOndragstart):
   80193         (WebCore::SVGElementInstance::ondrag):
   80194         (WebCore::SVGElementInstance::setOndrag):
   80195         (WebCore::SVGElementInstance::ondragend):
   80196         (WebCore::SVGElementInstance::setOndragend):
   80197         (WebCore::SVGElementInstance::onreset):
   80198         (WebCore::SVGElementInstance::setOnreset):
   80199         (WebCore::SVGElementInstance::onresize):
   80200         (WebCore::SVGElementInstance::setOnresize):
   80201         (WebCore::SVGElementInstance::onscroll):
   80202         (WebCore::SVGElementInstance::setOnscroll):
   80203         (WebCore::SVGElementInstance::onsearch):
   80204         (WebCore::SVGElementInstance::setOnsearch):
   80205         (WebCore::SVGElementInstance::onselect):
   80206         (WebCore::SVGElementInstance::setOnselect):
   80207         (WebCore::SVGElementInstance::onselectstart):
   80208         (WebCore::SVGElementInstance::setOnselectstart):
   80209         (WebCore::SVGElementInstance::onsubmit):
   80210         (WebCore::SVGElementInstance::setOnsubmit):
   80211         (WebCore::SVGElementInstance::onunload):
   80212         (WebCore::SVGElementInstance::setOnunload):
   80213         * svg/SVGElementInstance.h:
   80214         (WebCore::SVGElementInstance::needsUpdate):
   80215         (WebCore::SVGElementInstance::toNode):
   80216         (WebCore::SVGElementInstance::toSVGElementInstance):
   80217         (WebCore::SVGElementInstance::correspondingElement):
   80218         (WebCore::SVGElementInstance::correspondingUseElement):
   80219         (WebCore::SVGElementInstance::shadowTreeElement):
   80220         (WebCore::SVGElementInstance::parentNode):
   80221         (WebCore::SVGElementInstance::previousSibling):
   80222         (WebCore::SVGElementInstance::nextSibling):
   80223         (WebCore::SVGElementInstance::firstChild):
   80224         (WebCore::SVGElementInstance::lastChild):
   80225         (WebCore::SVGElementInstance::ownerDocument):
   80226         (WebCore::SVGElementInstance::hasChildNodes):
   80227         (WebCore::SVGElementInstance::setFirstChild):
   80228         (WebCore::SVGElementInstance::setLastChild):
   80229         (WebCore::SVGElementInstance::setNextSibling):
   80230         (WebCore::SVGElementInstance::setPreviousSibling):
   80231         (WebCore::SVGElementInstance::refEventTarget):
   80232         (WebCore::SVGElementInstance::derefEventTarget):
   80233         * svg/SVGElementInstance.idl:
   80234         * svg/SVGStyledElement.cpp:
   80235         (WebCore::SVGStyledElement::svgAttributeChanged):
   80236         (WebCore::SVGStyledElement::childrenChanged):
   80237         * svg/SVGUseElement.cpp:
   80238         (WebCore::SVGUseElement::svgAttributeChanged):
   80239         (WebCore::shadowTreeContainsChangedNodes):
   80240         (WebCore::SVGUseElement::recalcStyle):
   80241         (WebCore::dumpInstanceTree):
   80242         (WebCore::SVGUseElement::buildPendingResource):
   80243         (WebCore::SVGUseElement::buildInstanceTree):
   80244         (WebCore::SVGUseElement::transferEventListenersToShadowTree):
   80245         * svg/SVGUseElement.h:
   80246 
   80247 2008-10-08  Sam Weinig  <sam (a] webkit.org>
   80248 
   80249         Reviewed by Cameron Zwarich.
   80250 
   80251         Fix for https://bugs.webkit.org/show_bug.cgi?id=21241
   80252         REGRESSION (r36977): getRGBColorValue().red returning incorrect value
   80253 
   80254         Update JSRGBColor to use the new static function per getter approach.
   80255 
   80256         Test: fast/dom/css-RGBValue.html
   80257 
   80258         * bindings/js/JSRGBColor.cpp:
   80259         (WebCore::):
   80260         (jsRGBColorRed):
   80261         (jsRGBColorGreen):
   80262         (jsRGBColorBlue):
   80263         * bindings/js/JSRGBColor.h:
   80264 
   80265 2008-10-08  Eric Seidel  <eric (a] webkit.org>
   80266 
   80267         Reviewed by Darin Adler, Nikolas Zimmermann and Dave Hyatt.
   80268 
   80269         svgElement.className.baseValue = "foo" does not work
   80270         https://bugs.webkit.org/show_bug.cgi?id=20651
   80271 
   80272         * dom/StyledElement.cpp:
   80273         (WebCore::StyledElement::classAttributeChanged):
   80274         (WebCore::StyledElement::parseMappedAttribute):
   80275         * dom/StyledElement.h:
   80276         * svg/SVGStyledElement.cpp:
   80277         (WebCore::SVGStyledElement::svgAttributeChanged):
   80278 
   80279 2008-10-08  Anthony Ricaud  <rik24d (a] gmail.com>
   80280 
   80281         Make the toolbar label text-shadow not disappear when clicking on the
   80282         search result count or around the search field.
   80283 
   80284         Reviewed by Timothy Hatcher.
   80285 
   80286         * inspector/front-end/inspector.css:
   80287         (.toolbar-item:active .toolbar-label): Make this rule also require the
   80288         toggleable class with the toolbar-item class.
   80289 
   80290 2008-10-08  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   80291 
   80292         Reviewed by Simon.
   80293 
   80294         Updated the qrc file for the Web Inspector to contain the current set
   80295         of images.
   80296 
   80297         * inspector/front-end/WebKit.qrc:
   80298 
   80299 2008-10-08  Prasanth Ullattil  <pullatti (a] trolltech.com>
   80300 
   80301         Reviewed by Simon.
   80302 
   80303         Fix the linking of applications against WebKit on Qt/Windows.
   80304 
   80305         The prl files that qmake creates are buggy on Unix, but we they're
   80306         fine on Windows and we have to have them there in order to get the
   80307         dependencies correct.
   80308 
   80309         * WebCore.pro:
   80310 
   80311 2008-10-08  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   80312 
   80313         Reviewed by Simon.
   80314 
   80315         Speed up rectangle filling by not re-creating a QBrush all the time.
   80316 
   80317         This triggers faster path in QPainter where the brush is reused.
   80318 
   80319         * platform/graphics/qt/GraphicsContextQt.cpp:
   80320         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
   80321         (WebCore::GraphicsContext::fillRect):
   80322 
   80323 2008-10-08  Thiago Macieira  <thiago.macieira (a] nokia.com>
   80324 
   80325         Reviewed by Simon.
   80326 
   80327         Fixes: Encoding of Qt URLs
   80328 
   80329         This encoding was added by Simon and I because QUrl's
   80330         tolerant parser wasn't tolerant enough. Now it is, so we don't need
   80331         this anymore.
   80332 
   80333         * platform/qt/KURLQt.cpp:
   80334         (WebCore::KURL::operator QUrl):
   80335 
   80336 2008-10-08  Marius Storm-Olsen  <marius (a] trolltech.com>
   80337 
   80338         Reviewed by Simon.
   80339 
   80340         Fixes dependencies in qmake generated visual studio projects.
   80341 
   80342         Only add debug lib name if we're in the debug build_pass, else the release version.
   80343         The MSVC solution generator would pick up the debug javascriptcore lib as a dependency.
   80344 
   80345         * WebCore.pro:
   80346 
   80347 2008-10-08  Prasanth Ullattil  <pullatti (a] trolltech.com>
   80348 
   80349         Reviewed by Simon.
   80350 
   80351         Fix compilation errors on VS2008 64Bit
   80352 
   80353         * platform/text/TextStream.cpp:
   80354         (WebCore::TextStream::operator<<):
   80355         * platform/text/TextStream.h:
   80356         * plugins/win/PluginViewWin.cpp:
   80357         (WebCore::PluginView::init):
   80358 
   80359 2008-10-07  Alp Toker  <alp (a] nuanti.com>
   80360 
   80361         GTK+ build fix for older automake versions (1.7). Discussed in bug
   80362         #21392.
   80363 
   80364         * GNUmakefile.am:
   80365 
   80366 2008-10-07  Anders Carlsson  <andersca (a] apple.com>
   80367 
   80368         Reviewed by Antti Koivisto.
   80369 
   80370         <rdar://problem/6273887> Crash in ApplicationCacheGroup
   80371 
   80372         Make sure to stop loading even before a cache update is in progress so that the
   80373         manifest load will be stopped.
   80374 
   80375         * loader/appcache/ApplicationCacheGroup.cpp:
   80376         (WebCore::ApplicationCacheGroup::~ApplicationCacheGroup):
   80377         (WebCore::ApplicationCacheGroup::stopLoading):
   80378         (WebCore::ApplicationCacheGroup::cacheUpdateFailed):
   80379 
   80380 2008-10-07  Timothy Hatcher  <timothy (a] apple.com>
   80381 
   80382         Auto-generate DOMDocument's createNodeIterator: and createTreeWalker: methods.
   80383 
   80384         https://bugs.webkit.org/show_bug.cgi?id=21433
   80385 
   80386         Reviewed by Sam Weinig.
   80387 
   80388         * WebCore.xcodeproj/project.pbxproj: Add ObjCNodeFilterCondition.{mm,h}.
   80389         * bindings/objc/DOM.mm: Remove previous category implementations
   80390         on DOMDocument for createNodeIterator: and createTreeWalker:. Also
   80391         moves ObjCNodeFilterCondition to its own file.
   80392         * bindings/objc/DOMTraversal.h: Remove the category methods that added
   80393         createNodeIterator: and createTreeWalker: to DOMDocument. This is fine
   80394         to do since DOmDocument.h is included still, and has these methods.
   80395         * bindings/objc/DOMUtility.mm:
   80396         (JSC::createDOMWrapper): Remove special case for JSNodeIterator and
   80397         JSTreeWalker now that the ObjC binding conforms to the standard wrap.
   80398         * bindings/objc/ObjCNodeFilterCondition.h: Split out from DOM.mm.
   80399         (WebCore::ObjCNodeFilterCondition::create): Moved from DOM.mm.
   80400         (WebCore::ObjCNodeFilterCondition::ObjCNodeFilterCondition): Ditto.
   80401         * bindings/objc/ObjCNodeFilterCondition.mm: Split out from DOM.mm.
   80402         (WebCore::ObjCNodeFilterCondition::acceptNode): Moved from DOM.mm.
   80403         * bindings/objc/PublicDOMInterfaces.h: Add the createNodeIterator: and
   80404         createTreeWalker: methods to DOMDocument.
   80405         * bindings/scripts/CodeGeneratorObjC.pm:
   80406         (GetObjCTypeGetter): Add a case for NodeFilter.
   80407         (AddIncludesForType): Include ObjCNodeFilterCondition.h for NodeFilter.
   80408         (GenerateImplementation): Remove existing NodeFilter special case that
   80409         used the m_filter member variable. Add a new special getter for protocol
   80410         types that aren't EventTarget, so the right class is used for NodeFilter.
   80411         Add a special case for NodeFilter where it creates an ObjCNodeFilterCondition.
   80412         * dom/Document.idl: Remove the #ifdef LANGUAGE_OBJECTIVE_C. Add the
   80413         OldStyleObjC extended attribute to createNodeIterator and createTreeWalker.
   80414         Rename the entityReferenceExpansion parameter to expandEntityReferences to
   80415         match the previous ObjC API.
   80416         * dom/NodeIterator.idl: Remove ObjCIvar from the filter attribute. The
   80417         m_filter member variable was never used in practice, it was always nil!
   80418         We can remove it and not pad the object because this can't be subclassed.
   80419         * dom/TreeWalker.idl: Ditto.
   80420 
   80421 2008-10-07  Timothy Hatcher  <timothy (a] apple.com>
   80422 
   80423         Auto-generate the DOMEventTarget protocol implementation for
   80424         DOMNode and DOMSVGElementInstance.
   80425 
   80426         https://bugs.webkit.org/show_bug.cgi?id=21432
   80427 
   80428         Reviewed by Darin Adler.
   80429 
   80430         * WebCore.xcodeproj/project.pbxproj: Add ObjCEventListener.{mm,h}.
   80431         * bindings/objc/DOM.mm: Remove many unneeded header includes. Move
   80432         ObjCEventListener to it's own file. Remove the manual impelmentations
   80433         of the DOMEventTarget protocol for DOMNode and DOMSVGElementInstance.
   80434         * bindings/objc/DOMEvents.h: Remove the categories that defined
   80435         DOMEventTarget for DOMNode and DOMSVGElementInstance.
   80436         * bindings/objc/ObjCEventListener.h: Split out from DOM.mm.
   80437         * bindings/objc/ObjCEventListener.mm: Split out from DOM.mm.
   80438         (WebCore::ObjCEventListener::find): Moved from DOM.mm.
   80439         (WebCore::ObjCEventListener::wrap): Use PassRefPtr to prevent the
   80440         callers from doing a manual deref.
   80441         (WebCore::ObjCEventListener::ObjCEventListener): Moved from DOM.mm.
   80442         (WebCore::ObjCEventListener::~ObjCEventListener): Ditto.
   80443         * bindings/scripts/CodeGeneratorObjC.pm:
   80444         (GetObjCTypeGetter): Add a case for EventListener and use WTF::getPtr.
   80445         (AddIncludesForType): Include ObjCEventListener.h for EventListener.
   80446         And include EventTargetSVGElementInstance.h for SVGElementInstance.
   80447         (GenerateHeader): Remove the check for multiple parents.
   80448         (GenerateImplementation): Remove the check for multiple parents. Remove
   80449         the @deprecatedFunctions array since deprecated methods get generated
   80450         into the main @interface now to work with protocols. Add support
   80451         for the EventTargetNodeCast extended attribute. Add support for
   80452         EventListener parameters.
   80453         * dom/Node.idl: Define superclasses for ObjC so the implementation
   80454         and interface implement the DOMEventTarget protocol. Explicitly
   80455         specify Object as a superclass to use DOMEventTarget. Object will turn
   80456         into DOMObject. This is needed to take the code generator down the right
   80457         path of multiple super-classes as protocols. It is ObjC only for legacy
   80458         reasons. The event target methods are normally on NodeEventTarget, a
   80459         subclass of Node. But the ObjC API has never has this subclass and
   80460         they are on DOMNode.
   80461         * svg/SVGElementInstance.idl: Ditto.
   80462 
   80463 2008-10-07  David Hyatt  <hyatt (a] apple.com>
   80464 
   80465         Add new pseudo-elements and pseudo-classes that will enable scrollbars to be styled by CSS.
   80466 
   80467         The new pseudo-elements are:
   80468             scrollbar
   80469             scrollbar-button
   80470             scrollbar-corner
   80471             scrollbar-thumb
   80472             scrollbar-track
   80473 
   80474         These elements will work with all the usual pseudo-classes (:hover, :active, :enabled, :disabled, etc.) and with
   80475         the following new pseudo-classes:
   80476             scrollbar-active
   80477             scrollbar-back
   80478             scrollbar-forward
   80479             scrollbar-horizontal
   80480             scrollbar-vertical
   80481 
   80482         Reviewed by Adele
   80483 
   80484         * css/CSSSelector.cpp:
   80485         (WebCore::CSSSelector::extractPseudoType):
   80486         * css/CSSSelector.h:
   80487         (WebCore::CSSSelector::):
   80488 
   80489 2008-10-06  Timothy Hatcher  <timothy (a] apple.com>
   80490 
   80491         Add support to the Resources panel for queries like "#123", "foo #123",
   80492         "line: 123" and "foo line: 123". These will match the query limiting
   80493         the search only to the line specified. If only a line is specified,
   80494         the whole line is matched.
   80495 
   80496         https://bugs.webkit.org/show_bug.cgi?id=21422
   80497 
   80498         Reviewed by Darin Adler.
   80499 
   80500         * inspector/front-end/SourceFrame.js:
   80501         (WebInspector.SourceFrame.prototype.sourceRow): Don't return the last
   80502         row if the index is greater than the rows collection. Let it return
   80503         undefined by indexing out-of-bounds.
   80504         * inspector/front-end/SourceView.js:
   80505         (WebInspector.SourceView.prototype.performSearch): Add support for
   80506         queries like "#123", "foo #123", "line: 123" and "foo line: 123".
   80507         Also match the whole query to the whole document in case there are
   80508         colors like "#333".
   80509 
   80510 2008-10-07  Alp Toker  <alp (a] nuanti.com>
   80511 
   80512         Reviewed by Mark Rowe.
   80513 
   80514         https://bugs.webkit.org/show_bug.cgi?id=21392
   80515         [GTK] Auto-generate JS DOM binding sources list
   80516 
   80517         Remove the huge lists of generated DOM binding sources and headers in
   80518         the build system. These are difficult to maintain and can be derived
   80519         automatically.
   80520 
   80521         The new strategy is to re-use the existing lists of IDL sources (which
   80522         are needed for dist support anyway). This will also ease the addition
   80523         of new language bindings.
   80524 
   80525         * GNUmakefile.am:
   80526 
   80527 2008-10-07  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   80528 
   80529         Reviewed by Simon.
   80530 
   80531         Don't attempt to paint when updating control tints
   80532 
   80533         We don't have a valid PlatformGraphicsContext so schedule
   80534         the dirty scrollbar/scrollview area for repaint instead.
   80535 
   80536         * platform/qt/ScrollbarThemeQt.cpp:
   80537         (WebCore::ScrollbarThemeQt::paint):
   80538         (WebCore::ScrollbarThemeQt::paintScrollCorner):
   80539 
   80540 2008-10-07  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   80541 
   80542         [qt] Build fix after Scrollbar.h and Widget.h changes.
   80543 
   80544         * plugins/qt/PluginViewQt.cpp:
   80545         (WebCore::PluginView::getValue):
   80546         (WebCore::PluginView::init):
   80547 
   80548 2008-10-06  David Hyatt  <hyatt (a] apple.com>
   80549 
   80550         Enable viewless Mac WebKit to (kinda sorta) paint basic pages (with no frames on them).
   80551 
   80552         Reviewed by Sam Weinig
   80553 
   80554         * WebCore.base.exp:
   80555         * WebCore.xcodeproj/project.pbxproj:
   80556         * loader/EmptyClients.h:
   80557         (WebCore::EmptyFrameLoaderClient::hasWebView):
   80558         * loader/FrameLoader.cpp:
   80559         (WebCore::FrameLoader::loadWithDocumentLoader):
   80560         (WebCore::FrameLoader::transitionToCommitted):
   80561         * loader/FrameLoaderClient.h:
   80562         * page/FocusController.cpp:
   80563         (WebCore::FocusController::setActive):
   80564         * page/FrameView.cpp:
   80565         (WebCore::FrameView::FrameView):
   80566         (WebCore::FrameView::init):
   80567         (WebCore::FrameView::layoutIfNeededRecursive):
   80568         * page/FrameView.h:
   80569 
   80570 2008-10-06  Dan Bernstein  <mitz (a] apple.com>
   80571 
   80572         - build fix
   80573 
   80574         * bindings/objc/DOMEvents.h:
   80575 
   80576 2008-10-06  Mark Mentovai  <mark (a] moxienet.com>
   80577 
   80578         Reviewed by Tim Hatcher.
   80579 
   80580         Use #if ENABLE(feature) where possible, and #if ENABLE_feature where
   80581         Platform.h is not available, in preference to #ifdef ENABLE_feature.
   80582         #ifdef is wrong now that features are disabled by #defining
   80583         ENABLE_feature to 0.
   80584 
   80585         https://bugs.webkit.org/show_bug.cgi?id=21338
   80586 
   80587         * bindings/objc/DOMEvents.h:
   80588         * bindings/objc/PublicDOMInterfaces.h:
   80589         * dom/Document.idl:
   80590         * page/DOMWindow.idl:
   80591         * svg/svgtags.in:
   80592 
   80593 2008-10-06  Mark Mentovai  <mark (a] moxienet.com>
   80594 
   80595         Reviewed by Sam Weinig.
   80596 
   80597         * platform/network/mac/FormDataStreamMac.mm: #import <wtf/Threading.h>
   80598         to get the declaration for isMainThread().
   80599 
   80600 2008-10-06  Jeremy Moskovich  <jeremy (a] chromium.org>
   80601 
   80602         Reviewed by Tim Hatcher.
   80603 
   80604         WebCoreObjCExtras.c is actually an obj-c++ file, so change its name
   80605         to reflect that.
   80606 
   80607         * WebCore.xcodeproj/project.pbxproj:
   80608         * platform/mac/WebCoreObjCExtras.c: Removed.
   80609         * platform/mac/WebCoreObjCExtras.mm: Copied from WebCore/platform/mac/WebCoreObjCExtras.c.
   80610 
   80611 2008-10-06  Jeremy Moskovich  <jeremy (a] chromium.org>
   80612 
   80613         Reviewed by Dan Bernstein.
   80614 
   80615         Added C++ forward declaration for the NSURLAuthenticationChallenge class
   80616         so that the m_currentMacChallenge variable doesn't cause a
   80617         compilation error when ResourceHandleInternal.h is included from a C++ file.
   80618         Fixes: https://bugs.webkit.org/show_bug.cgi?id=21411
   80619 
   80620         * platform/network/ResourceHandleInternal.h:
   80621 
   80622 2008-10-06  Steve Falkenburg  <sfalken (a] apple.com>
   80623 
   80624         Windows build fix.
   80625 
   80626         * WebCore.vcproj/WebCore.vcproj:
   80627 
   80628 2008-10-06  Steve Falkenburg  <sfalken (a] apple.com>
   80629 
   80630         https://bugs.webkit.org/show_bug.cgi?id=21416
   80631         Add missing null checks identified by Application Verifier.
   80632 
   80633         Reviewed by Darin Adler.
   80634 
   80635         * platform/win/SharedTimerWin.cpp:
   80636         (WebCore::clearTimer):
   80637 
   80638 2008-10-06  Kevin McCullough  <kmccullough (a] apple.com>
   80639 
   80640         Reviewed by Tim Hatcher.
   80641 
   80642         Removed accidentally left in debugging statement.
   80643 
   80644         * inspector/front-end/inspector.js:
   80645 
   80646 2008-10-06  Kevin McCullough  <kmccullough (a] apple.com>
   80647 
   80648         Reviewed by Tim Hatcher and Oliver Hunt.
   80649 
   80650         https://bugs.webkit.org/show_bug.cgi?id=21412
   80651         Bug 21412: Refactor user initiated profile count to be more stable
   80652 
   80653         * inspector/InspectorController.cpp: Keep track of the user-initiated
   80654         profiles here now.
   80655         (WebCore::InspectorController::InspectorController):
   80656         (WebCore::InspectorController::startUserInitiatedProfiling):
   80657         (WebCore::InspectorController::stopUserInitiatedProfiling):
   80658         * inspector/InspectorController.h:
   80659         The front end will now need to check for the existence of the user-
   80660         initiated profile title and use its count instead of keeping its own.
   80661         * inspector/front-end/ProfilesPanel.js:
   80662 
   80663 2008-10-06  Dan Bernstein  <mitz (a] apple.com>
   80664 
   80665         Reviewed by Sam Weinig.
   80666 
   80667         - separate GDI text drawing into its own function
   80668 
   80669         * platform/graphics/win/FontCGWin.cpp:
   80670         (WebCore::drawGDIGlyphs):
   80671         (WebCore::Font::drawGlyphs):
   80672 
   80673 2008-10-03  Steve Falkenburg  <sfalken (a] apple.com>
   80674 
   80675         <rdar://problem/6249833> Fix default button appearance
   80676 
   80677         Reviewed by Adele Peterson.
   80678 
   80679         * rendering/RenderThemeWin.cpp:
   80680         (WebCore::RenderThemeWin::supportsFocus):
   80681         (WebCore::RenderThemeWin::determineClassicState):
   80682         (WebCore::RenderThemeWin::determineButtonState):
   80683         (WebCore::RenderThemeWin::getClassicThemeData):
   80684         (WebCore::RenderThemeWin::getThemeData):
   80685         (WebCore::drawControl):
   80686         * rendering/RenderThemeWin.h:
   80687 
   80688 2008-10-06  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   80689 
   80690         Reviewed by Simon.
   80691 
   80692         Add native virtual keycode to PlatformKeyboardEvent
   80693 
   80694         * platform/PlatformKeyboardEvent.h:
   80695         * platform/gtk/KeyEventGtk.cpp:
   80696         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
   80697         * platform/mac/KeyEventMac.mm:
   80698         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
   80699         * platform/qt/PlatformKeyboardEventQt.cpp:
   80700         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
   80701         * platform/win/KeyEventWin.cpp:
   80702         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
   80703         * platform/wx/KeyboardEventWx.cpp:
   80704         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
   80705 
   80706 2008-10-06  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   80707 
   80708         Reviewed by Simon.
   80709 
   80710         Enable WebCore::String <> CFStringRef conversion functions for QtWebKit/Mac
   80711 
   80712         * platform/text/PlatformString.h:
   80713         * platform/text/StringImpl.h:
   80714         * platform/text/cf/StringCF.cpp:
   80715         * platform/text/cf/StringImplCF.cpp:
   80716 
   80717 2008-10-06  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   80718 
   80719         Reviewed by Simon.
   80720 
   80721         Use bundles on QtWebKit/Mac for platform modules
   80722 
   80723         * platform/FileSystem.h:
   80724         * platform/qt/FileSystemQt.cpp:
   80725         (WebCore::unloadModule):
   80726 
   80727 2008-10-06  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   80728 
   80729         Reviewed by Simon.
   80730 
   80731         Build fix for MinGW.
   80732 
   80733         * platform/win/SystemTimeWin.cpp:
   80734         * plugins/win/PluginViewWin.cpp:
   80735         (WebCore::PluginView::invalidateRect):
   80736 
   80737 2008-10-06  Adam Roben  <aroben (a] apple.com>
   80738 
   80739         Mimic the inspector/ directory structure in WebCore.vcproj
   80740 
   80741         * WebCore.vcproj/WebCore.vcproj:
   80742 
   80743 2008-10-06  Adam Roben  <aroben (a] apple.com>
   80744 
   80745         Windows build fix
   80746 
   80747         * WebCore.vcproj/WebCore.vcproj: Update the Include path for all
   80748         configurations to include WebCore/inspector.
   80749 
   80750 2008-10-04  Eric Seidel  <eric (a] webkit.org>
   80751 
   80752         Reviewed by Darin Adler.
   80753 
   80754         SVG should support ascent and descent properties <font-face> instead of <font>!
   80755         https://bugs.webkit.org/show_bug.cgi?id=21365
   80756 
   80757         Tested by many many existing SVG tests.
   80758 
   80759         * svg/SVGFontFaceElement.cpp:
   80760         (WebCore::SVGFontFaceElement::ascent):
   80761         (WebCore::SVGFontFaceElement::descent):
   80762 
   80763 2008-10-05  Darin Fisher  <darin (a] chromium.org>
   80764 
   80765         Reviewed by Eric Seidel.
   80766 
   80767         REGRESSION: crash in ScriptElement::notifyFinished
   80768         Fixes https://bugs.webkit.org/show_bug.cgi?id=21329
   80769 
   80770         * dom/ScriptElement.cpp:
   80771         (WebCore::ScriptElementData::notifyFinished): Revert part of r35744 to
   80772         ensure that the ScriptElementData object is not destroyed prematurely.
   80773 
   80774 2008-10-05  Chris Lord  <chris (a] openedhand.com>
   80775 
   80776         Reviewed by Alp Toker. Landed by Jan Alonzo.
   80777 
   80778         https://bugs.webkit.org/show_bug.cgi?id=20624
   80779         WebKit-gtk uses deprecated GtkType/GtkObject
   80780 
   80781         * plugins/gtk/gtk2xtbin.c:
   80782         (gtk_xtbin_get_type):
   80783         * plugins/gtk/gtk2xtbin.h:
   80784 
   80785 2008-10-05  Luke Kenneth Casson Leighton  <lkcl (a] lkcl.net>
   80786 
   80787         Reviewed by David Hyatt.
   80788 
   80789         GTK_WINDOW_HWND not GTK_WINDOWING_HWND
   80790         https://bugs.webkit.org/show_bug.cgi?id=20725
   80791 
   80792         Updated to ToT by Jan Alonzo.
   80793 
   80794         * plugins/gtk/PluginViewGtk.cpp:
   80795         (WebCore::PluginView::getValue):
   80796 
   80797 2008-10-05  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   80798 
   80799         Reviewed by Darin Adler.
   80800 
   80801         Invalid cast from GdkWindow to GtkWidget
   80802         https://bugs.webkit.org/show_bug.cgi?id=21391
   80803 
   80804         Fix a misplaced closing parenthesis to actually cast the widget, not the window
   80805 
   80806         * platform/gtk/PlatformScreenGtk.cpp:
   80807         (WebCore::screenDepth):
   80808 
   80809 2008-10-05  Adam Barth  <abarth (a] webkit.org>
   80810 
   80811         Reviewed by Darin Alder.
   80812 
   80813         Attach the Origin header to POST requests to help defend against
   80814         cross-site request forgery.
   80815 
   80816         https://bugs.webkit.org/show_bug.cgi?id=20792
   80817 
   80818         Collin Jackson <collinj (a] webkit.org> also contributed to this patch.
   80819 
   80820         Tests: http/tests/security/originHeader/origin-header-for-data.html
   80821                http/tests/security/originHeader/origin-header-for-empty.html
   80822                http/tests/security/originHeader/origin-header-for-get.html
   80823                http/tests/security/originHeader/origin-header-for-https.html
   80824                http/tests/security/originHeader/origin-header-for-post.html
   80825 
   80826         * bindings/js/JSDOMWindowBase.cpp:
   80827         (WebCore::createWindow):
   80828         * loader/FrameLoader.cpp:
   80829         (WebCore::FrameLoader::createWindow):
   80830         (WebCore::FrameLoader::urlSelected):
   80831         (WebCore::FrameLoader::submitForm):
   80832         (WebCore::FrameLoader::outgoingOrigin):
   80833         (WebCore::FrameLoader::loadURL):
   80834         (WebCore::FrameLoader::addExtraFieldsToRequest):
   80835         (WebCore::FrameLoader::loadPostRequest):
   80836         (WebCore::FrameLoader::loadResourceSynchronously):
   80837         (WebCore::FrameLoader::loadItem):
   80838         * loader/FrameLoader.h:
   80839         * loader/SubresourceLoader.cpp:
   80840         (WebCore::SubresourceLoader::create):
   80841         * loader/loader.cpp:
   80842         (WebCore::Loader::Host::servePendingRequests):
   80843         * platform/SecurityOrigin.cpp:
   80844         (WebCore::SecurityOrigin::toHTTPOrigin):
   80845         * platform/SecurityOrigin.h:
   80846         * platform/network/ResourceRequestBase.h:
   80847         (WebCore::ResourceRequestBase::httpOrigin):
   80848         (WebCore::ResourceRequestBase::setHTTPOrigin):
   80849         (WebCore::ResourceRequestBase::clearHTTPOrigin):
   80850         * xml/XMLHttpRequest.cpp:
   80851         (WebCore::XMLHttpRequest::makeSimpleCrossSiteAccessRequest):
   80852         (WebCore::XMLHttpRequest::makeCrossSiteAccessRequestWithPreflight):
   80853         (WebCore::XMLHttpRequest::handleAsynchronousPreflightResult):
   80854         (WebCore::XMLHttpRequest::didReceiveResponsePreflight):
   80855 
   80856 2008-10-04  Oliver Hunt  <oliver (a] apple.com>
   80857 
   80858         Reviewed by Tim Hatcher.
   80859 
   80860         Bug 21381: Incremental parsing of html causes bogus line numbers in some cases
   80861         <https://bugs.webkit.org/show_bug.cgi?id=21381>
   80862 
   80863         If we hit a parsing boundary (end of a packet, etc) in the middle of a
   80864         <script> element when we are doing an incremental parse, we exit the
   80865         parser, and reenter later when more data is available.  During this
   80866         reentry we incorrectly reset the scriptStartLineno to the current line
   80867         in the parser, which is now part way through the script element.
   80868 
   80869         The solution is to track whether we are entering or reentering the parsing
   80870         of a script element.  We do this simply by 0 checking scriptStartLineno,
   80871         and resetting it after we complete parsing of each script element.
   80872 
   80873         Test: http/tests/incremental/pause-in-script-element.pl
   80874 
   80875         * ChangeLog:
   80876         * html/HTMLTokenizer.cpp:
   80877         (WebCore::HTMLTokenizer::parseSpecial):
   80878         (WebCore::HTMLTokenizer::scriptHandler):
   80879 
   80880 2008-10-04  Alp Toker  <alp (a] nuanti.com>
   80881 
   80882         Reviewed by David Hyatt. Landed by Jan Alonzo.
   80883 
   80884         https://bugs.webkit.org/show_bug.cgi?id=20924
   80885         [Gtk] Linux/Gtk: Recent tree revisions fail Acid2 and Acid3
   80886 
   80887         https://bugs.webkit.org/show_bug.cgi?id=19578
   80888         [CURL] problem in parseDataUrl
   80889 
   80890         De-obfuscate parseDataUrl() and fix regressions introduced in r35954.
   80891         This patch also fixes encoding support in escaped (non-Base64) data
   80892         URLs. All manual data URL tests now pass in both GLib and non-GLib
   80893         code paths.
   80894 
   80895         * platform/network/curl/ResourceHandleManager.cpp:
   80896         (WebCore::parseDataUrl):
   80897 
   80898 2008-10-04  Timothy Hatcher  <timothy (a] apple.com>
   80899 
   80900         Makes breakpoints and debugging code during page load work in the
   80901         Web Inspector's debugger. Specifically, this makes the source
   80902         code for loading resources show up in the Scripts panel.
   80903 
   80904         https://bugs.webkit.org/show_bug.cgi?id=19053
   80905         rdar://problem/5933408
   80906 
   80907         Reviewed by Mark Rowe.
   80908 
   80909         * WebCore.xcodeproj/project.pbxproj: Mark the inspector group as
   80910         not using tabs and a tab width of 8.
   80911         * inspector/InspectorController.cpp:
   80912         (WebCore::addResourceSourceToFrame): Return a bool to report if the
   80913         source was added successfully or not.
   80914         (WebCore::addSourceToFrame): Ditto.
   80915         * inspector/front-end/ScriptView.js:
   80916         (WebInspector.ScriptView.prototype.setupSourceFrameIfNeeded):
   80917         Return early if the InspectorController.addSourceToFrame fails.
   80918         Moved the delete of the _frameNeedsSetup property after that call so
   80919         if the source wasn't added it will be attempted again.
   80920         * inspector/front-end/SourceView.js:
   80921         (WebInspector.SourceView.prototype.detach): Move a comment.
   80922         (WebInspector.SourceView.prototype.setupSourceFrameIfNeeded):
   80923         Don't check if the resource is finished or failed, just attempt
   80924         to add the source to the frame. WebCore has the source, but the
   80925         finished property hasn't been set yet. Return early if the
   80926         InspectorController.addSourceToFrame fails. Moved the delete
   80927         of the _frameNeedsSetup property after that call so if the source
   80928         wasn't added it will be attempted again.
   80929         (WebInspector.SourceView.prototype._resourceLoadingFinished):
   80930         Clear the _frameNeedsSetup and _sourceFrameSetup properties so
   80931         the source frame will we populated again now that the resource
   80932         load has finished.
   80933         * manual-tests/inspector/debugger-pause-during-load.html: Added.
   80934 
   80935 2008-10-04  Mark Rowe  <mrowe (a] apple.com>
   80936 
   80937         Reviewed by Tim Hatcher.
   80938 
   80939         Add a 'Check For Weak VTables' build phase to catch weak vtables as early as possible.
   80940 
   80941         * WebCore.xcodeproj/project.pbxproj:
   80942 
   80943 2008-10-04  David Hyatt  <hyatt (a] apple.com>
   80944 
   80945         https://bugs.webkit.org/show_bug.cgi?id=21373
   80946 
   80947         Tear down scrollbars in FrameView rather than ScrollView so that the connection to the hostWindow()
   80948         is still present.
   80949 
   80950         Reviewed by Mark Rowe
   80951 
   80952         * page/FrameView.cpp:
   80953         (WebCore::FrameView::~FrameView):
   80954 
   80955 2008-10-04  Sam Weinig  <sam (a] webkit.org>
   80956 
   80957         Reviewed by Dan Bernstein.
   80958 
   80959         Avoid copying a Vector when using getSupportedKeySizes.
   80960 
   80961         * html/HTMLKeygenElement.cpp:
   80962         (WebCore::HTMLKeygenElement::HTMLKeygenElement):
   80963         * platform/SSLKeyGenerator.h:
   80964         * platform/gtk/TemporaryLinkStubs.cpp:
   80965         (WebCore::getSupportedKeySizes):
   80966         * platform/mac/SSLKeyGeneratorMac.mm:
   80967         (WebCore::getSupportedKeySizes):
   80968         * platform/qt/TemporaryLinkStubs.cpp:
   80969         (WebCore::getSupportedKeySizes):
   80970         * platform/win/TemporaryLinkStubs.cpp:
   80971         (WebCore::getSupportedKeySizes):
   80972         * platform/wx/TemporaryLinkStubs.cpp:
   80973         (WebCore::getSupportedKeySizes):
   80974 
   80975 2008-10-04  Darin Adler  <darin (a] apple.com>
   80976 
   80977         Reviewed by Cameron Zwarich.
   80978 
   80979         - prepare for https://bugs.webkit.org/show_bug.cgi?id=21295
   80980           Bug 21295: Replace ExecState with a call frame Register pointer
   80981 
   80982         * bindings/js/JSQuarantinedObjectWrapper.cpp:
   80983         (WebCore::JSQuarantinedObjectWrapper::allowsUnwrappedAccessFrom):
   80984         Remove bogus "const".
   80985         * bindings/js/JSQuarantinedObjectWrapper.h: Ditto.
   80986 
   80987 2008-10-04  David Hyatt  <hyatt (a] apple.com>
   80988 
   80989         Make PopupMenuClient obey the platform abstraction.  Remove any connection to Document and RenderStyle.
   80990 
   80991         Reviewed by Darin Adler
   80992 
   80993         * WebCore.xcodeproj/project.pbxproj:
   80994         * platform/PopupMenuClient.h:
   80995         * platform/gtk/PopupMenuGtk.cpp:
   80996         (WebCore::PopupMenu::show):
   80997         * platform/mac/PopupMenuMac.mm:
   80998         (WebCore::PopupMenu::populate):
   80999         (WebCore::PopupMenu::show):
   81000         * platform/qt/PopupMenuQt.cpp:
   81001         (WebCore::PopupMenu::populate):
   81002         * platform/win/PopupMenuWin.cpp:
   81003         (WebCore::PopupMenu::calculatePositionAndSize):
   81004         (WebCore::PopupMenu::paint):
   81005         (WebCore::PopupWndProc):
   81006         * rendering/RenderMenuList.cpp:
   81007         (WebCore::RenderMenuList::itemStyle):
   81008         (WebCore::RenderMenuList::menuStyle):
   81009         (WebCore::RenderMenuList::hostWindow):
   81010         * rendering/RenderMenuList.h:
   81011         * rendering/RenderTextControl.cpp:
   81012         (WebCore::RenderTextControl::itemStyle):
   81013         (WebCore::RenderTextControl::menuStyle):
   81014         (WebCore::RenderTextControl::hostWindow):
   81015         * rendering/RenderTextControl.h:
   81016 
   81017 2008-10-04  Matt Lilek  <webkit (a] mattlilek.com>
   81018 
   81019         Build fix - restore Private role to headers that had it before the move.
   81020 
   81021         * WebCore.xcodeproj/project.pbxproj:
   81022 
   81023 2008-10-04  Darin Adler  <darin (a] apple.com>
   81024 
   81025         - try to fix build
   81026 
   81027         * DerivedSources.make: Add new inspector directory to VPATH.
   81028         * GNUmakefile.am: Add new inspector directory to includes.
   81029         Re-sort the IDL_BINDINGS list. Add new inspector directory
   81030         to VPATH.
   81031 
   81032 2008-10-04  Matt Lilek  <webkit (a] mattlilek.com>
   81033 
   81034         Not reviewed, attempt to fix Gtk build.
   81035 
   81036         * GNUmakefile.am:
   81037 
   81038 2008-10-03  Timothy Hatcher  <timothy (a] apple.com>
   81039 
   81040         Move the Web Inspector files into a top-level "inspector" folder.
   81041 
   81042         https://bugs.webkit.org/show_bug.cgi?id=21359
   81043 
   81044         Reviewed by Dave Hyatt.
   81045 
   81046         * GNUmakefile.am:
   81047         * WebCore.pro:
   81048         * WebCore.vcproj/WebCore.vcproj:
   81049         * WebCore.xcodeproj/project.pbxproj:
   81050         * WebCoreSources.bkl:
   81051         * inspector/InspectorClient.h: Renamed from WebCore/page/InspectorClient.h.
   81052         * inspector/InspectorController.cpp: Renamed from WebCore/page/InspectorController.cpp.
   81053         * inspector/InspectorController.h: Renamed from WebCore/page/InspectorController.h.
   81054         * inspector/JavaScriptCallFrame.cpp: Renamed from WebCore/page/JavaScriptCallFrame.cpp.
   81055         * inspector/JavaScriptCallFrame.h: Renamed from WebCore/page/JavaScriptCallFrame.h.
   81056         * inspector/JavaScriptCallFrame.idl: Renamed from WebCore/page/JavaScriptCallFrame.idl.
   81057         * inspector/JavaScriptDebugListener.h: Renamed from WebCore/page/JavaScriptDebugListener.h.
   81058         * inspector/JavaScriptDebugServer.cpp: Renamed from WebCore/page/JavaScriptDebugServer.cpp.
   81059         * inspector/JavaScriptDebugServer.h: Renamed from WebCore/page/JavaScriptDebugServer.h.
   81060         * inspector/JavaScriptProfile.cpp: Renamed from WebCore/page/JavaScriptProfile.cpp.
   81061         * inspector/JavaScriptProfile.h: Renamed from WebCore/page/JavaScriptProfile.h.
   81062         * inspector/JavaScriptProfileNode.cpp: Renamed from WebCore/page/JavaScriptProfileNode.cpp.
   81063         * inspector/JavaScriptProfileNode.h: Renamed from WebCore/page/JavaScriptProfileNode.h.
   81064         * inspector/front-end/Breakpoint.js: Renamed from WebCore/page/inspector/Breakpoint.js.
   81065         * inspector/front-end/BreakpointsSidebarPane.js: Renamed from WebCore/page/inspector/BreakpointsSidebarPane.js.
   81066         * inspector/front-end/CallStackSidebarPane.js: Renamed from WebCore/page/inspector/CallStackSidebarPane.js.
   81067         * inspector/front-end/Console.js: Renamed from WebCore/page/inspector/Console.js.
   81068         * inspector/front-end/DataGrid.js: Renamed from WebCore/page/inspector/DataGrid.js.
   81069         * inspector/front-end/Database.js: Renamed from WebCore/page/inspector/Database.js.
   81070         * inspector/front-end/DatabaseQueryView.js: Renamed from WebCore/page/inspector/DatabaseQueryView.js.
   81071         * inspector/front-end/DatabaseTableView.js: Renamed from WebCore/page/inspector/DatabaseTableView.js.
   81072         * inspector/front-end/DatabasesPanel.js: Renamed from WebCore/page/inspector/DatabasesPanel.js.
   81073         * inspector/front-end/ElementsPanel.js: Renamed from WebCore/page/inspector/ElementsPanel.js.
   81074         * inspector/front-end/ElementsTreeOutline.js: Renamed from WebCore/page/inspector/ElementsTreeOutline.js.
   81075         * inspector/front-end/FontView.js: Renamed from WebCore/page/inspector/FontView.js.
   81076         * inspector/front-end/ImageView.js: Renamed from WebCore/page/inspector/ImageView.js.
   81077         * inspector/front-end/Images/back.png: Renamed from WebCore/page/inspector/Images/back.png.
   81078         * inspector/front-end/Images/checker.png: Renamed from WebCore/page/inspector/Images/checker.png.
   81079         * inspector/front-end/Images/clearConsoleButtons.png: Renamed from WebCore/page/inspector/Images/clearConsoleButtons.png.
   81080         * inspector/front-end/Images/closeButtons.png: Renamed from WebCore/page/inspector/Images/closeButtons.png.
   81081         * inspector/front-end/Images/consoleButtons.png: Renamed from WebCore/page/inspector/Images/consoleButtons.png.
   81082         * inspector/front-end/Images/database.png: Renamed from WebCore/page/inspector/Images/database.png.
   81083         * inspector/front-end/Images/databaseTable.png: Renamed from WebCore/page/inspector/Images/databaseTable.png.
   81084         * inspector/front-end/Images/databasesIcon.png: Renamed from WebCore/page/inspector/Images/databasesIcon.png.
   81085         * inspector/front-end/Images/debuggerContinue.png: Renamed from WebCore/page/inspector/Images/debuggerContinue.png.
   81086         * inspector/front-end/Images/debuggerPause.png: Renamed from WebCore/page/inspector/Images/debuggerPause.png.
   81087         * inspector/front-end/Images/debuggerStepInto.png: Renamed from WebCore/page/inspector/Images/debuggerStepInto.png.
   81088         * inspector/front-end/Images/debuggerStepOut.png: Renamed from WebCore/page/inspector/Images/debuggerStepOut.png.
   81089         * inspector/front-end/Images/debuggerStepOver.png: Renamed from WebCore/page/inspector/Images/debuggerStepOver.png.
   81090         * inspector/front-end/Images/debuggingButtons.png: Renamed from WebCore/page/inspector/Images/debuggingButtons.png.
   81091         * inspector/front-end/Images/disclosureTriangleSmallDown.png: Renamed from WebCore/page/inspector/Images/disclosureTriangleSmallDown.png.
   81092         * inspector/front-end/Images/disclosureTriangleSmallDownBlack.png: Renamed from WebCore/page/inspector/Images/disclosureTriangleSmallDownBlack.png.
   81093         * inspector/front-end/Images/disclosureTriangleSmallDownWhite.png: Renamed from WebCore/page/inspector/Images/disclosureTriangleSmallDownWhite.png.
   81094         * inspector/front-end/Images/disclosureTriangleSmallRight.png: Renamed from WebCore/page/inspector/Images/disclosureTriangleSmallRight.png.
   81095         * inspector/front-end/Images/disclosureTriangleSmallRightBlack.png: Renamed from WebCore/page/inspector/Images/disclosureTriangleSmallRightBlack.png.
   81096         * inspector/front-end/Images/disclosureTriangleSmallRightDown.png: Renamed from WebCore/page/inspector/Images/disclosureTriangleSmallRightDown.png.
   81097         * inspector/front-end/Images/disclosureTriangleSmallRightDownBlack.png: Renamed from WebCore/page/inspector/Images/disclosureTriangleSmallRightDownBlack.png.
   81098         * inspector/front-end/Images/disclosureTriangleSmallRightDownWhite.png: Renamed from WebCore/page/inspector/Images/disclosureTriangleSmallRightDownWhite.png.
   81099         * inspector/front-end/Images/disclosureTriangleSmallRightWhite.png: Renamed from WebCore/page/inspector/Images/disclosureTriangleSmallRightWhite.png.
   81100         * inspector/front-end/Images/dockButtons.png: Renamed from WebCore/page/inspector/Images/dockButtons.png.
   81101         * inspector/front-end/Images/elementsIcon.png: Renamed from WebCore/page/inspector/Images/elementsIcon.png.
   81102         * inspector/front-end/Images/errorIcon.png: Renamed from WebCore/page/inspector/Images/errorIcon.png.
   81103         * inspector/front-end/Images/errorMediumIcon.png: Renamed from WebCore/page/inspector/Images/errorMediumIcon.png.
   81104         * inspector/front-end/Images/excludeButtons.png: Renamed from WebCore/page/inspector/Images/excludeButtons.png.
   81105         * inspector/front-end/Images/focusButtons.png: Renamed from WebCore/page/inspector/Images/focusButtons.png.
   81106         * inspector/front-end/Images/forward.png: Renamed from WebCore/page/inspector/Images/forward.png.
   81107         * inspector/front-end/Images/glossyHeader.png: Renamed from WebCore/page/inspector/Images/glossyHeader.png.
   81108         * inspector/front-end/Images/glossyHeaderPressed.png: Renamed from WebCore/page/inspector/Images/glossyHeaderPressed.png.
   81109         * inspector/front-end/Images/glossyHeaderSelected.png: Renamed from WebCore/page/inspector/Images/glossyHeaderSelected.png.
   81110         * inspector/front-end/Images/glossyHeaderSelectedPressed.png: Renamed from WebCore/page/inspector/Images/glossyHeaderSelectedPressed.png.
   81111         * inspector/front-end/Images/goArrow.png: Renamed from WebCore/page/inspector/Images/goArrow.png.
   81112         * inspector/front-end/Images/largerResourcesButtons.png: Renamed from WebCore/page/inspector/Images/largerResourcesButtons.png.
   81113         * inspector/front-end/Images/nodeSearchButtons.png: Renamed from WebCore/page/inspector/Images/nodeSearchButtons.png.
   81114         * inspector/front-end/Images/paneBottomGrow.png: Renamed from WebCore/page/inspector/Images/paneBottomGrow.png.
   81115         * inspector/front-end/Images/paneBottomGrowActive.png: Renamed from WebCore/page/inspector/Images/paneBottomGrowActive.png.
   81116         * inspector/front-end/Images/paneGrowHandleLine.png: Renamed from WebCore/page/inspector/Images/paneGrowHandleLine.png.
   81117         * inspector/front-end/Images/pauseOnExceptionButtons.png: Renamed from WebCore/page/inspector/Images/pauseOnExceptionButtons.png.
   81118         * inspector/front-end/Images/percentButtons.png: Renamed from WebCore/page/inspector/Images/percentButtons.png.
   81119         * inspector/front-end/Images/profileGroupIcon.png: Renamed from WebCore/page/inspector/Images/profileGroupIcon.png.
   81120         * inspector/front-end/Images/profileIcon.png: Renamed from WebCore/page/inspector/Images/profileIcon.png.
   81121         * inspector/front-end/Images/profileSmallIcon.png: Renamed from WebCore/page/inspector/Images/profileSmallIcon.png.
   81122         * inspector/front-end/Images/profilesIcon.png: Renamed from WebCore/page/inspector/Images/profilesIcon.png.
   81123         * inspector/front-end/Images/recordButtons.png: Renamed from WebCore/page/inspector/Images/recordButtons.png.
   81124         * inspector/front-end/Images/reloadButtons.png: Renamed from WebCore/page/inspector/Images/reloadButtons.png.
   81125         * inspector/front-end/Images/resourceCSSIcon.png: Renamed from WebCore/page/inspector/Images/resourceCSSIcon.png.
   81126         * inspector/front-end/Images/resourceDocumentIcon.png: Renamed from WebCore/page/inspector/Images/resourceDocumentIcon.png.
   81127         * inspector/front-end/Images/resourceDocumentIconSmall.png: Renamed from WebCore/page/inspector/Images/resourceDocumentIconSmall.png.
   81128         * inspector/front-end/Images/resourceJSIcon.png: Renamed from WebCore/page/inspector/Images/resourceJSIcon.png.
   81129         * inspector/front-end/Images/resourcePlainIcon.png: Renamed from WebCore/page/inspector/Images/resourcePlainIcon.png.
   81130         * inspector/front-end/Images/resourcePlainIconSmall.png: Renamed from WebCore/page/inspector/Images/resourcePlainIconSmall.png.
   81131         * inspector/front-end/Images/resourcesIcon.png: Renamed from WebCore/page/inspector/Images/resourcesIcon.png.
   81132         * inspector/front-end/Images/resourcesSizeGraphIcon.png: Renamed from WebCore/page/inspector/Images/resourcesSizeGraphIcon.png.
   81133         * inspector/front-end/Images/resourcesTimeGraphIcon.png: Renamed from WebCore/page/inspector/Images/resourcesTimeGraphIcon.png.
   81134         * inspector/front-end/Images/scriptsIcon.png: Renamed from WebCore/page/inspector/Images/scriptsIcon.png.
   81135         * inspector/front-end/Images/searchSmallBlue.png: Renamed from WebCore/page/inspector/Images/searchSmallBlue.png.
   81136         * inspector/front-end/Images/searchSmallBrightBlue.png: Renamed from WebCore/page/inspector/Images/searchSmallBrightBlue.png.
   81137         * inspector/front-end/Images/searchSmallGray.png: Renamed from WebCore/page/inspector/Images/searchSmallGray.png.
   81138         * inspector/front-end/Images/searchSmallWhite.png: Renamed from WebCore/page/inspector/Images/searchSmallWhite.png.
   81139         * inspector/front-end/Images/segment.png: Renamed from WebCore/page/inspector/Images/segment.png.
   81140         * inspector/front-end/Images/segmentEnd.png: Renamed from WebCore/page/inspector/Images/segmentEnd.png.
   81141         * inspector/front-end/Images/segmentHover.png: Renamed from WebCore/page/inspector/Images/segmentHover.png.
   81142         * inspector/front-end/Images/segmentHoverEnd.png: Renamed from WebCore/page/inspector/Images/segmentHoverEnd.png.
   81143         * inspector/front-end/Images/segmentSelected.png: Renamed from WebCore/page/inspector/Images/segmentSelected.png.
   81144         * inspector/front-end/Images/segmentSelectedEnd.png: Renamed from WebCore/page/inspector/Images/segmentSelectedEnd.png.
   81145         * inspector/front-end/Images/splitviewDimple.png: Renamed from WebCore/page/inspector/Images/splitviewDimple.png.
   81146         * inspector/front-end/Images/splitviewDividerBackground.png: Renamed from WebCore/page/inspector/Images/splitviewDividerBackground.png.
   81147         * inspector/front-end/Images/statusbarBackground.png: Renamed from WebCore/page/inspector/Images/statusbarBackground.png.
   81148         * inspector/front-end/Images/statusbarBottomBackground.png: Renamed from WebCore/page/inspector/Images/statusbarBottomBackground.png.
   81149         * inspector/front-end/Images/statusbarButtons.png: Renamed from WebCore/page/inspector/Images/statusbarButtons.png.
   81150         * inspector/front-end/Images/statusbarMenuButton.png: Renamed from WebCore/page/inspector/Images/statusbarMenuButton.png.
   81151         * inspector/front-end/Images/statusbarMenuButtonSelected.png: Renamed from WebCore/page/inspector/Images/statusbarMenuButtonSelected.png.
   81152         * inspector/front-end/Images/statusbarResizerHorizontal.png: Renamed from WebCore/page/inspector/Images/statusbarResizerHorizontal.png.
   81153         * inspector/front-end/Images/statusbarResizerVertical.png: Renamed from WebCore/page/inspector/Images/statusbarResizerVertical.png.
   81154         * inspector/front-end/Images/timelinePillBlue.png: Renamed from WebCore/page/inspector/Images/timelinePillBlue.png.
   81155         * inspector/front-end/Images/timelinePillGray.png: Renamed from WebCore/page/inspector/Images/timelinePillGray.png.
   81156         * inspector/front-end/Images/timelinePillGreen.png: Renamed from WebCore/page/inspector/Images/timelinePillGreen.png.
   81157         * inspector/front-end/Images/timelinePillOrange.png: Renamed from WebCore/page/inspector/Images/timelinePillOrange.png.
   81158         * inspector/front-end/Images/timelinePillPurple.png: Renamed from WebCore/page/inspector/Images/timelinePillPurple.png.
   81159         * inspector/front-end/Images/timelinePillRed.png: Renamed from WebCore/page/inspector/Images/timelinePillRed.png.
   81160         * inspector/front-end/Images/timelinePillYellow.png: Renamed from WebCore/page/inspector/Images/timelinePillYellow.png.
   81161         * inspector/front-end/Images/tipBalloon.png: Renamed from WebCore/page/inspector/Images/tipBalloon.png.
   81162         * inspector/front-end/Images/tipBalloonBottom.png: Renamed from WebCore/page/inspector/Images/tipBalloonBottom.png.
   81163         * inspector/front-end/Images/tipIcon.png: Renamed from WebCore/page/inspector/Images/tipIcon.png.
   81164         * inspector/front-end/Images/tipIconPressed.png: Renamed from WebCore/page/inspector/Images/tipIconPressed.png.
   81165         * inspector/front-end/Images/toolbarItemSelected.png: Renamed from WebCore/page/inspector/Images/toolbarItemSelected.png.
   81166         * inspector/front-end/Images/treeDownTriangleBlack.png: Renamed from WebCore/page/inspector/Images/treeDownTriangleBlack.png.
   81167         * inspector/front-end/Images/treeDownTriangleWhite.png: Renamed from WebCore/page/inspector/Images/treeDownTriangleWhite.png.
   81168         * inspector/front-end/Images/treeRightTriangleBlack.png: Renamed from WebCore/page/inspector/Images/treeRightTriangleBlack.png.
   81169         * inspector/front-end/Images/treeRightTriangleWhite.png: Renamed from WebCore/page/inspector/Images/treeRightTriangleWhite.png.
   81170         * inspector/front-end/Images/treeUpTriangleBlack.png: Renamed from WebCore/page/inspector/Images/treeUpTriangleBlack.png.
   81171         * inspector/front-end/Images/treeUpTriangleWhite.png: Renamed from WebCore/page/inspector/Images/treeUpTriangleWhite.png.
   81172         * inspector/front-end/Images/userInputIcon.png: Renamed from WebCore/page/inspector/Images/userInputIcon.png.
   81173         * inspector/front-end/Images/userInputPreviousIcon.png: Renamed from WebCore/page/inspector/Images/userInputPreviousIcon.png.
   81174         * inspector/front-end/Images/warningIcon.png: Renamed from WebCore/page/inspector/Images/warningIcon.png.
   81175         * inspector/front-end/Images/warningMediumIcon.png: Renamed from WebCore/page/inspector/Images/warningMediumIcon.png.
   81176         * inspector/front-end/Images/warningsErrors.png: Renamed from WebCore/page/inspector/Images/warningsErrors.png.
   81177         * inspector/front-end/MetricsSidebarPane.js: Renamed from WebCore/page/inspector/MetricsSidebarPane.js.
   81178         * inspector/front-end/Object.js: Renamed from WebCore/page/inspector/Object.js.
   81179         * inspector/front-end/ObjectPropertiesSection.js: Renamed from WebCore/page/inspector/ObjectPropertiesSection.js.
   81180         * inspector/front-end/Panel.js: Renamed from WebCore/page/inspector/Panel.js.
   81181         * inspector/front-end/Placard.js: Renamed from WebCore/page/inspector/Placard.js.
   81182         * inspector/front-end/ProfileView.js: Renamed from WebCore/page/inspector/ProfileView.js.
   81183         * inspector/front-end/ProfilesPanel.js: Renamed from WebCore/page/inspector/ProfilesPanel.js.
   81184         * inspector/front-end/PropertiesSection.js: Renamed from WebCore/page/inspector/PropertiesSection.js.
   81185         * inspector/front-end/PropertiesSidebarPane.js: Renamed from WebCore/page/inspector/PropertiesSidebarPane.js.
   81186         * inspector/front-end/Resource.js: Renamed from WebCore/page/inspector/Resource.js.
   81187         * inspector/front-end/ResourceCategory.js: Renamed from WebCore/page/inspector/ResourceCategory.js.
   81188         * inspector/front-end/ResourceView.js: Renamed from WebCore/page/inspector/ResourceView.js.
   81189         * inspector/front-end/ResourcesPanel.js: Renamed from WebCore/page/inspector/ResourcesPanel.js.
   81190         * inspector/front-end/ScopeChainSidebarPane.js: Renamed from WebCore/page/inspector/ScopeChainSidebarPane.js.
   81191         * inspector/front-end/Script.js: Renamed from WebCore/page/inspector/Script.js.
   81192         * inspector/front-end/ScriptView.js: Renamed from WebCore/page/inspector/ScriptView.js.
   81193         * inspector/front-end/ScriptsPanel.js: Renamed from WebCore/page/inspector/ScriptsPanel.js.
   81194         * inspector/front-end/SidebarPane.js: Renamed from WebCore/page/inspector/SidebarPane.js.
   81195         * inspector/front-end/SidebarTreeElement.js: Renamed from WebCore/page/inspector/SidebarTreeElement.js.
   81196         * inspector/front-end/SourceFrame.js: Renamed from WebCore/page/inspector/SourceFrame.js.
   81197         * inspector/front-end/SourceView.js: Renamed from WebCore/page/inspector/SourceView.js.
   81198         * inspector/front-end/StylesSidebarPane.js: Renamed from WebCore/page/inspector/StylesSidebarPane.js.
   81199         * inspector/front-end/TextPrompt.js: Renamed from WebCore/page/inspector/TextPrompt.js.
   81200         * inspector/front-end/View.js: Renamed from WebCore/page/inspector/View.js.
   81201         * inspector/front-end/WebKit.qrc: Renamed from WebCore/page/inspector/WebKit.qrc.
   81202         * inspector/front-end/inspector.css: Renamed from WebCore/page/inspector/inspector.css.
   81203         * inspector/front-end/inspector.html: Renamed from WebCore/page/inspector/inspector.html.
   81204         * inspector/front-end/inspector.js: Renamed from WebCore/page/inspector/inspector.js.
   81205         * inspector/front-end/treeoutline.js: Renamed from WebCore/page/inspector/treeoutline.js.
   81206         * inspector/front-end/utilities.js: Renamed from WebCore/page/inspector/utilities.js.
   81207 
   81208 2008-10-03  Timothy Hatcher  <timothy (a] apple.com>
   81209 
   81210         Adds support to the Web Inspector's Elements panel for fast tag name,
   81211         class name, id and attribute name searching. The panel first tries
   81212         using getElementById, getElementsByClassName and getElementsByTagName
   81213         with the search query. Then does a slower search using XPath for partial
   81214         matches, text and comment matches.
   81215 
   81216         Adds support for search queries like "<div>", "<h" and "frame>".
   81217         These forms limit the search to tag names, text and comment matches.
   81218 
   81219         https://bugs.webkit.org/show_bug.cgi?id=21353
   81220 
   81221         Reviewed by Maciej Stachowiak.
   81222 
   81223         * page/inspector/ElementsPanel.js:
   81224         (WebInspector.ElementsPanel.prototype.performSearch): Add tag syntax
   81225         support. Add new search functions that try exact matches first.
   81226 
   81227 2008-10-03  Timothy Hatcher  <timothy (a] apple.com>
   81228 
   81229         Changes how searching works in the Web Inspector's Elements
   81230         panel. The search tasks are divided into chunks that are small
   81231         units of work that are performed at a time interval. This
   81232         change also prevents queries that will select all elements,
   81233         since that isn't useful.
   81234 
   81235         https://bugs.webkit.org/show_bug.cgi?id=21285
   81236 
   81237         Reviewed by Oliver Hunt.
   81238 
   81239         * page/inspector/ElementsPanel.js:
   81240         (WebInspector.ElementsPanel.prototype.searchCancled):
   81241         Remove the searchResultsProperty form results since there might
   81242         be an unfinished search.
   81243         (WebInspector.ElementsPanel.prototype.performSearch): Divide the
   81244         documents and search functions into chunks that are performed on
   81245         a interval of 25ms. Prevent searches for "//*" and "*".
   81246 
   81247 2008-10-03  Maciej Stachowiak  <mjs (a] apple.com>
   81248 
   81249         Reviewed by Cameron Zwarich.
   81250 
   81251         - "this" object in methods called on primitives should be wrapper object
   81252         https://bugs.webkit.org/show_bug.cgi?id=21362
   81253 
   81254         Updated so toThis conversion for the split window is handled properly.
   81255 
   81256         * bindings/scripts/CodeGeneratorJS.pm:
   81257 
   81258 2008-10-03  Sam Weinig  <sam (a] webkit.org>
   81259 
   81260         Reviewed by David "The Motivator" Hyatt.
   81261 
   81262         Patch for https://bugs.webkit.org/show_bug.cgi?id=21355
   81263         Move SecurityOrigin out of platform/ to page/.
   81264 
   81265         It was a layering violation for SecurityOrigin to be in platform
   81266         as it depended on FrameLoader.
   81267 
   81268         * GNUmakefile.am:
   81269         * WebCore.pro:
   81270         * WebCore.vcproj/WebCore.vcproj:
   81271         * WebCore.xcodeproj/project.pbxproj:
   81272         * WebCoreSources.bkl:
   81273         * page/SecurityOrigin.cpp: Copied from platform/SecurityOrigin.cpp.
   81274         * page/SecurityOrigin.h: Copied from platform/SecurityOrigin.h.
   81275         * page/SecurityOriginHash.h: Copied from platform/SecurityOriginHash.h.
   81276         * platform/SecurityOrigin.cpp: Removed.
   81277         * platform/SecurityOrigin.h: Removed.
   81278         * platform/SecurityOriginHash.h: Removed.
   81279 
   81280 2008-10-03  Marco Barisione  <marco.barisione (a] collabora.co.uk>
   81281 
   81282         Reviewed by Alp Toker.
   81283 
   81284         http://bugs.webkit.org/show_bug.cgi?id=18832
   81285         [curl] file upload does not work
   81286 
   81287         The curl_off_t integer type has a different size depending if large
   81288         file support is enabled or not. There is no different public API for
   81289         the two cases, so the same function accepts a different type based on
   81290         a compilation option the could be different in WebKit and libcurl.
   81291         To fix the bug we query libcurl at runtime for large file support and
   81292         pass the right type based on that.
   81293 
   81294         * platform/network/curl/ResourceHandleManager.cpp:
   81295         (WebCore::ResourceHandleManager::setupPOST):
   81296 
   81297 2008-10-03  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   81298 
   81299         Reviewed by David Hyatt.
   81300 
   81301         Gtk build fixes.
   81302 
   81303         * platform/gtk/FileChooserGtk.cpp:
   81304         (WebCore::FileChooser::openFileChooser):
   81305         * platform/gtk/PlatformScreenGtk.cpp:
   81306         (WebCore::screenDepth):
   81307         (WebCore::screenDepthPerComponent):
   81308         (WebCore::screenAvailableRect):
   81309         * platform/gtk/PopupMenuGtk.cpp:
   81310         (WebCore::PopupMenu::show):
   81311         * platform/gtk/ScrollViewGtk.cpp:
   81312         (WebCore::ScrollView::platformAddChild):
   81313         (WebCore::ScrollView::platformRemoveChild):
   81314         * platform/gtk/WidgetGtk.cpp:
   81315         (WebCore::Widget::setCursor):
   81316         * plugins/gtk/PluginViewGtk.cpp:
   81317         (WebCore::PluginView::getValue):
   81318         (WebCore::PluginView::forceRedraw):
   81319         (WebCore::PluginView::init):
   81320 
   81321 2008-10-03  David Hyatt  <hyatt (a] apple.com>
   81322 
   81323         Fix Qt bustage from missing include.
   81324 
   81325         * platform/qt/PlatformScreenQt.cpp:
   81326 
   81327 2008-10-03  David Hyatt  <hyatt (a] apple.com>
   81328 
   81329         Fix Windows scrollbar bustage in popup menus.
   81330 
   81331         * platform/win/PopupMenuWin.cpp:
   81332         (WebCore::PopupWndProc):
   81333 
   81334 2008-10-03  David Hyatt  <hyatt (a] apple.com>
   81335 
   81336         Fix Windows bustage.
   81337 
   81338         * platform/win/FileChooserWin.cpp:
   81339         (WebCore::FileChooser::openFileChooser):
   81340         * platform/win/PlatformScreenWin.cpp:
   81341         (WebCore::monitorInfoForWidget):
   81342         * platform/win/WidgetWin.cpp:
   81343         * plugins/win/PluginViewWin.cpp:
   81344         (WebCore::PluginView::getValue):
   81345         (WebCore::PluginView::forceRedraw):
   81346         (WebCore::PluginView::init):
   81347 
   81348 2008-10-03  Darin Adler  <darin (a] apple.com>
   81349 
   81350         * bindings/js/JSInspectedObjectWrapper.cpp: Try to fix a build failure
   81351         seen on some machines but not others by adding an include.
   81352 
   81353 2008-10-03  Darin Adler  <darin (a] apple.com>
   81354 
   81355         - Qt build fix
   81356 
   81357         * bridge/qt/qt_runtime.cpp: Remove long-obsolete codeType and
   81358         execute functions. Declarations for these relied on the CodeType
   81359         enumeration, which used to be in ExecState.h; but the functions
   81360         aren't needed at all.
   81361         * bridge/qt/qt_runtime.h: Ditto.
   81362 
   81363 2008-10-03  Darin Adler  <darin (a] apple.com>
   81364 
   81365         Reviewed by Geoff Garen.
   81366 
   81367         - next step of https://bugs.webkit.org/show_bug.cgi?id=21295
   81368           Turn ExecState into a call frame pointer.
   81369 
   81370         Remove m_globalObject and m_globalData from ExecState.
   81371 
   81372         * bindings/js/JSDOMWindowBase.cpp:
   81373         (WebCore::JSDOMWindowBase::JSDOMWindowBaseData::JSDOMWindowBaseData):
   81374         Removed an argument now that JSGlobalObject doesn't need it any more.
   81375         (WebCore::JSDOMWindowBase::JSDOMWindowBase): Removed the argument from
   81376         the JSDOMWindowBaseData constructor, and added the this argument to the
   81377         JSGlobalObject constructor. This is because a couple key bits of
   81378         initialization moved from the data constructor to the JSGlobalObject
   81379         constructor.
   81380         * bindings/js/JSDOMWindowBase.h: Ditto.
   81381 
   81382         * bridge/qt/qt_runtime.cpp:
   81383         (JSC::Bindings::QtRuntimeMethod::QtRuntimeMethod):
   81384         * bridge/runtime_method.cpp:
   81385         (JSC::RuntimeMethod::RuntimeMethod):
   81386         Pass JSGlobalData* instead of ExecState* to the InternalFunction
   81387         constructor.
   81388 
   81389 2008-10-03  David Hyatt  <hyatt (a] apple.com>
   81390 
   81391         Fix Windows/Qt build bustage.
   81392 
   81393         Reviewed by ggaren
   81394 
   81395         * loader/EmptyClients.h:
   81396         (WebCore::EmptyChromeClient::platformWindow):
   81397         * page/Chrome.cpp:
   81398         (WebCore::Chrome::platformWindow):
   81399         * page/Chrome.h:
   81400         * page/ChromeClient.h:
   81401         * platform/HostWindow.h:
   81402         * platform/qt/PlatformScreenQt.cpp:
   81403         (WebCore::screenDepth):
   81404         (WebCore::screenDepthPerComponent):
   81405         (WebCore::screenIsMonochrome):
   81406         (WebCore::screenRect):
   81407         (WebCore::screenAvailableRect):
   81408         * platform/qt/PopupMenuQt.cpp:
   81409         (WebCore::PopupMenu::show):
   81410         * platform/win/PopupMenuWin.cpp:
   81411         (WebCore::PopupMenu::show):
   81412         (WebCore::PopupMenu::calculatePositionAndSize):
   81413         (WebCore::PopupWndProc):
   81414 
   81415 2008-10-03  Simon Fraser  <simon.fraser (a] apple.com>
   81416 
   81417         Reviewed by Dave Hyatt
   81418 
   81419         Make setStyle() take a const RenderStyle, to ensure that an
   81420         earlier RenderStyle::diff() remains valid.
   81421 
   81422         * rendering/RenderBR.cpp:
   81423         * rendering/RenderBR.h:
   81424         * rendering/RenderBlock.cpp:
   81425         * rendering/RenderBlock.h:
   81426         * rendering/RenderBox.cpp:
   81427         * rendering/RenderBox.h:
   81428         * rendering/RenderButton.cpp:
   81429         * rendering/RenderButton.h:
   81430         * rendering/RenderFieldset.cpp:
   81431         * rendering/RenderFieldset.h:
   81432         * rendering/RenderFileUploadControl.cpp:
   81433         * rendering/RenderFileUploadControl.h:
   81434         * rendering/RenderInline.cpp:
   81435         * rendering/RenderInline.h:
   81436         * rendering/RenderListBox.cpp:
   81437         * rendering/RenderListBox.h:
   81438         * rendering/RenderListItem.cpp:
   81439         * rendering/RenderListItem.h:
   81440         * rendering/RenderListMarker.cpp:
   81441         * rendering/RenderListMarker.h:
   81442         * rendering/RenderMenuList.cpp:
   81443         * rendering/RenderMenuList.h:
   81444         * rendering/RenderObject.cpp:
   81445         (WebCore::RenderObject::setStyle):
   81446         * rendering/RenderObject.h:
   81447         * rendering/RenderReplaced.cpp:
   81448         * rendering/RenderReplaced.h:
   81449         * rendering/RenderSVGBlock.cpp:
   81450         (WebCore::RenderSVGBlock::setStyle):
   81451         * rendering/RenderSVGBlock.h:
   81452         * rendering/RenderSVGGradientStop.cpp:
   81453         * rendering/RenderSVGGradientStop.h:
   81454         * rendering/RenderSlider.cpp:
   81455         * rendering/RenderSlider.h:
   81456         * rendering/RenderTable.cpp:
   81457         * rendering/RenderTable.h:
   81458         * rendering/RenderTableCell.cpp:
   81459         * rendering/RenderTableCell.h:
   81460         * rendering/RenderTableRow.cpp:
   81461         * rendering/RenderTableRow.h:
   81462         * rendering/RenderText.cpp:
   81463         * rendering/RenderText.h:
   81464         * rendering/RenderTextControl.cpp:
   81465         * rendering/RenderTextControl.h:
   81466         * rendering/RenderWidget.cpp:
   81467         * rendering/RenderWidget.h:
   81468         * rendering/style/RenderStyle.h:
   81469         (WebCore::RenderStyle::isDisplayReplacedType):
   81470         (WebCore::RenderStyle::isDisplayInlineType):
   81471 
   81472 2008-10-03  David Hyatt  <hyatt (a] apple.com>
   81473 
   81474         Preparation for enabling scrollbars to hit test properly inside transforms.  Clean up the scrollbar
   81475         event handlers to no longer be virtual.  Don't pass a mouse event where none is needed.  Add a new
   81476         method on Scrollbars called transformEvent that will apply all of the transforms to make a new event
   81477         that will work properly for hit testing.  This patch just stubs out that method to return the same
   81478         event untransformed.
   81479 
   81480         Reviewed by Darin Adler
   81481 
   81482         * page/EventHandler.cpp:
   81483         (WebCore::EventHandler::handleMouseDoubleClickEvent):
   81484         (WebCore::EventHandler::handleMouseMoveEvent):
   81485         (WebCore::EventHandler::handleMouseReleaseEvent):
   81486         (WebCore::EventHandler::passMousePressEventToScrollbar):
   81487         * page/gtk/EventHandlerGtk.cpp:
   81488         * page/mac/EventHandlerMac.mm:
   81489         * page/qt/EventHandlerQt.cpp:
   81490         * page/win/EventHandlerWin.cpp:
   81491         * page/wx/EventHandlerWx.cpp:
   81492         * platform/Scrollbar.cpp:
   81493         (WebCore::Scrollbar::mouseMoved):
   81494         (WebCore::Scrollbar::mouseExited):
   81495         (WebCore::Scrollbar::mouseUp):
   81496         (WebCore::Scrollbar::mouseDown):
   81497         (WebCore::Scrollbar::transformEvent):
   81498         * platform/Scrollbar.h:
   81499 
   81500 2008-10-03  David Hyatt  <hyatt (a] apple.com>
   81501 
   81502         https://bugs.webkit.org/show_bug.cgi?id=21340
   81503 
   81504         Remove "containingWindow()/setContainingWindow()" from Widget.  HostWindow covers this now.
   81505 
   81506         Reviewed by Dan Bernstein & Darin Adler
   81507 
   81508         * platform/ScrollView.cpp:
   81509         (WebCore::ScrollView::addChild):
   81510         * platform/Widget.cpp:
   81511         (WebCore::Widget::init):
   81512         * platform/Widget.h:
   81513         * platform/mac/WidgetMac.mm:
   81514         * platform/win/PopupMenuWin.cpp:
   81515         (WebCore::PopupMenu::show):
   81516 
   81517 2008-10-03  Adele Peterson  <adele (a] apple.com>
   81518 
   81519         Reviewed by Sam Weinig.
   81520 
   81521         * css/CSSFontSelector.cpp: (WebCore::fontDataForGenericFamily):
   81522         Return early if settings is nil.
   81523 
   81524 2008-10-03  Rob Buis  <buis (a] kde.org>
   81525 
   81526         Reviewed by Darin.
   81527 
   81528         https://bugs.webkit.org/show_bug.cgi?id=20134
   81529         REGRESSION (2.0.4-3.0.4): No default value set for <input type=range> with an even difference of (max - min)
   81530 
   81531         Make sure the input element gets the right default value when no value is set.
   81532 
   81533         Test: fast/forms/range-default-value.html
   81534 
   81535         * rendering/RenderSlider.cpp:
   81536         (WebCore::RenderSlider::setPositionFromValue):
   81537 
   81538 2008-10-03  David Hyatt  <hyatt (a] apple.com>
   81539 
   81540         Instead of a cross-platform init/destroy that forces every ScrollView platform to have a constructor/
   81541         destructor that calls them, switch to having a cross-platform constructor/destructor that calls
   81542         platform-specific init/destroy methods.
   81543 
   81544         With this change, ScrollViewWin.cpp can be removed from the build (yay!).
   81545 
   81546         Reviewed by Darin Adler
   81547 
   81548         * WebCore.vcproj/WebCore.vcproj:
   81549         * platform/ScrollView.cpp:
   81550         (WebCore::ScrollView::ScrollView):
   81551         (WebCore::ScrollView::~ScrollView):
   81552         (WebCore::ScrollView::platformInit):
   81553         (WebCore::ScrollView::platformDestroy):
   81554         (WebCore::ScrollView::platformAddChild):
   81555         (WebCore::ScrollView::platformRemoveChild):
   81556         * platform/ScrollView.h:
   81557         * platform/gtk/ScrollViewGtk.cpp:
   81558         (WebCore::ScrollView::platformInit):
   81559         (WebCore::ScrollView::platformDestroy):
   81560         * platform/mac/ScrollViewMac.mm:
   81561         * platform/qt/ScrollViewQt.cpp:
   81562         (WebCore::ScrollView::platformInit):
   81563         (WebCore::ScrollView::platformDestroy):
   81564         * platform/win/ScrollViewWin.cpp: Removed.
   81565         * platform/wx/ScrollViewWx.cpp:
   81566         (WebCore::ScrollView::platformInit):
   81567         (WebCore::ScrollView::platformDestroy):
   81568         (WebCore::ScrollView::setPlatformWidget):
   81569 
   81570 2008-10-03  Adele Peterson  <adele (a] apple.com>
   81571 
   81572         Reviewed by Dan Bernstein.
   81573 
   81574         Fix for <rdar://problem/6012018>
   81575         https://bugs.webkit.org/show_bug.cgi?id=21335
   81576         CrashTracer: [USER] 4959 crashes in Safari at com.apple.WebCore: WebCore::Frame::settings const + 8
   81577 
   81578         * css/CSSFontSelector.cpp: (WebCore::fontDataForGenericFamily): Return early if the frame is nil.
   81579 
   81580 2008-10-03  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   81581 
   81582         Build fix.
   81583 
   81584         * platform/qt/WidgetQt.cpp:
   81585         (WebCore::Widget::invalidateRect):
   81586 
   81587 2008-10-03  Alp Toker  <alp (a] nuanti.com>
   81588 
   81589         Remove some left-over GTK+ includes. No change in functionality.
   81590 
   81591         * platform/Cursor.h:
   81592         * platform/graphics/Icon.h:
   81593         * platform/gtk/RenderThemeGtk.h:
   81594 
   81595 2008-10-03  Alp Toker  <alp (a] nuanti.com>
   81596 
   81597         Build fix for trailing comment after #endif
   81598 
   81599         * dom/ElementRareData.h:
   81600 
   81601 2008-10-03  David Hyatt  <hyatt (a] apple.com>
   81602 
   81603         Remove addToDirtyRegion.
   81604 
   81605         Reviewed by Oliver Hunt
   81606 
   81607         * page/Chrome.cpp:
   81608         * page/Chrome.h:
   81609         * page/ChromeClient.h:
   81610         * platform/ScrollView.h:
   81611         * platform/gtk/ScrollViewGtk.cpp:
   81612         * platform/qt/ScrollViewQt.cpp:
   81613         * platform/win/ScrollViewWin.cpp:
   81614 
   81615 2008-10-03  Dan Bernstein  <mitz (a] apple.com>
   81616 
   81617         Reviewed by Maciej Stachowiak.
   81618 
   81619         - fix a CachedResource leak introduced in r37176
   81620 
   81621         Undo r37176 and instead allow pruneDeadResources() to be re-entered, but
   81622         afterwards bail out of the outer pruneDeadResources().
   81623 
   81624         * loader/Cache.cpp:
   81625         (WebCore::Cache::Cache):
   81626         (WebCore::Cache::pruneDeadResources):
   81627         (WebCore::Cache::remove):
   81628         * loader/Cache.h:
   81629 
   81630 2008-10-03  David Hyatt  <hyatt (a] apple.com>
   81631 
   81632         https://bugs.webkit.org/show_bug.cgi?id=21330
   81633 
   81634         Fix Gtk adjustments so that they are properly checked again before creating horizontal/vertical
   81635         scrollbars.
   81636 
   81637         Reviewed by Oliver Hunt
   81638 
   81639         * platform/ScrollView.cpp:
   81640         (WebCore::ScrollView::setHasHorizontalScrollbar):
   81641         (WebCore::ScrollView::setHasVerticalScrollbar):
   81642         (WebCore::ScrollView::platformHasHorizontalAdjustment):
   81643         (WebCore::ScrollView::platformHasVerticalAdjustment):
   81644         * platform/ScrollView.h:
   81645         * platform/gtk/ScrollViewGtk.cpp:
   81646         (WebCore::ScrollView::adjustmentChanged):
   81647         (WebCore::ScrollView::ScrollView):
   81648         (WebCore::ScrollView::~ScrollView):
   81649         (WebCore::ScrollView::setGtkAdjustments):
   81650         (WebCore::ScrollView::platformHandleHorizontalAdjustment):
   81651         (WebCore::ScrollView::platformHandleVerticalAdjustment):
   81652 
   81653 2008-10-03  Julien Chaffraix  <jchaffraix (a] webkit.org>
   81654 
   81655         Reviewed by Maciej Stachowiak.
   81656 
   81657         Bug 21106: .in format discussed changes
   81658         https://bugs.webkit.org/show_bug.cgi?id=21106
   81659 
   81660         Change "upperCase" to "interfaceName" per-tag parameter as
   81661         discussed on the mailing list. Removed the per-attribute version
   81662         as it was not used.
   81663 
   81664         Also add the "Element" suffix to all interfaceName parameter to match
   81665         the class name (and thus remove it from make_names.pl).
   81666 
   81667         * dom/make_names.pl:
   81668         * html/HTMLTagNames.in:
   81669         * svg/svgtags.in:
   81670 
   81671 2008-10-03  David Hyatt  <hyatt (a] apple.com>
   81672 
   81673         Preserve Qt's disabling of blitting when any native widgets are present anywhere on the page (ick).
   81674         Hopefully this is a temporary hack that could eventually be removed.
   81675 
   81676         Reviewed by Sam Weinig
   81677 
   81678         * platform/ScrollView.cpp:
   81679         (WebCore::ScrollView::scrollContents):
   81680         * platform/ScrollView.h:
   81681         (WebCore::ScrollView::rootPreventsBlitting):
   81682         * platform/qt/ScrollViewQt.cpp:
   81683         (WebCore::ScrollView::ScrollView):
   81684         (WebCore::ScrollView::~ScrollView):
   81685         (WebCore::ScrollView::platformAddChild):
   81686         (WebCore::ScrollView::platformRemoveChild):
   81687 
   81688 2008-10-02  David Hyatt  <hyatt (a] apple.com>
   81689 
   81690         https://bugs.webkit.org/show_bug.cgi?id=21328
   81691 
   81692         Make widget invalidation more cross-platform.
   81693 
   81694         (1) Make invalidateRect a pure virtual function on Widget.  All leaf widgets must now implement this function.
   81695 
   81696         (2) Scrollbars now send invalidations through the ScrollbarClient.  windowClipRect on ScrollbarClient has been removed and replaced with this invalidation call.
   81697         This allows all scrollbar invalidations to go through the render tree so that transforms and reflections will be respected.
   81698 
   81699         (3) Plugins now have the native window invalidation code for windowed plugins.  Windowless plugins do a repaintRectangle on the plugin's renderer.
   81700 
   81701         (4) FrameViews now do a repaintRectangle on their owner element's renderer.
   81702 
   81703         Reviewed by Sam Weinig
   81704 
   81705         * WebCore.base.exp:
   81706         * page/FrameView.cpp:
   81707         (WebCore::FrameView::invalidateRect):
   81708         (WebCore::FrameView::invalidateScrollbarRect):
   81709         * page/FrameView.h:
   81710         * platform/PopupMenu.h:
   81711         * platform/ScrollView.cpp:
   81712         (WebCore::ScrollView::scrollContents):
   81713         * platform/ScrollView.h:
   81714         * platform/Scrollbar.cpp:
   81715         (WebCore::Scrollbar::setEnabled):
   81716         (WebCore::Scrollbar::invalidateRect):
   81717         * platform/Scrollbar.h:
   81718         * platform/ScrollbarClient.h:
   81719         * platform/Widget.h:
   81720         * platform/gtk/WidgetGtk.cpp:
   81721         * platform/mac/WidgetMac.mm:
   81722         * platform/win/PopupMenuWin.cpp:
   81723         (WebCore::PopupMenu::invalidateScrollbarRect):
   81724         * platform/win/WidgetWin.cpp:
   81725         * plugins/PluginView.cpp:
   81726         (WebCore::PluginView::invalidateTimerFired):
   81727         (WebCore::PluginView::invalidateWindowlessPluginRect):
   81728         * plugins/PluginView.h:
   81729         * plugins/gtk/PluginViewGtk.cpp:
   81730         (WebCore::PluginView::invalidateRect):
   81731         * plugins/qt/PluginViewQt.cpp:
   81732         (WebCore::PluginView::invalidateRect):
   81733         * plugins/win/PluginViewWin.cpp:
   81734         (WebCore::PluginView::invalidateRect):
   81735         (WebCore::PluginView::invalidateRegion):
   81736         * rendering/RenderLayer.cpp:
   81737         (WebCore::RenderLayer::invalidateScrollbarRect):
   81738         * rendering/RenderLayer.h:
   81739         * rendering/RenderListBox.cpp:
   81740         (WebCore::RenderListBox::paintObject):
   81741         (WebCore::RenderListBox::paintScrollbar):
   81742         (WebCore::RenderListBox::invalidateScrollbarRect):
   81743         * rendering/RenderListBox.h:
   81744 
   81745 2008-10-02  Dan Bernstein  <mitz (a] apple.com>
   81746 
   81747         Reviewed by Geoffrey Garen and Sam Weinig.
   81748 
   81749         - fix SVGFontFaceElement leaks seen in Acid3
   81750         - make font-face elements take effect only when they are in the document tree
   81751 
   81752         Test: svg/custom/font-face-not-in-document.svg
   81753 
   81754         * svg/SVGFontData.h: Changed the m_svgFontFaceElement member from a
   81755         RefPtr to a plain pointer to break a ref cycle.
   81756         (WebCore::SVGFontData::svgFontFaceElement):
   81757 
   81758         * svg/SVGFontFaceElement.cpp: Changed to insert and remove the
   81759         @font-face rule from the document's mapped element sheet when the
   81760         element is inserted and removed from the document, and to update it
   81761         only when the element is in the document.
   81762         (WebCore::SVGFontFaceElement::SVGFontFaceElement):
   81763         (WebCore::SVGFontFaceElement::parseMappedAttribute):
   81764         (WebCore::SVGFontFaceElement::rebuildFontFace):
   81765         (WebCore::SVGFontFaceElement::insertedIntoDocument):
   81766         (WebCore::SVGFontFaceElement::removedFromDocument):
   81767         (WebCore::SVGFontFaceElement::childrenChanged):
   81768         (WebCore::SVGFontFaceElement::removeFromMappedElementSheet):
   81769         * svg/SVGFontFaceElement.h:
   81770 
   81771 2008-10-01  Simon Fraser  <simon.fraser (a] apple.com>
   81772 
   81773         Reviewed by Dave Hyatt
   81774 
   81775         Fix RenderFileUploadControl::setStyle() and
   81776         RenderMenuList::setStyle() to not touch the style; replace
   81777         with html4.css and CSSStyleSelector changes.
   81778 
   81779         https://bugs.webkit.org/show_bug.cgi?id=21287
   81780 
   81781         * css/CSSStyleSelector.cpp:
   81782         (WebCore::CSSStyleSelector::adjustRenderStyle):
   81783         * css/html4.css:
   81784         * rendering/RenderBlock.cpp:
   81785         (WebCore::RenderBlock::setStyle):
   81786         * rendering/RenderFileUploadControl.cpp:
   81787         * rendering/RenderMenuList.cpp:
   81788         (WebCore::RenderMenuList::setStyle):
   81789 
   81790 2008-10-01  Simon Fraser  <simon.fraser (a] apple.com>
   81791 
   81792         Reviewed by Dave Hyatt
   81793 
   81794         Clean up code that changes the RenderStyle passed in to
   81795         table renderer setStyle() methods.
   81796 
   81797         https://bugs.webkit.org/show_bug.cgi?id=21287
   81798 
   81799         Tests: fast/table/floating-th.html
   81800                fast/table/table-display-types-strict.html
   81801                fast/table/table-display-types.html
   81802 
   81803         * css/CSSStyleSelector.cpp:
   81804         (WebCore::CSSStyleSelector::adjustRenderStyle):
   81805         * rendering/RenderTableCell.cpp:
   81806         (WebCore::RenderTableCell::setStyle):
   81807         * rendering/RenderTableRow.cpp:
   81808         (WebCore::RenderTableRow::setStyle):
   81809         * rendering/RenderTableSection.cpp:
   81810         (WebCore::RenderTableSection::setStyle):
   81811 
   81812 2008-10-02  Darin Adler  <darin (a] apple.com>
   81813 
   81814         - fix build
   81815 
   81816         * bindings/scripts/CodeGeneratorJS.pm: Need to replace the -> with a . here too.
   81817         Not just locally in my generated file!
   81818 
   81819 2008-10-02  Adele Peterson  <adele (a] apple.com>
   81820 
   81821         Reviewed by Dan Bernstein.
   81822 
   81823         Fix for https://bugs.webkit.org/show_bug.cgi?id=21299
   81824         REGRESSION: <input> color specified in inline style applies to placeholder
   81825 
   81826         I recently added a pseudo-class for the placeholder, but that can be overridden by inline style changes.  A pseudo-element
   81827         is more appropriate.  This change adds "-webkit-input-placeholder".
   81828 
   81829         * css/CSSSelector.cpp: (WebCore::CSSSelector::extractPseudoType):
   81830         Added definition for "-webkit-input-placeholder" pseudo element.
   81831         * css/CSSSelector.h: (WebCore::CSSSelector::): Added PseudoInputPlaceholder.
   81832         * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
   81833         Added case for PseudoInputPlaceholder.
   81834         * css/html4.css: Added rule for -webkit-input-placeholder pseudo-element.
   81835         * rendering/style/RenderStyle.h: (WebCore::RenderStyle::): Added INPUT_PLACEHOLDER.
   81836 
   81837         * html/HTMLInputElement.cpp:
   81838         (WebCore::HTMLInputElement::setValue): Check that its a text field before calling updatePlaceholderVisibility.
   81839         (WebCore::HTMLInputElement::setValueFromRenderer): ditto.
   81840         (WebCore::HTMLInputElement::updatePlaceholderVisibility): Instead of calling setChanged(), call updatePlaceholderVisibility on the renderer.
   81841         setChanged wouldn't actually trigger setStyle since the style for the input element won't actually change.
   81842         * rendering/RenderTextControl.cpp:
   81843         (WebCore::RenderTextControl::createInnerTextStyle): Get the pseudoStyle when the placeholder is visible.
   81844         (WebCore::RenderTextControl::updatePlaceholderVisibility): Sets the style on the inner text block, and calls updateFromElement so
   81845         the text will be updated correctly.
   81846         * rendering/RenderTextControl.h:
   81847 
   81848 2008-10-02  Chris Fleizach  <cfleizach (a] apple.com>
   81849 
   81850         Reviewed by Darin Adler.
   81851 
   81852         https://bugs.webkit.org/show_bug.cgi?id=21280
   81853         <rdar://problem/6227690> There are a bunch of tables on this page that don't seem to be real tables
   81854 
   81855         Updated AXTable detection to be more robust to false-positives. Specifically, added checks
   81856         to ensure that there is more than one valid table cell, and that at least half of the cells
   81857         have borders or have specific background colors. Modified the table detection layout test
   81858         to test for the tables mentioned in the bug
   81859 
   81860         * page/AccessibilityTable.cpp:
   81861         (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
   81862 
   81863 2008-10-02  Darin Adler  <darin (a] apple.com>
   81864 
   81865         Reviewed by Geoff Garen.
   81866 
   81867         - https://bugs.webkit.org/show_bug.cgi?id=21321
   81868           Bug 21321: speed up JavaScriptCore by inlining Heap in JSGlobalData
   81869 
   81870         * bindings/js/GCController.cpp:
   81871         (WebCore::collect): Use heap. instead of heap-> to work with the heap.
   81872         (WebCore::GCController::gcTimerFired): Ditto.
   81873         (WebCore::GCController::garbageCollectNow): Ditto.
   81874         * bindings/js/JSDOMWindowShell.cpp:
   81875         (WebCore::JSDOMWindowShell::operator new): Ditto.
   81876         * storage/Database.cpp:
   81877         (WebCore::Database::Database): Ditto.
   81878 
   81879 2008-10-02  Dan Bernstein  <mitz (a] apple.com>
   81880 
   81881         Reviewed by Alexey Proskuryakov.
   81882 
   81883         - fix a Database leak that resulted in Document leaks
   81884 
   81885         * storage/Database.cpp:
   81886         (WebCore::Database::openDatabase): Account for the fact that RefCounted
   81887         objects start out with a ref count of 1.
   81888 
   81889 2008-10-02  Sam Weinig  <sam (a] webkit.org>
   81890 
   81891         Reviewed by Mr. Geoffrey Garen.
   81892 
   81893         Always mark your parent before marking members.
   81894 
   81895         * bindings/js/JSDOMWindowCustom.cpp:
   81896         (WebCore::JSDOMWindow::mark):
   81897 
   81898 2008-10-02  David Hyatt  <hyatt (a] apple.com>
   81899 
   81900         https://bugs.webkit.org/show_bug.cgi?id=21314
   81901 
   81902         Make scrollBackingStore cross-platform.
   81903 
   81904         Reviewed by Sam Weinig
   81905 
   81906         * loader/EmptyClients.h:
   81907         (WebCore::EmptyChromeClient::repaint):
   81908         (WebCore::EmptyChromeClient::scroll):
   81909         * page/Chrome.cpp:
   81910         (WebCore::Chrome::repaint):
   81911         (WebCore::Chrome::scroll):
   81912         * page/Chrome.h:
   81913         * page/ChromeClient.h:
   81914         * page/EventHandler.cpp:
   81915         (WebCore::EventHandler::handleAutoscroll):
   81916         * platform/HostWindow.h:
   81917         * platform/ScrollView.cpp:
   81918         (WebCore::ScrollView::scrollContents):
   81919         (WebCore::ScrollView::addPanScrollIcon):
   81920         (WebCore::ScrollView::removePanScrollIcon):
   81921         * platform/ScrollView.h:
   81922         * platform/gtk/ScrollViewGtk.cpp:
   81923         * platform/qt/ScrollViewQt.cpp:
   81924         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
   81925         (WebCore::ScrollView::~ScrollView):
   81926         * platform/win/ScrollViewWin.cpp:
   81927         (WebCore::ScrollView::ScrollView):
   81928         (WebCore::ScrollView::~ScrollView):
   81929 
   81930 2008-10-02  Kevin Ollivier  <kevino (a] theolliviers.com>
   81931 
   81932         wx build fixes after Frame/ScrollView changes.
   81933 
   81934         * WebCoreSources.bkl:
   81935         * platform/wx/ScrollViewWx.cpp:
   81936         (WebCore::ScrollView::platformContentsToScreen):
   81937         (WebCore::ScrollView::platformScreenToContents):
   81938         (WebCore::ScrollView::platformIsOffscreen):
   81939 
   81940 2008-10-02  Brett Wilson  <brettw (a] chromium.org>
   81941 
   81942         Reviewed by Sam Weinig
   81943 
   81944         https://bugs.webkit.org/show_bug.cgi?id=21292
   81945 
   81946         Revert the changes to enclosingIntRect made in r12530 since the new code
   81947         doesn't round correctly.
   81948 
   81949         * ChangeLog:
   81950         * platform/graphics/FloatRect.cpp:
   81951         (WebCore::enclosingIntRect):
   81952 
   81953 2008-10-02  Dan Bernstein  <mitz (a] apple.com>
   81954 
   81955         Reviewed by Anders Carlsson and Eric Seidel.
   81956 
   81957         - fix HTMLCanvaseElement leak from -webkit-canvas() values
   81958 
   81959         Changed the m_element member of CSSCanvasValue from a RefPtr to a plain
   81960         pointer, as the document owns the canvas elements. Added code to release
   81961         those elements in Document::removedLastRef() because they reference
   81962         the document.
   81963 
   81964         * css/CSSCanvasValue.cpp:
   81965         (WebCore::CSSCanvasValue::element):
   81966         * css/CSSCanvasValue.h:
   81967         (WebCore::CSSCanvasValue::CSSCanvasValue):
   81968         * dom/Document.cpp:
   81969         (WebCore::Document::removedLastRef):
   81970 
   81971 2008-10-02  Alexey Proskuryakov  <ap (a] webkit.org>
   81972 
   81973         Reviewed by Maciej Stachowiak.
   81974 
   81975         Build fix for platforms that don't implement WTF::ThreadSpecific.
   81976 
   81977         * bindings/js/JSDOMBinding.cpp: (WebCore::wrapperSet):
   81978         Guard ThreadSpecific use with #if ENABLE(WORKERS). No platform defines this yet, but this
   81979         code is only needed for JS bindings in worker threads.
   81980 
   81981 2008-10-01  David Hyatt  <hyatt (a] apple.com>
   81982 
   81983         https://bugs.webkit.org/show_bug.cgi?id=21298
   81984 
   81985         Make updateScrollbars cross-platform.  For now a stubbed out scrollContents function is invoked to do the scrolling of the backing store.  Next patch
   81986         will make that cross-platform.
   81987 
   81988         The ScrollView now implements ScrollbarClient, which means that there was a clash of windowClipRect methods from the
   81989         multiple inheritance.  For now I solved this by adding a Scrollbar* to the ScrollbarClient version of the method, but longer term
   81990         windowClipRect is going to be removed from ScrollbarClient (when Widget invalidation gets rewritten).
   81991 
   81992         Reviewed by Sam Weinig
   81993 
   81994         * page/FrameView.cpp:
   81995         (WebCore::FrameView::windowClipRect):
   81996         (WebCore::FrameView::isActive):
   81997         * page/FrameView.h:
   81998         (WebCore::FrameView::visibleContentsResized):
   81999         * platform/PopupMenu.h:
   82000         * platform/ScrollView.cpp:
   82001         (WebCore::ScrollView::init):
   82002         (WebCore::ScrollView::destroy):
   82003         (WebCore::ScrollView::setHasHorizontalScrollbar):
   82004         (WebCore::ScrollView::setHasVerticalScrollbar):
   82005         (WebCore::ScrollView::valueChanged):
   82006         (WebCore::ScrollView::updateScrollbars):
   82007         (WebCore::ScrollView::scrollContents):
   82008         (WebCore::ScrollView::platformHandleHorizontalAdjustment):
   82009         (WebCore::ScrollView::platformHandleVerticalAdjustment):
   82010         * platform/ScrollView.h:
   82011         * platform/Scrollbar.cpp:
   82012         (WebCore::Scrollbar::windowClipRect):
   82013         * platform/ScrollbarClient.h:
   82014         * platform/gtk/ScrollViewGtk.cpp:
   82015         (WebCore::ScrollView::platformHandleHorizontalAdjustment):
   82016         (WebCore::ScrollView::platformHandleVerticalAdjustment):
   82017         * platform/qt/ScrollViewQt.cpp:
   82018         (WebCore::ScrollView::scrollContents):
   82019         * platform/win/PopupMenuWin.cpp:
   82020         (WebCore::PopupMenu::windowClipRect):
   82021         * platform/win/ScrollViewWin.cpp:
   82022         (WebCore::ScrollView::scrollContents):
   82023         * rendering/RenderLayer.cpp:
   82024         (WebCore::RenderLayer::windowClipRect):
   82025         * rendering/RenderLayer.h:
   82026         * rendering/RenderListBox.cpp:
   82027         (WebCore::RenderListBox::panScroll):
   82028         (WebCore::RenderListBox::windowClipRect):
   82029         * rendering/RenderListBox.h:
   82030 
   82031 2008-10-02  Alexey Proskuryakov  <ap (a] webkit.org>
   82032 
   82033         Reviewed by Darin Adler.
   82034 
   82035         https://bugs.webkit.org/show_bug.cgi?id=21304
   82036         Stop using a static wrapper map for WebCore JS bindings
   82037 
   82038         The static domObjects map was not thread safe.
   82039 
   82040         * dom/Document.h:
   82041         (WebCore::Document::messagePorts): Added an accessor for JSDocument to iterate over message
   82042         ports.
   82043         (WebCore::Document::xmlHttpRequests): Ditto for XMLHttpRequests.
   82044 
   82045         * dom/Document.cpp:
   82046         (WebCore::Document::createdXMLHttpRequest):
   82047         (WebCore::Document::destroyedXMLHttpRequest):
   82048         Moved XMLHttpRequest tracking from a global map to Document.
   82049 
   82050         * GNUmakefile.am:
   82051         * WebCore.pro:
   82052         * WebCore.vcproj/WebCore.vcproj:
   82053         * WebCore.xcodeproj/project.pbxproj:
   82054         * WebCoreSources.bkl:
   82055         * webcore-base.bkl:
   82056         * bindings/DOMProtect.cpp: Removed.
   82057         * bindings/DOMProtect.h: Removed.
   82058         Removed gcProtect(Unprotect)DOMObject - its callers do not have a JSGlobalData reference,
   82059         so they can no longer protect bindings objects.
   82060 
   82061         * dom/MessagePort.cpp:
   82062         (WebCore::CloseMessagePortTimer::CloseMessagePortTimer):
   82063         (WebCore::CloseMessagePortTimer::fired):
   82064         (WebCore::MessagePort::MessagePort):
   82065         (WebCore::MessagePort::queueCloseEvent):
   82066         (WebCore::MessagePort::setPendingActivity):
   82067         (WebCore::MessagePort::unsetPendingActivity):
   82068         * dom/MessagePort.h:
   82069         (WebCore::MessagePort::hasPendingActivity):
   82070         MessagePort now counts outstanding async events, so JSDocument::mark can decide whether
   82071         to protect it.
   82072 
   82073         * xml/XMLHttpRequest.h:
   82074         (WebCore::XMLHttpRequest::hasPendingActivity):
   82075         * xml/XMLHttpRequest.cpp:
   82076         (WebCore::XMLHttpRequest::XMLHttpRequest):
   82077         (WebCore::XMLHttpRequest::~XMLHttpRequest):
   82078         (WebCore::XMLHttpRequest::loadRequestAsynchronously):
   82079         (WebCore::XMLHttpRequest::dropProtection):
   82080         (WebCore::XMLHttpRequest::didFinishLoadingPreflight):
   82081         (WebCore::XMLHttpRequest::cancelRequests):
   82082         (WebCore::XMLHttpRequest::detachRequests):
   82083         (WebCore::XMLHttpRequest::setPendingActivity):
   82084         (WebCore::XMLHttpRequest::unsetPendingActivity):
   82085         Moved XMLHttpRequest tracking from a global map to Document.
   82086 
   82087         * bindings/js/JSDOMBinding.cpp:
   82088         (WebCore::wrapperSet):
   82089         (WebCore::DOMObjectWrapperMap::mapFor):
   82090         (WebCore::DOMObjectWrapperMap::get):
   82091         (WebCore::DOMObjectWrapperMap::set):
   82092         (WebCore::DOMObjectWrapperMap::remove):
   82093         (WebCore::getCachedDOMObjectWrapper):
   82094         (WebCore::cacheDOMObjectWrapper):
   82095         (WebCore::forgetDOMObject):
   82096         (WebCore::getCachedDOMNodeWrapper):
   82097         (WebCore::forgetDOMNode):
   82098         (WebCore::cacheDOMNodeWrapper):
   82099         (WebCore::markActiveObjectsForDocument):
   82100         * bindings/js/JSDOMBinding.h:
   82101         (WebCore::createDOMObjectWrapper):
   82102         (WebCore::getDOMObjectWrapper):
   82103         Wrapper map is now kept as JSGlobalData::clientData. Also changed debug-only wrapperSet
   82104         to be per-thread (this is slower than going to JSGlobalData, but fast enough for debug).
   82105         WebCore objects can never migrate between threads.
   82106 
   82107         * bindings/js/JSDocumentCustom.cpp:
   82108         (WebCore::JSDocument::mark):
   82109         Call markActiveObjectsForDocument() from JSDOMBinding.
   82110 
   82111         * bindings/js/JSCSSRuleCustom.cpp:
   82112         (WebCore::toJS):
   82113         * bindings/js/JSCSSValueCustom.cpp:
   82114         (WebCore::toJS):
   82115         * bindings/js/JSDOMWindowCustom.cpp:
   82116         (WebCore::markDOMObjectWrapper):
   82117         (WebCore::JSDOMWindow::mark):
   82118         * bindings/js/JSEventCustom.cpp:
   82119         (WebCore::toJS):
   82120         * bindings/js/JSEventTarget.cpp:
   82121         (WebCore::toJS):
   82122         * bindings/js/JSHTMLCollectionCustom.cpp:
   82123         (WebCore::toJS):
   82124         * bindings/js/JSImageDataCustom.cpp:
   82125         (WebCore::toJS):
   82126         * bindings/js/JSMessageChannelCustom.cpp:
   82127         (WebCore::JSMessageChannel::mark):
   82128         * bindings/js/JSMessagePortCustom.cpp:
   82129         (WebCore::JSMessagePort::mark):
   82130         * bindings/js/JSNodeCustom.cpp:
   82131         (WebCore::JSNode::mark):
   82132         * bindings/js/JSSVGPathSegCustom.cpp:
   82133         (WebCore::toJS):
   82134         * bindings/js/JSStyleSheetCustom.cpp:
   82135         (WebCore::toJS):
   82136         * bindings/js/JSXMLHttpRequestCustom.cpp:
   82137         (WebCore::JSXMLHttpRequest::mark):
   82138         * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
   82139         (WebCore::JSXMLHttpRequestUpload::mark):
   82140         * bindings/js/ScriptController.cpp:
   82141         (WebCore::ScriptController::finishedWithEvent):
   82142         * bindings/scripts/CodeGeneratorJS.pm:
   82143         Pass a JSGlobalData reference to functions that track JS wrapper objects.
   82144 
   82145 2008-10-02  Dan Bernstein  <mitz (a] apple.com>
   82146 
   82147         - build fix
   82148 
   82149         * page/JavaScriptCallFrame.idl:
   82150 
   82151 2008-10-02  Oliver Hunt  <oliver (a] apple.com>
   82152 
   82153         Reviewed by NOBODY (Build fix).
   82154 
   82155         Add new file to project files
   82156 
   82157         * GNUmakefile.am:
   82158         * WebCore.pro:
   82159         * WebCore.vcproj/WebCore.vcproj:
   82160 
   82161 2008-10-02  Geoffrey Garen  <ggaren (a] apple.com>
   82162 
   82163         Not reviewed.
   82164 
   82165         Try to fix some more builds.
   82166 
   82167         * GNUmakefile.am:
   82168         * WebCore.pro:
   82169 
   82170 2008-10-02  Geoffrey Garen  <ggaren (a] apple.com>
   82171 
   82172         Not reviewed.
   82173 
   82174         Try to fix Windows build.
   82175 
   82176         * WebCore.vcproj/WebCore.vcproj:
   82177 
   82178 2008-10-01  Geoffrey Garen  <ggaren (a] apple.com>
   82179 
   82180         Reviewed by Darin Adler and Cameron Zwarich.
   82181 
   82182         Updated for JavaScriptCore API changes: use a SourceCode instead of
   82183         broken out parameters; treat sourceId as intptr_t.
   82184 
   82185         * ForwardingHeaders/kjs/SourceRange.h: Copied from ForwardingHeaders/kjs/SourceProvider.h.
   82186         * bindings/js/JSXMLHttpRequestCustom.cpp:
   82187         (WebCore::JSXMLHttpRequest::send):
   82188         * bindings/js/ScriptController.cpp:
   82189         (WebCore::ScriptController::evaluate):
   82190         * bindings/js/StringSourceProvider.h:
   82191         (WebCore::StringSourceProvider::create):
   82192         (WebCore::StringSourceProvider::StringSourceProvider):
   82193 
   82194         (WebCore::makeSource): Added a makeSource function for convenience.
   82195 
   82196         * bindings/objc/WebScriptObject.mm:
   82197         (-[WebScriptObject evaluateWebScript:]):
   82198         * bridge/NP_jsobject.cpp:
   82199         (_NPN_Evaluate):
   82200         * bridge/jni/jni_jsobject.mm:
   82201         (JavaJSObject::call):
   82202         (JavaJSObject::eval):
   82203         (JavaJSObject::getMember):
   82204         (JavaJSObject::setMember):
   82205         (JavaJSObject::removeMember):
   82206 
   82207         * bridge/jni/jni_runtime.h:
   82208         (JSC::Bindings::JavaString::operator UString): Replaced the explicit
   82209         ustring() function with an implicit operator because this class already
   82210         holds a UString::rep.
   82211 
   82212         * page/Console.cpp:
   82213         (WebCore::retrieveLastCaller):
   82214         (WebCore::Console::trace):
   82215         * page/InspectorController.cpp:
   82216         (WebCore::jsStringRef):
   82217         (WebCore::InspectorController::addBreakpoint):
   82218         (WebCore::InspectorController::removeBreakpoint):
   82219         (WebCore::InspectorController::didParseSource):
   82220         (WebCore::InspectorController::failedToParseSource):
   82221         * page/InspectorController.h:
   82222         * page/JavaScriptCallFrame.cpp:
   82223         (WebCore::JavaScriptCallFrame::JavaScriptCallFrame):
   82224         * page/JavaScriptCallFrame.h:
   82225         (WebCore::JavaScriptCallFrame::create):
   82226         (WebCore::JavaScriptCallFrame::sourceIdentifier):
   82227         (WebCore::JavaScriptCallFrame::update):
   82228         * page/JavaScriptDebugListener.h:
   82229         * page/JavaScriptDebugServer.cpp:
   82230         (WebCore::JavaScriptDebugServer::addBreakpoint):
   82231         (WebCore::JavaScriptDebugServer::removeBreakpoint):
   82232         (WebCore::JavaScriptDebugServer::hasBreakpoint):
   82233         (WebCore::dispatchDidParseSource):
   82234         (WebCore::dispatchFailedToParseSource):
   82235         (WebCore::JavaScriptDebugServer::sourceParsed):
   82236         (WebCore::JavaScriptDebugServer::callEvent):
   82237         (WebCore::JavaScriptDebugServer::atStatement):
   82238         (WebCore::JavaScriptDebugServer::returnEvent):
   82239         (WebCore::JavaScriptDebugServer::exception):
   82240         (WebCore::JavaScriptDebugServer::willExecuteProgram):
   82241         (WebCore::JavaScriptDebugServer::didExecuteProgram):
   82242         (WebCore::JavaScriptDebugServer::didReachBreakpoint):
   82243         * page/JavaScriptDebugServer.h:
   82244         * page/inspector/ScriptsPanel.js: Renamed internal uses of sourceId and
   82245         sourceIdentifier to sourceID.
   82246 
   82247 2008-10-01  Dan Bernstein  <mitz (a] apple.com>
   82248 
   82249         Reviewed by Geoffrey Garen.
   82250 
   82251         - fix SVGFontFaceElement leak seen on svg/custom/acid3-test-77.html
   82252 
   82253         Broke a ref cycle by changing the m_svgFontFaceElement members of
   82254         CSSFontFaceSource and CSSFontFaceSrcValue from RefPtrs to plain
   82255         pointers. Also made sure that the @font-face rule added by
   82256         SVGFontFaceElement to the document's mapped element sheet is removed
   82257         when the font-face element is deleted or moved to another document.
   82258 
   82259         * css/CSSFontFaceSource.cpp:
   82260         (WebCore::CSSFontFaceSource::CSSFontFaceSource):
   82261         (WebCore::CSSFontFaceSource::getFontData):
   82262         * css/CSSFontFaceSource.h:
   82263         (WebCore::CSSFontFaceSource::svgFontFaceElement):
   82264         * css/CSSFontFaceSrcValue.h:
   82265         (WebCore::CSSFontFaceSrcValue::svgFontFaceElement):
   82266         (WebCore::CSSFontFaceSrcValue::CSSFontFaceSrcValue):
   82267         * svg/SVGFontFaceElement.cpp:
   82268         (WebCore::SVGFontFaceElement::~SVGFontFaceElement):
   82269         (WebCore::SVGFontFaceElement::willMoveToNewOwnerDocument):
   82270         (WebCore::SVGFontFaceElement::didMoveToNewOwnerDocument):
   82271         (WebCore::SVGFontFaceElement::removeFromMappedElementSheet):
   82272         * svg/SVGFontFaceElement.h:
   82273 
   82274 2008-10-01  Oliver Hunt  <oliver (a] apple.com>
   82275 
   82276         Reviewed by Maciej Stachowiak.
   82277 
   82278         Bug 20315: Memory leak with Canvas getImageData
   82279         <https://bugs.webkit.org/show_bug.cgi?id=20315>
   82280 
   82281         This wasn't a leak, the issue was that we were reporting the cost
   82282         of the CanvasPixelArray when creating the JSCanvasPixelArray wrapper
   82283         and we should have been reporting the cost when we create the
   82284         JSImageData wrapper.
   82285 
   82286         * WebCore.xcodeproj/project.pbxproj:
   82287         * bindings/js/JSCanvasPixelArrayCustom.cpp: Removed.
   82288           This was only needed to report the extra memory cost
   82289           of the CPA.
   82290         * bindings/js/JSImageDataCustom.cpp:
   82291         (WebCore::toJS):
   82292           We need a custom toJS function now so that we can report
   82293           the extra memory cost.
   82294         * bindings/scripts/CodeGeneratorJS.pm:
   82295           Need to replace the reference to CanvasPixelArray with ImageData
   82296           to be able to create the custom toJS implementation.
   82297         * html/CanvasPixelArray.idl:
   82298         * html/ImageData.idl:
   82299 
   82300 2008-10-01  Dan Bernstein  <mitz (a] apple.com>
   82301 
   82302         Reviewed by Mark Rowe.
   82303 
   82304         - https://bugs.webkit.org/show_bug.cgi?id=21293
   82305           REGRESSION: Crash beneath RenderSVGViewportContainer::viewportTransform() during SVGSVGElement destruction
   82306 
   82307         * svg/SVGMarkerElement.cpp:
   82308         (WebCore::SVGMarkerElement::~SVGMarkerElement): Call detach() here so
   82309         that renderer destruction happens before the SVGMarkerElement is
   82310         destroyed.
   82311         * svg/SVGSVGElement.cpp:
   82312         (WebCore::SVGSVGElement::~SVGSVGElement): Ditto for SVGSVGElement.
   82313 
   82314 2008-10-01  Evan Martin  <evan (a] chromium.org>
   82315 
   82316         Reviewed by Eric Seidel.
   82317 
   82318         https://bugs.webkit.org/show_bug.cgi?id=20669
   82319 
   82320         * css/makeprop.pl:
   82321         Die if gperf fails.
   82322 
   82323 2008-10-01  Evan Martin  <evan (a] chromium.org>
   82324 
   82325         Reviewed by Eric Seidel.
   82326 
   82327         * loader/icon/IconDatabase.h:
   82328         IconDatabase uses HashMap, so it needs to #include the header.
   82329 
   82330 2008-10-01  Dan Bernstein  <mitz (a] apple.com>
   82331 
   82332         Reviewed by Mark Rowe.
   82333 
   82334         - fix an assertion failure in http/tests/security/canvas-remote-read-svg-image.html due to re-entry into Cache::pruneDeadResources()
   82335 
   82336         * loader/Cache.cpp:
   82337         (WebCore::Cache::remove): Disable pruning temporarily during
   82338         CachedResource deletion.
   82339 
   82340 2008-10-01  Dan Bernstein  <mitz (a] apple.com>
   82341 
   82342         Reviewed by Mark Rowe.
   82343 
   82344         - fix SVGFontElement leaks seen on buildbot by breaking a ref cycle
   82345 
   82346         * svg/SVGFontFaceElement.cpp:
   82347         (WebCore::SVGFontFaceElement::rebuildFontFace):
   82348         * svg/SVGFontFaceElement.h:
   82349         (WebCore::SVGFontFaceElement::associatedFontElement):
   82350 
   82351 2008-10-01  Brett Wilson  <brettw (a] chromium.org>
   82352 
   82353         Reviewed by Maciej Stachowiak.
   82354 
   82355         Document the rounding behavior of the mapRect(IntRect) function in
   82356         AffineTransform.h.
   82357 
   82358         * platform/graphics/AffineTransform.h:
   82359 
   82360 2008-10-01  David Hyatt  <hyatt (a] apple.com>
   82361 
   82362         Move prohibitsScrolling from the Frame to the ScrollView.
   82363 
   82364         Reviewed by Sam Weinig
   82365 
   82366         * WebCore.base.exp:
   82367         * page/Frame.cpp:
   82368         (WebCore::FramePrivate::FramePrivate):
   82369         * page/Frame.h:
   82370         * page/FramePrivate.h:
   82371         * page/FrameView.cpp:
   82372         (WebCore::FrameView::scrollRectIntoViewRecursively):
   82373         (WebCore::FrameView::setScrollPosition):
   82374         * platform/ScrollView.cpp:
   82375         (WebCore::ScrollView::init):
   82376         (WebCore::ScrollView::scrollRectIntoViewRecursively):
   82377         (WebCore::ScrollView::setScrollPosition):
   82378         * platform/ScrollView.h:
   82379         (WebCore::ScrollView::setProhibitsScrolling):
   82380         (WebCore::ScrollView::prohibitsScrolling):
   82381         * platform/gtk/ScrollViewGtk.cpp:
   82382         (WebCore::ScrollView::updateScrollbars):
   82383         * platform/qt/ScrollViewQt.cpp:
   82384         (WebCore::ScrollView::updateScrollbars):
   82385         * platform/win/ScrollViewWin.cpp:
   82386         (WebCore::ScrollView::updateScrollbars):
   82387 
   82388 2008-10-01  Mark Rowe  <mrowe (a] apple.com>
   82389 
   82390         Reviewed by Geoff Garen.
   82391 
   82392         Fix leaks seen during http/tests/xmlhttprequest/access-control-basic-non-simple-allow.html.
   82393 
   82394         * xml/XMLHttpRequest.cpp:
   82395         (WebCore::XMLHttpRequest::didFinishLoadingPreflight): Balance the ref and GC protect
   82396         that we do during the loadRequestAsynchronously of the preflight request with a deref and
   82397         GC unprotect.
   82398 
   82399 2008-10-01  David Hyatt  <hyatt (a] apple.com>
   82400 
   82401         Rename allowsScrolling/setAllowsScrolling to canHaveScrollbars/setCanHaveScrollbars to make it more
   82402         clear that the boolean doesn't actually stop all scrolling.  It just gets rid of scrollbars.
   82403 
   82404         Reviewed by Tim Hatcher
   82405 
   82406         * WebCore.base.exp:
   82407         * page/FrameView.cpp:
   82408         (WebCore::FrameView::setCanHaveScrollbars):
   82409         * page/FrameView.h:
   82410         * platform/ScrollView.cpp:
   82411         (WebCore::ScrollView::setCanHaveScrollbars):
   82412         (WebCore::ScrollView::wheelEvent):
   82413         * platform/ScrollView.h:
   82414         (WebCore::ScrollView::canHaveScrollbars):
   82415 
   82416 2008-10-01  Dan Bernstein  <mitz (a] apple.com>
   82417 
   82418         Reviewed by Mark Rowe.
   82419 
   82420         - fix some CachedResource leaks seen on buildbot
   82421 
   82422         The issue here was that emptying the cache was a no-op when it only
   82423         contained resources with no data. Changed to go after those
   82424         resources when the desired cache capacity is zero.
   82425 
   82426         * loader/Cache.cpp:
   82427         (WebCore::Cache::pruneLiveResources):
   82428         (WebCore::Cache::pruneDeadResources):
   82429         * loader/Cache.h:
   82430         (WebCore::Cache::prune):
   82431 
   82432 2008-10-01  David Hyatt  <hyatt (a] apple.com>
   82433 
   82434         Make isOffscreen cross-platform.  Only Mac implements this method, so hold off on adding API to the
   82435         HostWindow object until other platforms decide they want this method.  (We need it for Win though at some point.)
   82436 
   82437         Reviewed by Adam Roben
   82438 
   82439         * platform/ScrollView.cpp:
   82440         (WebCore::ScrollView::isOffscreen):
   82441         (WebCore::ScrollView::platformIsOffscreen):
   82442         * platform/ScrollView.h:
   82443         * platform/gtk/ScrollViewGtk.cpp:
   82444         * platform/mac/ScrollViewMac.mm:
   82445         (WebCore::ScrollView::platformIsOffscreen):
   82446         * platform/qt/ScrollViewQt.cpp:
   82447         * platform/wx/ScrollViewWx.cpp:
   82448 
   82449 2008-10-01  David Hyatt  <hyatt (a] apple.com>
   82450 
   82451         Make show/hide/setParentVisible cross-platform on ScrollView.
   82452 
   82453         Reviewed by Adam Roben
   82454 
   82455         * platform/ScrollView.cpp:
   82456         (WebCore::ScrollView::setParentVisible):
   82457         (WebCore::ScrollView::show):
   82458         (WebCore::ScrollView::hide):
   82459         * platform/ScrollView.h:
   82460         * platform/win/ScrollViewWin.cpp:
   82461 
   82462 2008-10-01  Kevin McCullough  <kmccullough (a] apple.com>
   82463 
   82464         Reviewed by Dan Bernstein.
   82465 
   82466         https://bugs.webkit.org/show_bug.cgi?id=21284
   82467         Bug 21284: Max height affects max width
   82468         - Looks like a cut and paste bug
   82469         - Added layout test fast/css/max-height-and-max-width.html
   82470 
   82471         * css/CSSComputedStyleDeclaration.cpp:
   82472         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   82473 
   82474 2008-10-01  David Hyatt  <hyatt (a] apple.com>
   82475 
   82476         https://bugs.webkit.org/show_bug.cgi?id=21282
   82477 
   82478         Make contentsToScreen/screenToContents cross-platform.  Only implemented by Mac/Win right now.
   82479 
   82480         Reviewed by Adam Roben
   82481 
   82482         * loader/EmptyClients.h:
   82483         (WebCore::EmptyChromeClient::screenToWindow):
   82484         (WebCore::EmptyChromeClient::windowToScreen):
   82485         * page/Chrome.cpp:
   82486         (WebCore::Chrome::screenToWindow):
   82487         (WebCore::Chrome::windowToScreen):
   82488         * page/Chrome.h:
   82489         * page/ChromeClient.h:
   82490         * platform/HostWindow.h:
   82491         * platform/ScrollView.cpp:
   82492         (WebCore::ScrollView::contentsToScreen):
   82493         (WebCore::ScrollView::screenToContents):
   82494         (WebCore::ScrollView::platformContentsToScreen):
   82495         (WebCore::ScrollView::platformScreenToContents):
   82496         * platform/ScrollView.h:
   82497         * platform/mac/ScrollViewMac.mm:
   82498         (WebCore::ScrollView::platformContentsToScreen):
   82499         (WebCore::ScrollView::platformScreenToContents):
   82500         * platform/win/ScrollViewWin.cpp:
   82501 
   82502 2008-10-01  Dan Bernstein  <mitz (a] apple.com>
   82503 
   82504         Reviewed by Darin Adler.
   82505 
   82506         - fix <rdar://problem/6255862> domfuzz: null deref in WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks(WebCore::HTMLStackElem*)
   82507 
   82508         Test: fast/parser/residual-style-close-across-removed-block.html
   82509 
   82510         * html/HTMLParser.cpp:
   82511         (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks): Removed
   82512         an assertion that turned out to be wrong in this case, and changed to
   82513         terminate the algorithm at the first empty block.
   82514 
   82515 2008-10-01  David Hyatt  <hyatt (a] apple.com>
   82516 
   82517         Make setFrameRect on ScrollView cross-platform.
   82518 
   82519         Reviewed by Sam Weinig
   82520 
   82521         * page/FrameView.h:
   82522         (WebCore::FrameView::contentsResized):
   82523         * platform/ScrollView.cpp:
   82524         (WebCore::ScrollView::setFrameRect):
   82525         * platform/ScrollView.h:
   82526         * platform/gtk/ScrollViewGtk.cpp:
   82527         * platform/qt/ScrollViewQt.cpp:
   82528         * platform/win/ScrollViewWin.cpp:
   82529 
   82530 2008-10-01  Sam Weinig  <sam (a] webkit.org>
   82531 
   82532         Reviewed by Adele Peterson.
   82533 
   82534         Move setTimeout, clearTimeout, setInterval, clearInterval, atob and btoa
   82535         to JSDOMWindow from JSDOMWindowBase.
   82536 
   82537         * WebCore.xcodeproj/project.pbxproj:
   82538         * bindings/js/JSDOMWindowBase.cpp:
   82539         (WebCore::JSDOMWindowBase::removeTimeout):
   82540         * bindings/js/JSDOMWindowBase.h:
   82541         * bindings/js/JSDOMWindowCustom.cpp:
   82542         (WebCore::setTimeoutOrInterval):
   82543         (WebCore::JSDOMWindow::setTimeout):
   82544         (WebCore::JSDOMWindow::clearTimeout):
   82545         (WebCore::JSDOMWindow::setInterval):
   82546         (WebCore::JSDOMWindow::clearInterval):
   82547         (WebCore::JSDOMWindow::atob):
   82548         (WebCore::JSDOMWindow::btoa):
   82549         * page/DOMWindow.idl:
   82550 
   82551 2008-10-01  Dan Bernstein  <mitz (a] apple.com>
   82552 
   82553         - Mac build fix
   82554 
   82555         * WebCore.base.exp:
   82556 
   82557 2008-10-01  Timothy Hatcher  <timothy (a] apple.com>
   82558 
   82559         Prevent stealing focus from the search field when focusing a DOM node.
   82560 
   82561         https://bugs.webkit.org/show_bug.cgi?id=21275
   82562 
   82563         Reviewed by Kevin McCullough.
   82564 
   82565         * page/inspector/ElementsPanel.js:
   82566         (WebInspector.ElementsPanel.treeOutline.focusedNodeChanged):
   82567         Don't steal focus if the current focus element is the search field.
   82568 
   82569 2008-09-30  Sam Weinig  <sam (a] webkit.org>
   82570 
   82571         Reviewed by Nikolas Zimmermann and Alexey Proskuryakov.
   82572 
   82573         Final patch for https://bugs.webkit.org/show_bug.cgi?id=21122
   82574         Autogenerate JS event listeners
   82575 
   82576         - Generate getting/setting of EventListeners.
   82577 
   82578         - Adding a new named EventListener now has the same process as adding any other DOM
   82579           attribute. (Add a method with the same name in the c++ file).
   82580 
   82581         (The EventListeners for MessagePort have been intentionally left custom so that we
   82582         can continue to experiment with making those EventListeners work in a frame-less world.)
   82583 
   82584         * bindings/js/JSDOMApplicationCacheCustom.cpp: Remove custom methods.
   82585         * bindings/js/JSDOMWindowCustom.cpp: ditto.
   82586         * bindings/js/JSEventTargetNodeCustom.cpp: ditto.
   82587         * bindings/js/JSXMLHttpRequestCustom.cpp: ditto.
   82588         * bindings/js/JSXMLHttpRequestUploadCustom.cpp: ditto.
   82589         * bindings/scripts/CodeGeneratorJS.pm: Add code to generate EventListener
   82590         getter/setters
   82591         * dom/EventTargetNode.cpp: Add getter/setters for named EventListener.
   82592         * dom/EventTargetNode.h: ditto.
   82593         * dom/EventTargetNode.idl: Mark EventListeners as Protected so that the codegenerator
   82594         will use JSEventListerner instead of JSUnprotectedEventListener.
   82595         * loader/appcache/DOMApplicationCache.idl: Remove custom attributes..
   82596         * page/DOMWindow.cpp: Add getter/setters for named EventListener
   82597         * page/DOMWindow.h: ditto.
   82598         * page/DOMWindow.idl: Mark EventListeners as Protected so that the codegenerator
   82599         will use JSEventListerner instead of JSUnprotectedEventListener.
   82600         * xml/XMLHttpRequest.idl: Remove custom attributes.
   82601         * xml/XMLHttpRequestUpload.idl: ditto.
   82602 
   82603 2008-09-30  Mark Rowe  <mrowe (a] apple.com>
   82604 
   82605         Reviewed by Dan Bernstein.
   82606 
   82607         Add a leak counter for CachedResources since we've had two recent leaks involving them.
   82608 
   82609         * loader/CachedResource.cpp:
   82610         (WebCore::CachedResource::CachedResource):
   82611         (WebCore::CachedResource::~CachedResource):
   82612 
   82613 2008-09-30  Dan Bernstein  <mitz (a] apple.com>
   82614 
   82615         Reviewed by Dave Hyatt.
   82616 
   82617         - fix https://bugs.webkit.org/show_bug.cgi?id=21127
   82618           <rdar://problem/6259134> REGRESSION: CFF format fonts fail to load
   82619 
   82620         If TTLoadEmbeddedFont fails, use AddFontMemResourceEx after changing
   82621         the font name in memory.
   82622 
   82623         * WebCore.vcproj/WebCore.vcproj: Renamed GetEOTHeader.* to
   82624         OpenTypeUtilities.*.
   82625 
   82626         * platform/graphics/win/FontCustomPlatformData.cpp:
   82627         (WebCore::FontCustomPlatformData::~FontCustomPlatformData): Added a call
   82628         to RemoveFontMemResourceEx to match AddFontMemResourceEx when it is
   82629         used.
   82630         (WebCore::FontCustomPlatformData::fontPlatformData): Added a code path
   82631         for fonts loaded using AddFontMemResourceEx.
   82632         (WebCore::createFontCustomPlatformData): Added a call to
   82633         renameAndActivateFont() if TTLoadEmbeddedFont fails. If
   82634         TTLoadEmbeddedFont succeeds, set the font name to the null string, as
   82635         fontPlatformData() will retrieve the name from the font reference.
   82636 
   82637         * platform/graphics/win/FontCustomPlatformData.h:
   82638         (WebCore::FontCustomPlatformData::FontCustomPlatformData): Added a
   82639         font name member.
   82640 
   82641         * platform/graphics/win/GetEOTHeader.cpp: Renamed.
   82642         * platform/graphics/win/GetEOTHeader.h: Renamed.
   82643 
   82644         * platform/graphics/win/OpenTypeUtilities.cpp: Copied from platform/graphics/win/GetEOTHeader.cpp.
   82645         (WebCore::BigEndianUShort::BigEndianUShort): Added a constructor.
   82646         (WebCore::BigEndianULong::BigEndianULong): Ditto.
   82647         (WebCore::renameAndActivateFont): Added. Creates an in-memory copy of
   82648         the font data and modifies it to have the given name, then activates
   82649         it using AddFontMemResourceEx.
   82650 
   82651         * platform/graphics/win/OpenTypeUtilities.h: Copied from platform/graphics/win/GetEOTHeader.h.
   82652 
   82653 2008-09-30  Mark Rowe  <mrowe (a] apple.com>
   82654 
   82655         Reviewed by Dan Bernstein.
   82656 
   82657         Fix many leaks seen on fast/backgrounds/svg-as-mask.html.
   82658 
   82659         * rendering/RenderObject.cpp:
   82660         (WebCore::RenderObject::arenaDelete): Balance the calls to addClient on maskLayer's images
   82661         with calls to removeClient when we're being destroyed.
   82662 
   82663 2008-09-30  Eric Carlson  <eric.carlson (a] apple.com>
   82664 
   82665         Reviewed by Antti Koivisto.
   82666 
   82667         https://bugs.webkit.org/show_bug.cgi?id=21243
   82668 
   82669         Fix loopstart and loopend default values.
   82670 
   82671         Tests: media/loopend-limits.html
   82672                media/loopstart-limits.html
   82673 
   82674         * html/HTMLMediaElement.cpp:
   82675         (WebCore::HTMLMediaElement::loopStart): the spec says start() is the default value
   82676         (WebCore::HTMLMediaElement::loopEnd): the spec says end() is the default value
   82677 
   82678 2008-09-30  Kevin Ollivier  <kevino (a] theolliviers.com>
   82679 
   82680         wx build fixes. Add file to build and remove call to (now gone) ScrollView::update.
   82681 
   82682         * WebCoreSources.bkl:
   82683         * platform/wx/ScrollViewWx.cpp:
   82684         (WebCore::ScrollView::ScrollViewPrivate::OnScrollWinEvents):
   82685 
   82686 2008-09-30  Dan Bernstein  <mitz (a] apple.com>
   82687 
   82688         Reviewed by Sam Weinig.
   82689 
   82690         - fix HTMLViewSourceDocument leaks by breaking a ref cycle which
   82691           was fixed in r17249 and re-introduced in r31435.
   82692 
   82693         * html/HTMLViewSourceDocument.cpp:
   82694         (WebCore::HTMLViewSourceDocument::HTMLViewSourceDocument):
   82695         (WebCore::HTMLViewSourceDocument::addSpanWithClassName):
   82696         (WebCore::HTMLViewSourceDocument::addLine):
   82697         (WebCore::HTMLViewSourceDocument::addLink):
   82698         * html/HTMLViewSourceDocument.h:
   82699 
   82700 2008-09-30  Sam Weinig  <sam (a] webkit.org>
   82701 
   82702         Reviewed by Eric Seidel.
   82703 
   82704         More for https://bugs.webkit.org/show_bug.cgi?id=21122
   82705         Autogenerate JS event listeners
   82706 
   82707         - Make EventListener getter/setters names in c++ files match those in
   82708           JS (ie. onLoadListener -> onload).
   82709         - Add standard way to access the frame associated with the EventTarget
   82710           for EventListener lookup.
   82711         - Autogenerate dispatchEvent, it wasn't doing anything custom.
   82712 
   82713         * bindings/js/JSDOMApplicationCacheCustom.cpp:
   82714         (WebCore::JSDOMApplicationCache::mark):
   82715         (WebCore::JSDOMApplicationCache::addEventListener):
   82716         (WebCore::JSDOMApplicationCache::removeEventListener):
   82717         (WebCore::JSDOMApplicationCache::setOnchecking):
   82718         (WebCore::JSDOMApplicationCache::onchecking):
   82719         (WebCore::JSDOMApplicationCache::setOnerror):
   82720         (WebCore::JSDOMApplicationCache::onerror):
   82721         (WebCore::JSDOMApplicationCache::setOnnoupdate):
   82722         (WebCore::JSDOMApplicationCache::onnoupdate):
   82723         (WebCore::JSDOMApplicationCache::setOndownloading):
   82724         (WebCore::JSDOMApplicationCache::ondownloading):
   82725         (WebCore::JSDOMApplicationCache::setOnprogress):
   82726         (WebCore::JSDOMApplicationCache::onprogress):
   82727         (WebCore::JSDOMApplicationCache::setOnupdateready):
   82728         (WebCore::JSDOMApplicationCache::onupdateready):
   82729         (WebCore::JSDOMApplicationCache::setOncached):
   82730         (WebCore::JSDOMApplicationCache::oncached):
   82731         * bindings/js/JSEventTargetNodeCustom.cpp:
   82732         (WebCore::JSEventTargetNode::addEventListener):
   82733         (WebCore::JSEventTargetNode::removeEventListener):
   82734         (WebCore::JSEventTargetNode::getListener):
   82735         (WebCore::JSEventTargetNode::setListener):
   82736         * bindings/js/JSMessagePortCustom.cpp:
   82737         (WebCore::JSMessagePort::mark):
   82738         (WebCore::JSMessagePort::addEventListener):
   82739         (WebCore::JSMessagePort::removeEventListener):
   82740         (WebCore::JSMessagePort::setOnmessage):
   82741         (WebCore::JSMessagePort::onmessage):
   82742         (WebCore::JSMessagePort::setOnclose):
   82743         (WebCore::JSMessagePort::onclose):
   82744         * bindings/js/JSXMLHttpRequestCustom.cpp:
   82745         (WebCore::JSXMLHttpRequest::mark):
   82746         (WebCore::JSXMLHttpRequest::onreadystatechange):
   82747         (WebCore::JSXMLHttpRequest::setOnreadystatechange):
   82748         (WebCore::JSXMLHttpRequest::onabort):
   82749         (WebCore::JSXMLHttpRequest::setOnabort):
   82750         (WebCore::JSXMLHttpRequest::onerror):
   82751         (WebCore::JSXMLHttpRequest::setOnerror):
   82752         (WebCore::JSXMLHttpRequest::onload):
   82753         (WebCore::JSXMLHttpRequest::setOnload):
   82754         (WebCore::JSXMLHttpRequest::onloadstart):
   82755         (WebCore::JSXMLHttpRequest::setOnloadstart):
   82756         (WebCore::JSXMLHttpRequest::onprogress):
   82757         (WebCore::JSXMLHttpRequest::setOnprogress):
   82758         (WebCore::JSXMLHttpRequest::addEventListener):
   82759         (WebCore::JSXMLHttpRequest::removeEventListener):
   82760         * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
   82761         (WebCore::JSXMLHttpRequestUpload::mark):
   82762         (WebCore::JSXMLHttpRequestUpload::onabort):
   82763         (WebCore::JSXMLHttpRequestUpload::setOnabort):
   82764         (WebCore::JSXMLHttpRequestUpload::onerror):
   82765         (WebCore::JSXMLHttpRequestUpload::setOnerror):
   82766         (WebCore::JSXMLHttpRequestUpload::onload):
   82767         (WebCore::JSXMLHttpRequestUpload::setOnload):
   82768         (WebCore::JSXMLHttpRequestUpload::onloadstart):
   82769         (WebCore::JSXMLHttpRequestUpload::setOnloadstart):
   82770         (WebCore::JSXMLHttpRequestUpload::onprogress):
   82771         (WebCore::JSXMLHttpRequestUpload::setOnprogress):
   82772         (WebCore::JSXMLHttpRequestUpload::addEventListener):
   82773         (WebCore::JSXMLHttpRequestUpload::removeEventListener):
   82774         * bindings/scripts/CodeGeneratorJS.pm:
   82775         * dom/EventTarget.h:
   82776         * dom/EventTargetNode.cpp:
   82777         (WebCore::EventTargetNode::associatedFrame):
   82778         * dom/EventTargetNode.h:
   82779         * dom/EventTargetNode.idl:
   82780         * dom/MessagePort.cpp:
   82781         (WebCore::MessagePort::associatedFrame):
   82782         * dom/MessagePort.h:
   82783         (WebCore::MessagePort::setOnmessage):
   82784         (WebCore::MessagePort::onmessage):
   82785         (WebCore::MessagePort::setOnclose):
   82786         (WebCore::MessagePort::onclose):
   82787         * dom/MessagePort.idl:
   82788         * loader/appcache/DOMApplicationCache.h:
   82789         (WebCore::DOMApplicationCache::setOnchecking):
   82790         (WebCore::DOMApplicationCache::onchecking):
   82791         (WebCore::DOMApplicationCache::setOnerror):
   82792         (WebCore::DOMApplicationCache::onerror):
   82793         (WebCore::DOMApplicationCache::setOnnoupdate):
   82794         (WebCore::DOMApplicationCache::onnoupdate):
   82795         (WebCore::DOMApplicationCache::setOndownloading):
   82796         (WebCore::DOMApplicationCache::ondownloading):
   82797         (WebCore::DOMApplicationCache::setOnprogress):
   82798         (WebCore::DOMApplicationCache::onprogress):
   82799         (WebCore::DOMApplicationCache::setOnupdateready):
   82800         (WebCore::DOMApplicationCache::onupdateready):
   82801         (WebCore::DOMApplicationCache::setOncached):
   82802         (WebCore::DOMApplicationCache::oncached):
   82803         (WebCore::DOMApplicationCache::associatedFrame):
   82804         * loader/appcache/DOMApplicationCache.idl:
   82805         * svg/EventTargetSVGElementInstance.cpp:
   82806         (WebCore::EventTargetSVGElementInstance::associatedFrame):
   82807         (WebCore::EventTargetSVGElementInstance::addEventListener):
   82808         (WebCore::EventTargetSVGElementInstance::removeEventListener):
   82809         (WebCore::EventTargetSVGElementInstance::dispatchEvent):
   82810         * svg/EventTargetSVGElementInstance.h:
   82811         * xml/XMLHttpRequest.cpp:
   82812         (WebCore::XMLHttpRequest::associatedFrame):
   82813         * xml/XMLHttpRequest.h:
   82814         (WebCore::XMLHttpRequest::setOnreadystatechange):
   82815         (WebCore::XMLHttpRequest::onreadystatechange):
   82816         (WebCore::XMLHttpRequest::setOnabort):
   82817         (WebCore::XMLHttpRequest::onabort):
   82818         (WebCore::XMLHttpRequest::setOnerror):
   82819         (WebCore::XMLHttpRequest::onerror):
   82820         (WebCore::XMLHttpRequest::setOnload):
   82821         (WebCore::XMLHttpRequest::onload):
   82822         (WebCore::XMLHttpRequest::setOnloadstart):
   82823         (WebCore::XMLHttpRequest::onloadstart):
   82824         (WebCore::XMLHttpRequest::setOnprogress):
   82825         (WebCore::XMLHttpRequest::onprogress):
   82826         * xml/XMLHttpRequest.idl:
   82827         * xml/XMLHttpRequestUpload.cpp:
   82828         (WebCore::XMLHttpRequestUpload::associatedFrame):
   82829         * xml/XMLHttpRequestUpload.h:
   82830         (WebCore::XMLHttpRequestUpload::setOnabort):
   82831         (WebCore::XMLHttpRequestUpload::onabort):
   82832         (WebCore::XMLHttpRequestUpload::setOnerror):
   82833         (WebCore::XMLHttpRequestUpload::onerror):
   82834         (WebCore::XMLHttpRequestUpload::setOnload):
   82835         (WebCore::XMLHttpRequestUpload::onload):
   82836         (WebCore::XMLHttpRequestUpload::setOnloadstart):
   82837         (WebCore::XMLHttpRequestUpload::onloadstart):
   82838         (WebCore::XMLHttpRequestUpload::setOnprogress):
   82839         (WebCore::XMLHttpRequestUpload::onprogress):
   82840         * xml/XMLHttpRequestUpload.idl:
   82841 
   82842 2008-09-30  Darin Adler  <darin (a] apple.com>
   82843 
   82844         - roll out assertion breaking regression tests
   82845 
   82846         * platform/ScrollView.cpp:
   82847         (WebCore::ScrollView::repaintContentRectangle): Temporarily remove assertion
   82848         that fires in regression tests. Hyatt can add it back later. The assertion
   82849         fires in the regression test because of layout that triggers repaint occuring
   82850         during the process of removing a frame.
   82851 
   82852 2008-09-30  Adele Peterson  <adele (a] apple.com>
   82853 
   82854         Reviewed by Darin Adler.
   82855 
   82856         Fix for https://bugs.webkit.org/show_bug.cgi?id=21227
   82857         <rdar://problem/6222134> add a way to set color for input placeholder text
   82858 
   82859         Test: fast/forms/placeholder-pseudo-style.html
   82860 
   82861         This change adds "-webkit-input-placeholder-mode" as a pseudo class that can be used to style
   82862         input elements when they are displaying the placeholder text.
   82863 
   82864         * css/CSSSelector.cpp: (WebCore::CSSSelector::extractPseudoType): Add case for inputPlaceholderMode.
   82865         * css/CSSSelector.h: (WebCore::CSSSelector::): Add PseudoInputPlaceholderMode.
   82866         * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
   82867         Add check for PseudoInputPlaceholderMode that asks the node if placeholderShouldBeVisible is true.
   82868         * css/html4.css: Add rule to make placeholder text default to darkGray.
   82869 
   82870         * html/HTMLInputElement.cpp:
   82871         (WebCore::HTMLInputElement::init): Initialize m_placeholderShouldBeVisible.
   82872         (WebCore::HTMLInputElement::dispatchFocusEvent): Call updatePlaceholderVisibility.
   82873         (WebCore::HTMLInputElement::dispatchBlurEvent): ditto.
   82874         (WebCore::HTMLInputElement::parseMappedAttribute): ditto.
   82875         (WebCore::HTMLInputElement::setValue): ditto.
   82876         (WebCore::HTMLInputElement::setValueFromRenderer): ditto.
   82877         (WebCore::HTMLInputElement::updatePlaceholderVisibility): Sets m_placeholderShouldBeVisible based on the current value and the focus state.
   82878          This calculation used to be done in the renderer, but since the node knows everything about the state, it can make that decision, and the
   82879          renderer will just ask the node if it should draw the placeholder.
   82880         * html/HTMLInputElement.h: (WebCore::HTMLInputElement::placeholderShouldBeVisible):
   82881 
   82882         * rendering/RenderTextControl.cpp:
   82883         (WebCore::disabledTextColor): Moved to the top of the file.  If there's not very much contrast between the disabled color and the background color,
   82884         just leave the text color alone.  We don't want to change a good contrast color scheme so that it has really bad contrast.
   82885         If the the contrast was already poor, then it doesn't do any good to change it to a different poor contrast color scheme.
   82886         (WebCore::RenderTextControl::createInnerTextStyle): If the node says the placeholder should be visible, prepare by overriding the text security to be "none".
   82887         This can only happen as a result of either a setStyle call (which will be followed by a call to updateFromElement) or from createSubtreeIfNeeded, which
   82888         is called directly from updateFromElement.  updateFromElement will immediately update the text displayed.
   82889         (WebCore::RenderTextControl::updateFromElement): If the placeholder visibility has changed, update the text that is displayed.
   82890         (WebCore::RenderTextControl::forwardEvent): Remove calls to update the placeholder state.  This is now done in HTMLInputElement.
   82891         * rendering/RenderTextControl.h:
   82892 
   82893 2008-09-30  Beth Dakin  <bdakin (a] apple.com>
   82894 
   82895         Reviewed by Darin Adler.
   82896 
   82897         Fix for https://bugs.webkit.org/show_bug.cgi?id=20396 Abort caused
   82898         by failed allocation due to invalid counter/attr
   82899         and corresponding: <rdar://problem/6152371>
   82900 
   82901         * css/CSSParser.cpp:
   82902         (WebCore::CSSParser::parseCounterContent): The spec indicates that
   82903         only identifiers should be accepted here.
   82904 
   82905 2008-09-30  Kevin McCullough  <kmccullough (a] apple.com>
   82906 
   82907         Reviewed by Oliver Hunt.
   82908 
   82909         Bug 21255: console.profileEnd() without a console.profile() crashes the
   82910         web inspector
   82911 
   82912         * page/Console.cpp:
   82913         (WebCore::Console::profileEnd):
   82914 
   82915 2008-09-30  Kevin McCullough  <kmccullough (a] apple.com>
   82916 
   82917         Reviewed by Tim Hatcher.
   82918 
   82919         Bug 21252: calling console.profile() with a title that is 2 chars or
   82920         shorter does not linkify it
   82921 
   82922         - Previously we tried to not linkify very short URLs but since profile
   82923         titles can be any length this is not always true.
   82924 
   82925         * page/inspector/inspector.js:
   82926 
   82927 2008-09-30  Dave Hyatt  <hyatt (a] apple.com>
   82928 
   82929         Remove the update() method on ScrollView.  This method was only called in one place, and its purpose
   82930         was to cause a display/flush to happen.  Here is a breakdown of the method use on each platform:
   82931         (1) Not used on Mac
   82932         (2) Used on Windows
   82933         (3) Used on Qt, but implemented incorrectly to cause a full repaint for no reason.
   82934         (4) Used on Gtk, but implemented incorrectly to cause a full repaint for no reason.
   82935         (5) Used on wx, but probably not needed (since wx has platform widgets like Mac).
   82936 
   82937         There is now a paint method on HostWindow that does an immediate mode repaint of an empty rect to
   82938         cause the display/flush to happen if needed (thus saving an extra method on ChromeClient).
   82939         With the changes to this method, the new behavior is as follows:
   82940         (1) Not used on Mac
   82941         (2) Used on Windows
   82942         (3) Nothing happens on Qt, but only because they have not implemented immediate mode updating.
   82943         (4) Gtk now behaves like Windows and will process updates but not do any incorrect additional invalidation.
   82944         (5) Not used on wx
   82945 
   82946         This method was originally added for Windows. It's not clear the display/flush is really even necessary on the other
   82947         platforms.  At the very least stopping unnecessary full invalidations on Qt/Gtk is a good thing. :)
   82948 
   82949         Reviewed by Sam Weinig
   82950 
   82951         * ChangeLog:
   82952         * dom/Document.cpp:
   82953         (WebCore::Document::implicitClose):
   82954         * platform/HostWindow.h:
   82955         (WebCore::HostWindow::paint):
   82956         * platform/ScrollView.h:
   82957         * platform/gtk/ScrollViewGtk.cpp:
   82958         * platform/mac/ScrollViewMac.mm:
   82959         * platform/qt/ScrollViewQt.cpp:
   82960         * platform/win/ScrollViewWin.cpp:
   82961         * platform/wx/ScrollViewWx.cpp:
   82962 
   82963 2008-09-30  Timothy Hatcher  <timothy (a] apple.com>
   82964 
   82965         Focus the DOM tree in the Web Inspector when a node is inspected.
   82966         So when the search field has focus, the focus moves to the tree,
   82967         allowing the arrow keys work. This can happen when using the new
   82968         find in page feature.
   82969 
   82970         https://bugs.webkit.org/show_bug.cgi?id=21251
   82971 
   82972         Reviewed by Geoff Garen.
   82973 
   82974         * page/inspector/ElementsPanel.js:
   82975         (WebInspector.ElementsPanel): Set currentFocusElement to
   82976         the main-panels element if the panel is visible.
   82977         (WebInspector.ElementsPanel.prototype.updateBreadcrumb):
   82978         Remove a set of currentFocusElement since this moved.
   82979         * page/inspector/inspector.js:
   82980         (WebInspector.set currentFocusElement): Always focus the element.
   82981         This ensures that when focus changes in the page and we don't
   82982         catch it, we will still focus the elements even if we think it
   82983         was already focused.
   82984 
   82985 2008-09-30  Timothy Hatcher  <timothy (a] apple.com>
   82986 
   82987         Make the Web Inspector's toolbar icons darker when the mouse is
   82988         pressed on them. This matches the standard NSToolbar look.
   82989 
   82990         https://bugs.webkit.org/show_bug.cgi?id=21249
   82991         rdar://problem/6033752
   82992 
   82993         Reviewed by Adam Roben.
   82994 
   82995         * page/inspector/Images/databasesIcon.png:
   82996         * page/inspector/Images/elementsIcon.png:
   82997         * page/inspector/Images/profilesIcon.png:
   82998         * page/inspector/Images/resourcesIcon.png:
   82999         * page/inspector/Images/scriptsIcon.png:
   83000         * page/inspector/Panel.js:
   83001         * page/inspector/inspector.css:
   83002 
   83003 2008-09-30  Kevin McCullough  <kmccullough (a] apple.com>
   83004 
   83005         Reviewed by Tim Hatcher.
   83006 
   83007         Bug 21139: Profiler log message is wrong
   83008         - Correctly fix =(
   83009         Don't call _format twice.
   83010 
   83011         * page/Page.h:
   83012         * page/inspector/Console.js:
   83013         * page/inspector/ProfilesPanel.js:
   83014         * page/inspector/inspector.js:
   83015 
   83016 2008-09-30  Dave Hyatt  <hyatt (a] apple.com>
   83017 
   83018         http://bugs.webkit.org/show_bug.cgi?id=21250
   83019 
   83020         Rename updateContents to repaintContentRectangle and make it cross-platform by always sending
   83021         repaints up through the ChromeClient.
   83022 
   83023         Reviewed by Darin Adler
   83024 
   83025         * loader/EmptyClients.h:
   83026         (WebCore::EmptyChromeClient::repaint):
   83027         * page/Chrome.cpp:
   83028         (WebCore::Chrome::repaint):
   83029         * page/Chrome.h:
   83030         * page/ChromeClient.h:
   83031         * page/FrameView.cpp:
   83032         (WebCore::FrameView::hostWindow):
   83033         (WebCore::FrameView::repaintContentRectangle):
   83034         * page/FrameView.h:
   83035         * platform/HostWindow.h:
   83036         * platform/ScrollView.cpp:
   83037         (WebCore::ScrollView::repaintContentRectangle):
   83038         (WebCore::ScrollView::platformRepaintContentRectangle):
   83039         * platform/ScrollView.h:
   83040         * platform/gtk/ScrollViewGtk.cpp:
   83041         * platform/mac/ScrollViewMac.mm:
   83042         (WebCore::ScrollView::platformRepaintContentRectangle):
   83043         * platform/qt/ScrollViewQt.cpp:
   83044         * platform/win/ScrollViewWin.cpp:
   83045         * platform/wx/ScrollViewWx.cpp:
   83046         (WebCore::ScrollView::platformRepaintContentRectangle):
   83047 
   83048 2008-09-30  Alexey Proskuryakov  <ap (a] webkit.org>
   83049 
   83050         Non-Mac build fixes.
   83051 
   83052         * GNUmakefile.am:
   83053         * WebCore.pro:
   83054         * WebCore.vcproj/WebCore.vcproj:
   83055         * WebCoreSources.bkl:
   83056         * webcore-base.bkl:
   83057         Added DOMProtect.{cpp,h}.
   83058 
   83059 2008-09-39  Kevin Decker  <kdecker (a] apple.com>
   83060 
   83061         Reviewed by John Sullivan.
   83062 
   83063         * bridge/npapi.h: Added skeleton for a new plug-in drawing model, the NPCoreAnimationDrawingModel. This model will eventually pave the way
   83064         for hardware accelerated drawing in plug-ins and out of process plug-in rendering.
   83065 
   83066 2008-09-29  Julien Chaffraix  <jchaffraix (a] webkit.org>
   83067 
   83068         Reviewed by Maciej Stachowiak.
   83069 
   83070         Bug 21106: .in format discussed changes
   83071         https://bugs.webkit.org/show_bug.cgi?id=21106
   83072 
   83073         - Removed "cppNamespace" global parameter and hard-coded "WebCore" as it
   83074         is the only namespace used.
   83075 
   83076         - Removed "generateFactory" and "generateWrapperFactory" parameters and
   83077         re-introduced the command line options.
   83078 
   83079         - Cleaned up the output of make_names.pl (removed unneeded new line).
   83080 
   83081         * DerivedSources.make: Added factories command line options.
   83082         * GNUmakefile.am: Ditto.
   83083         * WebCore.pro: Ditto and removed some arguments that were migrated to
   83084         the .in files.
   83085 
   83086         * dom/make_names.pl: Clean up (see above).
   83087 
   83088         * html/HTMLAttributeNames.in: Removed "cppNamespace", "generateFactory"
   83089         and "generateWrapperFactory" occurences.
   83090         * html/HTMLTagNames.in: Ditto.
   83091         * svg/svgattrs.in: Ditto.
   83092         * svg/svgtags.in: Ditto.
   83093         * svg/xlinkattrs.in: Ditto.
   83094         * xml/xmlattrs.in: Ditto.
   83095 
   83096 2008-09-29  Chris Fleizach  <cfleizach (a] apple.com>
   83097 
   83098         Reviewed by John Sullivan.
   83099 
   83100         <rdar://problem/6255456> AX: <file> input button shouldn't have children exposed
   83101         Make sure that certain types of elements do not return children and, moreover, do not waste their
   83102         energy trying to return children
   83103 
   83104         Test: accessibility/nochildren-elements.html
   83105 
   83106         * page/AccessibilityObject.h:
   83107         (WebCore::AccessibilityObject::canHaveChildren):
   83108         * page/AccessibilityRenderObject.cpp:
   83109         (WebCore::AccessibilityRenderObject::canHaveChildren):
   83110         (WebCore::AccessibilityRenderObject::addChildren):
   83111         * page/AccessibilityRenderObject.h:
   83112 
   83113 2008-09-30  Alexey Proskuryakov  <ap (a] webkit.org>
   83114 
   83115         Reviewed by Sam Weinig.
   83116 
   83117         https://bugs.webkit.org/show_bug.cgi?id=21213
   83118         MessagePort crash when GC collects an object with a pending close event
   83119 
   83120         Test: fast/events/message-channel-gc-2.html
   83121               fast/events/message-channel-listener-circular-ownership.html
   83122 
   83123         * bindings/DOMProtect.cpp: Added.
   83124         (WebCore::gcProtectDOMObject):
   83125         (WebCore::gcUnprotectDOMObject):
   83126         * bindings/DOMProtect.h: Added.
   83127         Added an abstraction for GC protection to avoid the need to call JS bindings code from
   83128         DOM objects directly.
   83129 
   83130         * dom/MessagePort.cpp:
   83131         (WebCore::CloseMessagePortTimer::fired):
   83132         (WebCore::MessagePort::queueCloseEvent):
   83133         GC protect MessagePort wrapper while there is a pending close event.
   83134         This may be necessary for message events, too, but that case is not a crasher, and actually
   83135         behaves to the letter of the current HTML5 text, so I'll consider it later.
   83136 
   83137         * xml/XMLHttpRequest.cpp:
   83138         (WebCore::XMLHttpRequest::loadRequestAsynchronously):
   83139         (WebCore::XMLHttpRequest::dropProtection):
   83140         Use gcProtectDOMObject here, too. Unfortunately, XMLHttpRequest has more dependencies on JSC.
   83141 
   83142         * bindings/js/JSMessagePortCustom.cpp:
   83143         (WebCore::JSMessagePort::addEventListener):
   83144         (WebCore::JSMessagePort::removeEventListener):
   83145         (WebCore::JSMessagePort::setOnmessage):
   83146         (WebCore::JSMessagePort::setOnclose):
   83147         Don't tell DOMWindowBase that MessagePort is a NodeEventTarget, this is not true. I do not
   83148         know if this was causing any real issues, but we shouldn't lie to DOMWindowBase.
   83149 
   83150         * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
   83151         (WebCore::JSXMLHttpRequestUpload::mark):
   83152         While at it, changed to use a typedef for event listeners from XMLHttpRequestUpload, not
   83153         from XMLHttpRequest.
   83154 
   83155 2008-09-30  Adam Roben  <aroben (a] apple.com>
   83156 
   83157         Windows build fix
   83158 
   83159         * DerivedSources.cpp: Add JSEventTargetNode.cpp.
   83160 
   83161 2008-09-29  Sam Weinig  <sam (a] webkit.org>
   83162 
   83163         Reviewed by Tim Hatcher.
   83164 
   83165         Patch for https://bugs.webkit.org/show_bug.cgi?id=21122
   83166         Autogenerate JS event listeners
   83167 
   83168         - Generate EventTargetNode.
   83169 
   83170         * DerivedSources.make:
   83171         * GNUmakefile.am:
   83172         * WebCore.pro:
   83173         * WebCore.vcproj/WebCore.vcproj:
   83174         * WebCore.xcodeproj/project.pbxproj:
   83175         * WebCoreSources.bkl:
   83176         * bindings/js/JSEventListener.cpp:
   83177         * bindings/js/JSEventTarget.cpp: Added.
   83178         (WebCore::toJS):
   83179         * bindings/js/JSEventTarget.h: Added.
   83180         * bindings/js/JSEventTargetBase.cpp: Removed.
   83181         * bindings/js/JSEventTargetBase.h:
   83182         * bindings/js/JSEventTargetNode.cpp: Removed.
   83183         * bindings/js/JSEventTargetNode.h: Removed.
   83184         * bindings/js/JSEventTargetNodeCustom.cpp: Added.
   83185         (WebCore::JSEventTargetNode::addEventListener):
   83186         (WebCore::JSEventTargetNode::removeEventListener):
   83187         (WebCore::JSEventTargetNode::dispatchEvent):
   83188         (WebCore::JSEventTargetNode::getListener):
   83189         (WebCore::JSEventTargetNode::setListener):
   83190         (WebCore::JSEventTargetNode::pushEventHandlerScope):
   83191         * bindings/js/JSEventTargetSVGElementInstance.cpp:
   83192         (WebCore::):
   83193         (WebCore::JSEventTargetSVGElementInstancePrototype::self):
   83194         (WebCore::JSEventTargetSVGElementInstancePrototype::getOwnPropertySlot):
   83195         (jsEventTargetAddEventListener):
   83196         (jsEventTargetRemoveEventListener):
   83197         (jsEventTargetDispatchEvent):
   83198         * bindings/js/JSEventTargetSVGElementInstance.h:
   83199         (WebCore::JSEventTargetSVGElementInstancePrototype::JSEventTargetSVGElementInstancePrototype):
   83200         (WebCore::JSEventTargetSVGElementInstancePrototype::classInfo):
   83201         * bindings/scripts/CodeGeneratorJS.pm:
   83202         * dom/EventTargetNode.idl: Added.
   83203 
   83204 2008-09-29  Darin Adler  <darin (a] apple.com>
   83205 
   83206         Reviewed by Sam Weinig.
   83207 
   83208         - https://bugs.webkit.org/show_bug.cgi?id=21214
   83209           work on getting rid of ExecState
   83210 
   83211         * bindings/js/JSDOMWindowBase.cpp:
   83212         (WebCore::JSDOMWindowBase::JSDOMWindowBase): Removed globalThisValue argument
   83213         for base class constructor.
   83214 
   83215 2008-09-29  David Hyatt  <hyatt (a] apple.com>
   83216 
   83217         Add the new HostWindow base class.  A HostWindow hosts a hierarchy of Widgets.  The Chrome object on Page
   83218         now subclasses from HostWindow.  The new class will allow objects in platform/ like Widgets, Scrollbars
   83219         and ScrollViews to talk to the HostWindow object in order to do backing store operations and invalidations.
   83220         (Right now the platform layering is simply being violated by ScrollViews going directly to the ChromeClient.)
   83221 
   83222         Reviewed by Sam Weinig
   83223 
   83224         * WebCore.xcodeproj/project.pbxproj:
   83225         * page/Chrome.h:
   83226         * platform/HostWindow.h: Added.
   83227         (WebCore::HostWindow::HostWindow):
   83228         (WebCore::HostWindow::~HostWindow):
   83229 
   83230 2008-09-29  Kevin Decker  <kdecker (a] apple.com>
   83231 
   83232         Reviewed by Anders Carlsson.
   83233 
   83234         * bridge/npapi.h: Tweaked NPNVariable enum. NPNVsupportsCocoaBool,  NPNVsupportsCarbonBool are now in the 3000 range instead of
   83235         2000.
   83236 
   83237 2008-09-29  Dan Bernstein  <mitz (a] apple.com>
   83238 
   83239         Reviewed by Adam Roben.
   83240 
   83241         - WebCore part of fixing <rdar://problem/6247906> REGRESSION (r19500): Crash on quit beneath CloseThemeData
   83242 
   83243         * rendering/RenderThemeWin.cpp:
   83244         (WebCore::RenderThemeWin::setWebKitIsBeingUnloaded): Added.
   83245         (WebCore::RenderThemeWin::~RenderThemeWin): Check if WebKit is being
   83246         unloaded, to avoid calling uxtheme.dll functions after that library has
   83247         been unloaded.
   83248         * rendering/RenderThemeWin.h:
   83249 
   83250 2008-09-29  Chris Fleizach  <cfleizach (a] apple.com>
   83251 
   83252         Reviewed by John Sullivan
   83253 
   83254         <rdar://problem/6240743> AXLoadComplete is sent for non-top level web areas and bogus web areas
   83255 
   83256         Sends AXLoadComplete only when the top level web area is finished loading
   83257 
   83258         * dom/Document.cpp:
   83259         (WebCore::Document::implicitClose):
   83260 
   83261 2008-09-29  Timothy Hatcher  <timothy (a] apple.com>
   83262 
   83263         Makes the node highlight always show up when hovering a node in
   83264         the Web Inspector now that the highlight does not scroll to reveal
   83265         the node. Also adds a hover effect in the inspector when hovering
   83266         causes a highlight in the page. This ties the user hovering action
   83267         to the highlight so it is clear what causes the highlight to appear.
   83268 
   83269         Also the highlight now temporarily shows up for 2 seconds after
   83270         selecting a node in the DOM tree. So arrowing around in the tree
   83271         will show the node on the page, providing feedback to the user.
   83272 
   83273         Plus fixes an issue where quickly moving away from hovering
   83274         a node would keep showing the page highlight. This was happening
   83275         in breadcrumbs and the DOM tree.
   83276 
   83277         https://bugs.webkit.org/show_bug.cgi?id=21220
   83278 
   83279         Reviewed by Kevin McCullough.
   83280 
   83281         * page/inspector/Console.js:
   83282         (WebInspector.Console.prototype._mouseOverNode): Added. Used for
   83283         hovering DOM nodes in the console.
   83284         (WebInspector.Console.prototype._mouseOutOfNode): Ditto.
   83285         (WebInspector.Console.prototype._formatnode): Use the new event
   83286         listeners and add a class name to the anchor element.
   83287         * page/inspector/ElementsPanel.js:
   83288         (WebInspector.ElementsPanel): Add new event listeners to the
   83289         crumbs element to do the node hovering highlight.
   83290         (WebInspector.ElementsPanel.prototype.hide):
   83291         (WebInspector.ElementsPanel.prototype.reset):
   83292         (WebInspector.ElementsPanel.prototype._mouseMovedInCrumbs):
   83293         (WebInspector.ElementsPanel.prototype._mouseMovedOutOfCrumbs):
   83294         (WebInspector.ElementsPanel.prototype.updateBreadcrumb):
   83295         * page/inspector/ElementsTreeOutline.js:
   83296         (WebInspector.ElementsTreeOutline.prototype.set focusedDOMNode):
   83297         Show the node hishlight for 2 seconds then restore the highlight
   83298         to the current hovered node.
   83299         (WebInspector.ElementsTreeOutline.prototype._onmousemove): Set the
   83300         hovered node and set the hovered state on the tree element.
   83301         (WebInspector.ElementsTreeOutline.prototype._onmouseout): Set the
   83302         hovered node to null and removed the hovered state from the previous
   83303         hovered tree element.
   83304         (WebInspector.ElementsTreeElement.prototype.set/get hovered): Adds
   83305         the hovered class to the list item.
   83306         (WebInspector.ElementsTreeElement.prototype.onattach): Ditto.
   83307         * page/inspector/inspector.css:
   83308         * page/inspector/inspector.js:
   83309         (WebInspector.set hoveredDOMNode): Pass a delay to _updateHoverHighlightSoon
   83310         based on the showingDOMNodeHighlight property of 50ms or 500ms. This
   83311         causes the highlight to change sooner if there is one already showing
   83312         and appear later if there isn't one showing. This is like tooltips,
   83313         hovering a node for 500ms will cause highlight then mousing between nodes
   83314         will keep the highlight and change to the new node.
   83315         (WebInspector._updateHoverHighlightSoon): Take a delay being passed in and
   83316         always reset the timeout so continuous mousing does not keep flasshing
   83317         the highlight on the screen.
   83318         (WebInspector._updateHoverHighlight): Removed the alt key check and added
   83319         the showingDOMNodeHighlight property.
   83320         (WebInspector.documentKeyDown): Removed the alt key check.
   83321         (WebInspector.documentKeyUp): Ditto.
   83322         (WebInspector.reset): Clear the hoveredDOMNode.
   83323 
   83324 2008-09-29  Simon Fraser  <simon.fraser (a] apple.com>
   83325 
   83326         Reviewed by Anders Carlsson
   83327 
   83328         Fix RenderStyle leak in animation code, and assert that
   83329         keyframe resolution in CSSStyleSelector is not going to clobber
   83330         m_style.
   83331 
   83332         * css/CSSStyleSelector.cpp:
   83333         (WebCore::CSSStyleSelector::keyframeStylesForAnimation):
   83334         * page/animation/KeyframeAnimation.cpp:
   83335         (WebCore::KeyframeAnimation::~KeyframeAnimation):
   83336 
   83337 2008-09-29  Chris Marrin  <cmarrin (a] apple.com>
   83338 
   83339         Reviewed by Dave Hyatt
   83340 
   83341         Fixed https://bugs.webkit.org/show_bug.cgi?id=20995
   83342         Rewrite keyframe resolution to be like styleForElement()
   83343 
   83344         Test: animations/lineheight-animation.html
   83345 
   83346         * css/CSSStyleSelector.cpp:
   83347         (WebCore::CSSStyleSelector::addKeyframeStyle):
   83348         (WebCore::CSSStyleSelector::~CSSStyleSelector):
   83349         (WebCore::CSSStyleSelector::keyframeStylesForAnimation):
   83350         (WebCore::CSSRuleSet::addRulesFromSheet):
   83351         (WebCore::CSSStyleSelector::mapAnimationName):
   83352         * css/CSSStyleSelector.h:
   83353         * page/animation/CompositeAnimation.cpp:
   83354         (WebCore::CompositeAnimation::updateKeyframeAnimations):
   83355         * page/animation/KeyframeAnimation.cpp:
   83356         (WebCore::KeyframeAnimation::KeyframeAnimation):
   83357         (WebCore::KeyframeAnimation::animate):
   83358         (WebCore::KeyframeAnimation::hasAnimationForProperty):
   83359         (WebCore::KeyframeAnimation::sendAnimationEvent):
   83360         (WebCore::KeyframeAnimation::overrideAnimations):
   83361         (WebCore::KeyframeAnimation::resumeOverriddenAnimations):
   83362         (WebCore::KeyframeAnimation::affectsProperty):
   83363         (WebCore::KeyframeAnimation::validateTransformFunctionList):
   83364         * page/animation/KeyframeAnimation.h:
   83365         * rendering/style/Animation.cpp:
   83366         (WebCore::Animation::animationsMatch):
   83367         * rendering/style/Animation.h:
   83368         * rendering/style/KeyframeList.cpp:
   83369         (WebCore::KeyframeList::~KeyframeList):
   83370         (WebCore::KeyframeList::clear):
   83371         (WebCore::KeyframeList::insert):
   83372         * rendering/style/KeyframeList.h:
   83373         (WebCore::KeyframeValue::KeyframeValue):
   83374         (WebCore::KeyframeList::KeyframeList):
   83375         (WebCore::KeyframeList::operator!=):
   83376         (WebCore::KeyframeList::animationName):
   83377         (WebCore::KeyframeList::addProperty):
   83378         (WebCore::KeyframeList::containsProperty):
   83379         (WebCore::KeyframeList::beginProperties):
   83380         (WebCore::KeyframeList::endProperties):
   83381         (WebCore::KeyframeList::isEmpty):
   83382         (WebCore::KeyframeList::size):
   83383         (WebCore::KeyframeList::beginKeyframes):
   83384         (WebCore::KeyframeList::endKeyframes):
   83385         * rendering/style/RenderStyle.h:
   83386         * rendering/style/StyleRareNonInheritedData.cpp:
   83387         * rendering/style/StyleRareNonInheritedData.h:
   83388 
   83389 2008-09-29  Chris Marrin  <cmarrin (a] apple.com>
   83390 
   83391         Reviewed by Eric Seidel
   83392 
   83393         Clean up fix in PropertyWrapperGetter::equals
   83394         https://bugs.webkit.org/show_bug.cgi?id=21011
   83395 
   83396         Test: transitions/override-transition-crash.html
   83397 
   83398         * page/animation/AnimationBase.cpp:
   83399         (WebCore::PropertyWrapperGetter::equals):
   83400         * page/animation/CompositeAnimation.cpp:
   83401         (WebCore::CompositeAnimation::updateTransitions):
   83402 
   83403 2008-09-29  Chris Marrin  <cmarrin (a] apple.com>
   83404 
   83405         Reviewed by Eric Seidel
   83406 
   83407         https://bugs.webkit.org/show_bug.cgi?id=21001
   83408         Starting transition after animation, when animation
   83409         is finished, transition is wrong.
   83410 
   83411         Test: animations/transition-and-animation-2.html
   83412 
   83413         * page/animation/AnimationBase.h:
   83414         * page/animation/CompositeAnimation.cpp:
   83415         (WebCore::CompositeAnimation::updateTransitions):
   83416         (WebCore::CompositeAnimation::updateKeyframeAnimations):
   83417         (WebCore::CompositeAnimation::resetTransitions):
   83418         (WebCore::CompositeAnimation::cleanupFinishedAnimations):
   83419         * page/animation/ImplicitAnimation.cpp:
   83420         (WebCore::ImplicitAnimation::ImplicitAnimation):
   83421         (WebCore::ImplicitAnimation::~ImplicitAnimation):
   83422         (WebCore::ImplicitAnimation::animate):
   83423         (WebCore::ImplicitAnimation::reset):
   83424         * page/animation/ImplicitAnimation.h:
   83425 
   83426 2008-09-29  Chris Marrin  <cmarrin (a] apple.com>
   83427 
   83428         Reviewed by Sam Weinig
   83429 
   83430         https://bugs.webkit.org/show_bug.cgi?id=20921
   83431         -webkit-animation-timing-function: inside of keyframes is ignored
   83432 
   83433         Test: animations/keyframe-timing-functions.html
   83434 
   83435         * page/animation/AnimationBase.cpp:
   83436         (WebCore::AnimationBase::progress):
   83437         * page/animation/AnimationBase.h:
   83438         * page/animation/ImplicitAnimation.cpp:
   83439         (WebCore::ImplicitAnimation::animate):
   83440         * page/animation/KeyframeAnimation.cpp:
   83441         (WebCore::KeyframeAnimation::animate):
   83442 
   83443 2008-09-29  Dan Bernstein  <mitz (a] apple.com>
   83444 
   83445         - Windows build fix
   83446 
   83447         * platform/ScrollView.cpp:
   83448         (WebCore::ScrollView::platformScroll):
   83449 
   83450 2008-09-29  Dan Bernstein  <mitz (a] apple.com>
   83451 
   83452         - another attempt at a Windows build fix
   83453 
   83454         * platform/ScrollView.cpp:
   83455         (WebCore::platformScroll):
   83456 
   83457 2008-09-29  Dan Bernstein  <mitz (a] apple.com>
   83458 
   83459         - Windows build fix
   83460 
   83461         * platform/ScrollView.cpp:
   83462         (WebCore::ScrollView::platformSetScrollPosition):
   83463 
   83464 2008-09-29  David Hyatt  <hyatt (a] apple.com>
   83465 
   83466         https://bugs.webkit.org/show_bug.cgi?id=21218
   83467 
   83468         Accidentally removed a check to see if the scrollbar modes were equal.  This caused a crash on Windows.
   83469         It's silly that the code was this fragile, but for now just put the check back in.
   83470 
   83471         Reviewed by Dan Bernstein
   83472 
   83473         * platform/ScrollView.cpp:
   83474         (WebCore::ScrollView::setScrollbarModes):
   83475 
   83476 2008-09-29  David Hyatt  <hyatt (a] apple.com>
   83477 
   83478         https://bugs.webkit.org/show_bug.cgi?id=21216
   83479 
   83480         Make setScrollPosition and scroll() cross-platform.
   83481 
   83482         Reviewed by Anders
   83483 
   83484         * platform/ScrollView.cpp:
   83485         (WebCore::ScrollView::setScrollPosition):
   83486         (WebCore::ScrollView::scroll):
   83487         * platform/ScrollView.h:
   83488         * platform/gtk/ScrollViewGtk.cpp:
   83489         * platform/mac/ScrollViewMac.mm:
   83490         (WebCore::ScrollView::platformSetScrollPosition):
   83491         (WebCore::ScrollView::platformScroll):
   83492         * platform/qt/ScrollViewQt.cpp:
   83493         * platform/win/ScrollViewWin.cpp:
   83494         * platform/wx/ScrollViewWx.cpp:
   83495         (WebCore::ScrollView::platformSetScrollPosition):
   83496         (WebCore::ScrollView::platformScroll):
   83497 
   83498 2008-09-29  Kevin McCullough  <kmccullough (a] apple.com>
   83499 
   83500         Reviewed by Oliver.
   83501 
   83502         Bug 21139: Profiler log message is wrong
   83503         - Because _format was called twice the number in the log was incremented
   83504         too many times, but we were passing it around in the link the whole time
   83505 
   83506         * page/inspector/ProfilesPanel.js:
   83507         * page/inspector/inspector.js:
   83508 
   83509 2008-09-29  Sam Weinig  <sam (a] webkit.org>
   83510 
   83511         Reviewed by Cameron Zwarich.
   83512 
   83513         Autogenerate EventListeners, addEventListener and removeEventListener
   83514         for JSDOMWindow.
   83515 
   83516         * bindings/js/JSDOMWindowBase.cpp:
   83517         * bindings/js/JSDOMWindowBase.h:
   83518         * bindings/js/JSDOMWindowCustom.cpp:
   83519         (WebCore::JSDOMWindow::onwebkitanimationstart):
   83520         (WebCore::JSDOMWindow::setOnwebkitanimationstart):
   83521         (WebCore::JSDOMWindow::onwebkitanimationiteration):
   83522         (WebCore::JSDOMWindow::setOnwebkitanimationiteration):
   83523         (WebCore::JSDOMWindow::onwebkitanimationend):
   83524         (WebCore::JSDOMWindow::setOnwebkitanimationend):
   83525         (WebCore::JSDOMWindow::onwebkittransitionend):
   83526         (WebCore::JSDOMWindow::setOnwebkittransitionend):
   83527         (WebCore::JSDOMWindow::addEventListener):
   83528         (WebCore::JSDOMWindow::removeEventListener):
   83529         (WebCore::JSDOMWindow::setListener):
   83530         (WebCore::JSDOMWindow::getListener):
   83531         * bindings/scripts/CodeGeneratorJS.pm:
   83532         * page/DOMWindow.idl:
   83533 
   83534 2008-09-29  Thiago Macieira  <thiago.macieira (a] nokia.com>
   83535 
   83536         Reviewed by Simon.
   83537 
   83538         Changed copyright from Trolltech ASA to Nokia.
   83539 
   83540         Nokia acquired Trolltech ASA, assets were transferred on September 26th 2008.
   83541 
   83542         * bindings/js/JSMimeTypeArrayCustom.cpp:
   83543         * bindings/js/JSNavigatorCustom.cpp:
   83544         * bindings/js/JSPluginArrayCustom.cpp:
   83545         * bindings/js/JSPluginCustom.cpp:
   83546         * bindings/js/ScriptControllerMac.mm:
   83547         * bindings/js/ScriptControllerQt.cpp:
   83548         * bridge/qt/qt_class.cpp:
   83549         * bridge/qt/qt_class.h:
   83550         * bridge/qt/qt_instance.cpp:
   83551         * bridge/qt/qt_instance.h:
   83552         * bridge/qt/qt_runtime.cpp:
   83553         * bridge/qt/qt_runtime.h:
   83554         * bridge/testqtbindings.cpp:
   83555         * css/makegrammar.pl:
   83556         * css/makeprop.pl:
   83557         * css/makevalues.pl:
   83558         * dom/Node.cpp:
   83559         * dom/TagNodeList.cpp:
   83560         * dom/TagNodeList.h:
   83561         * dom/XMLTokenizer.cpp:
   83562         * dom/XMLTokenizer.h:
   83563         * dom/XMLTokenizerLibxml2.cpp:
   83564         * dom/XMLTokenizerQt.cpp:
   83565         * editing/Editor.cpp:
   83566         * editing/EditorCommand.cpp:
   83567         * html/CanvasRenderingContext2D.cpp:
   83568         * html/CanvasStyle.cpp:
   83569         * html/HTMLAppletElement.cpp:
   83570         * html/HTMLEmbedElement.cpp:
   83571         * html/HTMLObjectElement.cpp:
   83572         * loader/FrameLoader.cpp:
   83573         * page/Chrome.cpp:
   83574         * page/EditorClient.h:
   83575         * page/Frame.cpp:
   83576         * page/Frame.h:
   83577         * page/FramePrivate.h:
   83578         * page/Navigator.cpp:
   83579         * page/Navigator.h:
   83580         * page/Navigator.idl:
   83581         * page/mac/FrameMac.mm:
   83582         * page/qt/EventHandlerQt.cpp:
   83583         * platform/graphics/qt/FontCacheQt.cpp:
   83584         * platform/graphics/qt/FontCustomPlatformData.cpp:
   83585         * platform/graphics/qt/FontCustomPlatformData.h:
   83586         * platform/graphics/qt/FontPlatformData.h:
   83587         * platform/graphics/qt/FontQt.cpp:
   83588         * platform/graphics/qt/GlyphPageTreeNodeQt.cpp:
   83589         * platform/graphics/qt/GraphicsContextQt.cpp:
   83590         * platform/graphics/qt/ImageDecoderQt.cpp:
   83591         * platform/graphics/qt/ImageDecoderQt.h:
   83592         * platform/graphics/qt/ImageSourceQt.cpp:
   83593         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
   83594         * platform/graphics/qt/MediaPlayerPrivatePhonon.h:
   83595         * platform/graphics/qt/SimpleFontDataQt.cpp:
   83596         * platform/gtk/MIMETypeRegistryGtk.cpp:
   83597         * platform/mac/MIMETypeRegistryMac.mm:
   83598         * platform/network/qt/QNetworkReplyHandler.cpp:
   83599         * platform/network/qt/QNetworkReplyHandler.h:
   83600         * platform/network/qt/ResourceHandleQt.cpp:
   83601         * platform/network/qt/ResourceRequestQt.cpp:
   83602         * platform/qt/ClipboardQt.cpp:
   83603         * platform/qt/EventLoopQt.cpp:
   83604         * platform/qt/KURLQt.cpp:
   83605         * platform/qt/LoggingQt.cpp:
   83606         * platform/qt/MIMETypeRegistryQt.cpp:
   83607         * platform/qt/PasteboardQt.cpp:
   83608         * platform/qt/PlatformScreenQt.cpp:
   83609         * platform/qt/PopupMenuQt.cpp:
   83610         * platform/qt/QWebPopup.cpp:
   83611         * platform/qt/QWebPopup.h:
   83612         * platform/qt/RenderThemeQt.cpp:
   83613         * platform/qt/ScrollbarQt.cpp:
   83614         * platform/qt/ScrollbarThemeQt.cpp:
   83615         * platform/qt/WheelEventQt.cpp:
   83616         * platform/qt/html4-adjustments-qt.css:
   83617         * platform/wx/MimeTypeRegistryWx.cpp:
   83618         * plugins/MimeType.cpp:
   83619         * plugins/MimeType.h:
   83620         * plugins/MimeType.idl:
   83621         * plugins/MimeTypeArray.cpp:
   83622         * plugins/MimeTypeArray.h:
   83623         * plugins/MimeTypeArray.idl:
   83624         * plugins/Plugin.cpp:
   83625         * plugins/Plugin.h:
   83626         * plugins/Plugin.idl:
   83627         * plugins/PluginArray.cpp:
   83628         * plugins/PluginArray.h:
   83629         * plugins/PluginArray.idl:
   83630         * plugins/PluginData.cpp:
   83631         * plugins/PluginData.h:
   83632         * plugins/gtk/PluginDataGtk.cpp:
   83633         * plugins/mac/PluginDataMac.mm:
   83634         * plugins/qt/PluginDataQt.cpp:
   83635         * plugins/win/PluginDataWin.cpp:
   83636         * rendering/RenderTableCol.cpp:
   83637         * rendering/RenderTableCol.h:
   83638 
   83639 2008-09-29  Thiago Macieira  <thiago.macieira (a] trolltech.com>
   83640 
   83641         Reviewed by Simon
   83642 
   83643         Fix compilation with gcc 4.3
   83644 
   83645          gcc 4.3 is stricter and ctype.h isn't getting included
   83646         automatically here by dependencies. So do it directly.
   83647 
   83648         * platform/qt/PlatformKeyboardEventQt.cpp:
   83649 
   83650 2008-09-29  Morten Srvig  <msorvig (a] trolltech.com>
   83651 
   83652         Reviewed by Simon.
   83653 
   83654         Fix compilation with Qt/Mac without plugins.
   83655 
   83656         * platform/qt/TemporaryLinkStubs.cpp:
   83657 
   83658 2008-09-29  Mark Rowe  <mrowe (a] apple.com>
   83659 
   83660         Reviewed by Sam Weinig.
   83661 
   83662         Apply the ASCII fast path optimization from StringImpl::lower to StringImpl::upper.
   83663         In the few places that we call .upper() in WebCore the strings represent things like
   83664         tag and attribute names, which are nearly always going to be ASCII.
   83665 
   83666         * platform/text/StringImpl.cpp:
   83667         (WebCore::StringImpl::lower): If we have to resize the buffer, be sure to pass the new length
   83668         in to Unicode::toLower the second time.
   83669         (WebCore::StringImpl::upper):
   83670 
   83671 2008-09-28  Mark Rowe  <mrowe (a] apple.com>
   83672 
   83673         Reviewed by Sam Weinig.
   83674 
   83675         Speed up getPropertyValue('clip') by 25% by using a Vector<UChar> for building a string,
   83676         rather than String::operator+=.
   83677 
   83678         * css/CSSPrimitiveValue.cpp:
   83679         (WebCore::CSSPrimitiveValue::cssText):
   83680 
   83681 2008-09-28  Mark Rowe  <mrowe (a] apple.com>
   83682 
   83683         Reviewed by Oliver Hunt.
   83684 
   83685         Speed up computedStyle.getPropertyValue('color') by 4.5x.
   83686 
   83687         Using a Vector<UChar> while building up the property's cssText is substantially cheaper than using String::operator+=
   83688         as it avoids many memory reallocations.
   83689 
   83690         This also speeds up the jQuery .offset() benchmark at <http://dev.jquery.com/~john/speed/1.2.6/offset-1.2.6.html>
   83691         by 20% due to jQuery's strange need to call getPropertyValue('color') when retrieving the computed styles for
   83692         unrelated properties on an element.
   83693 
   83694         * css/CSSPrimitiveValue.cpp:
   83695         (WebCore::CSSPrimitiveValue::cssText): Build the result for the color types into a Vector<UChar>
   83696         and use appendNumber rather than the String::number in order to cut down on memory allocations.
   83697         * platform/text/PlatformString.h:
   83698         (WebCore::appendNumber): A helper function for formatting an unsigned character as a number
   83699         into a Vector<UChar>.
   83700 
   83701 2008-09-28  Sam Weinig  <sam (a] webkit.org>
   83702 
   83703         Reviewed by Anders Carlsson.
   83704 
   83705         Remove spurious call to lower().
   83706 
   83707         * css/MediaQueryEvaluator.cpp:
   83708         (WebCore::MediaQueryEvaluator):
   83709 
   83710 2008-09-28  Sam Weinig  <sam (a] webkit.org>
   83711 
   83712         Reviewed by Dan Bernstein.
   83713 
   83714         Use a CaseFoldingHash instead of calling lower on family strings.
   83715 
   83716         * css/CSSFontSelector.cpp:
   83717         (WebCore::CSSFontSelector::addFontFaceRule):
   83718         (WebCore::CSSFontSelector::getFontData):
   83719         * css/CSSFontSelector.h:
   83720 
   83721 2008-09-28  Timothy Hatcher  <timothy (a] apple.com>
   83722 
   83723         Remove the scrollIntoViewIfNeeded() call when drawing the
   83724         Inspector node highlight.
   83725 
   83726         <rdar://problem/6115804> Don't scroll when highlighting (21000)
   83727         https://bugs.webkit.org/show_bug.cgi?id=21000
   83728 
   83729         Reviewed by Dan Bernstein.
   83730 
   83731         * page/InspectorController.cpp:
   83732         (WebCore::InspectorController::drawNodeHighlight):
   83733 
   83734 2008-09-28  David Hyatt  <hyatt (a] apple.com>
   83735 
   83736         Fix crash when WebKit has no instantiated Scrollbars and the appearance prefs for scrollbars are
   83737         changed.
   83738 
   83739         Reviewed by Dan Bernstein
   83740 
   83741         * platform/mac/ScrollbarThemeMac.mm:
   83742         (+[ScrollbarPrefsObserver appearancePrefsChanged:]):
   83743 
   83744 2008-09-28  Timothy Hatcher  <timothy (a] apple.com>
   83745 
   83746         Clear the current search results in the Inspector when
   83747         the search query is less than 3 characters long. Incremental
   83748         searches only occur for 3 characters or longer, but deleting
   83749         under this limit would not clear the results unless the whole
   83750         query was deleted.
   83751 
   83752         https://bugs.webkit.org/show_bug.cgi?id=21196
   83753 
   83754         Reviewed by Dan Bernstein.
   83755 
   83756         * page/inspector/inspector.js:
   83757         (WebInspector.performSearch): Check for short queries in the
   83758         if statement that triggers the clear.
   83759 
   83760 2008-09-28  Dan Bernstein  <mitz (a] apple.com>
   83761 
   83762         Reviewed by Dave Hyatt.
   83763 
   83764         - fix <rdar://problem/6202962> "Tibetan Machine Uni" font does not work as a web font on Windows because TTLoadEmbeddedFont fails with E_NAMECHANGEFAILED
   83765 
   83766         * platform/graphics/win/FontCustomPlatformData.cpp:
   83767         (WebCore::EOTStream::EOTStream): Added overlayDst, overlaySrc and
   83768         overlayLength parameters.
   83769         (WebCore::EOTStream::read): Added code to overlay the
   83770         m_overlayLength bytes starting at m_overlayDst with the same number of
   83771         bytes from m_overlaySrc.
   83772         (WebCore::createFontCustomPlatformData): Changed to get overlay
   83773         parameters from getEOTHeader.
   83774         * platform/graphics/win/GetEOTHeader.cpp:
   83775         (WebCore::getEOTHeader): Added code to specify overlaying of the
   83776         family name with the prefix of the full name if they differ, because
   83777         that such a difference causes TTLoadEmbeddedFont to fail.
   83778         * platform/graphics/win/GetEOTHeader.h:
   83779 
   83780 2008-09-28  Alexey Proskuryakov  <ap (a] webkit.org>
   83781 
   83782         Reviewed by Eric Seidel.
   83783 
   83784         https://bugs.webkit.org/show_bug.cgi?id=20366
   83785         Reproducible test failure for editing/undo/undo-iframe-location-change.html
   83786 
   83787         * ChangeLog-2006-05-10: Added bug URLs for a fix that included this test.
   83788 
   83789 2008-09-28  Darin Adler  <darin (a] apple.com>
   83790 
   83791         Reviewed by Sam Weinig (except for a few comment and header tweaks).
   83792 
   83793         - https://bugs.webkit.org/show_bug.cgi?id=21158
   83794           reduce use of virtual functions in Node for speed
   83795 
   83796         Speeds up Dromaeo a bit less than 1%.
   83797 
   83798         * bindings/js/JSNamedNodesCollection.cpp: Include Element.h instead of
   83799         Node.h now that some inlines are in there.
   83800 
   83801         * dom/Attr.h: Override both the virtual and non-virtual name functions.
   83802 
   83803         * dom/ChildNodeList.cpp:
   83804         (WebCore::ChildNodeList::nodeMatches): Updated to take an Element.
   83805         * dom/ChildNodeList.h: Ditto.
   83806         * dom/ClassNodeList.cpp:
   83807         (WebCore::ClassNodeList::nodeMatches): Ditto.
   83808         * dom/ClassNodeList.h: Ditto.
   83809 
   83810         * dom/Document.h: Put the Node::isDocumentNode() function's inline
   83811         definition here where it can see the Document class definition.
   83812 
   83813         * dom/DynamicNodeList.cpp:
   83814         (WebCore::DynamicNodeList::length): Changed to pass an Element.
   83815         (WebCore::DynamicNodeList::itemForwardsFromCurrent): Ditto.
   83816         (WebCore::DynamicNodeList::itemBackwardsFromCurrent): Ditto.
   83817         (WebCore::DynamicNodeList::itemWithName): Ditto.
   83818         * dom/DynamicNodeList.h: Ditto.
   83819 
   83820         * dom/Element.cpp: Removed virtualHasTagName.
   83821         * dom/Element.h: Made localName, prefix, namespaceURI, and
   83822         styleForRenderer non-virtual. Added virtualPrefix, virtualLocalName,
   83823         virtualNamespaceURI, and removed virtualHasTagName. Put the
   83824         Node::hasTagName, Node::hasAttributes, and Node::attributes
   83825         functions' inline definitions here where they can see the Element
   83826         class definition.
   83827 
   83828         * dom/NameNodeList.cpp:
   83829         (WebCore::NameNodeList::nodeMatches): Updated to take an Element.
   83830         * dom/NameNodeList.h: Ditto.
   83831 
   83832         * dom/Node.cpp:
   83833         (WebCore::Node::virtualPrefix): Renamed from prefix.
   83834         (WebCore::Node::virtualLocalName): Renamed from localName.
   83835         (WebCore::Node::virtualNamespaceURI): Renamed from namespaceURI.
   83836         (WebCore::Node::styleForRenderer): Handle the Element case here.
   83837 
   83838         * dom/Node.h: Removed definition of hasTagName that calls virtual,
   83839         since we now have a non-virtual version. Made hasAttributes,
   83840         attributes, remove, localName, namespaceURI, prefix, isDocumentNode,
   83841         and styleForRenderer non-virtual. Added virtualPrefix,
   83842         virtualLocalName, and virtualNamespaceURI. Removed isMalformed
   83843         and setMalformed, which are used only on HTMLFormElement objects.
   83844 
   83845         * dom/TagNodeList.cpp:
   83846         (WebCore::TagNodeList::nodeMatches): Updated to take an Element.
   83847         * dom/TagNodeList.h: Ditto.
   83848 
   83849         * html/HTMLAnchorElement.cpp: Added a comment.
   83850         * html/HTMLFormControlElement.cpp: Ditto.
   83851 
   83852         * html/HTMLAnchorElement.h: Removed unused, unimplemented setTabIndex
   83853         function. Marked tabIndex function virtual explicitly for clarity.
   83854 
   83855         * html/HTMLAreaElement.h: Removed unused, unimplemented setTabIndex
   83856         function. Marked isFocusable function virtual explicitly for clarity.
   83857 
   83858         * html/HTMLElement.h: Marked tabIndex function virtual explicitly for
   83859         clarity.
   83860         * html/HTMLFormControlElement.h: Ditto.
   83861 
   83862         * html/HTMLFormElement.h: Made isMalformed non-virtual.
   83863 
   83864         * html/HTMLParser.cpp:
   83865         (WebCore::HTMLParser::handleError): Use the already-cast-to-HTMLElement
   83866         pointer to call localName since that one does not need to call a virtual
   83867         function.
   83868 
   83869         * rendering/RenderBlock.cpp:
   83870         (WebCore::RenderBlock::layoutBlock): Cast to HTMLFormElement before
   83871         calling isMalformed. We already did a tag name check so we know it's
   83872         an HTMLFormELement.
   83873 
   83874         * xml/XPathUtil.cpp:
   83875         (WebCore::XPath::isValidContextNode): Rewrote to not make so many calls
   83876         to nodeType(), since it's a virtual function.
   83877 
   83878 2008-09-28  David Hyatt  <hyatt (a] apple.com>
   83879 
   83880         Make frameRectsChanged() cross-platform on ScrollView.
   83881 
   83882         Reviewed by Oliver Hunt
   83883 
   83884         * platform/ScrollView.cpp:
   83885         (WebCore::ScrollView::frameRectsChanged):
   83886         * platform/ScrollView.h:
   83887         * platform/gtk/ScrollViewGtk.cpp:
   83888         * platform/qt/ScrollViewQt.cpp:
   83889         * platform/win/ScrollViewWin.cpp:
   83890         * platform/wx/ScrollViewWx.cpp:
   83891 
   83892 2008-09-28  Oliver Hunt  <oliver (a] apple.com>
   83893 
   83894         Reviewed by Maciej Stachowiak.
   83895 
   83896         Bug 21141: REGRESSION: Exception messages for user entered commands are poor
   83897         <https://bugs.webkit.org/show_bug.cgi?id=21141>
   83898 
   83899         The bug repsonsible for this was the the JSInspectedObjectWrapper instances
   83900         were not initialising their StructureID's to indicate that the wrapper
   83901         overrides hasInstance, etc.  The solution is simply to use the createStructureID
   83902         helper on JSQuarantinedObjectWrapper to create a correct StructureID.
   83903 
   83904         * bindings/js/JSInspectedObjectWrapper.cpp:
   83905         (WebCore::JSInspectedObjectWrapper::wrap):
   83906 
   83907 2008-09-28  David Hyatt  <hyatt (a] apple.com>
   83908 
   83909         Make sure pixel wheel scrolls (formerly "continuous" wheel events) send deltas to DOM wheel events in
   83910         terms of lines.
   83911 
   83912         Reviewed by Oliver Hunt
   83913 
   83914         * dom/EventTargetNode.cpp:
   83915         (WebCore::EventTargetNode::dispatchWheelEvent):
   83916 
   83917 2008-09-28  David Hyatt  <hyatt (a] apple.com>
   83918 
   83919         https://bugs.webkit.org/show_bug.cgi?id=21191
   83920 
   83921         Rework mouse wheeling significantly to make the platform event less messy and to enable wheelEvent
   83922         on ScrollView to be cross-platform.
   83923 
   83924         Give the wheel event a concept of granularity (pixel, line or page).  What used to be called continuous
   83925         events are now pixel wheel events.
   83926 
   83927         Page scrolling as implemented in bug 17589 was completely broken.  It had the following problems:
   83928         (1) Page scrolling has been corrected to be properly detected (on Windows
   83929         page wheeling is only done in the vertical direction and it is keyed off a special return value of -1).  The
   83930         old code had some bizarre incorrect heuristic for "guessing" that you should page scroll and also thought
   83931         you could page scroll horizontally.
   83932         (2) Page scrolling a layer used the enclosing ScrollView's width/height instead of the layer's width/height.
   83933         This caused the scroll amount for page scrolling to be way too large on layers.
   83934 
   83935         Bug 17589 got the default horizontal scrolling value wrong.  It assumed 1, when the Vista default is 3.
   83936 
   83937         Incorporate WebCore's line multiplier right into the deltas of the event.  This eliminates the need
   83938         for separate multiplier fields (or for the need to ask if you're looking for line sensitivity).
   83939 
   83940         Reviewed by Oliver Hunt
   83941 
   83942         * editing/EditorCommand.cpp:
   83943         (WebCore::verticalScrollDistance):
   83944         * page/EventHandler.cpp:
   83945         (WebCore::scrollAndAcceptEvent):
   83946         (WebCore::EventHandler::handleWheelEvent):
   83947         * platform/PlatformWheelEvent.h:
   83948         (WebCore::):
   83949         (WebCore::PlatformWheelEvent::pos):
   83950         (WebCore::PlatformWheelEvent::globalPos):
   83951         (WebCore::PlatformWheelEvent::deltaX):
   83952         (WebCore::PlatformWheelEvent::deltaY):
   83953         (WebCore::PlatformWheelEvent::granularity):
   83954         (WebCore::PlatformWheelEvent::x):
   83955         (WebCore::PlatformWheelEvent::globalX):
   83956         (WebCore::PlatformWheelEvent::ignore):
   83957         (WebCore::PlatformWheelEvent::horizontalLineMultiplier):
   83958         (WebCore::PlatformWheelEvent::verticalLineMultiplier):
   83959         * platform/ScrollView.cpp:
   83960         (WebCore::ScrollView::wheelEvent):
   83961         * platform/Scrollbar.h:
   83962         * platform/gtk/ScrollViewGtk.cpp:
   83963         (WebCore::ScrollView::updateScrollbars):
   83964         * platform/gtk/WheelEventGtk.cpp:
   83965         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   83966         * platform/mac/ScrollViewMac.mm:
   83967         * platform/mac/WheelEventMac.mm:
   83968         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   83969         * platform/qt/ScrollViewQt.cpp:
   83970         (WebCore::ScrollView::updateScrollbars):
   83971         * platform/qt/WheelEventQt.cpp:
   83972         * platform/win/ScrollViewWin.cpp:
   83973         (WebCore::ScrollView::updateScrollbars):
   83974         * platform/win/WheelEventWin.cpp:
   83975         (WebCore::PlatformWheelEvent::horizontalLineMultiplier):
   83976         (WebCore::PlatformWheelEvent::verticalLineMultiplier):
   83977         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   83978         * platform/wx/ScrollViewWx.cpp:
   83979         (WebCore::ScrollView::ScrollViewPrivate::OnScrollWinEvents):
   83980         (WebCore::ScrollView::wheelEvent):
   83981         * rendering/RenderLayer.cpp:
   83982         (WebCore::RenderLayer::updateScrollInfoAfterLayout):
   83983 
   83984 2008-09-27  Eric Carlson  <eric.carlson (a] apple.com>
   83985 
   83986         Reviewed by Sam Weinig.
   83987 
   83988         fix https://bugs.webkit.org/show_bug.cgi?id=20994
   83989         <rdar://problem/6171023> HTMLVideoElement width and height attributes are now unsigned
   83990 
   83991         HTML5 spec says HTMLVideoElement width and height attributes should be unsigned. Convert
   83992         all unsigned media attributes from string with toUInt() instead of toInt().
   83993 
   83994         * html/HTMLMediaElement.cpp:
   83995         (WebCore::HTMLMediaElement::playCount): convert from attribute with toUInt().
   83996 
   83997         * html/HTMLVideoElement.cpp:
   83998         (WebCore::HTMLVideoElement::videoWidth):
   83999         (WebCore::HTMLVideoElement::videoHeight): return unsigned to match idl.
   84000         (WebCore::HTMLVideoElement::width): convert from attribute with toUInt() and return
   84001           unsigned value.
   84002         (WebCore::HTMLVideoElement::height): Ditto.
   84003         (WebCore::HTMLVideoElement::setWidth): take unsigned value.
   84004         (WebCore::HTMLVideoElement::setHeight): Ditto.
   84005 
   84006         * html/HTMLVideoElement.h: width, height, videoWidth, and videoHeight are unsigned.
   84007 
   84008         * html/HTMLVideoElement.idl: make width and height unsigned to match HTML5 spec.
   84009 
   84010 2008-09-27  Timothy Hatcher  <timothy (a] apple.com>
   84011 
   84012         Fixes an exception when typing a command in the Console.
   84013 
   84014         Reviewed by Oliver Hunt.
   84015 
   84016         * page/inspector/Console.js:
   84017         (WebInspector.Console.prototype.addMessage): Null check
   84018         this.previosMessage.
   84019 
   84020 2008-09-27  Timothy Hatcher  <timothy (a] apple.com>
   84021 
   84022         Fixes a bug where the Profiles panel sidebar would be empty
   84023         after closing and reopening the Web Inspector.
   84024 
   84025         https://bugs.webkit.org/show_bug.cgi?id=21179
   84026 
   84027         Reviewed by Sam Weinig.
   84028 
   84029         * page/inspector/ProfilesPanel.js:
   84030         (WebInspector.ProfilesPanel.prototype.reset): Don't call
   84031         populateInterface, it is called automatically.
   84032         (WebInspector.ProfilesPanel.prototype._populateProfiles):
   84033         Return early if the sidebar is already populated.
   84034 
   84035 2008-09-27  Dave Hyatt  <hyatt (a] apple.com>
   84036 
   84037         Bug 21190.  The line scroll amount on Windows is way too small.  A patch for bug 17589 for wheel sensitivity
   84038         incorrectly applied the tinier wheel step delta (unmultiplied) to line scrolling.  Line scrolling with the
   84039         scrollbar has nothing to do with mouse wheeling.  This patch reverts the scrollbars to use the same line
   84040         step as other platforms while leaving the wheel delta alone for use with wheel scrolling.
   84041 
   84042         There was a lot wrong with 17589, so more patches will be coming to deal with the fallout of this patch
   84043         (which should never have landed in the first place).
   84044 
   84045         Reviewed by Tim Hatcher, Sam Weinig
   84046 
   84047         * platform/win/ScrollViewWin.cpp:
   84048         (WebCore::adjustDeltaForPageScrollMode):
   84049         (WebCore::ScrollView::updateScrollbars):
   84050         (WebCore::ScrollView::wheelEvent):
   84051 
   84052 2008-09-27  David Hyatt  <hyatt (a] apple.com>
   84053 
   84054         Make the scrollbarUnderMouse method cross-platform.
   84055 
   84056         Reviewed by Sam Weinig
   84057 
   84058         * platform/ScrollView.cpp:
   84059         (WebCore::ScrollView::scrollbarUnderMouse):
   84060         * platform/gtk/ScrollViewGtk.cpp:
   84061         * platform/mac/ScrollViewMac.mm:
   84062         * platform/qt/ScrollViewQt.cpp:
   84063         * platform/win/ScrollViewWin.cpp:
   84064         * platform/wx/ScrollViewWx.cpp:
   84065 
   84066 2008-09-27  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   84067 
   84068         Gtk+ build fix.
   84069 
   84070         * platform/gtk/ScrollViewGtk.cpp:
   84071         (WebCore::ScrollView::ScrollViewPrivate::valueChanged):
   84072 
   84073 2008-09-27  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   84074 
   84075         Reviewed by Holger Freyther.
   84076 
   84077         https://bugs.webkit.org/show_bug.cgi?id=20287
   84078         [Gtk] disable plugins for gtk/directfb target
   84079 
   84080         Introduce WTF_PLATFORM_X11 for X11 builds.
   84081         Also use target-specific packages when building the port
   84082 
   84083         * platform/gtk/PlatformScreenGtk.cpp:
   84084         * plugins/gtk/PluginViewGtk.cpp:
   84085         (WebCore::PluginView::updatePluginWidget):
   84086         (WebCore::PluginView::getValueStatic):
   84087         (WebCore::PluginView::getValue):
   84088         (WebCore::PluginView::init):
   84089 
   84090 2008-09-27  David Hyatt  <hyatt (a] apple.com>
   84091 
   84092         https://bugs.webkit.org/show_bug.cgi?id=21188
   84093 
   84094         Make scrollbar suppression and resizer avoidance cross-platform.
   84095 
   84096         Reviewed by Anders
   84097 
   84098         * loader/FrameLoader.cpp:
   84099         (WebCore::FrameLoader::transitionToCommitted):
   84100         * page/FrameView.cpp:
   84101         (WebCore::FrameView::resetScrollbars):
   84102         (WebCore::FrameView::clear):
   84103         (WebCore::FrameView::layout):
   84104         (WebCore::FrameView::restoreScrollbar):
   84105         (WebCore::FrameView::windowResizerRect):
   84106         * page/FrameView.h:
   84107         * platform/ScrollView.cpp:
   84108         (WebCore::ScrollView::init):
   84109         (WebCore::ScrollView::resizerOverlapsContent):
   84110         (WebCore::ScrollView::adjustScrollbarsAvoidingResizerCount):
   84111         (WebCore::ScrollView::setParent):
   84112         (WebCore::ScrollView::setScrollbarsSuppressed):
   84113         (WebCore::ScrollView::platformSetScrollbarsSuppressed):
   84114         * platform/ScrollView.h:
   84115         (WebCore::ScrollView::scrollbarsSuppressed):
   84116         (WebCore::ScrollView::windowResizerRect):
   84117         * platform/Scrollbar.cpp:
   84118         (WebCore::Scrollbar::setFrameRect):
   84119         (WebCore::Scrollbar::setParent):
   84120         * platform/gtk/ScrollViewGtk.cpp:
   84121         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
   84122         (WebCore::ScrollView::ScrollViewPrivate::adjustmentChanged):
   84123         (WebCore::ScrollView::updateScrollbars):
   84124         (WebCore::ScrollView::paint):
   84125         * platform/mac/ScrollViewMac.mm:
   84126         (WebCore::ScrollView::ScrollView):
   84127         (WebCore::ScrollView::~ScrollView):
   84128         (WebCore::ScrollView::platformSetScrollbarsSuppressed):
   84129         (WebCore::ScrollView::setScrollPosition):
   84130         * platform/qt/ScrollViewQt.cpp:
   84131         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
   84132         (WebCore::ScrollView::ScrollViewPrivate::valueChanged):
   84133         (WebCore::ScrollView::frameRectsChanged):
   84134         (WebCore::ScrollView::updateScrollbars):
   84135         (WebCore::ScrollView::paint):
   84136         * platform/win/ScrollViewWin.cpp:
   84137         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
   84138         (WebCore::ScrollView::ScrollViewPrivate::valueChanged):
   84139         (WebCore::ScrollView::updateScrollbars):
   84140         (WebCore::ScrollView::paint):
   84141         * platform/wx/ScrollViewWx.cpp:
   84142         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
   84143 
   84144 2008-09-27  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   84145 
   84146         Rubber-stamped by Anders Carlsson.
   84147 
   84148         Compile fix.
   84149 
   84150         * plugins/PluginView.cpp:
   84151         (WebCore::PluginView::load):
   84152 
   84153 2008-09-27  Mark Rowe  <mrowe (a] apple.com>
   84154 
   84155         Rubber-stamped by Sam Weinig.
   84156 
   84157         Fix <https://bugs.webkit.org/show_bug.cgi?id=21184>.
   84158         Bug 21184: REGRESSION: Reproducible crash below StringImpl::hash while running editing/deleting/5408255.html
   84159 
   84160         Remove an assertion that was incorrect and that if made correct would have duplicated a check that occurred earlier in the function.
   84161 
   84162         * loader/CachedResource.cpp:
   84163         (WebCore::CachedResource::~CachedResource):
   84164 
   84165 2008-09-27  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   84166 
   84167         Reviewed by Simon Hausmann.
   84168 
   84169         [qt] Use QImageReader to figure out which image formats are supported
   84170         - Qt can have many different plugins for different image formats. Instead
   84171         of checking only for a few in WebCore use Qt to determine if this data
   84172         can be treated as an image.
   84173 
   84174         * platform/graphics/qt/ImageSourceQt.cpp:
   84175         (WebCore::canHandleImage):
   84176         (WebCore::createDecoder):
   84177 
   84178 2008-09-27  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   84179 
   84180 
   84181         [qt] Clean the pattern code
   84182         - Use save/restore on the painter after manipulating the
   84183         pen/brush
   84184         - Make the context and object null checking consistent. CG is using
   84185         the object unconditionally so the Qt webkit platform can do the
   84186         same.
   84187         - Move code below the early exit. Only use the m_ownerElement before
   84188         the early exit as the CG code is doing it.
   84189 
   84190         * svg/graphics/SVGPaintServerPattern.h:
   84191         * svg/graphics/qt/SVGPaintServerPatternQt.cpp:
   84192         (WebCore::SVGPaintServerPattern::setup):
   84193         (WebCore::SVGPaintServerPattern::teardown):
   84194 
   84195 2008-09-27  Keishi Hattori  <casey.hattori (a] gmail.com>
   84196 
   84197         Added support for console.trace.
   84198 
   84199         https://bugs.webkit.org/show_bug.cgi?id=19157
   84200 
   84201         Reviewed by Kevin McCullough and Tim Hatcher.
   84202 
   84203         * bindings/js/JSConsoleCustom.cpp:
   84204         (WebCore::JSConsole::trace):
   84205         * page/Console.cpp:
   84206         (WebCore::Console::trace): Calls Machine::retrieveCaller to
   84207         get a stack trace.
   84208         * page/Console.h:
   84209         (WebCore::): Added TraceMessageLevel.
   84210         * page/Console.idl: Added console.trace.
   84211         * page/inspector/Console.js:
   84212         (ConsoleMessage): Added case for TraceMessageLevel.
   84213 
   84214 2008-09-27  Anders Carlsson  <andersca (a] apple.com>
   84215 
   84216         Reviewed by Sam Weinig.
   84217 
   84218         https://bugs.webkit.org/show_bug.cgi?id=21178
   84219         <rdar://problem/6248651>
   84220 
   84221         Check if the plug-in is allowed to load the resource. This matches Firefox.
   84222 
   84223         Test: http/tests/plugins/local-geturl-from-remote.html
   84224 
   84225         * plugins/PluginView.cpp:
   84226         (WebCore::PluginView::load):
   84227 
   84228 2008-09-22  Dirk Schulze  <vbs85 (a] gmx.de>
   84229 
   84230         Reviewed by Eric Seidel.
   84231 
   84232         Added SVG pattern support to Qt.
   84233 
   84234         [Qt] SVG patterns are missing
   84235         https://bugs.webkit.org/show_bug.cgi?id=20973
   84236 
   84237         * svg/graphics/qt/SVGPaintServerPatternQt.cpp:
   84238         (WebCore::SVGPaintServerPattern::setup):
   84239 
   84240 2008-09-27  Keishi Hattori  <casey.hattori (a] gmail.com>
   84241 
   84242         Fixed a bug in the JS syntax highlighter with multiple line tokens.
   84243 
   84244         https://bugs.webkit.org/show_bug.cgi?id=21171
   84245 
   84246         Reviewed by Tim Hatcher.
   84247 
   84248         * page/inspector/SourceFrame.js:
   84249         (syntaxHighlightJavascriptLine): Initialize previousMatchLength.
   84250 
   84251 2008-09-27  Timothy Hatcher  <timothy (a] apple.com>
   84252 
   84253         Change searching in the Profiles panel to not match the
   84254         Self and Total columns when there are no units. The only
   84255         column that is matched for unitless number searches is
   84256         now the Calls column.
   84257 
   84258         https://bugs.webkit.org/show_bug.cgi?id=21169
   84259 
   84260         Reviewed by Sam Weinig.
   84261 
   84262         * page/inspector/ProfileView.js:
   84263         (WebInspector.ProfileView.prototype.performSearch):
   84264 
   84265 2008-09-27  David Hyatt  <hyatt (a] apple.com>
   84266 
   84267         Rename boundsGeometry -> boundsRect.  Rename geometryChanged -> frameRectsChanged.
   84268 
   84269         Reviewed by Sam Weinig
   84270 
   84271         * platform/ScrollView.h:
   84272         * platform/Widget.h:
   84273         (WebCore::Widget::boundsRect):
   84274         (WebCore::Widget::invalidate):
   84275         (WebCore::Widget::frameRectsChanged):
   84276         * platform/gtk/ScrollViewGtk.cpp:
   84277         (WebCore::ScrollViewScrollbar::frameRectsChanged):
   84278         (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore):
   84279         (WebCore::ScrollView::setFrameRect):
   84280         (WebCore::ScrollView::updateScrollbars):
   84281         (WebCore::ScrollView::frameRectsChanged):
   84282         * platform/gtk/ScrollbarGtk.cpp:
   84283         (ScrollbarGtk::setFrameRect):
   84284         (ScrollbarGtk::frameRectsChanged):
   84285         * platform/gtk/ScrollbarGtk.h:
   84286         * platform/gtk/WidgetGtk.cpp:
   84287         * platform/qt/ScrollViewQt.cpp:
   84288         (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore):
   84289         (WebCore::ScrollView::setFrameRect):
   84290         (WebCore::ScrollView::frameRectsChanged):
   84291         (WebCore::ScrollView::updateScrollbars):
   84292         * platform/win/ScrollViewWin.cpp:
   84293         (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore):
   84294         (WebCore::ScrollView::setFrameRect):
   84295         (WebCore::ScrollView::updateScrollbars):
   84296         (WebCore::ScrollView::frameRectsChanged):
   84297         * plugins/PluginView.cpp:
   84298         (WebCore::PluginView::frameRectsChanged):
   84299         * plugins/PluginView.h:
   84300 
   84301 2008-09-27  Simon Hausmann  <hausmann (a] webkit.org>
   84302 
   84303         Refix the previous build fix to compile on non-Qt platforms, too.
   84304 
   84305         * WebCore.pro: Don't pass -i to create_hashtable, added missing -n
   84306         WebCore to generate the PrototypeTable in the WebCore namespace
   84307         * bindings/js/JSEventTargetBase.h: Revert previous fix, the Prototype
   84308         table remains in the Webcore namespace
   84309         (WebCore::JSEventTargetBasePrototype::getOwnPropertySlot):
   84310 
   84311 2008-09-27  Simon Hausmann  <hausmann (a] webkit.org>
   84312 
   84313         Fix compilation with gcc 4.3 (probably > 4.0)
   84314 
   84315         * bindings/js/JSDOMWindowBase.cpp: Don't define static property
   84316         get/put functions inside the WebCore namespace.
   84317         * bindings/js/JSEventTargetBase.cpp: Ditto.
   84318         * bindings/js/JSEventTargetNode.cpp: Ditto.
   84319         * bindings/js/JSEventTargetSVGElementInstance.cpp: Ditto.
   84320         * bindings/js/JSEventTargetBase.h: Forward declare
   84321         JSEventTargetPrototypeTable in the JSC namespace as the lut.h file
   84322         defines it in the JSC namespace.
   84323         (WebCore::JSEventTargetBasePrototype::getOwnPropertySlot): Add JSC::
   84324         prefix for PrototypeTable symbol.
   84325 
   84326 2008-09-27  David Hyatt  <hyatt (a] apple.com>
   84327 
   84328         Rename frameGeometry to frameRect.  Rename setFrameGeometry to setFrameRect.
   84329 
   84330         Reviewed by Dan Bernstein
   84331 
   84332         * WebCore.base.exp:
   84333         * page/FrameView.cpp:
   84334         (WebCore::FrameView::FrameView):
   84335         (WebCore::FrameView::updateControlTints):
   84336         * platform/ScrollView.h:
   84337         * platform/Scrollbar.cpp:
   84338         (WebCore::Scrollbar::Scrollbar):
   84339         (WebCore::Scrollbar::paint):
   84340         (WebCore::Scrollbar::setFrameRect):
   84341         * platform/Scrollbar.h:
   84342         * platform/ScrollbarThemeComposite.cpp:
   84343         (WebCore::ScrollbarThemeComposite::paint):
   84344         * platform/Widget.h:
   84345         (WebCore::Widget::x):
   84346         (WebCore::Widget::y):
   84347         (WebCore::Widget::width):
   84348         (WebCore::Widget::height):
   84349         (WebCore::Widget::size):
   84350         (WebCore::Widget::pos):
   84351         (WebCore::Widget::resize):
   84352         (WebCore::Widget::move):
   84353         * platform/gtk/ScrollViewGtk.cpp:
   84354         (WebCore::ScrollViewScrollbar::geometryChanged):
   84355         (WebCore::ScrollView::update):
   84356         (WebCore::ScrollView::setFrameRect):
   84357         (WebCore::ScrollView::updateScrollbars):
   84358         (WebCore::ScrollView::scrollbarUnderMouse):
   84359         (WebCore::ScrollView::paint):
   84360         * platform/gtk/ScrollbarGtk.cpp:
   84361         (ScrollbarGtk::setFrameRect):
   84362         (ScrollbarGtk::geometryChanged):
   84363         * platform/gtk/ScrollbarGtk.h:
   84364         * platform/gtk/WidgetGtk.cpp:
   84365         (WebCore::Widget::frameRect):
   84366         (WebCore::Widget::setFrameRect):
   84367         * platform/mac/ScrollbarThemeMac.mm:
   84368         (WebCore::ScrollbarThemeMac::trackRect):
   84369         (WebCore::ScrollbarThemeMac::paint):
   84370         * platform/mac/WidgetMac.mm:
   84371         (WebCore::Widget::frameRect):
   84372         (WebCore::Widget::setFrameRect):
   84373         * platform/qt/ScrollViewQt.cpp:
   84374         (WebCore::ScrollView::setFrameRect):
   84375         (WebCore::ScrollView::updateScrollbars):
   84376         (WebCore::ScrollView::scrollbarUnderMouse):
   84377         (WebCore::ScrollView::paint):
   84378         * platform/qt/ScrollbarThemeQt.cpp:
   84379         (WebCore::styleOptionSlider):
   84380         * platform/qt/WidgetQt.cpp:
   84381         (WebCore::Widget::frameRect):
   84382         (WebCore::Widget::setFrameRect):
   84383         * platform/win/PopupMenuWin.cpp:
   84384         (WebCore::PopupMenu::invalidateItem):
   84385         (WebCore::PopupMenu::valueChanged):
   84386         (WebCore::PopupWndProc):
   84387         * platform/win/ScrollViewWin.cpp:
   84388         (WebCore::ScrollView::setFrameRect):
   84389         (WebCore::ScrollView::updateScrollbars):
   84390         (WebCore::ScrollView::scrollbarUnderMouse):
   84391         (WebCore::ScrollView::paint):
   84392         * platform/win/ScrollbarThemeSafari.cpp:
   84393         (WebCore::ScrollbarThemeSafari::trackRect):
   84394         * platform/win/WidgetWin.cpp:
   84395         (WebCore::Widget::frameRect):
   84396         (WebCore::Widget::setFrameRect):
   84397         * platform/wx/WidgetWx.cpp:
   84398         (WebCore::Widget::frameRect):
   84399         (WebCore::Widget::setFrameRect):
   84400         * plugins/PluginView.cpp:
   84401         (WebCore::PluginView::setFrameRect):
   84402         * plugins/PluginView.h:
   84403         * plugins/gtk/PluginViewGtk.cpp:
   84404         (WebCore::PluginView::updatePluginWidget):
   84405         (WebCore::PluginView::paint):
   84406         (WebCore::PluginView::init):
   84407         * plugins/qt/PluginViewQt.cpp:
   84408         (WebCore::PluginView::updatePluginWidget):
   84409         (WebCore::PluginView::init):
   84410         * plugins/win/PluginViewWin.cpp:
   84411         (WebCore::PluginView::updatePluginWidget):
   84412         (WebCore::PluginView::paintMissingPluginIcon):
   84413         (WebCore::PluginView::paint):
   84414         (WebCore::PluginView::init):
   84415         * rendering/RenderLayer.cpp:
   84416         (WebCore::RenderLayer::positionOverflowControls):
   84417         * rendering/RenderListBox.cpp:
   84418         (WebCore::RenderListBox::paintScrollbar):
   84419         * rendering/RenderPart.cpp:
   84420         (WebCore::RenderPart::updateWidgetPosition):
   84421         * rendering/RenderWidget.cpp:
   84422         (WebCore::RenderWidget::setWidgetGeometry):
   84423         (WebCore::RenderWidget::updateWidgetPosition):
   84424 
   84425 2008-09-27  David Hyatt  <hyatt (a] apple.com>
   84426 
   84427         <rdar://problem/6252041> REGRESSION (4dp-TOT): Crash in Widget::platformWidget() when closing a PDF
   84428 
   84429         This crash was lurking for a while and basically got exposed by my changes to visibleContentRect() to
   84430         access an actual member variable.
   84431 
   84432         Reviewed by Dan Bernstein
   84433 
   84434         * page/FocusController.cpp:
   84435         (WebCore::FocusController::setFocusedFrame):
   84436 
   84437 2008-09-27  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   84438 
   84439         Attempt to fix QT Build. Not reviewed.
   84440 
   84441         * WebCore.pro: add -n WebCore parameter to create_hash_table
   84442 
   84443 2008-09-26  Gwenole Beauchesne  <gbeauchesne (a] splitted-desktop.org>
   84444 
   84445         Reviewed by Eric Seidel.
   84446 
   84447         http://bugs.webkit.org/show_bug.cgi?id=18905
   84448         [GTK] Fix build with older pango (1.14.8)
   84449 
   84450         * platform/graphics/gtk/FontGtk.cpp:
   84451         * platform/gtk/Language.cpp:
   84452         (_pango_get_lc_ctype):
   84453         (pango_language_get_default):
   84454 
   84455 2008-09-26  David Hyatt  <hyatt (a] apple.com>
   84456 
   84457         https://bugs.webkit.org/show_bug.cgi?id=21168
   84458 
   84459         Make contentsToWindow/windowToContents cross-platform.
   84460 
   84461         Reviewed by Oliver Hunt
   84462 
   84463         * platform/ScrollView.cpp:
   84464         (WebCore::ScrollView::windowToContents):
   84465         (WebCore::ScrollView::contentsToWindow):
   84466         * platform/ScrollView.h:
   84467         * platform/gtk/ScrollViewGtk.cpp:
   84468         * platform/mac/ScrollViewMac.mm:
   84469         * platform/qt/ScrollViewQt.cpp:
   84470         * platform/win/ScrollViewWin.cpp:
   84471         * platform/wx/ScrollViewWx.cpp:
   84472 
   84473 2008-09-26  Sam Weinig  <sam (a] webkit.org>
   84474 
   84475         GTK build fix.
   84476 
   84477         * GNUmakefile.am:
   84478 
   84479 2008-09-26  David Hyatt  <hyatt (a] apple.com>
   84480 
   84481         Eliminate shouldUpdateWhileOffscreen from ScrollView.  Make the concept of not invalidating while
   84482         offscreen cross-platform.  Rename the inWindow method to isOffscreen (which flips the boolean), since that
   84483         more clearly conveys the intent of the method.  Make isOffscreen also check NSWindow visibility on Mac.
   84484 
   84485         Reviewed by Oliver Hunt
   84486 
   84487         * page/FrameView.cpp:
   84488         (WebCore::FrameView::repaintContentRectangle):
   84489         * page/FrameView.h:
   84490         * platform/ScrollView.h:
   84491         * platform/gtk/ScrollViewGtk.cpp:
   84492         (WebCore::ScrollView::isOffscreen):
   84493         * platform/mac/ScrollViewMac.mm:
   84494         (WebCore::ScrollView::updateContents):
   84495         (WebCore::ScrollView::isOffscreen):
   84496         * platform/qt/ScrollViewQt.cpp:
   84497         (WebCore::ScrollView::isOffscreen):
   84498         * platform/win/ScrollViewWin.cpp:
   84499         (WebCore::ScrollView::isOffscreen):
   84500         * platform/wx/ScrollViewWx.cpp:
   84501         (WebCore::ScrollView::isOffscreen):
   84502         * rendering/RenderObject.cpp:
   84503         (WebCore::RenderObject::willRenderImage):
   84504 
   84505 2008-09-26  David Hyatt  <hyatt (a] apple.com>
   84506 
   84507         https://bugs.webkit.org/show_bug.cgi?id=21164
   84508 
   84509         Rework concept of allowsScrolling/setAllowsScrolling to be cross-platform.
   84510 
   84511         Reviewed by Sam Weinig
   84512 
   84513         * WebCore.base.exp:
   84514         * page/FrameView.cpp:
   84515         (WebCore::FrameView::setAllowsScrolling):
   84516         * page/FrameView.h:
   84517         * platform/ScrollView.cpp:
   84518         (WebCore::ScrollView::setAllowsScrolling):
   84519         * platform/ScrollView.h:
   84520         (WebCore::ScrollView::allowsScrolling):
   84521         * platform/win/ScrollViewWin.cpp:
   84522         (WebCore::ScrollView::wheelEvent):
   84523 
   84524 2008-09-26  Kevin Ollivier  <kevino (a] theolliviers.com>
   84525 
   84526         wx build fixes after Widget/ScrollView changes.
   84527 
   84528         * platform/wx/PopupMenuWx.cpp:
   84529         (WebCore::PopupMenu::show):
   84530         * platform/wx/ScrollViewWx.cpp:
   84531         (WebCore::ScrollView::platformSetContentsSize):
   84532         (WebCore::ScrollView::platformSetScrollbarModes):
   84533         (WebCore::ScrollView::wheelEvent):
   84534         * platform/wx/TemporaryLinkStubs.cpp:
   84535         * platform/wx/WidgetWx.cpp:
   84536         (WebCore::Widget::containingWindow):
   84537 
   84538 2008-09-26  Timothy Hatcher  <timothy (a] apple.com>
   84539 
   84540         Allow searching for paths by always performing the
   84541         three search methods in the Elements panel and not
   84542         assume a search with a "/" is a XPath query.
   84543 
   84544         https://bugs.webkit.org/show_bug.cgi?id=21159
   84545 
   84546         Reviewed by Geoff Garen.
   84547 
   84548         * page/inspector/ElementsPanel.js:
   84549         (WebInspector.ElementsPanel.prototype.performSearch):
   84550 
   84551 2008-09-26  Sam Weinig  <sam (a] webkit.org>
   84552 
   84553         Reviewed by Darin Adler.
   84554 
   84555         Patch for https://bugs.webkit.org/show_bug.cgi?id=21152
   84556         Speedup static property get/put
   84557 
   84558         * DerivedSources.make:
   84559         * GNUmakefile.am:
   84560         * WebCore.pro:
   84561         * WebCore.vcproj/WebCore.vcproj:
   84562         * WebCore.xcodeproj/project.pbxproj:
   84563         * bindings/js/JSDOMBinding.cpp:
   84564         * bindings/js/JSDOMBinding.h:
   84565         * bindings/js/JSDOMWindowBase.cpp:
   84566         (WebCore::getDOMConstructor):
   84567         (WebCore::jsDOMWindowBaseCrypto):
   84568         (WebCore::jsDOMWindowBaseEvent):
   84569         (WebCore::jsDOMWindowBaseImage):
   84570         (WebCore::jsDOMWindowBaseMessageChannel):
   84571         (WebCore::jsDOMWindowBaseOption):
   84572         (WebCore::jsDOMWindowBaseXMLHttpRequest):
   84573         (WebCore::jsDOMWindowBaseAudio):
   84574         (WebCore::jsDOMWindowBaseXSLTProcessor):
   84575         (WebCore::jsDOMWindowBaseOnabort):
   84576         (WebCore::jsDOMWindowBaseOnblur):
   84577         (WebCore::jsDOMWindowBaseOnchange):
   84578         (WebCore::jsDOMWindowBaseOnclick):
   84579         (WebCore::jsDOMWindowBaseOndblclick):
   84580         (WebCore::jsDOMWindowBaseOnerror):
   84581         (WebCore::jsDOMWindowBaseOnfocus):
   84582         (WebCore::jsDOMWindowBaseOnkeydown):
   84583         (WebCore::jsDOMWindowBaseOnkeypress):
   84584         (WebCore::jsDOMWindowBaseOnkeyup):
   84585         (WebCore::jsDOMWindowBaseOnload):
   84586         (WebCore::jsDOMWindowBaseOnmousedown):
   84587         (WebCore::jsDOMWindowBaseOnmousemove):
   84588         (WebCore::jsDOMWindowBaseOnmouseout):
   84589         (WebCore::jsDOMWindowBaseOnmouseover):
   84590         (WebCore::jsDOMWindowBaseOnmouseup):
   84591         (WebCore::jsDOMWindowBaseOnMouseWheel):
   84592         (WebCore::jsDOMWindowBaseOnreset):
   84593         (WebCore::jsDOMWindowBaseOnresize):
   84594         (WebCore::jsDOMWindowBaseOnscroll):
   84595         (WebCore::jsDOMWindowBaseOnsearch):
   84596         (WebCore::jsDOMWindowBaseOnselect):
   84597         (WebCore::jsDOMWindowBaseOnsubmit):
   84598         (WebCore::jsDOMWindowBaseOnbeforeunload):
   84599         (WebCore::jsDOMWindowBaseOnunload):
   84600         (WebCore::jsDOMWindowBaseOnWebKitAnimationStart):
   84601         (WebCore::jsDOMWindowBaseOnWebKitAnimationIteration):
   84602         (WebCore::jsDOMWindowBaseOnWebKitAnimationEnd):
   84603         (WebCore::jsDOMWindowBaseOnWebKitTransitionEnd):
   84604         (WebCore::JSDOMWindowBase::getOwnPropertySlot):
   84605         (WebCore::JSDOMWindowBase::put):
   84606         (WebCore::setJSDOMWindowBaseOnabort):
   84607         (WebCore::setJSDOMWindowBaseOnblur):
   84608         (WebCore::setJSDOMWindowBaseOnchange):
   84609         (WebCore::setJSDOMWindowBaseOnclick):
   84610         (WebCore::setJSDOMWindowBaseOndblclick):
   84611         (WebCore::setJSDOMWindowBaseOnerror):
   84612         (WebCore::setJSDOMWindowBaseOnfocus):
   84613         (WebCore::setJSDOMWindowBaseOnkeydown):
   84614         (WebCore::setJSDOMWindowBaseOnkeypress):
   84615         (WebCore::setJSDOMWindowBaseOnkeyup):
   84616         (WebCore::setJSDOMWindowBaseOnload):
   84617         (WebCore::setJSDOMWindowBaseOnmousedown):
   84618         (WebCore::setJSDOMWindowBaseOnmousemove):
   84619         (WebCore::setJSDOMWindowBaseOnmouseout):
   84620         (WebCore::setJSDOMWindowBaseOnmouseover):
   84621         (WebCore::setJSDOMWindowBaseOnmouseup):
   84622         (WebCore::setJSDOMWindowBaseOnMouseWheel):
   84623         (WebCore::setJSDOMWindowBaseOnreset):
   84624         (WebCore::setJSDOMWindowBaseOnresize):
   84625         (WebCore::setJSDOMWindowBaseOnscroll):
   84626         (WebCore::setJSDOMWindowBaseOnsearch):
   84627         (WebCore::setJSDOMWindowBaseOnselect):
   84628         (WebCore::setJSDOMWindowBaseOnsubmit):
   84629         (WebCore::setJSDOMWindowBaseOnbeforeunload):
   84630         (WebCore::setJSDOMWindowBaseOnunload):
   84631         (WebCore::setJSDOMWindowBaseOnWebKitAnimationStart):
   84632         (WebCore::setJSDOMWindowBaseOnWebKitAnimationIteration):
   84633         (WebCore::setJSDOMWindowBaseOnWebKitAnimationEnd):
   84634         (WebCore::setJSDOMWindowBaseOnWebKitTransitionEnd):
   84635         (WebCore::setJSDOMWindowBaseEvent):
   84636         (WebCore::setJSDOMWindowBaseAudio):
   84637         (WebCore::setJSDOMWindowBaseImage):
   84638         (WebCore::setJSDOMWindowBaseMessageChannel):
   84639         (WebCore::setJSDOMWindowBaseOption):
   84640         (WebCore::setJSDOMWindowBaseXMLHttpRequest):
   84641         (WebCore::setJSDOMWindowBaseXSLTProcessor):
   84642         * bindings/js/JSDOMWindowBase.h:
   84643         * bindings/js/JSDOMWindowCustom.cpp:
   84644         (WebCore::nonCachingStaticCloseFunctionGetter):
   84645         (WebCore::nonCachingStaticBlurFunctionGetter):
   84646         (WebCore::nonCachingStaticFocusFunctionGetter):
   84647         (WebCore::nonCachingStaticPostMessageFunctionGetter):
   84648         * bindings/js/JSDOMWindowCustom.h:
   84649         (WebCore::JSDOMWindow::customGetOwnPropertySlot):
   84650         * bindings/js/JSEventTargetBase.cpp:
   84651         * bindings/js/JSEventTargetBase.h:
   84652         (WebCore::JSEventTargetBasePrototype::getOwnPropertySlot):
   84653         (WebCore::JSEventTargetBasePrototype::classInfo):
   84654         * bindings/js/JSEventTargetNode.cpp:
   84655         (WebCore::):
   84656         (WebCore::JSEventTargetNode::getOwnPropertySlot):
   84657         (WebCore::JSEventTargetNode::put):
   84658         * bindings/js/JSEventTargetNode.h:
   84659         (WebCore::JSEventTargetNode::classInfo):
   84660         (WebCore::JSEventTargetNode::prototypeClassName):
   84661         * bindings/js/JSEventTargetSVGElementInstance.cpp:
   84662         (WebCore::):
   84663         (WebCore::JSEventTargetSVGElementInstance::getOwnPropertySlot):
   84664         (WebCore::JSEventTargetSVGElementInstance::put):
   84665         * bindings/js/JSEventTargetSVGElementInstance.h:
   84666         (WebCore::JSEventTargetSVGElementInstance::classInfo):
   84667         (WebCore::JSEventTargetSVGElementInstance::prototypeClassName):
   84668         * bindings/js/JSHTMLInputElementCustom.cpp:
   84669         (WebCore::JSHTMLInputElement::customGetOwnPropertySlot):
   84670         * bindings/js/JSHistoryCustom.cpp:
   84671         (WebCore::nonCachingStaticBackFunctionGetter):
   84672         (WebCore::nonCachingStaticForwardFunctionGetter):
   84673         (WebCore::nonCachingStaticGoFunctionGetter):
   84674         (WebCore::JSHistory::customGetOwnPropertySlot):
   84675         * bindings/js/JSLocationCustom.cpp:
   84676         (WebCore::nonCachingStaticReplaceFunctionGetter):
   84677         (WebCore::nonCachingStaticReloadFunctionGetter):
   84678         (WebCore::nonCachingStaticAssignFunctionGetter):
   84679         (WebCore::JSLocation::customGetOwnPropertySlot):
   84680         (WebCore::JSLocation::customPut):
   84681         * bindings/scripts/CodeGeneratorJS.pm:
   84682 
   84683 2008-09-26  David Hyatt  <hyatt (a] apple.com>
   84684 
   84685         https://bugs.webkit.org/show_bug.cgi?id=21149
   84686 
   84687         Make the concept of scroll modes cross-platform.  Move the scrollbars up into ScrollView as well.
   84688         Eliminate the unused isScrollable() method.
   84689 
   84690         Reviewed by Sam Weinig
   84691 
   84692         * WebCore.base.exp:
   84693         * page/FrameView.cpp:
   84694         (WebCore::FrameView::resetScrollbars):
   84695         (WebCore::FrameView::initScrollbars):
   84696         (WebCore::FrameView::layout):
   84697         * page/FrameView.h:
   84698         * page/mac/WebCoreFrameView.h:
   84699         * platform/ScrollView.cpp:
   84700         (WebCore::ScrollView::init):
   84701         (WebCore::ScrollView::setScrollbarModes):
   84702         (WebCore::ScrollView::scrollbarModes):
   84703         (WebCore::ScrollView::platformSetScrollbarModes):
   84704         (WebCore::ScrollView::platformScrollbarModes):
   84705         * platform/ScrollView.h:
   84706         (WebCore::ScrollView::horizontalScrollbar):
   84707         (WebCore::ScrollView::verticalScrollbar):
   84708         (WebCore::ScrollView::isScrollViewScrollbar):
   84709         (WebCore::ScrollView::setHorizontalScrollbarMode):
   84710         (WebCore::ScrollView::setVerticalScrollbarMode):
   84711         (WebCore::ScrollView::horizontalScrollbarMode):
   84712         (WebCore::ScrollView::verticalScrollbarMode):
   84713         (WebCore::ScrollView::convertSelfToChild):
   84714         * platform/gtk/ScrollViewGtk.cpp:
   84715         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
   84716         (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar):
   84717         (WebCore::ScrollView::ScrollViewPrivate::setHasVerticalScrollbar):
   84718         (WebCore::ScrollView::ScrollViewPrivate::valueChanged):
   84719         (WebCore::ScrollView::updateScrollbars):
   84720         (WebCore::ScrollView::scrollbarUnderMouse):
   84721         (WebCore::ScrollView::isScrollViewScrollbar):
   84722         (WebCore::ScrollView::paint):
   84723         (WebCore::ScrollView::scroll):
   84724         * platform/mac/ScrollViewMac.mm:
   84725         (WebCore::ScrollView::platformSetScrollbarModes):
   84726         (WebCore::ScrollView::platformScrollbarModes):
   84727         * platform/qt/ScrollViewQt.cpp:
   84728         (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar):
   84729         (WebCore::ScrollView::ScrollViewPrivate::setHasVerticalScrollbar):
   84730         (WebCore::ScrollView::ScrollViewPrivate::valueChanged):
   84731         (WebCore::ScrollView::horizontalScrollbar):
   84732         (WebCore::ScrollView::verticalScrollbar):
   84733         (WebCore::ScrollView::invalidateScrollbars):
   84734         (WebCore::ScrollView::updateScrollbars):
   84735         (WebCore::ScrollView::scrollbarUnderMouse):
   84736         (WebCore::ScrollView::paint):
   84737         (WebCore::ScrollView::scroll):
   84738         * platform/win/ScrollViewWin.cpp:
   84739         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
   84740         (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar):
   84741         (WebCore::ScrollView::ScrollViewPrivate::setHasVerticalScrollbar):
   84742         (WebCore::ScrollView::ScrollViewPrivate::valueChanged):
   84743         (WebCore::ScrollView::ScrollViewPrivate::setAllowsScrolling):
   84744         (WebCore::ScrollView::ScrollViewPrivate::allowsScrolling):
   84745         (WebCore::ScrollView::suppressScrollbars):
   84746         (WebCore::ScrollView::updateScrollbars):
   84747         (WebCore::ScrollView::scrollbarUnderMouse):
   84748         (WebCore::ScrollView::paint):
   84749         (WebCore::ScrollView::scroll):
   84750         * platform/wx/ScrollViewWx.cpp:
   84751         (WebCore::ScrollView::platformSetScrollbarModes):
   84752         (WebCore::ScrollView::platformScrollbarModes):
   84753 
   84754 2008-09-26  David Kilzer  <ddkilzer (a] apple.com>
   84755 
   84756         Fix Mac build with XPATH and XSLT disabled
   84757 
   84758         Reviewed by Alexey.
   84759 
   84760         * bindings/objc/DOMUtility.mm:
   84761         (JSC::createDOMWrapper): Conditionalize code with ENABLE(XPATH).
   84762         * dom/XMLTokenizerLibxml2.cpp:
   84763         (WebCore::errorFunc): Conditionalize method with ENABLE(XSLT) to
   84764         prevent an unused code warning.
   84765 
   84766 2008-09-26  Kevin McCullough  <kmccullough (a] apple.com>
   84767 
   84768         Rubber stamped by Tim Hatcher.
   84769 
   84770         Bug 21098: Crashing under Console::log
   84771         - Speculative ASSERT to help find the problem.
   84772 
   84773         * page/InspectorController.cpp:
   84774         (WebCore::ConsoleMessage::isEqual):
   84775 
   84776 2008-09-26  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   84777 
   84778         [gtk+] Build fix for the latest ScrollView changes
   84779 
   84780         * platform/gtk/ScrollViewGtk.cpp:
   84781         (WebCore::ScrollView::ScrollViewPrivate::adjustmentChanged):
   84782         (WebCore::ScrollView::ScrollViewPrivate::valueChanged):
   84783 
   84784 2008-09-26  Timothy Hatcher  <timothy (a] apple.com>
   84785 
   84786         Fixes a bug where the console message repeat count would be wrong
   84787         when typing commands in between repeated messages.
   84788 
   84789         https://bugs.webkit.org/show_bug.cgi?id=21145
   84790 
   84791         Reviewed by Kevin McCullough.
   84792 
   84793         * page/InspectorController.cpp:
   84794         (WebCore::InspectorController::clearConsoleMessages): Reset m_groupLevel.
   84795         (WebCore::InspectorController::didCommitLoad): Call clearConsoleMessages.
   84796         * page/inspector/Console.js:
   84797         (WebInspector.Console.prototype.addMessage): Remember the original repeat count
   84798         for each message as totalRepeatCount, since we now modify repeatCount to mean
   84799         repeats since previous console command. If repeatCountBeforeCommand is a number,
   84800         subtract that value from the repeatCount.
   84801         (WebInspector.Console.prototype.clearMessages): Delete the repeatCountBeforeCommand
   84802         and commandSincePreviousMessage properties.
   84803 
   84804 2008-09-26  Eric Carlson  <eric.carlson (a] apple.com>
   84805 
   84806         Reviewed by Antti
   84807 
   84808         https://bugs.webkit.org/show_bug.cgi?id=21116
   84809         <rdar://problem/5726325> Audio from <video> can still be heard after navigating
   84810         back to page with <video>, then closing tab
   84811 
   84812         Rename willSaveToCache/didRestoreFromCache callbacks to documentWillBecomeInactive/
   84813         documentDidBecomeActive, and post documentWillBecomeInactive when a page is marked for
   84814         deletion.
   84815 
   84816         * dom/Document.cpp:
   84817         (WebCore::Document::documentWillBecomeInactive):
   84818         (WebCore::Document::documentDidBecomeActive):
   84819         (WebCore::Document::registerForDocumentActivationCallbacks):
   84820         (WebCore::Document::unregisterForDocumentActivationCallbacks):
   84821         * dom/Document.h:
   84822         * dom/Element.h:
   84823         (WebCore::Element::documentWillBecomeInactive):
   84824         (WebCore::Element::documentDidBecomeActive):
   84825         * history/CachedPage.cpp:
   84826         (WebCore::CachedPage::CachedPage):
   84827         * html/HTMLFormElement.cpp:
   84828         (WebCore::HTMLFormElement::~HTMLFormElement):
   84829         (WebCore::HTMLFormElement::parseMappedAttribute):
   84830         (WebCore::HTMLFormElement::documentDidBecomeActive):
   84831         (WebCore::HTMLFormElement::willMoveToNewOwnerDocument):
   84832         (WebCore::HTMLFormElement::didMoveToNewOwnerDocument):
   84833         * html/HTMLFormElement.h:
   84834         * html/HTMLInputElement.cpp:
   84835         (WebCore::HTMLInputElement::~HTMLInputElement):
   84836         (WebCore::HTMLInputElement::setInputType):
   84837         (WebCore::HTMLInputElement::parseMappedAttribute):
   84838         (WebCore::HTMLInputElement::needsActivationCallback):
   84839         (WebCore::HTMLInputElement::registerForActivationCallbackIfNeeded):
   84840         (WebCore::HTMLInputElement::unregisterForActivationCallbackIfNeeded):
   84841         (WebCore::HTMLInputElement::documentDidBecomeActive):
   84842         (WebCore::HTMLInputElement::willMoveToNewOwnerDocument):
   84843         (WebCore::HTMLInputElement::didMoveToNewOwnerDocument):
   84844         * html/HTMLInputElement.h:
   84845         * html/HTMLMediaElement.cpp:
   84846         (WebCore::HTMLMediaElement::HTMLMediaElement):
   84847         (WebCore::HTMLMediaElement::~HTMLMediaElement):
   84848         (WebCore::HTMLMediaElement::documentWillBecomeInactive):
   84849         (WebCore::HTMLMediaElement::documentDidBecomeActive):
   84850         * html/HTMLMediaElement.h:
   84851         (WebCore::HTMLMediaElement::inActiveDocument):
   84852         * loader/FrameLoader.cpp:
   84853         (WebCore::FrameLoader::opened):
   84854         * page/Page.cpp:
   84855         (WebCore::Page::~Page):
   84856         * rendering/RenderMedia.cpp:
   84857         (WebCore::RenderMedia::updateControls):
   84858         * rendering/RenderVideo.cpp:
   84859         (WebCore::RenderVideo::updatePlayer):
   84860         * svg/SVGSVGElement.cpp:
   84861         (WebCore::SVGSVGElement::SVGSVGElement):
   84862         (WebCore::SVGSVGElement::~SVGSVGElement):
   84863         (WebCore::SVGSVGElement::documentWillBecomeInactive):
   84864         (WebCore::SVGSVGElement::documentDidBecomeActive):
   84865         * svg/SVGSVGElement.h:
   84866 
   84867 2008-09-26  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   84868 
   84869         Reviewed by Simon
   84870 
   84871         Fix the build inside Qt, don't create faulty prl files for now.
   84872 
   84873         * WebCore.pro:
   84874 
   84875 2008-09-26  Simon Hausmann  <hausmann (a] webkit.org>
   84876 
   84877         Fix compilation on Qt/Windows
   84878 
   84879         * Add WebCore/ to the include path so that config.h is found that enables JSC
   84880         * Link against winmm for the multimedia timer functions
   84881         * Include DateMath.h instead of JavaScriptCore/DateMath.h as file is in the kjs/
   84882         subdirectory
   84883         * In PluginViewWin.cpp don't use setPlatformWidget with the HWND for the Qt/Windows port
   84884         but set m_window directly as setPlatformWidget takes a QWidget*.
   84885 
   84886         * WebCore.pro:
   84887         * platform/win/SystemTimeWin.cpp:
   84888         * plugins/win/PluginViewWin.cpp:
   84889         (WebCore::PluginView::init):
   84890 
   84891 2008-09-26  Oliver Hunt  <oliver (a] apple.com>
   84892 
   84893         Reviewed by Maciej Stachowiak.
   84894 
   84895         Bug 21054: Construction of certain DOM objects is heavily regressed by r36675
   84896         <https://bugs.webkit.org/show_bug.cgi?id=21054>
   84897 
   84898         This performance regression is actually just a symptom of a correctness
   84899         bug.  The constructor objects for a number of properties that have security
   84900         checks on access were returning new objects each time.  The most obvious
   84901         symptom of this bug is that window.Image != window.Image, etc.
   84902 
   84903         The solution to this is to make sure we cache these constructors
   84904         in the same way as all the other DOM constructors.  To achieve this
   84905         without causing any refcount cycles it is necessary to replace the
   84906         refcounted document pointer in the Image, MessageChannel, Option,
   84907         XMLHttpRequest, and Audio constructor objects with a reference to
   84908         the document's JS wrapper.
   84909 
   84910         Tests: fast/dom/constructors-cached-navigate.html
   84911                fast/dom/constructors-cached.html
   84912 
   84913         * WebCore.xcodeproj/project.pbxproj:
   84914         * bindings/js/JSAudioConstructor.cpp:
   84915         (WebCore::JSAudioConstructor::mark):
   84916         * bindings/js/JSAudioConstructor.h:
   84917         (WebCore::JSAudioConstructor::document):
   84918         * bindings/js/JSDOMWindowBase.cpp:
   84919         (WebCore::getDOMConstructor):
   84920         (WebCore::JSDOMWindowBase::getValueProperty):
   84921         * bindings/js/JSDOMWindowBase.h:
   84922         * bindings/js/JSHTMLOptionElementConstructor.cpp:
   84923         (WebCore::JSHTMLOptionElementConstructor::mark):
   84924         * bindings/js/JSHTMLOptionElementConstructor.h:
   84925         (WebCore::JSHTMLOptionElementConstructor::document):
   84926         * bindings/js/JSImageConstructor.cpp:
   84927         (WebCore::JSImageConstructor::mark):
   84928         * bindings/js/JSImageConstructor.h:
   84929         (WebCore::JSImageConstructor::document):
   84930         * bindings/js/JSXMLHttpRequestConstructor.cpp:
   84931         (WebCore::JSXMLHttpRequestConstructor::mark):
   84932         * bindings/js/JSXMLHttpRequestConstructor.h:
   84933         (WebCore::JSXMLHttpRequestConstructor::document):
   84934 
   84935 2008-09-26  Simon Hausmann  <hausmann (a] webkit.org>
   84936 
   84937         Unreviewed one-liner build fix for the Qt/Windows build.
   84938 
   84939         The build requires NPAPI support to be enabled, fix the condition in
   84940         the .pro file for that.
   84941 
   84942         * WebCore.pro:
   84943 
   84944 2008-09-26  Trenton Schulz <twschulz (a] trolltech.com>
   84945 
   84946         Reviewed by Simon.
   84947 
   84948         Fix compilation with the Qt/Cocoa port.
   84949 
   84950         * platform/qt/ScrollViewQt.cpp:
   84951         (WebCore::ScrollView::updateScrollbars):
   84952 
   84953 2008-09-26  Simon Hausmann  <hausmann (a] webkit.org>
   84954 
   84955         Reviewed by Holger.
   84956 
   84957         Fix compilation with VC9SP1, work around bug in TR1 library by
   84958         disabling it.
   84959 
   84960         * WebCore.pro:
   84961 
   84962 2008-09-26  Simon Hausmann  <hausmann (a] webkit.org>
   84963 
   84964         Reviewed by Holger.
   84965 
   84966         Fix an lupdate() warning.
   84967 
   84968         Don't use tr() in a class that is not a QObject, use
   84969         QCoreApplication::translate() directly.
   84970 
   84971         * platform/qt/ScrollbarQt.cpp:
   84972         (WebCore::Scrollbar::handleContextMenuEvent):
   84973 
   84974 2008-09-25  David Hyatt  <hyatt (a] apple.com>
   84975 
   84976         Remove the scrollTo() method from FrameView, since it is not used by anyone.
   84977 
   84978         Reviewed by Oliver Hunt
   84979 
   84980         * page/FrameView.cpp:
   84981         * page/FrameView.h:
   84982 
   84983 2008-09-25  David Hyatt  <hyatt (a] apple.com>
   84984 
   84985         Make scrollRectIntoViewRecursively cross-platform.
   84986 
   84987         Reviewed by Oliver Hunt
   84988 
   84989         * platform/ScrollView.cpp:
   84990         (WebCore::ScrollView::scrollRectIntoViewRecursively):
   84991         * platform/gtk/ScrollViewGtk.cpp:
   84992         * platform/mac/ScrollViewMac.mm:
   84993         * platform/qt/ScrollViewQt.cpp:
   84994         * platform/win/ScrollViewWin.cpp:
   84995         * platform/wx/ScrollViewWx.cpp:
   84996 
   84997 2008-09-25  David Hyatt  <hyatt (a] apple.com>
   84998 
   84999         https://bugs.webkit.org/show_bug.cgi?id=21133
   85000 
   85001         Rename resizeContents method on ScrollView to setContentsSize (to match contentsSize()).  Make it
   85002         cross-platform.
   85003 
   85004         Reviewed by Oliver Hunt
   85005 
   85006         * loader/FrameLoader.cpp:
   85007         (WebCore::FrameLoader::begin):
   85008         * page/FrameView.cpp:
   85009         (WebCore::FrameView::adjustViewSize):
   85010         * platform/ScrollView.cpp:
   85011         (WebCore::ScrollView::setContentsSize):
   85012         * platform/ScrollView.h:
   85013         (WebCore::ScrollView::updateScrollbars):
   85014         * platform/gtk/ScrollViewGtk.cpp:
   85015         * platform/mac/ScrollViewMac.mm:
   85016         (WebCore::ScrollView::platformSetContentsSize):
   85017         * platform/qt/ScrollViewQt.cpp:
   85018         * platform/win/ScrollViewWin.cpp:
   85019         * platform/wx/ScrollViewWx.cpp:
   85020         (WebCore::ScrollView::platformSetContentsSize):
   85021 
   85022 2008-09-25  David Hyatt  <hyatt (a] apple.com>
   85023 
   85024         https://bugs.webkit.org/show_bug.cgi?id=21132
   85025 
   85026         Clean up the methods that actually do the scrolling in ScrollView.
   85027 
   85028         Reviewed by Oliver Hunt
   85029 
   85030         * html/HTMLBodyElement.cpp:
   85031         (WebCore::HTMLBodyElement::setScrollLeft):
   85032         (WebCore::HTMLBodyElement::setScrollTop):
   85033         * loader/FrameLoader.cpp:
   85034         (WebCore::FrameLoader::restoreScrollPositionAndViewState):
   85035         * loader/ImageDocument.cpp:
   85036         (WebCore::ImageDocument::imageClicked):
   85037         * page/DOMWindow.cpp:
   85038         (WebCore::DOMWindow::scrollBy):
   85039         (WebCore::DOMWindow::scrollTo):
   85040         * page/FrameView.cpp:
   85041         (WebCore::FrameView::scrollTo):
   85042         (WebCore::FrameView::setScrollPosition):
   85043         * page/FrameView.h:
   85044         * platform/ScrollView.cpp:
   85045         (WebCore::ScrollView::maximumScrollPosition):
   85046         * platform/ScrollView.h:
   85047         (WebCore::ScrollView::contentsWidth):
   85048         (WebCore::ScrollView::contentsHeight):
   85049         (WebCore::ScrollView::scrollBy):
   85050         * platform/gtk/ScrollViewGtk.cpp:
   85051         (WebCore::ScrollView::setScrollPosition):
   85052         * platform/mac/ScrollViewMac.mm:
   85053         (WebCore::ScrollView::setScrollPosition):
   85054         * platform/qt/ScrollViewQt.cpp:
   85055         (WebCore::ScrollView::setScrollPosition):
   85056         (WebCore::ScrollView::scrollRectIntoViewRecursively):
   85057         * platform/win/ScrollViewWin.cpp:
   85058         (WebCore::ScrollView::setScrollPosition):
   85059         (WebCore::ScrollView::scrollRectIntoViewRecursively):
   85060         * platform/wx/ScrollViewWx.cpp:
   85061         (WebCore::ScrollView::setScrollPosition):
   85062         * rendering/RenderLayer.cpp:
   85063         (WebCore::RenderLayer::scrollByRecursively):
   85064         (WebCore::RenderLayer::scrollRectToVisible):
   85065 
   85066 2008-09-25  Dan Bernstein  <mitz (a] apple.com>
   85067 
   85068         - attempted Windows build fix
   85069 
   85070         * platform/win/ScrollViewWin.cpp:
   85071         (WebCore::ScrollView::ScrollViewPrivate::valueChanged):
   85072         (WebCore::ScrollView::setContentsPos):
   85073         (WebCore::ScrollView::paint):
   85074 
   85075 2008-09-25  Timothy Hatcher  <timothy (a] apple.com>
   85076 
   85077         Revert the padding changes done in r36905 to prevent the
   85078         scrollbar from overlapping the URLs in the Console.
   85079 
   85080         https://bugs.webkit.org/show_bug.cgi?id=21126
   85081 
   85082         * page/inspector/inspector.css:
   85083 
   85084 2008-09-25  David Hyatt  <hyatt (a] apple.com>
   85085 
   85086         https://bugs.webkit.org/show_bug.cgi?id=21129
   85087 
   85088         Refactor contents size and scroll offset to be cross-platform.  Reduce further the number
   85089         of platform-specific methods required of ScrollView implementations.
   85090 
   85091         Reviewed by Tim Hatcher
   85092 
   85093         * dom/MouseRelatedEvent.cpp:
   85094         (WebCore::contentsX):
   85095         (WebCore::contentsY):
   85096         * html/HTMLBodyElement.cpp:
   85097         (WebCore::HTMLBodyElement::scrollLeft):
   85098         (WebCore::HTMLBodyElement::setScrollLeft):
   85099         (WebCore::HTMLBodyElement::scrollTop):
   85100         (WebCore::HTMLBodyElement::setScrollTop):
   85101         * loader/FrameLoader.cpp:
   85102         (WebCore::FrameLoader::saveScrollPositionAndViewStateToItem):
   85103         * page/DOMWindow.cpp:
   85104         (WebCore::DOMWindow::scrollX):
   85105         (WebCore::DOMWindow::scrollY):
   85106         * page/EventHandler.cpp:
   85107         (WebCore::EventHandler::hitTestResultAtPoint):
   85108         * page/FrameView.cpp:
   85109         (WebCore::FrameView::scrollTo):
   85110         (WebCore::FrameView::windowClipRect):
   85111         * platform/ScrollView.cpp:
   85112         (WebCore::ScrollView::visibleContentRect):
   85113         (WebCore::ScrollView::contentsSize):
   85114         (WebCore::ScrollView::platformContentsSize):
   85115         * platform/ScrollView.h:
   85116         (WebCore::ScrollView::scrollPosition):
   85117         (WebCore::ScrollView::scrollOffset):
   85118         (WebCore::ScrollView::scrollX):
   85119         (WebCore::ScrollView::scrollY):
   85120         (WebCore::ScrollView::contentsWidth):
   85121         (WebCore::ScrollView::contentsHeight):
   85122         * platform/gtk/ScrollViewGtk.cpp:
   85123         (WebCore::ScrollView::ScrollViewPrivate::adjustmentChanged):
   85124         (WebCore::ScrollView::setGtkAdjustments):
   85125         (WebCore::ScrollView::resizeContents):
   85126         (WebCore::ScrollView::contentsWidth):
   85127         (WebCore::ScrollView::contentsHeight):
   85128         (WebCore::ScrollView::scrollOffset):
   85129         (WebCore::ScrollView::maximumScroll):
   85130         (WebCore::ScrollView::scrollBy):
   85131         (WebCore::ScrollView::suppressScrollbars):
   85132         (WebCore::ScrollView::setHScrollbarMode):
   85133         (WebCore::ScrollView::setVScrollbarMode):
   85134         (WebCore::ScrollView::setScrollbarsMode):
   85135         (WebCore::ScrollView::setFrameGeometry):
   85136         (WebCore::ScrollView::updateScrollbars):
   85137         * platform/mac/ScrollViewMac.mm:
   85138         (WebCore::ScrollView::platformContentsSize):
   85139         (WebCore::ScrollView::scrollBy):
   85140         * platform/mac/WidgetMac.mm:
   85141         (WebCore::Widget::convertFromContainingWindow):
   85142         (WebCore::Widget::convertToContainingWindow):
   85143         * platform/qt/ScrollViewQt.cpp:
   85144         (WebCore::ScrollView::ScrollViewPrivate::valueChanged):
   85145         (WebCore::ScrollView::resizeContents):
   85146         (WebCore::ScrollView::setFrameGeometry):
   85147         (WebCore::ScrollView::scrollOffset):
   85148         (WebCore::ScrollView::maximumScroll):
   85149         (WebCore::ScrollView::scrollBy):
   85150         (WebCore::ScrollView::setHScrollbarMode):
   85151         (WebCore::ScrollView::setVScrollbarMode):
   85152         (WebCore::ScrollView::setScrollbarsMode):
   85153         (WebCore::ScrollView::updateScrollbars):
   85154         * platform/win/ScrollViewWin.cpp:
   85155         (WebCore::ScrollView::ScrollViewPrivate::valueChanged):
   85156         (WebCore::ScrollView::ScrollViewPrivate::setAllowsScrolling):
   85157         (WebCore::ScrollView::resizeContents):
   85158         (WebCore::ScrollView::setFrameGeometry):
   85159         (WebCore::ScrollView::scrollOffset):
   85160         (WebCore::ScrollView::maximumScroll):
   85161         (WebCore::ScrollView::scrollBy):
   85162         (WebCore::ScrollView::setHScrollbarMode):
   85163         (WebCore::ScrollView::setVScrollbarMode):
   85164         (WebCore::ScrollView::setScrollbarsMode):
   85165         (WebCore::ScrollView::updateScrollbars):
   85166         * platform/wx/ScrollViewWx.cpp:
   85167         (WebCore::ScrollView::platformVisibleContentRect):
   85168         (WebCore::ScrollView::platformContentsSize):
   85169         * rendering/RenderBlock.cpp:
   85170         (WebCore::RenderBlock::nodeAtPoint):
   85171         * rendering/RenderLayer.cpp:
   85172         (WebCore::RenderLayer::scrollRectToVisible):
   85173         (WebCore::RenderLayer::calculateClipRects):
   85174         (WebCore::RenderLayer::calculateRects):
   85175         * rendering/RenderView.cpp:
   85176         (WebCore::RenderView::absolutePosition):
   85177         (WebCore::RenderView::computeAbsoluteRepaintRect):
   85178 
   85179 2008-09-25  David Smith  <catfish.man (a] gmail.com>
   85180 
   85181         Reviewed by Dave Hyatt.
   85182 
   85183         Fix a nasty regression I introduced in the previous commit, which caused infinite recursion on facebook.
   85184 
   85185         * dom/Element.cpp:
   85186         (WebCore::Element::rareData):
   85187         * dom/Element.h:
   85188         * dom/Node.cpp:
   85189         (WebCore::Node::rareData):
   85190         * dom/Node.h:
   85191 
   85192 2008-09-25  David Smith  <catfish.man (a] gmail.com>
   85193 
   85194         Reviewed by Darin Adler.
   85195 
   85196         https://bugs.webkit.org/show_bug.cgi?id=20980
   85197         Split off uncommonly used data from Node similar to ElementRareData
   85198 
   85199         Saves an OwnPtr and a short on Node, as well as providing room for an isContainer bit,
   85200         which in turn allows inlining firstChild(), lastChild(), childNodeCount(), and childNode()
   85201         for a 5-10+% performance win on SlickSpeed and assorted speedups on other tests.
   85202 
   85203         * WebCore.base.exp:
   85204         * WebCore.xcodeproj/project.pbxproj:
   85205         * dom/ChildNodeList.cpp: Include ContainerNode to pick up its definitions for childNodeCount(), etc...
   85206         * dom/ContainerNode.cpp: Set isContainer to true
   85207         (WebCore::ContainerNode::ContainerNode):
   85208         * dom/ContainerNode.h: These Node inlines are here to avoid including ContainerNode.h in Node.h
   85209         (WebCore::Node::containerChildNodeCount): Use ContainerNode's definition, having proved that the Node is a container
   85210         (WebCore::Node::containerChildNode): ditto
   85211         (WebCore::Node::containerFirstChild): ditto
   85212         (WebCore::Node::containerLastChild): ditto
   85213         * dom/Element.cpp: Most of the changes here are moving ElementRareData to ElementRareData.h and NodeRareData.h
   85214         (WebCore::Element::Element):
   85215         (WebCore::Element::~Element):
   85216         (WebCore::Element::rareData):
   85217         (WebCore::Element::ensureRareData): Renamed from createRareData
   85218         (WebCore::Element::createRareData): Used by ensureRareData to get the correct rareData type
   85219         (WebCore::Element::attach): Check hasRareData rather than null-checking rareData()
   85220         (WebCore::Element::detach): ditto
   85221         (WebCore::Element::recalcStyle): ditto
   85222         (WebCore::Element::focus):
   85223         (WebCore::Element::minimumSizeForResizing): ditto
   85224         (WebCore::Element::setMinimumSizeForResizing): ditto
   85225         (WebCore::Element::computedStyle):
   85226         (WebCore::Element::cancelFocusAppearanceUpdate): ditto
   85227         * dom/Element.h:
   85228         * dom/ElementRareData.h: Added; everything copied from Element.cpp
   85229         (WebCore::defaultMinimumSizeForResizing):
   85230         (WebCore::ElementRareData::ElementRareData):
   85231         (WebCore::ElementRareData::resetComputedStyle):
   85232         * dom/EventTargetNode.cpp:
   85233         (WebCore::EventTargetNode::EventTargetNode): Pass the isContainer flag up the chain
   85234         * dom/EventTargetNode.h:
   85235         * dom/Node.cpp:
   85236         (WebCore::Node::Node):
   85237         (WebCore::Node::~Node): rareData cleanup code moved from Element and changed to use hasRareData
   85238         (WebCore::Node::rareData):
   85239         (WebCore::Node::ensureRareData):
   85240         (WebCore::Node::createRareData):
   85241         (WebCore::Node::tabIndex): nonzero tab indexes are now in rareData
   85242         (WebCore::Node::setTabIndexExplicitly):
   85243         (WebCore::Node::childNodes): NodeLists are now in rareData
   85244         (WebCore::Node::setFocus):
   85245         (WebCore::Node::rareDataFocused):
   85246         (WebCore::Node::isFocusable):
   85247         (WebCore::Node::isKeyboardFocusable):
   85248         (WebCore::Node::registerDynamicNodeList): NodeLists are now in rareData
   85249         (WebCore::Node::unregisterDynamicNodeList): ditto
   85250         (WebCore::Node::notifyLocalNodeListsAttributeChanged): ditto
   85251         (WebCore::Node::notifyLocalNodeListsChildrenChanged): ditto
   85252         (WebCore::Node::getElementsByName): ditto
   85253         (WebCore::Node::getElementsByClassName): ditto
   85254         * dom/Node.h:
   85255         (WebCore::Node::firstChild): Use isContainerNode() to devirtualize
   85256         (WebCore::Node::lastChild): ditto
   85257         (WebCore::Node::isContainerNode): Take advantage of a newly freed bit to store whether we're a container
   85258         (WebCore::Node::focused): focus is in rareData if set
   85259         (WebCore::Node::childTypeAllowed):
   85260         (WebCore::Node::childNodeCount): Use isContainerNode() to devirtualize
   85261         (WebCore::Node::childNode): ditto
   85262         (WebCore::Node::hasRareData): Use another newly freed bit to store whether we have rare data; avoids doing hash lookups in the common case
   85263         * dom/NodeRareData.h: Added. Most of this is just properties moved from Node
   85264         (WebCore::NodeListsNodeData::~NodeListsNodeData): Moved from Node.cpp since we NodeRareData needs to put them in a HashTable :(
   85265         (WebCore::NodeRareData::NodeRareData):
   85266         (WebCore::NodeRareData::rareDataMap):
   85267         (WebCore::NodeRareData::rareDataFromMap):
   85268         (WebCore::NodeRareData::clearNodeLists):
   85269         (WebCore::NodeRareData::setNodeLists):
   85270         (WebCore::NodeRareData::nodeLists):
   85271         (WebCore::NodeRareData::tabIndex):
   85272         (WebCore::NodeRareData::setTabIndex):
   85273         (WebCore::NodeRareData::tabIndexSetExplicitly):
   85274         * dom/TreeWalker.cpp: Include ContainerNode to pick up its definitions for childNodeCount(), etc...
   85275         * xml/XPathUtil.cpp: Include ContainerNode to pick up its definitions for childNodeCount(), etc...
   85276 
   85277 2008-09-25  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   85278 
   85279         Reviewed by Simon Hausmann.
   85280 
   85281         [qt] ImageBuffer::toDataURL implementation
   85282 
   85283         There needs to be a Qt specific test result for the above mentioned
   85284         implementation.
   85285 
   85286         * platform/graphics/qt/ImageBufferQt.cpp:
   85287         (WebCore::ImageBuffer::toDataURL):
   85288 
   85289 2008-09-25  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   85290 
   85291         Reviewed by Simon Hausmann.
   85292 
   85293         [qt] Implement SharedBuffer for Qt.
   85294 
   85295         * WebCore.pro:
   85296         * platform/qt/SharedBufferQt.cpp: Added.
   85297         (WebCore::SharedBuffer::createWithContentsOfFile):
   85298         * platform/qt/TemporaryLinkStubs.cpp:
   85299 
   85300 2008-09-25  Feng Qian <feng (a] chromium.org>
   85301 
   85302         Fix bug: https://bugs.webkit.org/show_bug.cgi?id=21032
   85303         <rdar://problem/6243032>
   85304 
   85305         Reviewed by Dave Hyatt.
   85306 
   85307         Test: fast/dom/attribute-downcast-right.html
   85308 
   85309         Add isMappedAttribute function to Attribute for checking if an object
   85310         is an instance of MappedAttribute. Removed attributeItem,
   85311         getAttributeItem functions from NamedMappedAttrMap, and callers
   85312         expecting MappedAttribute have to check isMappedAttribute before
   85313         downcasting the return value to MappedAttribute.
   85314 
   85315         * css/CSSStyleSelector.cpp:
   85316         (WebCore::CSSStyleSelector::styleForElement):
   85317         * dom/Attribute.h:
   85318         (WebCore::Attribute::isMappedAttribute):
   85319         * dom/MappedAttribute.h:
   85320         (WebCore::MappedAttribute::isMappedAttribute):
   85321         * dom/NamedMappedAttrMap.cpp:
   85322         (WebCore::NamedMappedAttrMap::declCount):
   85323         (WebCore::NamedMappedAttrMap::mapsEquivalent):
   85324         * dom/NamedMappedAttrMap.h:
   85325         * dom/StyledElement.cpp:
   85326         (WebCore::StyledElement::attributeChanged):
   85327         * html/HTMLInputElement.cpp:
   85328         (WebCore::HTMLInputElement::setInputType):
   85329         * svg/SVGForeignObjectElement.cpp:
   85330         (WebCore::addCSSPropertyAndNotifyAttributeMap):
   85331         * svg/SVGStyledElement.cpp:
   85332         (WebCore::SVGStyledElement::getPresentationAttribute):
   85333 
   85334 2008-09-25  David Hyatt  <hyatt (a] apple.com>
   85335 
   85336         https://bugs.webkit.org/show_bug.cgi?id=21120
   85337 
   85338         Make visibleContentRect cross-platform.  Note this does add new horizontal/verticalScrollbar accessors
   85339         to a bunch of platforms.  This is a temporary evil until the scrollbars get made cross-platform (and I
   85340         didn't want to mix that change in with this patch).
   85341 
   85342         Reviewed by Sam Weinig
   85343 
   85344         * page/Frame.cpp:
   85345         (WebCore::Frame::markAllMatchesForText):
   85346         * page/FrameView.cpp:
   85347         (WebCore::FrameView::repaintContentRectangle):
   85348         (WebCore::FrameView::windowClipRect):
   85349         (WebCore::FrameView::updateControlTints):
   85350         * platform/ScrollView.cpp:
   85351         (WebCore::ScrollView::visibleContentRect):
   85352         (WebCore::ScrollView::platformVisibleContentRect):
   85353         * platform/ScrollView.h:
   85354         (WebCore::ScrollView::visibleWidth):
   85355         (WebCore::ScrollView::visibleHeight):
   85356         * platform/gtk/ScrollViewGtk.cpp:
   85357         (WebCore::ScrollView::horizontalScrollbar):
   85358         (WebCore::ScrollView::verticalScrollbar):
   85359         * platform/mac/ScrollViewMac.mm:
   85360         (WebCore::ScrollView::horizontalScrollbar):
   85361         (WebCore::ScrollView::verticalScrollbar):
   85362         (WebCore::ScrollView::platformVisibleContentRect):
   85363         * platform/qt/ScrollViewQt.cpp:
   85364         (WebCore::ScrollView::horizontalScrollbar):
   85365         (WebCore::ScrollView::verticalScrollbar):
   85366         * platform/win/ScrollViewWin.cpp:
   85367         (WebCore::ScrollView::horizontalScrollbar):
   85368         (WebCore::ScrollView::verticalScrollbar):
   85369         * platform/wx/ScrollViewWx.cpp:
   85370         (WebCore::ScrollView::platformVisibleContentRect):
   85371         (WebCore::ScrollView::horizontalScrollbar):
   85372         (WebCore::ScrollView::verticalScrollbar):
   85373         * rendering/RenderLayer.cpp:
   85374         (WebCore::RenderLayer::scrollRectToVisible):
   85375         (WebCore::frameVisibleRect):
   85376         * rendering/RenderView.cpp:
   85377         (WebCore::RenderView::viewRect):
   85378 
   85379 2008-09-25  David Smith  <catfish.man (a] gmail.com>
   85380 
   85381         Reviewed by Timothy Hatcher
   85382 
   85383         https://bugs.webkit.org/show_bug.cgi?id=21052
   85384         Generalize id selector special case for querySelectorAll
   85385 
   85386         By checking the element we get with getElementById against the selector, we can use the special case in many more circumstances.
   85387         Changes results on http://native.khan.mozilla.org
   85388         from
   85389             #title: 2ms
   85390             h1#title: 55ms
   85391             div #title: 55ms
   85392 
   85393         to:
   85394             #title: 1ms
   85395             h1#title: 2ms
   85396             div #title: 5ms
   85397 
   85398         * dom/Node.cpp:
   85399         (WebCore::Node::querySelector):
   85400         * dom/SelectorNodeList.cpp:
   85401         (WebCore::createSelectorNodeList):
   85402 
   85403 2008-09-25  David Hyatt  <hyatt (a] apple.com>
   85404 
   85405         https://bugs.webkit.org/show_bug.cgi?id=21118
   85406 
   85407         Make the concept of whether you can blit on scroll cross-platform on ScrollView.
   85408 
   85409         Reviewed by Sam Weinig
   85410 
   85411         * page/FrameView.cpp:
   85412         (WebCore::FrameView::clear):
   85413         (WebCore::FrameView::layout):
   85414         (WebCore::FrameView::setUseSlowRepaints):
   85415         (WebCore::FrameView::addSlowRepaintObject):
   85416         (WebCore::FrameView::removeSlowRepaintObject):
   85417         * platform/ScrollView.cpp:
   85418         (WebCore::ScrollView::init):
   85419         (WebCore::ScrollView::addChild):
   85420         (WebCore::ScrollView::removeChild):
   85421         (WebCore::ScrollView::setCanBlitOnScroll):
   85422         * platform/ScrollView.h:
   85423         (WebCore::ScrollView::canBlitOnScroll):
   85424         * platform/gtk/ScrollViewGtk.cpp:
   85425         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
   85426         (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore):
   85427         (WebCore::ScrollView::ScrollView):
   85428         * platform/mac/ScrollViewMac.mm:
   85429         (WebCore::ScrollView::ScrollView):
   85430         (WebCore::ScrollView::platformAddChild):
   85431         (WebCore::ScrollView::platformRemoveChild):
   85432         (WebCore::ScrollView::platformSetCanBlitOnScroll):
   85433         * platform/qt/ScrollViewQt.cpp:
   85434         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
   85435         (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore):
   85436         (WebCore::ScrollView::ScrollView):
   85437         * platform/win/ScrollViewWin.cpp:
   85438         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
   85439         (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore):
   85440         (WebCore::ScrollView::ScrollView):
   85441         * platform/wx/ScrollViewWx.cpp:
   85442         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
   85443         (WebCore::ScrollView::ScrollView):
   85444         (WebCore::ScrollView::scrollBy):
   85445 
   85446 2008-09-25  Kevin McCullough  <kmccullough (a] apple.com>
   85447 
   85448         Reviewed by Tim Hatcher.
   85449 
   85450         Bug 21109: Console should right-align urls
   85451 
   85452         * page/inspector/Console.js: Re-order the message elements so that when
   85453         it overflows it doesn't get mixed in with the next message.
   85454         * page/inspector/inspector.css:
   85455 
   85456 2008-09-25  David Hyatt  <hyatt (a] apple.com>
   85457 
   85458         https://bugs.webkit.org/show_bug.cgi?id=21113
   85459 
   85460         Putting r36771 back in with a fix to the addPendingSheet check in CSSImportRule::insertedIntoParent.
   85461 
   85462         Reviewed by Darin Adler
   85463 
   85464         * css/CSSImportRule.cpp:
   85465         (WebCore::CSSImportRule::insertedIntoParent):
   85466         * css/CSSRule.cpp:
   85467         (WebCore::CSSRule::parentStyleSheet):
   85468         (WebCore::CSSRule::parentRule):
   85469         * css/CSSStyleSheet.cpp:
   85470         (WebCore::CSSStyleSheet::CSSStyleSheet):
   85471         * css/CSSStyleSheet.h:
   85472 
   85473 2008-09-25  Darin Adler  <darin (a] apple.com>
   85474 
   85475         Reviewed by Adele Peterson.
   85476 
   85477         - fix https://bugs.webkit.org/show_bug.cgi?id=21115
   85478           <rdar://problem/6245773> REGRESSION (r34702): Safari no longer zips
   85479           bundled documents
   85480 
   85481         * html/HTMLFormElement.cpp:
   85482         (WebCore::HTMLFormElement::formData): Use files() instead of value()
   85483         to get the path, since value() now returns just the basename.
   85484 
   85485 2008-09-25  Brady Eidson  <beidson (a] apple.com>
   85486 
   85487         Rubberstamped by Mark Rowe
   85488 
   85489         Roll out 36771 as it caused <rdar://problem/6246554>
   85490         "nytimes.com doesn't display after returning to it with back/forward"
   85491 
   85492         * css/CSSImportRule.cpp:
   85493         (WebCore::CSSImportRule::insertedIntoParent):
   85494         * css/CSSRule.cpp:
   85495         (WebCore::CSSRule::parentStyleSheet):
   85496         (WebCore::CSSRule::parentRule):
   85497         * css/CSSStyleSheet.cpp:
   85498         (WebCore::CSSStyleSheet::CSSStyleSheet):
   85499         (WebCore::CSSStyleSheet::docLoader):
   85500         * css/CSSStyleSheet.h:
   85501         (WebCore::CSSStyleSheet::doc):
   85502 
   85503 2008-09-25  Adam Roben  <aroben (a] apple.com>
   85504 
   85505         Windows build fix
   85506 
   85507         * WebCore.vcproj/WebCore.vcproj: Add ScrollView.cpp to the project.
   85508 
   85509 2008-09-25  Dan Bernstein  <mitz (a] apple.com>
   85510 
   85511         - Windows build fix
   85512 
   85513         * platform/win/ScrollViewWin.cpp:
   85514         (WebCore::ScrollView::addChildPlatformWidget):
   85515         (WebCore::ScrollView::removeChildPlatformWidget):
   85516 
   85517 2008-09-25  Timothy Hatcher  <timothy (a] apple.com>
   85518 
   85519         Fixes a leak of ConsoleMessage seen when repeated console
   85520         messages occur.
   85521 
   85522         Reviewed by Mark Rowe.
   85523 
   85524         * page/InspectorController.cpp:
   85525         (WebCore::InspectorController::addConsoleMessage): Delete the repeat
   85526         since we don't add it to m_consoleMessages.
   85527 
   85528 2008-09-25  Kevin McCullough  <kmccullough (a] apple.com>
   85529 
   85530         Reviewed by Dan Bernstein.
   85531 
   85532         Bug 21105: XHRs logged in the console may show the wrong URL for the
   85533         source
   85534         - Get the url at the time of the send() and pass it on to the XHR.
   85535 
   85536         * bindings/js/JSXMLHttpRequestCustom.cpp:
   85537         (WebCore::JSXMLHttpRequest::send):
   85538         * xml/XMLHttpRequest.cpp:
   85539         (WebCore::XMLHttpRequest::didFinishLoading):
   85540         * xml/XMLHttpRequest.h:
   85541         (WebCore::XMLHttpRequest::setLastSendURL):
   85542 
   85543 2008-09-25  Kevin McCullough  <kmccullough (a] apple.com>
   85544 
   85545         Reviewed by Geoff and Tim.
   85546 
   85547         Bug 20322: XHRs logged in the console do not have line numbers
   85548         - Get the line number at the time of the send and pass it on to the XHR.
   85549 
   85550         * bindings/js/JSXMLHttpRequestCustom.cpp:
   85551         (WebCore::JSXMLHttpRequest::send):
   85552         * xml/XMLHttpRequest.cpp:
   85553         (WebCore::XMLHttpRequest::XMLHttpRequest):
   85554         (WebCore::XMLHttpRequest::didFinishLoading):
   85555         * xml/XMLHttpRequest.h:
   85556         (WebCore::XMLHttpRequest::setLastSendLineNumber):
   85557 
   85558 2008-09-25  Eric Carlson  <eric.carlson (a] apple.com>
   85559 
   85560         Reviewed by Eric Seidel.
   85561 
   85562         <rdar://problem/6171047> HTMLMediaElement "begin" event is now "loadstart"
   85563         https://bugs.webkit.org/show_bug.cgi?id=21003
   85564 
   85565         * dom/EventNames.h: remove "begin" event
   85566         * html/HTMLMediaElement.cpp:
   85567         (WebCore::HTMLMediaElement::load): Post "loadstart" event instead of "begin"
   85568 
   85569 2008-09-25  Alexey Proskuryakov  <ap (a] webkit.org>
   85570 
   85571         Reviewed by Eric Seidel.
   85572 
   85573         https://bugs.webkit.org/show_bug.cgi?id=21097
   85574         Calling a MessageChannel constructor from a destroyed document results in a crash
   85575 
   85576         Test: fast/events/message-port-constructor-for-deleted-document.html
   85577 
   85578         * bindings/js/JSMessageChannelConstructor.cpp:
   85579         (WebCore::JSMessageChannelConstructor::construct):
   85580         * bindings/js/JSMessageChannelConstructor.h:
   85581         Made m_document a RefPtr.
   85582 
   85583 2008-09-24  Alexey Proskuryakov  <ap (a] webkit.org>
   85584 
   85585         Reviewed by Sam Weinig, Anders Carlsson, and (unofficially) Adam Barth.
   85586 
   85587         https://bugs.webkit.org/show_bug.cgi?id=20879
   85588         Implement HTML5 channel messaging
   85589 
   85590         Tests: fast/events/message-channel-gc.html
   85591                fast/events/message-port-deleted-document.html
   85592                fast/events/message-port-deleted-frame.html
   85593                fast/events/message-port-inactive-document.html
   85594                fast/events/message-port.html
   85595                http/tests/security/MessagePort/event-listener-context.html
   85596 
   85597         * Configurations/WebCore.xcconfig:
   85598         Removed unused  ENABLE_CROSS_DOCUMENT_MESSAGING macro.
   85599 
   85600         * DerivedSources.make:
   85601         Added MessageChannel and MessagePort.
   85602 
   85603         * WebCore.pro: Made MessageEvent compilation unconditional, as it could not possibly be
   85604         turmed off anyway. Added new files.
   85605 
   85606         * GNUmakefile.am:
   85607         * WebCore.pro:
   85608         * WebCore.vcproj/WebCore.vcproj:
   85609         * WebCore.xcodeproj/project.pbxproj:
   85610         * WebCoreSources.bkl:
   85611         Added new files.
   85612 
   85613         * bindings/js/JSDOMWindowBase.h:
   85614         * bindings/js/JSDOMWindowBase.cpp: (WebCore::JSDOMWindowBase::getValueProperty):
   85615         Added suport for window.MessageChannel constructor.
   85616 
   85617         * bindings/js/JSDOMWindowCustom.cpp: (WebCore::JSDOMWindow::postMessage):
   85618         * page/DOMWindow.cpp:
   85619         (WebCore::DOMWindow::postMessage):
   85620         * page/DOMWindow.h:
   85621         * page/DOMWindow.idl:
   85622         Added support for three-argument postMessage (that posts a MessagePort).
   85623 
   85624         * dom/EventTarget.cpp:
   85625         (WebCore::EventTarget::toMessagePort):
   85626         * dom/EventTarget.h:
   85627         * bindings/js/JSEventTargetBase.cpp: (WebCore::toJS): Added MessagePort as yet another
   85628         EventTarget variant.
   85629 
   85630         * bindings/js/JSMessageChannelConstructor.h:
   85631         * bindings/js/JSMessageChannelConstructor.cpp: Added a custom constructor, so that it could
   85632         take a browsing context (document) parameter.
   85633 
   85634         * bindings/js/JSMessageChannelCustom.cpp: Added.
   85635         (WebCore::JSMessageChannel::mark): JSMessageChannel uses a custom mark function to mark
   85636         port1 and port2 that it owns.
   85637 
   85638         * bindings/js/JSMessagePortCustom.cpp: Added.
   85639         (WebCore::JSMessagePort::startConversation):
   85640         (WebCore::JSMessagePort::addEventListener):
   85641         (WebCore::JSMessagePort::removeEventListener):
   85642         (WebCore::JSMessagePort::dispatchEvent):
   85643         (WebCore::JSMessagePort::setOnmessage):
   85644         (WebCore::JSMessagePort::onmessage):
   85645         (WebCore::JSMessagePort::setOnclose):
   85646         (WebCore::JSMessagePort::onclose):
   85647         (WebCore::JSMessagePort::mark):
   85648         * dom/MessagePort.cpp: Added.
   85649         * dom/MessagePort.h: Added.
   85650         * dom/MessagePort.idl: Added.
   85651         Added a MessagePort implementation. Currently, it is not thread-safe at all, and only works
   85652         with Documents as contexts, but in the future, it will be used for communication with worker
   85653         threads.
   85654 
   85655         * bindings/objc/DOMInternal.h: Include "DOMMessagePortInternal.h". The new APIs do not
   85656         really have Obj-C bindings, as they are far from being final, but a MessagePort stub is
   85657         needed for MessageEvent.
   85658 
   85659         * bindings/scripts/CodeGeneratorJS.pm: Include PlatformString.h for MessagePort happiness.
   85660 
   85661         * dom/Document.cpp:
   85662         (WebCore::MessagePortTimer::MessagePortTimer):
   85663         (WebCore::MessagePortTimer::fired):
   85664         (WebCore::Document::processMessagePortMessagesSoon):
   85665         (WebCore::Document::~Document):
   85666         (WebCore::Document::dispatchMessagePortEvents):
   85667         (WebCore::Document::createdMessagePort):
   85668         (WebCore::Document::destroyedMessagePort):
   85669         * dom/Document.h:
   85670         Document keeps track of all MessagePort objects that were created when it was fully active
   85671         in its context.
   85672 
   85673         * dom/EventNames.h: Added closeEvent.
   85674 
   85675         * dom/MessageChannel.cpp: Added.
   85676         (WebCore::MessageChannel::MessageChannel):
   85677         (WebCore::MessageChannel::~MessageChannel):
   85678         * dom/MessageChannel.h: Added.
   85679         (WebCore::MessageChannel::create):
   85680         (WebCore::MessageChannel::port1):
   85681         (WebCore::MessageChannel::port2):
   85682         * dom/MessageChannel.idl: Added.
   85683         Addded JSMessageChannel implementation.
   85684 
   85685         * dom/MessageEvent.cpp:
   85686         (WebCore::MessageEvent::MessageEvent):
   85687         (WebCore::MessageEvent::initMessageEvent):
   85688         * dom/MessageEvent.h:
   85689         (WebCore::MessageEvent::create):
   85690         (WebCore::MessageEvent::messagePort):
   85691         * dom/MessageEvent.idl:
   85692         MessageEvent has a MessagePort member now, making it possible to pass ports across
   85693         documents.
   85694 
   85695 2008-09-25  David Smith  <catfish.man (a] gmail.com>
   85696 
   85697         Reviewed by Eric Seidel
   85698 
   85699         fix https://bugs.webkit.org/show_bug.cgi?id=21091
   85700         Regression: querySelector matches tag names case sensitively
   85701 
   85702         Tests: fast/dom/SelectorAPI/caseTag.html
   85703                fast/dom/SelectorAPI/caseTagX.xhtml
   85704 
   85705         * css/CSSParser.cpp:
   85706         (WebCore::CSSParser::parseSelector): Add a Document argument, since tag case sensitivity is different for HTML documents
   85707         * css/CSSParser.h:
   85708         * dom/Node.cpp:
   85709         (WebCore::Node::querySelector):
   85710         (WebCore::Node::querySelectorAll):
   85711 
   85712 2008-09-24  David Hyatt  <hyatt (a] apple.com>
   85713 
   85714         https://bugs.webkit.org/show_bug.cgi?id=21084
   85715 
   85716         Make the m_children member of ScrollView cross-platform.  Consolidate children add/remove
   85717         functionality.  Add platform stubs for connecting/disconnecting the platform widgets.
   85718 
   85719         Reviewed by Sam Weinig
   85720 
   85721         * GNUmakefile.am:
   85722         * WebCore.pro:
   85723         * WebCore.vcproj/WebCore.vcproj:
   85724         * WebCore.xcodeproj/project.pbxproj:
   85725         * WebCoreSources.bkl:
   85726         * platform/ScrollView.h:
   85727         (WebCore::ScrollView::children):
   85728         * platform/Widget.h:
   85729         * platform/gtk/ScrollViewGtk.cpp:
   85730         (WebCore::ScrollView::addChildPlatformWidget):
   85731         (WebCore::ScrollView::removeChildPlatformWidget):
   85732         (WebCore::ScrollView::geometryChanged):
   85733         * platform/mac/ScrollViewMac.mm:
   85734         (WebCore::ScrollView::addChildPlatformWidget):
   85735         (WebCore::ScrollView::removeChildPlatformWidget):
   85736         * platform/qt/ScrollViewQt.cpp:
   85737         (WebCore::ScrollView::geometryChanged):
   85738         (WebCore::ScrollView::addChildPlatformWidget):
   85739         (WebCore::ScrollView::removeChildPlatformWidget):
   85740         * platform/win/ScrollViewWin.cpp:
   85741         (WebCore::ScrollView::geometryChanged):
   85742         (WebCore::ScrollView::setParentVisible):
   85743         (WebCore::ScrollView::show):
   85744         (WebCore::ScrollView::hide):
   85745         * platform/wx/ScrollViewWx.cpp:
   85746         (WebCore::ScrollView::addChildPlatformWidget):
   85747         (WebCore::ScrollView::removeChildPlatformWidget):
   85748 
   85749 2008-09-25  Dan Bernstein  <mitz (a] apple.com>
   85750 
   85751         Reviewed by Dave Hyatt.
   85752 
   85753         - fix https://bugs.webkit.org/show_bug.cgi?id=21024
   85754           <rdar://problem/6240821> Scrollbar not painted until hovered
   85755 
   85756         * rendering/RenderWidget.cpp:
   85757         (WebCore::RenderWidget::setWidgetGeometry): Replaced resizeWidget with
   85758         this method, which sets both the location and the size.
   85759         (WebCore::RenderWidget::setWidget): Replaced the call to resizeWidget
   85760         with a call to the new method setWidgetGeometry. Positioning the
   85761         widget correctly ensures that the scroll bars invalidate correctly when
   85762         they are created and resized.
   85763         * rendering/RenderWidget.h:
   85764 
   85765 2008-09-24  Dan Bernstein  <mitz (a] apple.com>
   85766 
   85767         Rubber-stamped by Sam Weinig.
   85768 
   85769         - create a "style" subfolder under "rendering" and move style files to that folder
   85770 
   85771         * WebCore.vcproj/WebCore.vcproj:
   85772 
   85773 2008-09-24  Sam Weinig  <sam (a] webkit.org>
   85774 
   85775         Reviewed by Maciej Stachowiak.
   85776 
   85777         Remove staticFunctionGetter.  There is only one remaining user of
   85778         staticFunctionGetter and it can be converted to use setUpStaticFunctionSlot.
   85779 
   85780         * bindings/js/JSDOMWindowBase.cpp:
   85781         (WebCore::JSDOMWindowBase::getOwnPropertySlot):
   85782 
   85783 2008-09-24  Jeremy Moskovich  <jeremy (a] chromium.org>
   85784 
   85785         Reviewed by Dan Bernstein.
   85786 
   85787         Test: editing/spelling/inline_spelling_markers.html
   85788 
   85789         - https://bugs.webkit.org/show_bug.cgi?id=20092
   85790         Spelling markers positioned incorrectly in RTL text
   85791 
   85792         Measure spelling markers with selectionRectForText() to fix RTL.
   85793 
   85794         This patch also fixes hit-testing for spelling marker tool tips,
   85795         which used to work only on the first line.
   85796 
   85797         * rendering/InlineTextBox.cpp:
   85798         (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
   85799 
   85800 2008-09-24  David Hyatt  <hyatt (a] apple.com>
   85801 
   85802         https://bugs.webkit.org/show_bug.cgi?id=21074
   85803 
   85804         Make sure the viewless scrollbar knows how to paint properly when transformed.
   85805 
   85806         Reviewed by Sam Weinig
   85807 
   85808         * platform/mac/ScrollbarThemeMac.mm:
   85809         (WebCore::ScrollbarThemeMac::ScrollbarThemeMac):
   85810         (WebCore::ScrollbarThemeMac::paint):
   85811 
   85812 2008-09-24  Nikolas Zimmermann  <zimmermann (a] kde.org>
   85813 
   85814         Not reviewed. Try to fix win build.
   85815 
   85816         * bindings/js/JSSVGElementInstanceCustom.cpp:
   85817         (WebCore::toJS):
   85818         * dom/ContainerNodeAlgorithms.h:
   85819         (WebCore::removeAllChildrenInContainer):
   85820         (WebCore::appendChildToContainer):
   85821         (WebCore::Private::addChildNodesToDeletionQueue):
   85822 
   85823 2008-09-24  Nikolas Zimmermann  <zimmermann (a] kde.org>
   85824 
   85825         Reviewed by Oliver.
   85826 
   85827         Add ContainerNodeAlgorithms.h, as central place to share algorithms
   85828         operating on TreeShared-derived classes with a Node-style interface.
   85829 
   85830         This allows SVGElementInstance & ContainerNode to share code.
   85831 
   85832         * dom/ContainerNode.cpp:
   85833         (WebCore::ContainerNode::removeAllChildren):
   85834         (WebCore::ContainerNode::addChild):
   85835         * dom/ContainerNode.h:
   85836         * dom/ContainerNodeAlgorithms.h: Added.
   85837         (WebCore::removeAllChildrenInContainer):
   85838         (WebCore::appendChildToContainer):
   85839         (WebCore::Private::NodeRemovalDispatcher::dispatch):
   85840         (WebCore::Private::addChildNodesToDeletionQueue):
   85841 
   85842 2008-09-24  Simon Fraser  <simon.fraser (a] apple.com>
   85843 
   85844         Reviewed by Dave Hyatt
   85845 
   85846         Wrap up dirtying the z-order list of the stacking context
   85847         RenderLayer into a method.
   85848         https://bugs.webkit.org/show_bug.cgi?id=21072
   85849 
   85850         * rendering/RenderLayer.cpp:
   85851         (WebCore::RenderLayer::setHasVisibleContent):
   85852         (WebCore::RenderLayer::addChild):
   85853         (WebCore::RenderLayer::removeChild):
   85854         (WebCore::RenderLayer::dirtyStackingContextZOrderLists):
   85855         (WebCore::RenderLayer::styleChanged):
   85856         * rendering/RenderLayer.h:
   85857         * rendering/RenderObject.cpp:
   85858         (WebCore::RenderObject::setStyle):
   85859 
   85860 2008-09-24  Kevin McCullough  <kmccullough (a] apple.com>
   85861 
   85862         Reviewed by Tim.
   85863 
   85864         Bug 21070: REGRESSION Repeated messages with arguments are not repeated
   85865         or displayed multiple times
   85866         - The Insepctor Controller was comparing JSValue pointers so thought the
   85867         message was not a repeat, but the JS of the inspector compared the
   85868         strings and so knew it was the same message and so overwrote the old
   85869         message.
   85870 
   85871         * page/InspectorController.cpp:
   85872         (WebCore::ConsoleMessage::isEqual):
   85873         (WebCore::InspectorController::addMessageToConsole):
   85874         (WebCore::InspectorController::addConsoleMessage):
   85875         (WebCore::InspectorController::startGroup):
   85876         (WebCore::InspectorController::endGroup):
   85877         * page/InspectorController.h:
   85878 
   85879 2008-09-24  David Hyatt  <hyatt (a] apple.com>
   85880 
   85881         Make sure the viewless Mac scrollbar responds properly to system preference changes (including the
   85882         arrow placement preference and the thumb jump preference).
   85883 
   85884         Reviewed by Adam Roben
   85885 
   85886         * platform/Scrollbar.cpp:
   85887         (WebCore::Scrollbar::Scrollbar):
   85888         (WebCore::Scrollbar::~Scrollbar):
   85889         * platform/ScrollbarTheme.h:
   85890         (WebCore::ScrollbarTheme::registerScrollbar):
   85891         (WebCore::ScrollbarTheme::unregisterScrollbar):
   85892         * platform/mac/ScrollbarThemeMac.h:
   85893         * platform/mac/ScrollbarThemeMac.mm:
   85894         (+[ScrollbarPrefsObserver appearancePrefsChanged:]):
   85895         (+[ScrollbarPrefsObserver behaviorPrefsChanged:]):
   85896         (+[ScrollbarPrefsObserver registerAsObserver]):
   85897         (WebCore::ScrollbarThemeMac::registerScrollbar):
   85898         (WebCore::ScrollbarThemeMac::unregisterScrollbar):
   85899         (WebCore::ScrollbarThemeMac::ScrollbarThemeMac):
   85900         (WebCore::ScrollbarThemeMac::preferencesChanged):
   85901 
   85902 2008-09-24  Rob Buis  <buis (a] kde.org>
   85903 
   85904         Reviewed by Darin.
   85905 
   85906         https://bugs.webkit.org/show_bug.cgi?id=20557
   85907         getScreenCTM() returns wrong values
   85908 
   85909         Use the absolute position of the svg root when
   85910         determining the screen ctm.
   85911 
   85912         Test: svg/custom/getscreenctm-in-mixed-content2.xhtml
   85913 
   85914         * svg/SVGSVGElement.cpp:
   85915         (WebCore::SVGSVGElement::getScreenCTM):
   85916 
   85917 2008-09-24  David Hyatt  <hyatt (a] apple.com>
   85918 
   85919         Turn off support for CSS variables.
   85920 
   85921         * ChangeLog:
   85922         * css/CSSParser.cpp:
   85923         (WebCore::CSSParser::createVariablesRule):
   85924         (WebCore::CSSParser::addVariable):
   85925         (WebCore::CSSParser::addVariableDeclarationBlock):
   85926 
   85927 2008-09-24  David Hyatt  <hyatt (a] apple.com>
   85928 
   85929         Back out the alternate forms of CSS variable call syntax (leaving only the -webkit-var version).
   85930 
   85931         * css/CSSGrammar.y:
   85932         * css/CSSParserValues.cpp:
   85933         (WebCore::CSSParserValue::isVariable):
   85934         * css/CSSPrimitiveValue.cpp:
   85935         (WebCore::CSSPrimitiveValue::cleanup):
   85936         (WebCore::CSSPrimitiveValue::getStringValue):
   85937         (WebCore::CSSPrimitiveValue::cssText):
   85938         (WebCore::CSSPrimitiveValue::parserValue):
   85939         * css/CSSPrimitiveValue.h:
   85940         (WebCore::CSSPrimitiveValue::):
   85941         (WebCore::CSSPrimitiveValue::isVariable):
   85942 
   85943 2008-09-24  Timothy Hatcher  <timothy (a] apple.com>
   85944 
   85945         Fixes a regression where the "incorrect MIME-type" warning would not
   85946         show up correctly in the Console or the resources sidebar.
   85947 
   85948         Reviewed by Kevin McCullough.
   85949 
   85950         * page/inspector/Resource.js:
   85951         (WebInspector.Resource.prototype._addTip): Add the repeat count argument
   85952         to the WebInspector.ConsoleMessage constructor call.
   85953         (WebInspector.Resource.prototype._checkWarning): Ditto.
   85954 
   85955 2008-09-23  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   85956 
   85957         Reviewed by Simon.
   85958 
   85959         Remove deprecated JS Qt bindings object call/construct code and fix autotests
   85960 
   85961         * bridge/qt/qt_instance.cpp:
   85962         (JSC::Bindings::QtInstance::QtInstance):
   85963         * bridge/qt/qt_instance.h:
   85964 
   85965 2008-09-23  Julien Chaffraix  <jchaffraix (a] pleyo.com>
   85966 
   85967         Reviewed by Alp Toker. Landed by Jan Alonzo.
   85968 
   85969         Bug 20883: [CURL] Add deferred loading
   85970         https://bugs.webkit.org/show_bug.cgi?id=20883
   85971 
   85972         Implement deferred loading for the libcURL backend using curl_easy_pause.
   85973         As the method was introduced in version 7.18.0, all the code checks for libcURL
   85974         version.
   85975 
   85976         * platform/network/curl/ResourceHandleCurl.cpp:
   85977         (WebCore::ResourceHandle::setDefersLoading):
   85978         * platform/network/curl/ResourceHandleManager.cpp:
   85979         (WebCore::writeCallback): Add an assertion that deferred loading is not
   85980         activated.
   85981         (WebCore::headerCallback): Ditto.
   85982         (WebCore::readCallback): Ditto.
   85983         (WebCore::ResourceHandleManager::dispatchSynchronousJob): Force
   85984         defersLoading to be false in order to avoid triggering an assertion.
   85985         (WebCore::ResourceHandleManager::initializeHandle): If deferred loading is
   85986         activated, pause the easy handle.
   85987 
   85988 2008-09-23  Matt Lilek  <webkit (a] mattlilek.com>
   85989 
   85990         Reviewed by Tim Hatcher.
   85991 
   85992         Inspector search field style tweaks.
   85993 
   85994         * page/inspector/inspector.css:
   85995 
   85996 2008-09-23  Nikolas Zimmermann  <zimmermann (a] kde.org>
   85997 
   85998         Reviewed by Eric.
   85999 
   86000         Fixes: https://bugs.webkit.org/show_bug.cgi?id=21046 (Several LayoutTests crash)
   86001 
   86002         Fix missing negation in EventTargetNode::insertedIntoDocument.
   86003         Made handleLocalEvents() virtual again, HTMLFormElement overrides it.
   86004         Remove code, that wasn't supposed to go in in dispatchGenericEvent().
   86005 
   86006         * dom/EventTargetNode.cpp:
   86007         (WebCore::EventTargetNode::insertedIntoDocument):
   86008         (WebCore::EventTargetNode::dispatchGenericEvent):
   86009         * dom/EventTargetNode.h:
   86010 
   86011 2008-09-23  Timothy Hatcher  <timothy (a] apple.com>
   86012 
   86013         Adds search support to the Profiles panel.
   86014 
   86015         The Profiles panel supports a few types of queries:
   86016          * Standard string matching for function names and file URLs.
   86017          * Greater than and less than search for numeric columns.
   86018            So a query of ">24" will match all rows that have calls
   86019            greater than 24. Or "<=42" will match all 42 or less.
   86020          * Percent and time units. Adding a unit of "s", "ms" or "%"
   86021            is supported and will match only the Self and Total columns.
   86022            So a query of ">1.25s" will match all rows that took longer
   86023            than 1.25 seconds.
   86024 
   86025         Reviewed by Oliver Hunt.
   86026 
   86027         * page/inspector/ProfileView.js:
   86028         (WebInspector.ProfileView.prototype.hide): Reset _currentSearchResultIndex to -1. So the next time
   86029         it will start at the first result.
   86030         (WebInspector.ProfileView.prototype.refreshShowAsPercents): Moved from the bottom of the file.
   86031         (WebInspector.ProfileView.prototype.searchCanceled): Clear the search properties and refresh highlighted
   86032         data grid nodes.
   86033         (WebInspector.ProfileView.prototype.performSearch): Search the profile nodes.
   86034         (WebInspector.ProfileView.prototype.jumpToFirstSearchResult): Does what the function says. Calls _jumpToSearchResult.
   86035         (WebInspector.ProfileView.prototype.jumpToLastSearchResult): Ditto.
   86036         (WebInspector.ProfileView.prototype.jumpToNextSearchResult): Ditto.
   86037         (WebInspector.ProfileView.prototype.jumpToPreviousSearchResult): Ditto.
   86038         (WebInspector.ProfileView.prototype.showingFirstSearchResult): Does what the function says.
   86039         (WebInspector.ProfileView.prototype.showingLastSearchResult): Ditto.
   86040         (WebInspector.ProfileView.prototype._jumpToSearchResult): Select and reveal the profile node.
   86041         Expand all the ancestors first so the profile node will have a DataGridNode.
   86042         (WebInspector.ProfileView.prototype._changeView): Perform the search again on the new tree.
   86043         (WebInspector.ProfileDataGridNode.prototype.createCell): Add the highlight class to cells that
   86044         have search matches.
   86045         * page/inspector/ProfilesPanel.js:
   86046         (WebInspector.ProfilesPanel.prototype.reset): Call searchCanceled and delete the currentQuery.
   86047         (WebInspector.ProfilesPanel.prototype.showProfile): Use profileViewForProfile.
   86048         (WebInspector.ProfilesPanel.prototype.showView): Call showProfile. Used by Panel to show a view.
   86049         (WebInspector.ProfilesPanel.prototype.profileViewForProfile): Create the ProfileView if needed.
   86050         (WebInspector.ProfilesPanel.prototype.closeVisibleView): Renamed visibleProfileView  to visibleView.
   86051         (WebInspector.ProfilesPanel.prototype.get searchableViews): Return all the views.
   86052         (WebInspector.ProfilesPanel.prototype.searchMatchFound): Update the sidebar search matches.
   86053         (WebInspector.ProfilesPanel.prototype.searchCanceled): Clear all the sidebar search matches.
   86054         (WebInspector.ProfileSidebarTreeElement.prototype.set searchMatches): Set the class and bubbleText.
   86055         * page/inspector/inspector.css: New style rules for the cell highlight color.
   86056 
   86057 2008-09-23  Timothy Hatcher  <timothy (a] apple.com>
   86058 
   86059         Adds search support to the Resources and Scripts panels.
   86060 
   86061         https://bugs.webkit.org/show_bug.cgi?id=21005
   86062 
   86063         Reviewed by Oliver Hunt.
   86064 
   86065         * page/inspector/Images/searchSmallBlue.png: Added.
   86066         * page/inspector/Images/searchSmallBrightBlue.png: Added.
   86067         * page/inspector/Images/searchSmallGray.png: Added.
   86068         * page/inspector/Images/searchSmallWhite.png: Added.
   86069         * page/inspector/ResourceView.js:
   86070         (WebInspector.ResourceView.prototype.attach): Attempt to attach to "resource-views"
   86071         or "script-resource-views" since one might not be created yet.
   86072         * page/inspector/ResourcesPanel.js:
   86073         (WebInspector.ResourcesPanel.prototype.show): Hide any views that are visible that
   86074         are not this panel's current visible view. This can happen when a ResourceView is
   86075         visible in the Scripts panel then switched to the this panel.
   86076         (WebInspector.ResourcesPanel.prototype.get searchableViews): Return all views, with the
   86077         visibleView first.
   86078         (WebInspector.ResourcesPanel.prototype.searchResultsSortFunction): Return a sort function
   86079         that uses the current graph search function. So cycling through results will be in the order
   86080         things appear in the sidebar.
   86081         (WebInspector.ResourcesPanel.prototype.searchMatchFound): Update the search matches on the
   86082         resource's sidebar tree element.
   86083         (WebInspector.ResourcesPanel.prototype.searchCanceled): Restore the error and warning bubbles
   86084         in the sidebar. Calls the Panel prototype's searchCanceled.
   86085         (WebInspector.ResourcesPanel.prototype.performSearch): Hide all the error and warning bubbles
   86086         in the sidebar. Calls the Panel prototype's performSearch.
   86087         (WebInspector.ResourcesPanel.prototype.reset): Call searchCanceled and delete the currentQuery.
   86088         (WebInspector.ResourcesPanel.prototype.addMessageToResource): Don't call updateErrorsAndWarnings
   86089         if there is a current search query.
   86090         (WebInspector.ResourcesPanel.prototype.clearMessages): Ditto.
   86091         (WebInspector.ResourcesPanel.prototype.recreateViewForResourceIfNeeded): Ditto.
   86092         (WebInspector.ResourcesPanel.prototype.showView): Call showResource. Used by Panel to show a view.
   86093         (WebInspector.ResourceSidebarTreeElement.prototype.resetBubble): Clear all the classes and content.
   86094         (WebInspector.ResourceSidebarTreeElement.prototype.set searchMatches): Set the bubbleText and class.
   86095         (WebInspector.ResourceSidebarTreeElement.prototype.updateErrorsAndWarnings): Call resetBubble.
   86096         * page/inspector/ScriptView.js:
   86097         (WebInspector.ScriptView): Set _sourceFrameSetup to flase.
   86098         (WebInspector.ScriptView.prototype.hide): Reset _currentSearchResultIndex to -1. So the next time
   86099         it will start at the first result.
   86100         (WebInspector.ScriptView.prototype.setupSourceFrameIfNeeded): Add an event listener for "syntax
   86101         highlighting complete".
   86102         (WebInspector.ScriptView.prototype): Share many methods with SourceView.
   86103         * page/inspector/ScriptsPanel.js:
   86104         (WebInspector.ScriptsPanel.prototype.show): Hide any views that are visible that are not this
   86105         This can happen when a ResourceView is visible in the Resources panel then switched to the this panel.
   86106         (WebInspector.ScriptsPanel.prototype.get searchableViews): Return all views, with the visibleView first.
   86107         (WebInspector.ScriptsPanel.prototype.reset): Call searchCanceled and delete the currentQuery.
   86108         (WebInspector.ScriptsPanel.prototype.showView): Call _showScriptOrResource. Used by Panel to show a view.
   86109         (WebInspector.ScriptsPanel.prototype._sourceViewForScriptOrResource): Added helper.
   86110         * page/inspector/SourceFrame.js:
   86111         (WebInspector.SourceFrame.prototype.syntaxHighlightJavascript): Dispatch a "syntax highlighting complete" event.
   86112         * page/inspector/SourceView.js:
   86113         (WebInspector.SourceView.prototype.hide):
   86114         (WebInspector.SourceView.prototype.detach):
   86115         (WebInspector.SourceView.prototype._resourceLoadingFinished): Moved from the bottom of the file.
   86116         (WebInspector.SourceView.prototype._addBreakpoint): Ditto.
   86117         (WebInspector.SourceView.prototype.searchCanceled): Delete search properties.
   86118         (WebInspector.SourceView.prototype.performSearch): Search the frame if it is loaded, otherwise
   86119         store the worker function as _delayedFindSearchMatches and call it later in _sourceFrameSetupFinished.
   86120         (WebInspector.SourceView.prototype.jumpToFirstSearchResult):
   86121         (WebInspector.SourceView.prototype.jumpToLastSearchResult):
   86122         (WebInspector.SourceView.prototype.jumpToNextSearchResult):
   86123         (WebInspector.SourceView.prototype.jumpToPreviousSearchResult):
   86124         (WebInspector.SourceView.prototype.showingFirstSearchResult):
   86125         (WebInspector.SourceView.prototype.showingLastSearchResult):
   86126         (WebInspector.SourceView.prototype._jumpToSearchResult): Selects the found Range.
   86127         (WebInspector.SourceView.prototype._sourceFrameSetupFinished): Calls _delayedFindSearchMatches.
   86128         (WebInspector.SourceView.prototype._syntaxHighlightingComplete): Call _sourceFrameSetupFinished.
   86129         * page/inspector/inspector.css:
   86130 
   86131 2008-09-23  Timothy Hatcher  <timothy (a] apple.com>
   86132 
   86133         Rename some properties of ResourcesPanel and ScriptsPanel to be the same,
   86134         so future code can be shared.
   86135 
   86136         https://bugs.webkit.org/show_bug.cgi?id=21005
   86137 
   86138         Reviewed by Oliver Hunt.
   86139 
   86140         * page/inspector/ResourcesPanel.js: Renamed resourceViews to viewsContainerElement.
   86141         And visibleResourceView to visibleView.
   86142         * page/inspector/ScriptsPanel.js: Renamed scriptResourceViews to viewsContainerElement.
   86143 
   86144 2008-09-23  Timothy Hatcher  <timothy (a] apple.com>
   86145 
   86146         Highlight all matched search results in the Elements panel DOM tree.
   86147 
   86148         https://bugs.webkit.org/show_bug.cgi?id=21005
   86149 
   86150         Reviewed by Oliver Hunt.
   86151 
   86152         * page/inspector/ElementsPanel.js:
   86153         (WebInspector.ElementsPanel.prototype.searchCanceled): Clear the highlight
   86154         on all previous search results.
   86155         (WebInspector.ElementsPanel.prototype.performSearch): Set the hihglight
   86156         on all new search results.
   86157         * page/inspector/ElementsTreeOutline.js:
   86158         (WebInspector.ElementsTreeElement): Delay setting the title until onattach.
   86159         (WebInspector.ElementsTreeElement.prototype.get/set highlighted): Sets or removes
   86160         the highlighted class on the listItemElement.
   86161         (WebInspector.ElementsTreeElement.prototype.onattach): Set the highlighted class
   86162         if needed. Calls _updateTitle.
   86163         (WebInspector.ElementsTreeElement.prototype._updateTitle): Adds a span with the highlight
   86164         class so it can be styled when the highlighted class is present.
   86165         * page/inspector/inspector.css: New style rules for the hihglight.
   86166 
   86167 2008-09-23  Timothy Hatcher  <timothy (a] apple.com>
   86168 
   86169         Add search support to the Elements panel.
   86170 
   86171         https://bugs.webkit.org/show_bug.cgi?id=21005
   86172 
   86173         Reviewed by Oliver Hunt.
   86174 
   86175         * page/inspector/ElementsPanel.js:
   86176         (WebInspector.ElementsPanel.prototype.searchCanceled): Call updateSearchMatchesCount
   86177         with a 0 match count to rest. Reset the other search properties.
   86178         (WebInspector.ElementsPanel.prototype.performSearch): Evaluates the search as an XPath
   86179         query and a CSS selector on all the Documents in the page. Remembers the found nodes
   86180         and avoids duplicates. Focuses the first result.
   86181         (WebInspector.ElementsPanel.prototype.jumpToNextSearchResult): Focuses the next result.
   86182         (WebInspector.ElementsPanel.prototype.jumpToPreviousSearchResult): Focuses the previous result.
   86183 
   86184 2008-09-23  Timothy Hatcher  <timothy (a] apple.com>
   86185 
   86186         Add support to Panel that allows easy searching of sub-views.
   86187 
   86188         https://bugs.webkit.org/show_bug.cgi?id=21005
   86189 
   86190         Reviewed by Oliver Hunt.
   86191 
   86192         * page/inspector/Panel.js:
   86193         (WebInspector.Panel.prototype.searchCanceled): Call searchCanceled on all the
   86194         views in the search results and delete the currentQuery property. Call
   86195         WebInspector.updateSearchMatchesCount wit ha 0 match count to rest. Reset the
   86196         other search properties.
   86197         (WebInspector.Panel.prototype.performSearch): Call searchCanceled since it will
   86198         reset everything we need before doing a new search. Get an array of searchableViews
   86199         from the panel, implemented by sub-classes. Iterate over the views one-by-one
   86200         with an interval to prevent blocking the UI for large lists of searchableViews.
   86201         This keeps the interface really responsive. Pass a finishedCallback function to
   86202         the performSearch on each view so it can notify the panel of results.
   86203         (WebInspector.Panel.prototype.jumpToNextSearchResult): Finds the index in the
   86204         searchResults of the visibleView, so we know where in the results we are.
   86205         This is done every time incase the user manually navigates to a new view.
   86206         If the view is showing the last result, jump to the next view and show it's
   86207         first result. Otherwise jump to the next result in the current view.
   86208         (WebInspector.Panel.prototype.jumpToPreviousSearchResult): Ditto, but in reverse.
   86209 
   86210 2008-09-23  Timothy Hatcher  <timothy (a] apple.com>
   86211 
   86212         Add support for asking the current panel to perform a search, find next/previous and clear.
   86213         A search is performed on the new new current panel when switching between panels. The search
   86214         label/placeholder in the toolbar now includes the panel name to make it clear that panel will
   86215         be searched. The search field contents are selected when Command/Control-F or Enter/Return
   86216         is pressed, so the user can easily type an entirely new query. The search match count shows
   86217         up in the toolbar next to the search field.
   86218 
   86219         Also changed:
   86220          * Rename lastQuery to currentQuery since it better matches the truth.
   86221          * Set the search field "results" attribute to zero since results arn't saved for
   86222            how we use the search field.
   86223          * Make repeated presses of the Return key jump to the next search result instead
   86224            of doing nothing.
   86225          * Increased the search field width.
   86226 
   86227         https://bugs.webkit.org/show_bug.cgi?id=21005
   86228 
   86229         Reviewed by Oliver Hunt.
   86230 
   86231         * English.lproj/localizedStrings.js: New strings.
   86232         * page/inspector/inspector.css: New styles.
   86233         * page/inspector/inspector.html: Add the search-results-matches element. Add the
   86234         incremental attribute to the search field and set the results attribute to zero.
   86235         * page/inspector/inspector.js:
   86236         (WebInspector.set currentPanel): perform the search on the new panel.
   86237         (WebInspector.loaded): Change the event listeners and remove code that changes
   86238         the search label text.
   86239         (WebInspector.documentKeyDown): Add support for Command/Control-G and
   86240         Command/Control-Shift-G. To jump to the next and previous search results.
   86241         (WebInspector.updateSearchLabel): Added. Update the search placeholder/label.
   86242         This does different things depending on the attached state.
   86243         (WebInspector.searchKeyDown): Call preventDefault since this was the Enter key.
   86244         This prevents a "search" event from firing for key down. We handle the Enter key
   86245         on key up in searchKeyUp. This stops performSearch from being called twice in a row.
   86246         (WebInspector.searchKeyUp): Calls performSearch when it is the Enter key.
   86247         (WebInspector.performSearch): Delete the currentQuery property and call searchCanceled
   86248         on all the panels. Call jumpToNextSearchResult when this is the same query or a forced search.
   86249         Call updateSearchMatchesCount to reset the matches count in the toolbar.
   86250         (WebInspector.updateSearchMatchesCount): Added. Updates the matches count in the toolbar.
   86251 
   86252 2008-09-23  Timothy Hatcher  <timothy (a] apple.com>
   86253 
   86254         Remove the previous Inspector search code to make room for the new stuff.
   86255 
   86256         https://bugs.webkit.org/show_bug.cgi?id=21005
   86257 
   86258         Reviewed by Oliver Hunt.
   86259 
   86260         * page/inspector/inspector.css:
   86261         * page/inspector/inspector.html:
   86262         * page/inspector/inspector.js:
   86263         (WebInspector.get/set showingSearchResults): Removed.
   86264         (WebInspector.searchResultsKeyDown): Removed.
   86265         (WebInspector.searchResultsResizerDragStart): Removed.
   86266         (WebInspector.searchResultsResizerDragEnd): Removed.
   86267         (WebInspector.searchResultsResizerDrag): Removed.
   86268         (WebInspector.performSearch): Removed searching parts.
   86269 
   86270 2008-09-23  Timothy Hatcher  <timothy (a] apple.com>
   86271 
   86272         Use the Array.remove helper function in more places.
   86273 
   86274         https://bugs.webkit.org/show_bug.cgi?id=21037
   86275 
   86276         Reviewed by Kevin McCullough.
   86277 
   86278         * page/inspector/ResourceCategory.js:
   86279         (WebInspector.ResourceCategory.prototype.removeResource): Use Array.remove.
   86280         * page/inspector/ResourcesPanel.js:
   86281         (WebInspector.ResourcesPanel.prototype.removeResource): Ditto.
   86282         * page/inspector/inspector.js:
   86283         (WebInspector.removeResource): Ditto.
   86284 
   86285 2008-09-23  Timothy Hatcher  <timothy (a] apple.com>
   86286 
   86287         Fixes a bug where inspecting a node after reloading the page
   86288         would not reveal the node in the DOM tree. The TreeOutline
   86289         was not being told to forget decendants of a removed child.
   86290         So old TreeElements would be found that are not in the tree.
   86291 
   86292         https://bugs.webkit.org/show_bug.cgi?id=21036
   86293 
   86294         Reviewed by Kevin McCullough.
   86295 
   86296         * page/inspector/treeoutline.js:
   86297         (TreeOutline._removeChildAtIndex): Call _forgetChildrenRecursive
   86298         in addition to _forgetTreeElement.
   86299         (TreeOutline._removeChildren): Call _forgetChildrenRecursive
   86300         in addition to _forgetTreeElement.
   86301         (TreeOutline._rememberTreeElement): Use Array.indexOf to quickly
   86302         search for known elements.
   86303         (TreeOutline._forgetTreeElement): Use Array.remove to remove elements.
   86304         (TreeOutline._forgetChildrenRecursive): Recursively traverse the
   86305         descendants and call _forgetTreeElement.
   86306         * page/inspector/utilities.js:
   86307         (Array.prototype.remove): Speed up this function by using Array.indexOf
   86308         when onlyFirst is true.
   86309 
   86310 2008-09-23  Timothy Hatcher  <timothy (a] apple.com>
   86311 
   86312         Fixes a bug where inspecting some short text nodes does
   86313         not reveal them in the Elements panel DOM tree.
   86314 
   86315         https://bugs.webkit.org/show_bug.cgi?id=21035
   86316 
   86317         Reviewed by Oliver Hunt.
   86318 
   86319         * page/inspector/ElementsTreeOutline.js:
   86320         (WebInspector.ElementsTreeOutline.prototype.set focusedDOMNode):
   86321         The revealAndSelectNode() method might find a different element
   86322         if there is inlined text, and the select() call would change the
   86323         focusedDOMNode and reenter this setter. So to avoid calling
   86324         focusedNodeChanged() twice, first check if _focusedDOMNode is
   86325         the same node as the one passed in.
   86326         (WebInspector.ElementsTreeOutline.prototype.update): Remove use of
   86327         this.treeOutline, since this is the TreeOutline.
   86328         (WebInspector.ElementsTreeOutline.prototype.findTreeElement): Added.
   86329         Provides default functions for isAncestor, getParet and equal.
   86330         Calls the base protoype's findTreeElement. If that returns null
   86331         and the node is a text node, try finding it's parent.
   86332         (WebInspector.ElementsTreeOutline.prototype.revealNode): Removed.
   86333         Renamed to revealAndSelectNode.
   86334         (WebInspector.ElementsTreeOutline.prototype.revealAndSelectNode):
   86335         Selects and reveals the node passed in. Use the simple findTreeElement.
   86336         (WebInspector.ElementsTreeOutline.prototype._treeElementFromEvent):
   86337         Remove use of this.treeOutline, since this is the TreeOutline.
   86338 
   86339 2008-09-23  Timothy Hatcher  <timothy (a] apple.com>
   86340 
   86341         Fixes an exception that happened when removing a Resource
   86342         from the ResourcesPanel.
   86343 
   86344         https://bugs.webkit.org/show_bug.cgi?id=21034
   86345 
   86346         Reviewed by Kevin McCullough.
   86347 
   86348         * page/inspector/ResourcesPanel.js:
   86349         (WebInspctor.ResourcesPanel.prototype.removeResource):
   86350         Remove the graphElement.
   86351 
   86352 2008-09-23  Kevin McCullough  <kmccullough (a] apple.com>
   86353 
   86354         Fixed "Time" to "Tim"
   86355 
   86356         * ChangeLog:
   86357 
   86358 2008-09-23  Nikolas Zimmermann  <zimmermann (a] kde.org>
   86359 
   86360         Reviewed by Oliver.
   86361 
   86362         Move mapInstanceToElement/removeInstanceMapping/instancesForElement
   86363         from SVGDocumentExtensions to SVGElement. It's more useful to store
   86364         the list of SVGElementInstances per SVGElement, instead of using
   86365         a document-wide hash for this purpose.
   86366 
   86367         * svg/SVGAnimateMotionElement.cpp:
   86368         (WebCore::SVGAnimateMotionElement::applyResultsToTarget):
   86369         * svg/SVGAnimateTransformElement.cpp:
   86370         (WebCore::SVGAnimateTransformElement::applyResultsToTarget):
   86371         * svg/SVGAnimationElement.cpp:
   86372         (WebCore::SVGAnimationElement::setTargetAttributeAnimatedValue):
   86373         * svg/SVGDocumentExtensions.cpp:
   86374         (WebCore::SVGDocumentExtensions::~SVGDocumentExtensions):
   86375         * svg/SVGDocumentExtensions.h:
   86376         * svg/SVGElement.cpp:
   86377         (WebCore::SVGElement::mapInstanceToElement):
   86378         (WebCore::SVGElement::removeInstanceMapping):
   86379         (WebCore::SVGElement::instancesForElement):
   86380         * svg/SVGElement.h:
   86381         * svg/SVGElementInstance.cpp:
   86382         (WebCore::SVGElementInstance::SVGElementInstance):
   86383         (WebCore::SVGElementInstance::~SVGElementInstance):
   86384         (WebCore::SVGElementInstance::updateAllInstancesOfElement):
   86385         * svg/SVGElementInstance.h:
   86386         * svg/SVGStyledElement.cpp:
   86387         (WebCore::SVGStyledElement::svgAttributeChanged):
   86388         (WebCore::SVGStyledElement::childrenChanged):
   86389         * svg/SVGStyledElement.h:
   86390 
   86391 2008-09-23  Kevin Ollivier  <kevino (a] theolliviers.com>
   86392 
   86393         wx build fix.
   86394 
   86395         * WebCoreSources.bkl:
   86396 
   86397 2008-09-23  Nikolas Zimmermann  <zimmermann (a] kde.org>
   86398 
   86399         Rubber stamped by Sam.
   86400 
   86401         Move code from EventTarget to EventTargetNode.
   86402 
   86403         I refactored most parts to live in EventTarget, a year ago,
   86404         though the implementation of EventTargetSVGElementInstance is
   86405         done in another way, that obsoletes this.
   86406 
   86407         * dom/Document.cpp:
   86408         (WebCore::Document::addListenerTypeIfNeeded):
   86409         * dom/Document.h:
   86410         * dom/EventTarget.cpp:
   86411         * dom/EventTarget.h:
   86412         (WebCore::allowEventDispatch):
   86413         * dom/EventTargetNode.cpp:
   86414         (WebCore::EventTargetNode::insertedIntoDocument):
   86415         (WebCore::EventTargetNode::removedFromDocument):
   86416         (WebCore::EventTargetNode::willMoveToNewOwnerDocument):
   86417         (WebCore::EventTargetNode::didMoveToNewOwnerDocument):
   86418         (WebCore::EventTargetNode::addEventListener):
   86419         (WebCore::EventTargetNode::removeEventListener):
   86420         (WebCore::EventTargetNode::removeAllEventListeners):
   86421         (WebCore::EventTargetNode::handleLocalEvents):
   86422         (WebCore::setCurrentEventTargetRespectingSVGTargetRules):
   86423         (WebCore::EventTargetNode::dispatchEvent):
   86424         (WebCore::EventTargetNode::dispatchGenericEvent):
   86425         (WebCore::EventTargetNode::dispatchWindowEvent):
   86426         (WebCore::EventTargetNode::removeEventListenerForType):
   86427         * dom/EventTargetNode.h:
   86428         * svg/EventTargetSVGElementInstance.cpp:
   86429         (WebCore::EventTargetSVGElementInstance::dispatchEvent):
   86430         * svg/SVGElement.cpp:
   86431         (WebCore::SVGElement::sendSVGLoadEventIfPossible):
   86432         * svg/SVGElement.h:
   86433         (WebCore::SVGElement::supplementalTransform):
   86434 
   86435 2008-09-23  Dave Hyatt  <hyatt (a] apple.com>
   86436 
   86437         Fix for bug 21012.  The Aqua scrollbar was returning the wrong track rect on Windows Aqua theme.  Make
   86438         sure to not accidentally fall into the vertical scrollbar case for horizontal scrollbars. :)
   86439 
   86440         Reviewed by Sam Weinig
   86441 
   86442         * platform/mac/ScrollbarThemeMac.mm:
   86443         (WebCore::ScrollbarThemeMac::trackRect):
   86444         * platform/win/ScrollbarThemeSafari.cpp:
   86445         (WebCore::ScrollbarTheme::nativeTheme):
   86446         (WebCore::ScrollbarThemeSafari::trackRect):
   86447 
   86448 2008-09-23  Beth Dakin  <bdakin (a] apple.com>
   86449 
   86450         Reviewed by Sam Weinig.
   86451 
   86452         Fix for https://bugs.webkit.org/show_bug.cgi?id=21041 "Add Contact"
   86453         link at gmail does not support AXPress action
   86454         and corresponding: <rdar://problem/6216178>
   86455 
   86456         I fixed this bug by making AccessibilityObject::anchorElement
   86457         support ARIA links.
   86458 
   86459         * page/AccessibilityImageMapLink.cpp:
   86460         (WebCore::AccessibilityImageMapLink::anchorElement):
   86461         * page/AccessibilityImageMapLink.h:
   86462         * page/AccessibilityObject.cpp:
   86463         (WebCore::AccessibilityObject::anchorElement):
   86464         * page/AccessibilityObject.h:
   86465         (WebCore::AccessibilityObject::isNativeAnchor):
   86466         * page/AccessibilityRenderObject.cpp:
   86467         (WebCore::AccessibilityRenderObject::isNativeAnchor):
   86468         (WebCore::AccessibilityRenderObject::anchorElement):
   86469         (WebCore::AccessibilityRenderObject::internalLinkElement):
   86470         (WebCore::AccessibilityRenderObject::url):
   86471         * page/AccessibilityRenderObject.h:
   86472         * page/mac/AccessibilityObjectWrapper.mm:
   86473         (AXLinkElementForNode):
   86474 
   86475 2008-09-23  Kevin McCullough  <kmccullough (a] apple.com>
   86476 
   86477         Reviewed by Tim and Oliver.
   86478 
   86479         Bug 20949: Catch repeated messages in Inspector Controller to limit
   86480         memory usage
   86481         - Store the repeat count in the Console Message object, in the
   86482         Inspector Controller and JS ConsoleMessage object.
   86483 
   86484         * page/InspectorController.cpp:
   86485         (WebCore::ConsoleMessage::ConsoleMessage):
   86486         (WebCore::ConsoleMessage::operator==):
   86487         (WebCore::InspectorController::InspectorController):
   86488         (WebCore::InspectorController::addConsoleMessage):
   86489         (WebCore::InspectorController::addScriptConsoleMessage):
   86490         * page/InspectorController.h:
   86491         * page/inspector/Console.js:
   86492         * page/inspector/Resource.js:
   86493         * page/inspector/ResourcesPanel.js:
   86494         * page/inspector/SourceFrame.js:
   86495 
   86496 2008-09-23  Nikolas Zimmermann  <zimmermann (a] kde.org>
   86497 
   86498         Reviewed by Eric.
   86499 
   86500         Working on proper EventTarget support for SVGElementInstance.
   86501 
   86502         Add new EventTargetSVGElementInstance class, and it's corresponding JS wrapper.
   86503         Finally JSEventTargetBase, is actually used for another class than JSEventTargetnode.
   86504 
   86505         Remove EventTarget inheritance from SVGElementInstance, and the manual "TreeShared"
   86506         implementation. Let it use TreeShared directly.
   86507 
   86508         It's not activated so far (SVGUseElement still creating SVGElementInstance objects).
   86509         The transition to EventTargetSVGElementInstance will be done in a few individual patches.
   86510 
   86511         * GNUmakefile.am:
   86512         * WebCore.pro:
   86513         * WebCore.vcproj/WebCore.vcproj:
   86514         * WebCore.xcodeproj/project.pbxproj:
   86515         * bindings/js/JSEventTargetBase.cpp:
   86516         (WebCore::retrieveEventTargetAndCorrespondingNode):
   86517         (WebCore::toJS):
   86518         * bindings/js/JSEventTargetBase.h:
   86519         * bindings/js/JSEventTargetSVGElementInstance.cpp: Added.
   86520         (WebCore::):
   86521         (WebCore::JSEventTargetSVGElementInstance::JSEventTargetSVGElementInstance):
   86522         (WebCore::JSEventTargetSVGElementInstance::createPrototype):
   86523         (WebCore::JSEventTargetSVGElementInstance::setListener):
   86524         (WebCore::JSEventTargetSVGElementInstance::getListener):
   86525         (WebCore::toEventTargetSVGElementInstance):
   86526         * bindings/js/JSEventTargetSVGElementInstance.h: Added.
   86527         (WebCore::JSEventTargetSVGElementInstance::prototypeClassName):
   86528         (WebCore::JSEventTargetSVGElementInstance::getOwnPropertySlot):
   86529         (WebCore::JSEventTargetSVGElementInstance::getValueProperty):
   86530         (WebCore::JSEventTargetSVGElementInstance::put):
   86531         (WebCore::JSEventTargetSVGElementInstance::putValueProperty):
   86532         * bindings/js/JSSVGElementInstanceCustom.cpp: Added.
   86533         (WebCore::toJS):
   86534         * bindings/objc/DOM.mm:
   86535         (+[DOMNode _wrapEventTarget:WebCore::]):
   86536         (-[DOMSVGElementInstance _initWithSVGElementInstance:WebCore::]):
   86537         (+[DOMSVGElementInstance _wrapSVGElementInstance:WebCore::]):
   86538         (+[DOMSVGElementInstance _wrapEventTarget:WebCore::]):
   86539         (-[DOMSVGElementInstance WebCore::]):
   86540         (-[DOMSVGElementInstance addEventListener:listener:useCapture:]):
   86541         (-[DOMSVGElementInstance addEventListener:::]):
   86542         (-[DOMSVGElementInstance removeEventListener:listener:useCapture:]):
   86543         (-[DOMSVGElementInstance removeEventListener:::]):
   86544         (-[DOMSVGElementInstance dispatchEvent:]):
   86545         * bindings/objc/DOMEvents.h:
   86546         * bindings/scripts/CodeGeneratorJS.pm:
   86547         * bindings/scripts/CodeGeneratorObjC.pm:
   86548         * svg/EventTargetSVGElementInstance.cpp: Added.
   86549         (WebCore::EventTargetSVGElementInstance::EventTargetSVGElementInstance):
   86550         (WebCore::EventTargetSVGElementInstance::~EventTargetSVGElementInstance):
   86551         (WebCore::EventTargetSVGElementInstance::addEventListener):
   86552         (WebCore::EventTargetSVGElementInstance::removeEventListener):
   86553         (WebCore::EventTargetSVGElementInstance::dispatchEvent):
   86554         * svg/EventTargetSVGElementInstance.h: Added.
   86555         (WebCore::EventTargetSVGElementInstance::isEventTargetSVGElementInstance):
   86556         (WebCore::EventTargetSVGElementInstance::toNode):
   86557         (WebCore::EventTargetSVGElementInstance::toSVGElementInstance):
   86558         (WebCore::EventTargetSVGElementInstance::refEventTarget):
   86559         (WebCore::EventTargetSVGElementInstance::derefEventTarget):
   86560         (WebCore::EventTargetSVGElementInstanceCast):
   86561         * svg/SVGElement.cpp:
   86562         (WebCore::SVGElement::dispatchEvent):
   86563         * svg/SVGElementInstance.cpp:
   86564         (WebCore::SVGElementInstance::SVGElementInstance):
   86565         (WebCore::SVGElementInstance::~SVGElementInstance):
   86566         * svg/SVGElementInstance.h:
   86567         (WebCore::SVGElementInstance::isEventTargetSVGElementInstance):
   86568         * svg/SVGElementInstance.idl:
   86569 
   86570 2008-09-23  Dan Bernstein  <mitz (a] apple.com>
   86571 
   86572         Reviewed by Dave Hyatt.
   86573 
   86574         - https://bugs.webkit.org/show_bug.cgi?id=21040
   86575           Pass NULL instead of the identity matrix to CTFontCreateWithGraphicsFont()
   86576 
   86577         * platform/graphics/mac/SimpleFontDataMac.mm:
   86578         (WebCore::SimpleFontData::getCTFont):
   86579 
   86580 2008-09-23  David Hyatt  <hyatt (a] apple.com>
   86581 
   86582         https://bugs.webkit.org/show_bug.cgi?id=21039
   86583 
   86584         Teach the viewless Mac scrollbar how to avoid NSWindow's resizer.
   86585 
   86586         Reviewed by Sam Weinig
   86587 
   86588         * platform/ScrollView.h:
   86589         * platform/Scrollbar.cpp:
   86590         (WebCore::Scrollbar::setFrameGeometry):
   86591         * platform/Scrollbar.h:
   86592         * platform/Widget.cpp:
   86593         (WebCore::Widget::convertFromContainingWindow):
   86594         * platform/Widget.h:
   86595         * platform/mac/ScrollViewMac.mm:
   86596         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
   86597         (WebCore::ScrollView::ScrollView):
   86598         (WebCore::ScrollView::~ScrollView):
   86599         (WebCore::ScrollView::windowResizerRect):
   86600         (WebCore::ScrollView::resizerOverlapsContent):
   86601         (WebCore::ScrollView::adjustOverlappingScrollbarCount):
   86602         (WebCore::ScrollView::setParent):
   86603         * platform/mac/WidgetMac.mm:
   86604         (WebCore::Widget::convertFromContainingWindow):
   86605 
   86606 2008-09-23  Dirk Schulze  <vbs85 (a] gmx.de>
   86607 
   86608         Reviewed by Darin Adler. Landed by Jan Alonzo.
   86609 
   86610         Added support for getImageData() and putImageData()
   86611         to Cairo.
   86612 
   86613         [CAIRO] needs getImageData and putImageData support
   86614         https://bugs.webkit.org/show_bug.cgi?id=20838
   86615 
   86616         * platform/graphics/cairo/ImageBufferCairo.cpp:
   86617         (WebCore::ImageBuffer::ImageBuffer):
   86618         (WebCore::ImageBuffer::getImageData):
   86619         (WebCore::ImageBuffer::putImageData):
   86620 
   86621 2008-09-23  Marco Barisione  <marco.barisione (a] collabora.co.uk>
   86622 
   86623         Reviewed by Holger Freyther.
   86624 
   86625         http://bugs.webkit.org/show_bug.cgi?id=18987
   86626         [GTK] Implement SharedBuffer::createWithContentsOfFile and
   86627         KURL::fileSystemPath
   86628 
   86629         * GNUmakefile.am: Add KURLGtk.cpp and SharedBufferGtk.cpp.
   86630         * platform/gtk/KURLGtk.cpp: Added.
   86631         (WebCore::KURL::fileSystemPath): Implemented.
   86632         * platform/gtk/SharedBufferGtk.cpp: Added.
   86633         (WebCore::SharedBuffer::createWithContentsOfFile): Implemented.
   86634         * platform/gtk/TemporaryLinkStubs.cpp: Remove the old stubs.
   86635 
   86636 2008-09-23  Alexey Proskuryakov  <ap (a] webkit.org>
   86637 
   86638         Reviewed by Oliver Hunt, okayed by Darin Adler.
   86639 
   86640         <rdar://problem/5575547> REGRESSION: ATOK has no phrase boundary on Safari/Mail.app
   86641 
   86642         * rendering/InlineTextBox.cpp:
   86643         (WebCore::InlineTextBox::paintCompositionUnderline): Add 2 pixel spacing between clauses.
   86644 
   86645 2008-09-23  Alexey Proskuryakov  <ap (a] webkit.org>
   86646 
   86647         Reviewed by Darin Adler.
   86648 
   86649         https://bugs.webkit.org/show_bug.cgi?id=21023
   86650         Don't use TEC for encodings supported by ICU
   86651 
   86652         * platform/text/mac/mac-encodings.txt: Removed x-mac-centraleurroman, x-mac-cyrillic,
   86653         x-mac-greek, and x-mac-turkish.
   86654 
   86655         * platform/text/TextCodecICU.cpp: (WebCore::TextCodecICU::registerExtendedEncodingNames):
   86656         Register aliases for these encodings that are not registered automatically; updated comments.
   86657 
   86658 2008-09-23  Maciej Stachowiak  <mjs (a] apple.com>
   86659 
   86660         Reviewed by Darin.
   86661 
   86662         - speed up instanceof some more
   86663         https://bugs.webkit.org/show_bug.cgi?id=20818
   86664 
   86665         ~2% speedup on EarleyBoyer
   86666 
   86667         (WebCore updates.)
   86668 
   86669         * bindings/js/JSQuarantinedObjectWrapper.h:
   86670         (WebCore::JSQuarantinedObjectWrapper::createStructureID):
   86671 
   86672 2008-09-22  Darin Adler  <darin (a] apple.com>
   86673 
   86674         Reviewed by Oliver Hunt.
   86675 
   86676         - fix https://bugs.webkit.org/show_bug.cgi?id=21008
   86677           getting pixels by index from CanvasPixelArray is unnecessarily slow
   86678 
   86679         * GNUmakefile.am: Added JSCanvasPixelArrayCustom.h.
   86680         * WebCore.vcproj/WebCore.vcproj: Ditto.
   86681         * WebCore.xcodeproj/project.pbxproj: Ditto.
   86682 
   86683         * bindings/js/JSCanvasPixelArrayCustom.cpp: Removed indexGetter and
   86684           indexSetter. These are now both inlined, so in the header.
   86685         * bindings/js/JSCanvasPixelArrayCustom.h: Added. The getByIndex
   86686           function is what's used for HasCustomIndexGetter. Also moved the
   86687           indexSetter function here.
   86688 
   86689         * bindings/scripts/CodeGeneratorJS.pm: Changed HasCustomIndexGetter
   86690           to use a getByIndex member function rather than an indexGetter static
   86691           member function in a property slot. This lets us avoid the property
   86692           slot mechanism's rule where it turns numeric property names into
   86693           strings in the identifier table, which is good because that's slow.
   86694           Also added a new property CustomHeader that allows IDL files to
   86695           introduce headers to be included -- useful when we have functions
   86696           that we want to inline into the binding.
   86697 
   86698         * html/CanvasPixelArray.idl: Added CustomHeader attribute.
   86699 
   86700 2008-09-23  Eric Seidel  <eric (a] webkit.org>
   86701 
   86702         No review, build fix only.
   86703 
   86704         Another blind stab in the dark.
   86705 
   86706         * svg/graphics/cg/SVGResourceClipperCg.cpp: Add missing header.
   86707 
   86708 2008-09-23  Eric Seidel  <eric (a] webkit.org>
   86709 
   86710         No review, build fix only.
   86711 
   86712         Third time's the charm, eh?  My local build is sadly still not done...
   86713 
   86714         * platform/graphics/AffineTransform.cpp: remove extra &
   86715         * platform/graphics/AffineTransform.h: remove extra &
   86716 
   86717 2008-09-22  Eric Seidel  <eric (a] webkit.org>
   86718 
   86719         No review, build fix only.
   86720 
   86721         * platform/graphics/AffineTransform.cpp: remove extra ;
   86722 
   86723 2008-09-22  Eric Seidel  <eric (a] webkit.org>
   86724 
   86725         No review, build fix only.
   86726 
   86727         Speculative fix for the build while I wait for my compile to finish.
   86728 
   86729         * platform/graphics/AffineTransform.cpp:
   86730 
   86731 2008-09-22  Dirk Schulze  <vbs85 (a] gmx.de>
   86732 
   86733         Reviewed by eseidel.  Landed by eseidel.
   86734 
   86735         Moved makeMapBetweenRects from SVG/CG to AffineTransform
   86736         Make SVGResourceClipper::applyClip more cross-platform
   86737 
   86738         * platform/graphics/AffineTransform.cpp:
   86739         * platform/graphics/AffineTransform.h:
   86740         * svg/graphics/cg/CgSupport.cpp:
   86741         * svg/graphics/cg/CgSupport.h:
   86742         * svg/graphics/cg/SVGPaintServerGradientCg.cpp:
   86743         (WebCore::SVGPaintServerGradient::handleBoundingBoxModeAndGradientTransformation):
   86744         * svg/graphics/cg/SVGResourceClipperCg.cpp:
   86745         (WebCore::SVGResourceClipper::applyClip):
   86746 
   86747 2008-09-22  Alp Toker  <alp (a] nuanti.com>
   86748 
   86749         Reviewed by David Hyatt.
   86750 
   86751         https://bugs.webkit.org/show_bug.cgi?id=16331
   86752         [Gtk] no focus when button/checkbox/radiobutton clicked, only when tabbed
   86753 
   86754         Obey GTK+ focusing conventions for controls and anchor elements.
   86755 
   86756         It could be interesting to push these decisions up to Settings or
   86757         ChromeClient some day but this gets things working.
   86758 
   86759         Right and middle click events still need some work to match GTK+
   86760         conventions.
   86761 
   86762         * html/HTMLAnchorElement.cpp:
   86763         (WebCore::HTMLAnchorElement::isMouseFocusable):
   86764         * html/HTMLFormControlElement.cpp:
   86765         (WebCore::HTMLFormControlElement::isMouseFocusable):
   86766         * page/EventHandler.cpp:
   86767         (WebCore::EventHandler::sendContextMenuEvent):
   86768 
   86769 2008-09-22  Darin Adler  <darin (a] apple.com>
   86770 
   86771         * page/mac/FrameMac.mm:
   86772         (WebCore::Frame::baseWritingDirectionForSelectionStart): Fix indentation.
   86773 
   86774 2008-09-22  Sam Weinig  <sam (a] webkit.org>
   86775 
   86776         Reviewed by Dan Bernstein.
   86777 
   86778         Patch for https://bugs.webkit.org/show_bug.cgi?id=21013
   86779         Match Firefox in how we hide HTMLInputElement.selectionStart, selectionEnd
   86780         and setSelectionRange.  This also allows us to remove the legacy JSHTMLInputElementBase
   86781         class!
   86782 
   86783         - selectionStart, selectionEnd and setSelectionRange now are visible in iteration of
   86784           non-selectable input types, but return undefined when accessed.
   86785 
   86786         * DerivedSources.make:
   86787         * GNUmakefile.am:
   86788         * WebCore.pro:
   86789         * WebCore.vcproj/WebCore.vcproj:
   86790         * WebCore.xcodeproj/project.pbxproj:
   86791         * WebCoreSources.bkl:
   86792         * bindings/js/JSHTMLInputElementBase.cpp: Removed.
   86793         * bindings/js/JSHTMLInputElementBase.h: Removed.
   86794         * bindings/js/JSHTMLInputElementCustom.cpp: Added.
   86795         (WebCore::JSHTMLInputElement::customGetOwnPropertySlot):
   86796         (WebCore::JSHTMLInputElement::selectionStart):
   86797         (WebCore::JSHTMLInputElement::selectionEnd):
   86798         * bindings/js/JSHTMLInputElementCustom.h: Added.
   86799         * html/HTMLInputElement.idl:
   86800 
   86801 2008-09-22  Dan Bernstein  <mitz (a] apple.com>
   86802 
   86803         Reviewed by Sam Weinig.
   86804 
   86805         - fix <rdar://problem/5699571> Mail: Unable to change writing direction to LTR in an empty message
   86806 
   86807         Not testable in DumpRenderTree or in Safari
   86808 
   86809         * page/mac/FrameMac.mm:
   86810         (WebCore::Frame::baseWritingDirectionForSelectionStart): Account for the
   86811         case that the selection start node is a block.
   86812 
   86813 2008-09-22  David Hyatt  <hyatt (a] apple.com>
   86814 
   86815         https://bugs.webkit.org/show_bug.cgi?id=21007
   86816 
   86817         Make sure that the scrollbar gets sent a release event on platforms that call handleMouseDoubleClickEvent.
   86818 
   86819         Reviewed by Sam Weinig
   86820 
   86821         * page/EventHandler.cpp:
   86822         (WebCore::EventHandler::handleMouseDoubleClickEvent):
   86823 
   86824 2008-09-22  Eric Seidel  <eric (a] webkit.org>
   86825 
   86826         No review, rollback only.
   86827 
   86828         Roll out Peter's change (per his request)
   86829         http://trac.webkit.org/changeset/36069
   86830         https://bugs.webkit.org/show_bug.cgi?id=19663
   86831         This change has been the source of numerous regressions
   86832         (several of which were latent bugs revealed by this change,
   86833         others were bugs in this change)
   86834 
   86835         * platform/graphics/BitmapImage.cpp:
   86836         (WebCore::BitmapImage::BitmapImage):
   86837         (WebCore::BitmapImage::startAnimation):
   86838         (WebCore::BitmapImage::advanceAnimation):
   86839         * platform/graphics/BitmapImage.h:
   86840         * platform/graphics/cairo/ImageCairo.cpp:
   86841         (WebCore::BitmapImage::draw):
   86842         * platform/graphics/cg/ImageCG.cpp:
   86843         (WebCore::BitmapImage::draw):
   86844         * platform/graphics/qt/ImageQt.cpp:
   86845         (WebCore::BitmapImage::draw):
   86846         * platform/graphics/wx/ImageWx.cpp:
   86847         (WebCore::BitmapImage::draw):
   86848 
   86849 2008-09-22  Dan Bernstein  <mitz (a] apple.com>
   86850 
   86851         Reviewed by Sam Weinig.
   86852 
   86853         - fix <rdar://problem/5158514> Switch the complex text code path to Core Text
   86854 
   86855         Tests: platform/mac-snowleopard/fast/text/myanmar-shaping.html
   86856                platform/mac-snowleopard/fast/text/thai-combining-mark-positioning.html
   86857 
   86858         * config.h: Use Core Text if not building for Leopard or Tiger.
   86859 
   86860 2008-09-22  David Hyatt  <hyatt (a] apple.com>
   86861 
   86862         https://bugs.webkit.org/show_bug.cgi?id=21006
   86863 
   86864         Add code that paints an NSView-less scroller using HIThemeDrawTrack.  This scrollbar is still not
   86865         switched on.  There are still a few more refinements to make to the rendering and behavior.
   86866 
   86867         Reviewed by Darin Adler
   86868 
   86869         * platform/ScrollbarThemeComposite.cpp:
   86870         (WebCore::ScrollbarThemeComposite::paint):
   86871         * platform/ScrollbarThemeComposite.h:
   86872         (WebCore::ScrollbarThemeComposite::paintTrack):
   86873         (WebCore::ScrollbarThemeComposite::paintButton):
   86874         (WebCore::ScrollbarThemeComposite::paintThumb):
   86875         * platform/mac/ScrollbarThemeMac.h:
   86876         * platform/mac/ScrollbarThemeMac.mm:
   86877         (WebCore::ScrollbarThemeMac::backButtonRect):
   86878         (WebCore::ScrollbarThemeMac::forwardButtonRect):
   86879         (WebCore::scrollbarPartToHIPressedState):
   86880         (WebCore::ScrollbarThemeMac::paint):
   86881         * platform/mac/WidgetMac.mm:
   86882         (WebCore::Widget::invalidateRect):
   86883 
   86884 2008-09-22  Chris Marrin  <cmarrin (a] apple.com>
   86885 
   86886         Reviewed by Sam Weinig
   86887 
   86888         transition end event when -webkit-transition-property: all puts wrong
   86889         propertyName in event
   86890         https://bugs.webkit.org/show_bug.cgi?id=20903
   86891 
   86892         * page/animation/ImplicitAnimation.cpp:
   86893         (WebCore::ImplicitAnimation::sendTransitionEvent):
   86894 
   86895 2008-09-22  Chris Fleizach  <cfleizach (a] apple.com>
   86896 
   86897         Reviewed by Darin Adler.
   86898 
   86899         <rdar://problem/6230234> AXTable should probably not be exposed in there's only one cell
   86900 
   86901         Test: accessibility/table-one-cell.html
   86902 
   86903         * page/AccessibilityTable.cpp:
   86904         (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
   86905 
   86906 2008-09-22  Chris Fleizach  <cfleizach (a] apple.com>
   86907 
   86908         Reviewed by Darin Adler.
   86909 
   86910         <rdar://problem/6167779> Setting AXSelectedTextRange for TextAreas in a WebView behaves incorrectly
   86911 
   86912         Test: accessibility/textarea-selected-text-range.html
   86913 
   86914         * page/AccessibilityRenderObject.cpp:
   86915         (WebCore::AccessibilityRenderObject::setSelectedTextRange):
   86916 
   86917 2008-09-22  David Hyatt  <hyatt (a] apple.com>
   86918 
   86919         Clean up some parent relationships in the back end stylesheet code.  Make sure parentStyleSheet
   86920         properly walks up nested rule blocks to reach the parent sheet instead of giving up at the immediate
   86921         parent.  Also fix the doc() method so that it is properly set when the parent of the sheet is an import
   86922         rule.
   86923 
   86924         Reviewed by Sam Weinig
   86925 
   86926         Added fast/css/nested-rule-parent-sheet.html
   86927 
   86928          * css/CSSImportRule.cpp:
   86929         (WebCore::CSSImportRule::insertedIntoParent):
   86930         * css/CSSRule.cpp:
   86931         (WebCore::CSSRule::parentStyleSheet):
   86932         (WebCore::CSSRule::parentRule):
   86933         * css/CSSStyleSheet.cpp:
   86934         (WebCore::CSSStyleSheet::CSSStyleSheet):
   86935         * css/CSSStyleSheet.h:
   86936 
   86937 2008-09-22  Dan Bernstein  <mitz (a] apple.com>
   86938 
   86939         Reviewed by Sam Weinig.
   86940 
   86941         - fix https://bugs.webkit.org/show_bug.cgi?id=21002
   86942           Make the ATSUI code path respect spacingDisabled()
   86943 
   86944         Fixes svg/text/text-spacing-01-b.svg in run-webkit-tests --complex-text
   86945 
   86946         * platform/graphics/mac/FontMacATSUI.mm:
   86947         (WebCore::overrideLayoutOperation):
   86948 
   86949 2008-09-22  Maciej Stachowiak  <mjs (a] apple.com>
   86950 
   86951         Reviewed by Cameron Zwarich.
   86952 
   86953         - speed up instanceof operator by replacing implementsHasInstance method with a TypeInfo flag
   86954 
   86955         Partial work towards <https://bugs.webkit.org/show_bug.cgi?id=20818>
   86956 
   86957         2.2% speedup on EarleyBoyer benchmark.
   86958 
   86959         * bindings/js/JSQuarantinedObjectWrapper.cpp:
   86960         * bindings/js/JSQuarantinedObjectWrapper.h:
   86961         (WebCore::JSQuarantinedObjectWrapper::createStructureID):
   86962         * bindings/scripts/CodeGeneratorJS.pm:
   86963 
   86964 2008-09-22  Adam Roben  <aroben (a] apple.com>
   86965 
   86966         Windows build fix
   86967 
   86968         * WebCore.vcproj/WebCore.vcproj: Add a missing </File> tag.
   86969 
   86970 2008-09-22  Maciej Stachowiak  <mjs (a] apple.com>
   86971 
   86972         Reviewed by Dave Hyatt.
   86973 
   86974         Based on initial work by Darin Adler.
   86975 
   86976         - replace masqueradesAsUndefined virtual method with a flag in TypeInfo
   86977         - use this to JIT inline code for eq_null and neq_null
   86978         https://bugs.webkit.org/show_bug.cgi?id=20823
   86979 
   86980         * WebCore.xcodeproj/project.pbxproj:
   86981         * WebCore.vcproj/WebCore.vcproj:
   86982         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
   86983         (WebCore::JSCSSStyleDeclaration::nameGetter):
   86984         * bindings/js/JSHTMLAllCollection.cpp: Added.
   86985         (WebCore::):
   86986         * bindings/js/JSHTMLAllCollection.h:
   86987         (WebCore::JSHTMLAllCollection::createStructureID):
   86988         (WebCore::JSHTMLAllCollection::toBoolean):
   86989 
   86990 2008-09-22  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   86991 
   86992         Reviewed by Simon.
   86993 
   86994         Fix the QtWebKit build
   86995 
   86996         * bridge/qt/qt_instance.cpp:
   86997         (JSC::Bindings::QtRuntimeObjectImp::construct):
   86998         * bridge/qt/qt_runtime.cpp:
   86999 
   87000 2008-09-22  Alp Toker  <alp (a] nuanti.com>
   87001 
   87002         Suggested by David Hyatt.
   87003 
   87004         Build fix: ScrollView::update() is still used by Document.cpp on !MAC
   87005         so make it public.
   87006 
   87007         * platform/ScrollView.h:
   87008 
   87009 2008-09-22  David Hyatt  <hyatt (a] apple.com>
   87010 
   87011         Fix a regression in Windows scrollbar painting.  (Also fix the same
   87012         bug in my new viewless Mac scrollbar painting code).  The track rect
   87013         was being improperly inflated when painting resulting in the scrollbar
   87014         being too tall and painting in the border of overflow sections.
   87015 
   87016         Reviewed by Oliver Hunt
   87017 
   87018         * platform/mac/ScrollbarThemeMac.mm:
   87019         (WebCore::ScrollbarThemeMac::trackRect):
   87020         * platform/win/ScrollbarThemeSafari.cpp:
   87021         (WebCore::ScrollbarThemeSafari::trackRect):
   87022 
   87023 2008-09-22  David Hyatt  <hyatt (a] apple.com>
   87024 
   87025         Fix a hit testing bug where events are mistakenly passed to subframes
   87026         if the mouse is over the border or padding area of the frame.  Add
   87027         a boolean flag, isOverWidget(), to hit test results so that EventHandler
   87028         can check it to tell if the mouse is really over the content box of a
   87029         RenderWidget and not just in the border/padding area.
   87030 
   87031         This is not testable, since the old code properly recovered when it detected
   87032         that the mouse was outside the bounds of the view, but this prevents
   87033         the extra passdown from even occurring (and is basically a nice cleanup).
   87034 
   87035         Reviewed by Oliver Hunt
   87036 
   87037         * page/EventHandler.cpp:
   87038         (WebCore::EventHandler::handleMousePressEvent):
   87039         (WebCore::EventHandler::hitTestResultAtPoint):
   87040         (WebCore::subframeForHitTestResult):
   87041         (WebCore::EventHandler::handleMouseDoubleClickEvent):
   87042         (WebCore::EventHandler::handleMouseMoveEvent):
   87043         (WebCore::EventHandler::handleMouseReleaseEvent):
   87044         (WebCore::EventHandler::handleWheelEvent):
   87045         * page/MouseEventWithHitTestResults.h:
   87046         (WebCore::MouseEventWithHitTestResults::isOverWidget):
   87047         * rendering/HitTestResult.cpp:
   87048         (WebCore::HitTestResult::HitTestResult):
   87049         (WebCore::HitTestResult::operator=):
   87050         * rendering/HitTestResult.h:
   87051         (WebCore::HitTestResult::isOverWidget):
   87052         (WebCore::HitTestResult::setIsOverWidget):
   87053         * rendering/RenderWidget.cpp:
   87054         (WebCore::RenderWidget::nodeAtPoint):
   87055         * rendering/RenderWidget.h:
   87056 
   87057 2008-09-21  David Hyatt  <hyatt (a] apple.com>
   87058 
   87059         Rename FrameView's repaintRectangle method to repaintContentRectangle.  Make
   87060         both it and ScrollView's updateContents method be off-limits to everyone in
   87061         WebCore except for RenderView.
   87062 
   87063         Make repaintViewRectangle the only possible method for WebCore code to do
   87064         an invalidation.  This ensures that all invalidates triggered by WebCore
   87065         cross-platform code that cross ownerElement() boundaries are transform-aware.
   87066 
   87067         Make sure that iframes/frames contained inside objects that have transforms
   87068         or reflections are not allowed to blit (this was already true for transparency).
   87069 
   87070         It is not possible to make a test for any of this, since iframe scrolling
   87071         still doesn't work on Mac (since the invalidates are not being done
   87072         through WebCore's cross-platform invalidation code but are instead going
   87073         through NSScrollView's setNeedsDisplay still).
   87074 
   87075         Reviewed by Oliver Hunt
   87076 
   87077         * editing/SelectionController.cpp:
   87078         (WebCore::SelectionController::recomputeCaretRect):
   87079         (WebCore::SelectionController::invalidateCaretRect):
   87080         (WebCore::SelectionController::focusedOrActiveStateChanged):
   87081         * page/FrameView.cpp:
   87082         (WebCore::FrameView::repaintContentRectangle):
   87083         (WebCore::FrameView::endDeferredRepaints):
   87084         * page/FrameView.h:
   87085         * platform/ScrollView.h:
   87086         * rendering/RenderBox.cpp:
   87087         (WebCore::RenderBox::paintFillLayerExtended):
   87088         * rendering/RenderLayer.cpp:
   87089         (WebCore::RenderLayer::enclosingPositionedAncestor):
   87090         (WebCore::RenderLayer::requiresSlowRepaints):
   87091         * rendering/RenderLayer.h:
   87092         (WebCore::RenderLayer::hasTransform):
   87093         * rendering/RenderView.cpp:
   87094         (WebCore::RenderView::paintBoxDecorations):
   87095         (WebCore::RenderView::repaintViewRectangle):
   87096         (WebCore::RenderView::setSelection):
   87097 
   87098 2008-09-21  Maciej Stachowiak  <mjs (a] apple.com>
   87099 
   87100         Reviewed by Darin.
   87101 
   87102         - introduce a TypeInfo class, for holding per-type (in the C++ class sense) date in StructureID
   87103         https://bugs.webkit.org/show_bug.cgi?id=20981
   87104 
   87105         * bindings/js/JSAudioConstructor.cpp:
   87106         (WebCore::JSAudioConstructor::JSAudioConstructor):
   87107         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
   87108         (WebCore::JSCSSStyleDeclaration::nameGetter):
   87109         * bindings/js/JSDOMBinding.cpp:
   87110         (WebCore::createDOMStructure):
   87111         * bindings/js/JSDOMBinding.h:
   87112         (WebCore::getDOMStructure):
   87113         * bindings/js/JSDOMWindowShell.cpp:
   87114         (WebCore::JSDOMWindowShell::JSDOMWindowShell):
   87115         (WebCore::JSDOMWindowShell::setWindow):
   87116         * bindings/js/JSEventTargetNode.cpp:
   87117         (WebCore::JSEventTargetNode::createPrototype):
   87118         * bindings/js/JSHTMLOptionElementConstructor.cpp:
   87119         (WebCore::JSHTMLOptionElementConstructor::JSHTMLOptionElementConstructor):
   87120         * bindings/js/JSImageConstructor.cpp:
   87121         (WebCore::JSImageConstructor::JSImageConstructor):
   87122         * bindings/js/JSXMLHttpRequestConstructor.cpp:
   87123         (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
   87124         * bindings/js/JSXSLTProcessorConstructor.cpp:
   87125         (WebCore::JSXSLTProcessorConstructor::JSXSLTProcessorConstructor):
   87126         * bindings/scripts/CodeGeneratorJS.pm:
   87127 
   87128 2008-09-21  Darin Adler  <darin (a] apple.com>
   87129 
   87130         Reviewed by Maciej Stachowiak.
   87131 
   87132         - fix problem Maciej noticed where every JSNamedNodesCollection
   87133           gets its own StructureID
   87134 
   87135         * bindings/js/JSNamedNodesCollection.cpp:
   87136         (WebCore::JSNamedNodesCollection::JSNamedNodesCollection): Use
   87137         getDOMStructure to get the structure.
   87138         * bindings/js/JSNamedNodesCollection.h:
   87139         (WebCore::JSNamedNodesCollection::createPrototype): Return the
   87140         object prototype.
   87141 
   87142 2008-09-20  David Hyatt  <hyatt (a] apple.com>
   87143 
   87144         Make sure transformed scrollbars in overflow sections position
   87145         properly.  This patch mimics the same behavior that works for
   87146         iframes, namely making sure that the same code that dynamically
   87147         adjusts iframe widget positions at paint time for fixed positioning
   87148         and transforms also applies to scrollbars.  (This is as simple as passing
   87149         in the current translation factor at paint time rather than crawling
   87150         up the layer tree to compute a "false" absolute position.)
   87151 
   87152         An existing transform test covers this (although only a pixel result
   87153         reveals the correct rendering).
   87154 
   87155         Reviewed by Darin Adler
   87156 
   87157         * rendering/RenderLayer.cpp:
   87158         (WebCore::RenderLayer::updateLayerPositions):
   87159         (WebCore::RenderLayer::positionOverflowControls):
   87160         (WebCore::RenderLayer::paintOverflowControls):
   87161         (WebCore::RenderLayer::paintLayer):
   87162         * rendering/RenderLayer.h:
   87163 
   87164 2008-09-21  Steve Falkenburg  <sfalken (a] apple.com>
   87165 
   87166         Removed unnecessary nested timer check.
   87167 
   87168         Rubber-stamped by Dan Bernstein.
   87169 
   87170         * platform/win/SharedTimerWin.cpp:
   87171         (WebCore::TimerWindowWndProc):
   87172 
   87173 2008-09-21  Steve Falkenburg  <sfalken (a] apple.com>
   87174 
   87175         Improve timer resolution on WinXP.
   87176         https://bugs.webkit.org/show_bug.cgi?id=20979
   87177 
   87178         Removed last-chance timer. It should not be necessary.
   87179         Change timeEndPeriod timer to fire in 300ms instead of 20ms. Calling timeBeginPeriod/timeEndPeriod too often throws off accuracy.
   87180         Remove Vista checks. We now run the same code on both XP and Vista.
   87181 
   87182         Call through to JSC::getCurrentUTCTimeWithMicroseconds from WebCore::currentTime.
   87183         The code previously called GetSystemTimeAsFileTime, which is always low-resolution on XP, even within timeBeginPeriod(1).
   87184 
   87185         Reviewed by Maciej Stachowiak.
   87186 
   87187         * platform/win/SharedTimerWin.cpp:
   87188         (WebCore::):
   87189         (WebCore::TimerWindowWndProc):
   87190         (WebCore::setSharedTimerFireTime):
   87191         * platform/win/SystemTimeWin.cpp:
   87192         (WebCore::currentTime):
   87193 
   87194 2008-09-21  Dirk Schulze  <vbs85 (a] gmx.de>
   87195 
   87196         Reviewed by eseidel.  Landed by eseidel.
   87197 
   87198         All platforms use the DashArray in the GraphicsContext.
   87199 
   87200         * svg/graphics/SVGPaintServer.h:
   87201         * svg/graphics/cairo/SVGPaintServerGradientCairo.cpp:
   87202         (WebCore::SVGPaintServerGradient::setup):
   87203         * svg/graphics/cairo/SVGPaintServerPatternCairo.cpp:
   87204         (WebCore::SVGPaintServerPattern::setup):
   87205         * svg/graphics/cairo/SVGPaintServerSolidCairo.cpp:
   87206         (WebCore::SVGPaintServerSolid::setup):
   87207         * svg/graphics/qt/SVGPaintServerGradientQt.cpp:
   87208         (WebCore::SVGPaintServerGradient::setup):
   87209         * svg/graphics/qt/SVGPaintServerQt.cpp:
   87210         * svg/graphics/qt/SVGPaintServerSolidQt.cpp:
   87211         (WebCore::SVGPaintServerSolid::setup):
   87212 
   87213 2008-09-21  Dirk Schulze  <vbs85 (a] gmx.de>
   87214 
   87215         Reviewed by eseidel.  Landed by eseidel.
   87216 
   87217         Moved DashArray to GraphicsContext.
   87218 
   87219         * GNUmakefile.am:
   87220         * WebCore.vcproj/WebCore.vcproj:
   87221         * WebCore.xcodeproj/project.pbxproj:
   87222         * platform/graphics/DashArray.h: Added.
   87223         * platform/graphics/GraphicsContext.h:
   87224         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   87225         (WebCore::GraphicsContext::setLineDash):
   87226         * platform/graphics/cg/GraphicsContextCG.cpp:
   87227         (WebCore::GraphicsContext::setLineDash):
   87228         * platform/graphics/qt/GraphicsContextQt.cpp:
   87229         (WebCore::GraphicsContext::setLineDash):
   87230         * svg/graphics/SVGPaintServer.cpp:
   87231         (WebCore::applyStrokeStyleToContext):
   87232         * svg/graphics/SVGPaintServer.h:
   87233         * svg/graphics/cg/CgSupport.cpp:
   87234         * svg/graphics/cg/CgSupport.h:
   87235 
   87236 2008-09-21  Dan Bernstein  <mitz (a] apple.com>
   87237 
   87238         Reviewed by Mark Rowe.
   87239 
   87240         - fix linker warnings
   87241 
   87242         * WebCore.base.exp:
   87243 
   87244 2008-09-20  Darin Adler  <darin (a] apple.com>
   87245 
   87246         - another try at fixing Qt
   87247 
   87248         * bridge/qt/qt_runtime.cpp: "using namespce WebCore"
   87249 
   87250 2008-09-20  Darin Adler  <darin (a] apple.com>
   87251 
   87252         - blind attempt to fix Qt build
   87253 
   87254         * bridge/qt/qt_runtime.cpp:
   87255         (JSC::Bindings::convertQVariantToValue): Use regExpStructure instead
   87256         of regExpPrototype to make a RegExpObject. There should really be
   87257         some sort of public helper function for this. Same thing for
   87258         DateInstance and dateStructure. For JSObject, use constructEmptyObject.
   87259         (JSC::Bindings::):
   87260         (JSC::Bindings::QtRuntimeMethod::QtRuntimeMethod): Use getDOMStructure.
   87261         It is not correct to do this inside the constructor because it could
   87262         cause a garbage collect while the QtRuntimeMethod object is half-
   87263         allocated, which could lead to a crash; note that RuntimeMethod,
   87264         QtRuntimeObjectImp, and RuntimeObjectImp have the same bug.
   87265         * bridge/qt/qt_runtime.h: Add s_info and createPrototype.
   87266 
   87267 2008-09-20  Collin Jackson  <collinj (a] webkit.org>
   87268 
   87269         Prefetch DNS for hyperlinks that the user mouses over.
   87270 
   87271         https://bugs.webkit.org/show_bug.cgi?id=20931
   87272 
   87273         Reviewed by Sam Weinig.
   87274 
   87275         * page/Chrome.cpp:
   87276         (WebCore::Chrome::mouseDidMoveOverElement):
   87277 
   87278 2008-09-20  Darin Adler  <darin (a] apple.com>
   87279 
   87280         Reviewed by Maciej Stachowiak.
   87281 
   87282         - finish https://bugs.webkit.org/show_bug.cgi?id=20858
   87283           make each distinct C++ class get a distinct JSC::Structure
   87284 
   87285         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
   87286         (WebCore::JSCSSStyleDeclaration::nameGetter): Pass in a structure
   87287         ID. Note that this makes a new structure every time -- we could
   87288         optimize this slightly be caching and reusing a single one.
   87289 
   87290         * bridge/runtime_method.cpp:
   87291         (JSC::RuntimeMethod::RuntimeMethod): Create a unique structure using
   87292         getDOMStructure.
   87293         * bridge/runtime_method.h:
   87294         (JSC::RuntimeMethod::createPrototype): Added createPrototype so
   87295         getDOMStructure will work.
   87296 
   87297         * bindings/js/JSDOMWindowShell.cpp:
   87298         (WebCore::JSDOMWindowShell::JSDOMWindowShell): Initialize m_window to
   87299         0; needed in case garbage collection happens while creating the
   87300         JSDOMWindow.
   87301 
   87302 2008-09-20  Dan Bernstein  <mitz (a] apple.com>
   87303 
   87304         Reviewed by Eric Seidel.
   87305 
   87306         - fix https://bugs.webkit.org/show_bug.cgi?id=20950
   87307           <rdar://problem/6234059> Reproducible assertion failure running svg/custom/acid3-test-77.html multiple times under guard malloc
   87308 
   87309         * svg/SVGTextContentElement.cpp:
   87310         (WebCore::SVGInlineTextBoxQueryWalker::chunkPortionCallback): Changed to
   87311         not include the first character in the extraCharsAvailable count.
   87312 
   87313 2008-09-20  Kevin Ollivier  <kevino (a] theolliviers.com>
   87314 
   87315         Reviewed by Dan Bernstein.
   87316 
   87317         Fix memory leak.
   87318 
   87319         https://bugs.webkit.org/show_bug.cgi?id=20505
   87320 
   87321         * platform/wx/wxcode/mac/carbon/fontprops.cpp:
   87322         (GetTextExtent):
   87323 
   87324 2008-09-20  Kevin Ollivier  <kevino (a] theolliviers.com>
   87325 
   87326         wx build fixes. Added/removed build sources, and nativeWindow->platformWidget updates.
   87327 
   87328         * WebCoreSources.bkl:
   87329         * platform/ScrollView.h:
   87330         * platform/wx/PopupMenuWx.cpp:
   87331         (WebCore::PopupMenu::show):
   87332         * platform/wx/RenderThemeWx.cpp:
   87333         (WebCore::RenderThemeWx::paintButton):
   87334         (WebCore::RenderThemeWx::paintTextField):
   87335         (WebCore::RenderThemeWx::paintMenuList):
   87336         (WebCore::RenderThemeWx::paintMenuListButton):
   87337         * platform/wx/ScrollViewWx.cpp:
   87338         (WebCore::ScrollView::setPlatformWidget):
   87339         (WebCore::ScrollView::updateContents):
   87340         (WebCore::ScrollView::update):
   87341         (WebCore::ScrollView::visibleWidth):
   87342         (WebCore::ScrollView::visibleHeight):
   87343         (WebCore::ScrollView::scrollBy):
   87344         (WebCore::ScrollView::resizeContents):
   87345         (WebCore::ScrollView::contentsWidth):
   87346         (WebCore::ScrollView::contentsHeight):
   87347         (WebCore::ScrollView::isScrollViewScrollbar):
   87348         (WebCore::ScrollView::adjustScrollbars):
   87349         (WebCore::ScrollView::inWindow):
   87350         (WebCore::ScrollView::removeChild):
   87351         * platform/wx/WidgetWx.cpp:
   87352         * plugins/wx/PluginViewWx.cpp:
   87353         (WebCore::PluginView::setParentVisible):
   87354         (WebCore::PluginView::updatePluginWidget):
   87355 
   87356 2008-09-20  Timothy Hatcher  <timothy (a] apple.com>
   87357 
   87358         Fix the new Node Search button image to not be blurry.
   87359 
   87360         * page/inspector/Images/nodeSearchButtons.png:
   87361 
   87362 2008-09-20  Matt Lilek  <webkit (a] mattlilek.com>
   87363 
   87364         Reviewed by Tim Hatcher.
   87365 
   87366         Cut down some of the inspector javascript -> InspectorController glue code
   87367         with two new macros. Also rearrange the exposed function list to be grouped
   87368         by implementation and to all explicitly use the WebCore namespace.
   87369 
   87370         * page/InspectorController.cpp:
   87371         (WebCore::InspectorController::windowScriptObjectAvailable):
   87372 
   87373 2008-09-20  Matt Lilek  <webkit (a] mattlilek.com>
   87374 
   87375         Reviewed by Tim Hatcher.
   87376 
   87377         Fix regression from my previous patch where the breadcrumbs bar was not displayed.
   87378 
   87379         * page/inspector/inspector.css:
   87380 
   87381 2008-09-20  Nikolas Zimmermann  <zimmermann (a] kde.org>
   87382 
   87383         Reviewed by Eric.
   87384 
   87385         Refactor HTMLImageLoader/SVGImageLoader code.
   87386         Move html/HTMLImageLoader.* to loader/ImageLoader.*
   87387 
   87388         Let HTMLImageLoader & SVGImageLoader inherit from the new base class.
   87389         SVGImageLoader used to inherit from HTMLImageLoader which is awkward.
   87390 
   87391         * GNUmakefile.am:
   87392         * WebCore.pro:
   87393         * WebCore.vcproj/WebCore.vcproj:
   87394         * WebCore.xcodeproj/project.pbxproj:
   87395         * WebCoreSources.bkl:
   87396         * dom/Document.cpp:
   87397         (WebCore::Document::dispatchImageLoadEventSoon):
   87398         (WebCore::Document::removeImage):
   87399         (WebCore::Document::dispatchImageLoadEventsNow):
   87400         * dom/Document.h:
   87401         * html/HTMLImageLoader.cpp:
   87402         (WebCore::HTMLImageLoader::HTMLImageLoader):
   87403         (WebCore::HTMLImageLoader::~HTMLImageLoader):
   87404         (WebCore::HTMLImageLoader::sourceURI):
   87405         (WebCore::HTMLImageLoader::notifyFinished):
   87406         * html/HTMLImageLoader.h:
   87407         * loader/DocLoader.h:
   87408         * loader/ImageLoader.cpp: Copied from html/HTMLImageLoader.cpp.
   87409         (WebCore::ImageLoader::ImageLoader):
   87410         (WebCore::ImageLoader::~ImageLoader):
   87411         (WebCore::ImageLoader::setImage):
   87412         (WebCore::ImageLoader::setLoadingImage):
   87413         (WebCore::ImageLoader::updateFromElement):
   87414         (WebCore::ImageLoader::notifyFinished):
   87415         * loader/ImageLoader.h: Copied from html/HTMLImageLoader.h.
   87416         * svg/SVGImageElement.cpp:
   87417         (WebCore::SVGImageElement::attach):
   87418         (WebCore::SVGImageElement::insertedIntoDocument):
   87419         (WebCore::SVGImageElement::imageSourceAttributeName):
   87420         * svg/SVGImageElement.h:
   87421         * svg/SVGImageLoader.cpp:
   87422         (WebCore::SVGImageLoader::SVGImageLoader):
   87423         (WebCore::SVGImageLoader::dispatchLoadEvent):
   87424         (WebCore::SVGImageLoader::sourceURI):
   87425         * svg/SVGImageLoader.h:
   87426 
   87427 2008-09-20  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   87428 
   87429         Build fix.
   87430 
   87431         [qtwebkit] ScrollBar build fix after r36684.
   87432         BackButtonPart was split into Start and End Part
   87433         ForwardButtonPart was split into Start and End Part
   87434 
   87435         * platform/qt/ScrollbarThemeQt.cpp:
   87436         (WebCore::scPart):
   87437         (WebCore::scrollbarPart):
   87438         (WebCore::styleOptionSlider):
   87439 
   87440 2008-09-20  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   87441 
   87442         Build fix.
   87443 
   87444         [qtwebkit] Make qt_instance.cpp compile.
   87445         Revision of 36675 introduced getDOMStructure to give unique
   87446         structure id's to C++ classes. Catch up. RuntimeObjectImp assigns
   87447         the the StructureID inside the c'tor, do the same in QtRuntimeObjectImp
   87448 
   87449         * bridge/qt/qt_instance.cpp:
   87450         (JSC::Bindings::QtInstance::getRuntimeObject):
   87451 
   87452 2008-09-20  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   87453 
   87454         Reviewed by Nikolas Zimmermann.
   87455 
   87456         [svg] Change SVGLocatable to deal with a plain SVGElement
   87457         There is no requirement in the code that we have to have a
   87458         SVGStyledElement. Remove that artificial limitation and compile
   87459         with SVGElement.
   87460 
   87461         * svg/SVGLocatable.cpp:
   87462         * svg/SVGLocatable.h:
   87463 
   87464 2008-09-20  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   87465 
   87466         Reviewed by Nikolas Zimmermann.
   87467 
   87468         [svg] Use OwnPtr for the SVGExtensions to avoid custom lifetime
   87469         management.
   87470 
   87471         * dom/Document.cpp:
   87472         (WebCore::Document::~Document):
   87473         (WebCore::Document::svgExtensions):
   87474         (WebCore::Document::accessSVGExtensions):
   87475         * dom/Document.h:
   87476 
   87477 2008-09-19  David Hyatt  <hyatt (a] apple.com>
   87478 
   87479         Fix for crash in updateTransitions.  Make sure to test for a style
   87480         being null when comparing two RenderStyles.
   87481 
   87482         Reviewed by Oliver Hunt
   87483 
   87484         * page/animation/AnimationBase.cpp:
   87485         (WebCore::PropertyWrapperGetter::equals):
   87486 
   87487 2008-09-19  David Hyatt  <hyatt (a] apple.com>
   87488 
   87489         https://bugs.webkit.org/show_bug.cgi?id=20954
   87490 
   87491         Roll out r36628 since it has caused horrible regressions with
   87492         animated GIF CPU usage.
   87493 
   87494         * platform/graphics/BitmapImage.cpp:
   87495         (WebCore::BitmapImage::cacheFrame):
   87496         (WebCore::BitmapImage::startAnimation):
   87497         * platform/graphics/BitmapImage.h:
   87498         (WebCore::FrameData::FrameData):
   87499         * platform/graphics/cairo/ImageCairo.cpp:
   87500         (WebCore::FrameData::clear):
   87501         * platform/graphics/cg/ImageCG.cpp:
   87502         (WebCore::FrameData::clear):
   87503         * platform/graphics/qt/ImageQt.cpp:
   87504         (WebCore::FrameData::clear):
   87505         * platform/graphics/wx/ImageWx.cpp:
   87506         (WebCore::FrameData::clear):
   87507 
   87508 2008-09-20  Alp Toker  <alp (a] nuanti.com>
   87509 
   87510         Reviewed by Timothy Hatcher.
   87511 
   87512         https://bugs.webkit.org/show_bug.cgi?id=20913
   87513         Avoid redudant includes
   87514 
   87515         Document.h is included excessively such that a modification to Document.h (or
   87516         any of the header it includes itself) triggers a rebuild of many files
   87517         including the whole of SVG and a lot of the JS bindings.
   87518 
   87519         Some of these includes can be avoided by only including Document.h where
   87520         necessary.
   87521 
   87522         * bindings/js/JSAttrCustom.cpp:
   87523         * bindings/js/JSElementCustom.cpp:
   87524         * bindings/js/JSEventTargetBase.cpp:
   87525         * bindings/js/JSEventTargetBase.h:
   87526         * bindings/js/JSEventTargetNode.cpp:
   87527         * bindings/js/JSHTMLFrameElementCustom.cpp:
   87528         * bindings/js/JSHTMLIFrameElementCustom.cpp:
   87529         * bindings/scripts/CodeGeneratorJS.pm:
   87530         * css/CSSCursorImageValue.cpp:
   87531         * css/SVGCSSStyleSelector.cpp:
   87532         * dom/make_names.pl:
   87533         * svg/SVGAnimateElement.h:
   87534         * svg/SVGAnimatedProperty.h:
   87535         (WebCore::::baseValue):
   87536         (WebCore::::setBaseValue):
   87537         (WebCore::::startAnimation):
   87538         (WebCore::::stopAnimation):
   87539         * svg/SVGElement.cpp:
   87540         (WebCore::SVGElement::accessDocumentSVGExtensions):
   87541         * svg/SVGElement.h:
   87542         * svg/SVGElementInstance.cpp:
   87543         * svg/SVGFitToViewBox.cpp:
   87544         * svg/SVGFontElement.cpp:
   87545         * svg/SVGFontFaceElement.cpp:
   87546         * svg/SVGLinearGradientElement.cpp:
   87547         * svg/SVGMPathElement.cpp:
   87548         * svg/SVGViewSpec.cpp:
   87549 
   87550 2008-09-19  Nikolas Zimmermann  <zimmermann (a] kde.org>
   87551 
   87552         Reviewed by Antti & Eric.
   87553 
   87554         Fixes: https://bugs.webkit.org/show_bug.cgi?id=20372
   87555 
   87556         Finish HTMLScriptElement / SVGScriptElement unification.
   87557         SVG <script> support is complete now, full SVGLoad event
   87558         respecting the influence of the externalResourcesRequired attribute
   87559         as well as SVGError event support. All other features shared with HTML.
   87560 
   87561         Tests: fast/dom/HTMLScriptElement/script-reexecution.html
   87562                svg/dom/SVGScriptElement/script-change-externalResourcesRequired-while-loading.svg
   87563                svg/dom/SVGScriptElement/script-load-and-error-events.svg
   87564                svg/dom/SVGScriptElement/script-reexecution.svg
   87565                svg/dom/SVGScriptElement/script-set-href.svg
   87566 
   87567         * dom/ScriptElement.cpp:
   87568         (WebCore::ScriptElementData::ScriptElementData):
   87569         (WebCore::ScriptElementData::requestScript):
   87570         * dom/ScriptElement.h:
   87571         (WebCore::ScriptElementData::haveFiredLoadEvent):
   87572         (WebCore::ScriptElementData::setHaveFiredLoadEvent):
   87573         * dom/XMLTokenizer.cpp:
   87574         (WebCore::XMLTokenizer::notifyFinished):
   87575         * html/HTMLScriptElement.cpp:
   87576         (WebCore::HTMLScriptElement::dispatchLoadEvent):
   87577         * svg/SVGScriptElement.cpp:
   87578         (WebCore::SVGScriptElement::setCreatedByParser):
   87579         (WebCore::SVGScriptElement::parseMappedAttribute):
   87580         (WebCore::SVGScriptElement::svgAttributeChanged):
   87581         (WebCore::SVGScriptElement::insertedIntoDocument):
   87582         (WebCore::SVGScriptElement::removedFromDocument):
   87583         (WebCore::SVGScriptElement::childrenChanged):
   87584         (WebCore::SVGScriptElement::isURLAttribute):
   87585         (WebCore::SVGScriptElement::finishParsingChildren):
   87586         (WebCore::SVGScriptElement::type):
   87587         (WebCore::SVGScriptElement::setType):
   87588         (WebCore::SVGScriptElement::haveLoadedRequiredResources):
   87589         (WebCore::SVGScriptElement::dispatchLoadEvent):
   87590         (WebCore::SVGScriptElement::dispatchErrorEvent):
   87591         * svg/SVGScriptElement.h:
   87592 
   87593 2008-09-19  Dan Bernstein  <mitz (a] apple.com>
   87594 
   87595         Reviewed by John Sullivan.
   87596 
   87597         - fix https://bugs.webkit.org/show_bug.cgi?id=20951
   87598           Typo in Position::getInlineBoxAndOffset()
   87599           and add an assertion
   87600 
   87601         Without the fix, the newly-added assertion fails in platform/mac/editing/input/caret-primary-bidi.html
   87602 
   87603         * dom/Position.cpp:
   87604         (WebCore::Position::getInlineBoxAndOffset):
   87605         * rendering/InlineTextBox.cpp:
   87606         (WebCore::InlineTextBox::positionForOffset):
   87607 
   87608 2008-09-19  David Hyatt  <hyatt (a] apple.com>
   87609 
   87610         Add support for hit testing of all five possible scrollbar button placements.
   87611 
   87612         Reviewed by Sam Weinig
   87613 
   87614         * platform/ScrollbarThemeComposite.cpp:
   87615         (WebCore::ScrollbarThemeComposite::paint):
   87616         * platform/mac/ScrollbarThemeMac.mm:
   87617         (WebCore::):
   87618         (WebCore::ScrollbarThemeMac::backButtonRect):
   87619         (WebCore::ScrollbarThemeMac::forwardButtonRect):
   87620         (WebCore::ScrollbarThemeMac::trackRect):
   87621         (WebCore::ScrollbarThemeMac::paintButton):
   87622 
   87623 2008-09-19  Darin Adler  <darin (a] apple.com>
   87624 
   87625         - try to fix Qt build
   87626 
   87627         * bridge/qt/qt_instance.cpp:
   87628         (JSC::Bindings::QtRuntimeObjectImp::QtRuntimeObjectImp): Add structure argument.
   87629         (JSC::Bindings::QtInstance::getRuntimeObject): Ditto.
   87630         * bridge/runtime_object.cpp:
   87631         (JSC::RuntimeObjectImp::RuntimeObjectImp): Add an overload just for Qt.
   87632         * bridge/runtime_object.h: Ditto.
   87633 
   87634 2008-09-19  Chris Marrin  <cmarrin (a] apple.com>
   87635 
   87636         Reviewed by Dave Hyatt.
   87637 
   87638         Transition starts running when it shouldn't
   87639         https://bugs.webkit.org/show_bug.cgi?id=20892
   87640 
   87641         When there is a transition and an animation on the
   87642         same element, make sure the animation wins.
   87643 
   87644         The fix is to save the unanimated style when an animation is started.
   87645         Then, when starting a transition, check to see if there is a current
   87646         animation on the same prop. If so, use the unanimated style as the
   87647         fromStyle rather than the current style.
   87648 
   87649         Test: animations/transition-and-animation-1.html
   87650 
   87651         * page/animation/CompositeAnimation.cpp:
   87652         (WebCore::CompositeAnimation::updateTransitions):
   87653         (WebCore::CompositeAnimation::updateKeyframeAnimations):
   87654         (WebCore::CompositeAnimation::animate):
   87655         (WebCore::CompositeAnimation::getAnimationForProperty):
   87656         * page/animation/CompositeAnimation.h:
   87657         * page/animation/ImplicitAnimation.cpp:
   87658         (WebCore::ImplicitAnimation::reset):
   87659         * page/animation/ImplicitAnimation.h:
   87660         * page/animation/KeyframeAnimation.cpp:
   87661         (WebCore::KeyframeAnimation::hasAnimationForProperty):
   87662         * page/animation/KeyframeAnimation.h:
   87663         (WebCore::KeyframeAnimation::KeyframeAnimation):
   87664         (WebCore::KeyframeAnimation::unanimatedStyle):
   87665 
   87666 2008-09-19  David Hyatt  <hyatt (a] apple.com>
   87667 
   87668         Add support for painting/hit testing of four possible scrollbar buttons.
   87669         The Windows themes simply ignore the two parts that they will never
   87670         show.  The Mac theme also ignores the other two buttons for now.
   87671 
   87672         The cross-platform base for all three themes, ScrollbarThemeComposite,
   87673         has all the proper support though.
   87674 
   87675         Reviewed by Sam Weinig
   87676 
   87677         * platform/ScrollbarThemeComposite.cpp:
   87678         (WebCore::ScrollbarThemeComposite::hitTest):
   87679         (WebCore::ScrollbarThemeComposite::invalidatePart):
   87680         * platform/ScrollbarThemeComposite.h:
   87681         * platform/mac/ScrollbarThemeMac.h:
   87682         * platform/mac/ScrollbarThemeMac.mm:
   87683         (WebCore::ScrollbarThemeMac::backButtonRect):
   87684         (WebCore::ScrollbarThemeMac::forwardButtonRect):
   87685         (WebCore::ScrollbarThemeMac::paintButton):
   87686         * platform/win/ScrollbarThemeSafari.cpp:
   87687         (WebCore::ScrollbarThemeSafari::backButtonRect):
   87688         (WebCore::ScrollbarThemeSafari::forwardButtonRect):
   87689         (WebCore::ScrollbarThemeSafari::paintButton):
   87690         * platform/win/ScrollbarThemeSafari.h:
   87691         * platform/win/ScrollbarThemeWin.cpp:
   87692         (WebCore::ScrollbarThemeWin::backButtonRect):
   87693         (WebCore::ScrollbarThemeWin::forwardButtonRect):
   87694         (WebCore::ScrollbarThemeWin::paintButton):
   87695         * platform/win/ScrollbarThemeWin.h:
   87696 
   87697 2008-09-19  Matt Lilek  <webkit (a] mattlilek.com>
   87698 
   87699         Reviewed by Tim Hatcher.
   87700 
   87701         Bug 17772: Inspector should support point-and-click to select a node to inspect
   87702         https://bugs.webkit.org/show_bug.cgi?id=17772
   87703         <rdar://problem/5792395>
   87704 
   87705         * English.lproj/localizedStrings.js:
   87706         * page/Chrome.cpp:
   87707         (WebCore::Chrome::mouseDidMoveOverElement):
   87708         * page/EventHandler.cpp:
   87709         (WebCore::EventHandler::handleMousePressEvent):
   87710         * page/InspectorController.cpp:
   87711         (WebCore::toggleNodeSearch):
   87712         (WebCore::searchingForNode):
   87713         (WebCore::InspectorController::InspectorController):
   87714         (WebCore::InspectorController::toggleSearchForNodeInPage):
   87715         (WebCore::InspectorController::mouseDidMoveOverElement):
   87716         (WebCore::InspectorController::handleMousePressOnNode):
   87717         (WebCore::InspectorController::windowScriptObjectAvailable):
   87718         * page/InspectorController.h:
   87719         (WebCore::InspectorController::searchingForNodeInPage):
   87720         * page/inspector/ElementsPanel.js:
   87721         * page/inspector/Images/nodeSearchButtons.png: Added.
   87722         * page/inspector/inspector.css:
   87723 
   87724 2008-09-19  David Hyatt  <hyatt (a] apple.com>
   87725 
   87726         Add new scrollbar parts to be able to represent back and forward buttons
   87727         at either end of the scrollbar.  The current scrollbar still just draws
   87728         a single button at either end, but the parts now exist.
   87729 
   87730         Reviewed by Sam Weinig
   87731 
   87732         * platform/ScrollTypes.h:
   87733         (WebCore::):
   87734         * platform/Scrollbar.cpp:
   87735         (WebCore::Scrollbar::autoscrollTimerFired):
   87736         (WebCore::Scrollbar::pressedPartScrollDirection):
   87737         (WebCore::Scrollbar::pressedPartScrollGranularity):
   87738         (WebCore::Scrollbar::handleMouseMoveEvent):
   87739         * platform/ScrollbarTheme.h:
   87740         (WebCore::ScrollbarTheme::buttonsPlacement):
   87741         (WebCore::ScrollbarTheme::invalidateParts):
   87742         * platform/ScrollbarThemeComposite.cpp:
   87743         (WebCore::ScrollbarThemeComposite::paint):
   87744         (WebCore::ScrollbarThemeComposite::hitTest):
   87745         (WebCore::ScrollbarThemeComposite::invalidatePart):
   87746         * platform/ScrollbarThemeComposite.h:
   87747 
   87748 2008-09-19  Beth Dakin  <bdakin (a] apple.com>
   87749 
   87750         Reviewed by Dave Hyatt.
   87751 
   87752         Fix for <rdar://problem/6231308> crash in AutoTableLayout
   87753 
   87754         The code assumes later on that a TableSection's grid's row vector
   87755         will never be empty. So make 1 the minimum number of columns.
   87756 
   87757         * rendering/RenderTableSection.cpp:
   87758         (WebCore::RenderTableSection::ensureRows):
   87759 
   87760 2008-09-19  David Hyatt  <hyatt (a] apple.com>
   87761 
   87762         Add a new ScrollbarButtonsPlacement type for specifying where
   87763         the button arrows are in a scrollbar.
   87764 
   87765         Read in the placement settings for Mac.  Nothing is done with the
   87766         setting yet.
   87767 
   87768         Add a new buttonsPlacement() method to ScrollbarTheme composite
   87769         so that the arrow settings can be obtained.
   87770 
   87771         Reviewed by Sam Weinig
   87772 
   87773         * platform/ScrollTypes.h:
   87774         (WebCore::):
   87775         * platform/ScrollbarThemeComposite.h:
   87776         (WebCore::ScrollbarThemeComposite::buttonsPlacement):
   87777         * platform/mac/ScrollbarThemeMac.mm:
   87778         (WebCore::updateArrowPlacement):
   87779         (WebCore::ScrollbarThemeMac::ScrollbarThemeMac):
   87780 
   87781 2008-09-19  Steve Falkenburg  <sfalken (a] apple.com>
   87782 
   87783         Roll out r36626. It is causing variance in SunSpider numbers on XP.
   87784 
   87785         Rubber stamped by Mark Rowe.
   87786 
   87787         * platform/win/SharedTimerWin.cpp:
   87788         (WebCore::isRunningOnVistaOrLater):
   87789         (WebCore::setSharedTimerFireTime):
   87790 
   87791 2008-09-19  Kevin McCullough  <kmccullough (a] apple.com>
   87792 
   87793         Reviewed by Tim.
   87794 
   87795         https://bugs.webkit.org/show_bug.cgi?id=20942
   87796         Bug 20942: Repeated messages in resources don't collapse
   87797         - Now repeated messages in a resource's view are collapsed and a message
   87798         says how many were repeated.
   87799 
   87800         * English.lproj/localizedStrings.js:
   87801         * manual-tests/inspector/multiple-console-messages.html:
   87802         * page/inspector/Console.js: Send all the messages to the resource's
   87803         view before possibly returning early if the message is a repeat.
   87804         * page/inspector/SourceFrame.js: Add the text about the message being
   87805         repeated, if it is, and increment it when necessary.
   87806 
   87807 2008-09-19  Chris Fleizach  <cfleizach (a] apple.com>
   87808 
   87809         Removed unnecessary #if
   87810 
   87811         * page/mac/AccessibilityObjectWrapper.mm:
   87812 
   87813 2008-09-19  David Hyatt  <hyatt (a] apple.com>
   87814 
   87815         Read in prefs for the scroll delay repeat values for buttons.  Also
   87816         honor the option-click pref for jumping to the thumb when clicking in
   87817         the track.
   87818 
   87819         Reviewed by Sam Weinig
   87820 
   87821         * platform/mac/ScrollbarThemeMac.h:
   87822         * platform/mac/ScrollbarThemeMac.mm:
   87823         (WebCore::ScrollbarThemeMac::ScrollbarThemeMac):
   87824         (WebCore::ScrollbarThemeMac::initialAutoscrollTimerDelay):
   87825         (WebCore::ScrollbarThemeMac::autoscrollTimerDelay):
   87826         (WebCore::ScrollbarThemeMac::shouldCenterOnThumb):
   87827 
   87828 2008-09-19  David Hyatt  <hyatt (a] apple.com>
   87829 
   87830         Move ScrollbarThemeMac.cpp to ScrollbarThemeMac.mm so it can use Obj-C.
   87831         Set the initial button repeat delay to 0.5 for Mac.
   87832 
   87833         Reviewed by Sam Weinig
   87834 
   87835         * WebCore.xcodeproj/project.pbxproj:
   87836         * platform/mac/ScrollbarThemeMac.cpp: Removed.
   87837         * platform/mac/ScrollbarThemeMac.h:
   87838         (WebCore::ScrollbarThemeMac::initialAutoscrollTimerDelay):
   87839         * platform/mac/ScrollbarThemeMac.mm: Copied from platform/mac/ScrollbarThemeMac.cpp.
   87840 
   87841 2008-09-19  Darin Adler  <darin (a] apple.com>
   87842 
   87843         Reviewed by Sam Weinig.
   87844 
   87845         - part 2 of https://bugs.webkit.org/show_bug.cgi?id=20858
   87846           make each distinct C++ class get a distinct JSC::Structure
   87847 
   87848           + Fixed all cases where we were using a shared structure for multiple
   87849             C++ classes in WebCore. This still has to be done in JavaScriptCore.
   87850 
   87851           + Got rid of cacheGlobalObject.
   87852 
   87853           + Improved use of PassRefPtr in bindings code.
   87854 
   87855           + Removed a couple cases where we were potentially allocating prototypes
   87856             inside a JSObject's construction process -- this can lead to trouble if
   87857             we do a garbage collection while an object is only partly constructed.
   87858 
   87859         * bindings/js/JSAudioConstructor.cpp:
   87860         (WebCore::JSAudioConstructor::JSAudioConstructor): Create a structure explicitly
   87861         so we don't implicitly share the structure with other objects that use the object
   87862         prototype.
   87863 
   87864         * bindings/js/JSDOMBinding.cpp:
   87865         (WebCore::getCachedDOMConstructor): Added. To be used for constructors so we
   87866         don't need cacheGlobalObject any more.
   87867         (WebCore::cacheDOMConstructor): Ditto.
   87868 
   87869         * bindings/js/JSDOMBinding.h: Removed DOMObject constructor that takes a prototype.
   87870         Added functions and a function template for getting cached DOM constructors.
   87871         Removed cacheGlobalObject function template.
   87872 
   87873         * bindings/js/JSDOMWindowBase.cpp:
   87874         (WebCore::JSDOMWindowBase::JSDOMWindowBase): Take a PassRefPtr<DOMWindow> since
   87875         we're taking ownership.
   87876         * bindings/js/JSDOMWindowBase.h: Changed constructor to take PassRefPtr, since
   87877         we're taking ownership. Added constructor map.
   87878         * bindings/js/JSDOMWindowCustom.cpp:
   87879         (WebCore::JSDOMWindow::mark): Mark the constructors in the map.
   87880 
   87881         * bindings/js/JSDOMWindowShell.cpp:
   87882         (WebCore::JSDOMWindowShell::JSDOMWindowShell): Take a PassRefPtr<DOMWindow> since
   87883         we're taking ownership. Use the new setWindow function to create the JSDOMWindow;
   87884         this is now done in only that one place.
   87885         (WebCore::JSDOMWindowShell::setWindow): Added. Creates the JSDOMWindow based on
   87886         the passed-in DOMWindow. Code was moved here and changed to allocate unique
   87887         structures for both the window prototype and the window.
   87888         * bindings/js/JSDOMWindowShell.h: Ditto.
   87889 
   87890         * bindings/js/JSEventTargetBase.h: Changed class template argument so it doesn't
   87891         have the same name (JSEventTarget) as an actual class. Removed unhelpful use of
   87892         private/friend in JSEventTargetBase. Removed comments referring to defunct
   87893         macros. Changed JSEventTargetBasePrototype to get the prototype with the new
   87894         rather than its own copy of cacheGlobalObject (I missed this during pass 1).
   87895         Changed JSEventTargetBasePrototype so it doesn't have so many template arguments.
   87896 
   87897         * bindings/js/JSEventTargetNode.cpp: Added s_info; needed for the new scheme
   87898         for caching structures and prototypes.
   87899         (WebCore::JSEventTargetNode::JSEventTargetNode): Use PassRefPtr.
   87900         (WebCore::JSEventTargetNode::createPrototype): Added.
   87901         * bindings/js/JSEventTargetNode.h: Updated for above changes.
   87902 
   87903         * bindings/js/JSHTMLAllCollection.h:
   87904         (WebCore::JSHTMLAllCollection::JSHTMLAllCollection): Use PassRefPtr.
   87905         * bindings/js/JSHTMLCollectionCustom.cpp:
   87906         (WebCore::getNamedItems): Pass ExecState instead of prototype.
   87907         * bindings/js/JSHTMLFormElementCustom.cpp:
   87908         (WebCore::JSHTMLFormElement::nameGetter): Ditto.
   87909         * bindings/js/JSHTMLInputElementBase.cpp:
   87910         (WebCore::JSHTMLInputElementBase::JSHTMLInputElementBase): Use PassRefPtr.
   87911         * bindings/js/JSHTMLInputElementBase.h: Ditto.
   87912         * bindings/js/JSHTMLOptionElementConstructor.cpp:
   87913         (WebCore::JSHTMLOptionElementConstructor::JSHTMLOptionElementConstructor):
   87914         Create a unique structure instead of sharing.
   87915         * bindings/js/JSImageConstructor.cpp:
   87916         (WebCore::JSImageConstructor::JSImageConstructor): Ditto.
   87917 
   87918         * bindings/js/JSInspectedObjectWrapper.cpp:
   87919         (WebCore::JSInspectedObjectWrapper::wrap): Removed overload that takes
   87920         a prototype rather than a structure. Made the use of inheritorID() here
   87921         explicit.
   87922         * bindings/js/JSInspectedObjectWrapper.h: Ditto.
   87923         * bindings/js/JSInspectorCallbackWrapper.cpp:
   87924         (WebCore::JSInspectorCallbackWrapper::wrap): Ditto.
   87925         * bindings/js/JSInspectorCallbackWrapper.h: Ditto.
   87926 
   87927         * bindings/js/JSNamedNodesCollection.cpp:
   87928         (WebCore::JSNamedNodesCollection::JSNamedNodesCollection): Changed to
   87929         take an ExecState argument instead of a prototype. Create a unique
   87930         StructureID instead of sharing.
   87931         * bindings/js/JSNamedNodesCollection.h: Ditto.
   87932 
   87933         * bindings/js/JSQuarantinedObjectWrapper.cpp: Removed overloaded
   87934         constructor that takes a prototype instead of a structure.
   87935         * bindings/js/JSQuarantinedObjectWrapper.h: Ditto.
   87936 
   87937         * bindings/js/JSRGBColor.cpp:
   87938         (WebCore::JSRGBColor::JSRGBColor): Take ExecState instead of a
   87939         prototype; create a unique structure.
   87940         (WebCore::getJSRGBColor): Ditto.
   87941         * bindings/js/JSRGBColor.h: Ditto.
   87942 
   87943         * bindings/js/JSSQLResultSetRowListCustom.cpp:
   87944         (WebCore::JSSQLResultSetRowList::item): Use constructEmptyObject instead
   87945         of explicit coding the idiom for making a new object.
   87946 
   87947         * bindings/js/JSXMLHttpRequestConstructor.cpp:
   87948         (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
   87949         Create a unique structure instead of the shared one.
   87950         * bindings/js/JSXSLTProcessorConstructor.cpp:
   87951         (WebCore::JSXSLTProcessorConstructor::JSXSLTProcessorConstructor):
   87952         Ditto.
   87953 
   87954         * bindings/js/ScriptController.cpp:
   87955         (WebCore::ScriptController::clearWindowShell): Let the window shell's
   87956         setWindow function create the JSDOMWindow instead of doing it here.
   87957 
   87958         * bindings/scripts/CodeGeneratorJS.pm: Changed to use PassRefPtr for
   87959         the structure and the wrapped object when creating wrappers.
   87960         Simplified some of the special cases for DOMWindow so they are
   87961         different only in ways the need to be. Eliminated the
   87962         JSDOMWindow::createPrototype and JSDOMWindowPrototype::self
   87963         functions. Moved responsibility for creating the structure and
   87964         parent prototype out of the prototype constructor into the
   87965         createPrototype function. Removed the unused "DoNotCache" flag for
   87966         objects other than DOMWindow. Use getDOMConstructor instead of
   87967         cacheGlobalObject for constructors. Make each constructor have
   87968         a unique structure ID.
   87969 
   87970         * bridge/objc/objc_runtime.h: Added createPrototype and changed the
   87971         name of the info member to s_info so we can use the standard DOM
   87972         binding macros to handl the prototype.
   87973         * bridge/objc/objc_runtime.mm: Fixed namespacing a bit.
   87974         (JSC::Bindings::ObjcFallbackObjectImp::ObjcFallbackObjectImp):
   87975         Create a unique structure using getDOMStructure.
   87976 
   87977         * bridge/runtime_array.cpp: Fixed namespacing a bit.
   87978         (JSC::RuntimeArray::RuntimeArray): Create a unique structure using
   87979         getDOMStructure.
   87980         * bridge/runtime_array.h: Added createPrototype so getDOMStructure
   87981         will work.
   87982 
   87983         * bridge/runtime_object.cpp:
   87984         (JSC::RuntimeObjectImp::RuntimeObjectImp): Create a unique structure using
   87985         getDOMStructure.
   87986         * bridge/runtime_object.h: Added createPrototype so getDOMStructure
   87987         will work.
   87988 
   87989         * history/CachedPage.cpp:
   87990         (WebCore::CachedPage::restore): Let the window shell's
   87991         setWindow function create the JSDOMWindow instead of doing it here.
   87992 
   87993         * page/DOMWindow.idl: Removed DoNotCache, which is no longer used.
   87994 
   87995 2008-09-19  Dan Bernstein  <mitz (a] apple.com>
   87996 
   87997         Reviewed by Dave Hyatt.
   87998 
   87999         This optimization was suggested by Daniel Fenwick
   88000 
   88001         - speed up measuring text on the Core Text code path by not specifying a paragraph writing direction
   88002 
   88003         Specifying LTR paragraph directionality when measuring runs of RTL text
   88004         resulted in typically two CTRuns being generated for every run instead
   88005         of one, due to the leading space being reordered to the left.
   88006 
   88007         * platform/graphics/SimpleFontData.h: Removed the ltr parameter to
   88008         getCFStringAttributes() and changed m_CFStringAttributes from an array
   88009         to a single value.
   88010         * platform/graphics/mac/CoreTextController.cpp:
   88011         (WebCore::CoreTextController::CoreTextController): Added a
   88012         mayUseNaturalWritingDirection parameter.
   88013         (WebCore::CoreTextController::collectCoreTextRunsForCharacters): Changed
   88014         to force the bidi embedding level whenever
   88015         m_mayUseNaturalWritingDirectrion is false. Since this is now a common
   88016         case, made the typesetter options dictionaries static.
   88017         * platform/graphics/mac/CoreTextController.h:
   88018         * platform/graphics/mac/FontMacCoreText.cpp:
   88019         (WebCore::Font::selectionRectForComplexText): Renamed a local variable.
   88020         (WebCore::Font::floatWidthForComplexText): Changed to allow the
   88021         CoreTextController to not set the writing direction.
   88022         * platform/graphics/mac/SimpleFontDataMac.mm:
   88023         (WebCore::SimpleFontData::getCFStringAttributes): Removed the ltr
   88024         parameter and the paragraph style attribute.
   88025 
   88026 2008-09-19  David Hyatt  <hyatt (a] apple.com>
   88027 
   88028         Reviewed by Sam Weinig
   88029 
   88030         https://bugs.webkit.org/show_bug.cgi?id=20941
   88031 
   88032         Incorrect height calculation for replaced element inside nested
   88033         positioned elements (where the inner has a percentage height and
   88034         the outer implicitly has a fixed height because of explicit top/bottom
   88035         values).
   88036 
   88037         Added fast/block/positioning/replaced-inside-top-bottom.html
   88038 
   88039         * rendering/RenderBox.cpp:
   88040         (WebCore::RenderBox::availableHeightUsing):
   88041 
   88042 2008-09-19  Chris Fleizach  <cfleizach (a] apple.com>
   88043 
   88044         Fix Tiger bustage
   88045 
   88046         * page/mac/AccessibilityObjectWrapper.mm:
   88047 
   88048 2008-09-18  Chris Fleizach  <cfleizach (a] apple.com>
   88049 
   88050         Reviewed by Darin Adler.
   88051 
   88052         <rdar://problem/6211041> Expose legend tag in accessibility
   88053 
   88054         Exposes the legend tag as the titleUIElement of a fieldset
   88055 
   88056         Test: accessibility/legend.html
   88057 
   88058         * page/AccessibilityObject.h:
   88059         (WebCore::AccessibilityObject::isFieldset):
   88060         * page/AccessibilityRenderObject.cpp:
   88061         (WebCore::AccessibilityRenderObject::isFieldset):
   88062         (WebCore::AccessibilityRenderObject::titleUIElement):
   88063         * page/AccessibilityRenderObject.h:
   88064         * rendering/RenderFieldset.h:
   88065 
   88066 2008-09-19  Chris Fleizach  <cfleizach (a] apple.com>
   88067 
   88068         Reviewed by Darin Adler.
   88069 
   88070         <rdar://problem/6213171> WebKit should use new array-centric methods for AX performance
   88071 
   88072         Implement a few AX API methods that will be called by AppKit, which will
   88073         speed up access to accessibility objects
   88074 
   88075         * page/mac/AccessibilityObjectWrapper.mm:
   88076         (-[AccessibilityObjectWrapper accessibilityIndexOfChild:]):
   88077         (-[AccessibilityObjectWrapper accessibilityArrayAttributeCount:]):
   88078         (-[AccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]):
   88079 
   88080 2008-09-19  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   88081 
   88082         Reviewed by Simon Hausmann.
   88083 
   88084         [qtwebkit] Set the m_should* flags to their proper value on entry
   88085         With plugins it was possible that we finished a job twice. This was
   88086         some kind of reentrancy in QNetworkReplyHandler::sendQueuedItems. By
   88087         setting the flag to (m_loadMode == LoadDeferred) they will always have
   88088         the right value and we will not send responses twice.
   88089 
   88090         * platform/network/qt/QNetworkReplyHandler.cpp:
   88091 
   88092 2008-09-19  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   88093 
   88094         Reviewed by Simon Hausmann.
   88095 
   88096         [qtwebkit] Pass test 70 of acid3. Handle text decoding errors
   88097         Handle text decoding errors before instructing the parser to parse. We
   88098         have converted the text to QString and all encoding errors are gone and
   88099         the parser will not be able to detect them. So handle them before parsing.
   88100 
   88101         * dom/XMLTokenizerQt.cpp:
   88102         (WebCore::XMLTokenizer::doWrite):
   88103 
   88104 2008-09-18  Darin Adler  <darin (a] apple.com>
   88105 
   88106         Reviewed by Maciej Stachowiak.
   88107 
   88108         - part 1 of https://bugs.webkit.org/show_bug.cgi?id=20858
   88109           make each distinct C++ class get a distinct JSC::Structure
   88110 
   88111         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
   88112         (WebCore::JSCSSStyleDeclaration::customPut): Use setDOMException
   88113         instead of DOMExceptionTranslator.
   88114 
   88115         * bindings/js/JSDOMBinding.cpp:
   88116         (WebCore::getCachedDOMObjectWrapper): Updated function name.
   88117         (WebCore::cacheDOMObjectWrapper): Ditto.
   88118         (WebCore::forgetDOMObject): Ditto.
   88119         (WebCore::getCachedDOMNodeWrapper): Ditto.
   88120         (WebCore::forgetDOMNode): Ditto.
   88121         (WebCore::cacheDOMNodeWrapper): Ditto.
   88122         (WebCore::forgetAllDOMNodesForDocument): Ditto.
   88123         (WebCore::markDOMNodesForDocument): Ditto.
   88124         (WebCore::updateDOMNodeDocument): Ditto.
   88125         (WebCore::getCachedDOMStructure): Added.
   88126         (WebCore::createDOMStructure): Ditto.
   88127 
   88128         * bindings/js/JSDOMBinding.h: Get rid of the ScriptInterpreter
   88129         class and replace the static member functions with non-member
   88130         functions. Added many other functions for getting at structures,
   88131         prototypes, wrappers, and creating them. Also moved the
   88132         cacheGlobalObject function here from JavaScriptCore; eventually
   88133         I'll remove that once I get rid of the remaining callers. Also
   88134         removed the DOMExceptionTranslator class.
   88135 
   88136         * bindings/js/JSDOMWindowBase.h: Added JSDOMStructureMap type,
   88137         and put one of those maps in each window.
   88138 
   88139         * bindings/js/JSDOMWindowCustom.cpp:
   88140         (WebCore::markDOMObjectWrapper): Updated for function name change.
   88141         (WebCore::JSDOMWindow::mark): Added code to mark all the structures
   88142         in the structure map.
   88143 
   88144         * bindings/js/JSEventTargetNode.cpp:
   88145         (WebCore::JSEventTargetNode::JSEventTargetNode): Changed to take
   88146         a structure instead of a prototype.
   88147         * bindings/js/JSEventTargetNode.h: Ditto.
   88148         * bindings/js/JSHTMLAllCollection.h:
   88149         (WebCore::JSHTMLAllCollection::JSHTMLAllCollection): Ditto.
   88150 
   88151         * bindings/js/JSHTMLInputElementBase.cpp:
   88152         (WebCore::JSHTMLInputElementBase::JSHTMLInputElementBase): Removed
   88153         use of the JSC_IMPLEMENT_PROTOTYPE macro, and changed to take a
   88154         structure instead of a prototype.
   88155         * bindings/js/JSHTMLInputElementBase.h: Removed use of the
   88156         JSC_DEFINE_PROTOTYPE_WITH_PROTOTYPE macro, and changed constructor
   88157         to take a structure instead of a prototype. Created a dummy prototype
   88158         class that causes the HTMLInputElement prototype to have the
   88159         HTMLElement prototype.
   88160 
   88161         * bindings/scripts/CodeGeneratorJS.pm: Change constructors to take
   88162         structures instead of prototypes. Changed the prototype self function
   88163         to use the getDOMPrototype function -- later we can eliminate it and
   88164         have callers invoke getDOMPrototype directly instead. Updated other
   88165         functions that have name changes. Added code to generate the
   88166         createPrototype member function. Changed use of cacheGlobalObject to
   88167         get it from the WebCore namespace instead of the JSC namespace.
   88168         Changed cacheDOMObject calls to use getDOMObjectWrapper instead.
   88169 
   88170         * dom/Document.cpp:
   88171         (WebCore::Document::~Document): Updated for name change and also
   88172         removed unnecessary JSLock use -- there's no need to lock around this.
   88173         * dom/Node.cpp:
   88174         (WebCore::Node::setDocument): Ditto.
   88175 
   88176         * dom/make_names.pl: Changed to use CREATE_DOM_NODE_WRAPPER macro
   88177         instead of calling new directly.
   88178 
   88179         * bindings/js/JSCSSRuleCustom.cpp:
   88180         (WebCore::toJS): Updated for function name changes and used the
   88181         CREATE_DOM_OBJECT_WRAPPER macro.
   88182         * bindings/js/JSCSSValueCustom.cpp:
   88183         (WebCore::toJS): Ditto.
   88184         * bindings/js/JSCanvasPixelArrayCustom.cpp:
   88185         (WebCore::toJS): Ditto.
   88186         * bindings/js/JSDocumentCustom.cpp:
   88187         (WebCore::JSDocument::mark): Ditto.
   88188         (WebCore::toJS): Ditto.
   88189         * bindings/js/JSElementCustom.cpp:
   88190         (WebCore::toJSNewlyCreated): Ditto.
   88191         * bindings/js/JSEventCustom.cpp:
   88192         (WebCore::toJS): Ditto.
   88193         * bindings/js/JSEventTargetBase.cpp:
   88194         (WebCore::jsEventTargetDispatchEvent): Use setDOMException instead
   88195         of DOMExceptionTranslator.
   88196         (WebCore::toJS): Updated for function name changes and used the
   88197         CREATE_DOM_OBJECT_WRAPPER macro.
   88198         * bindings/js/JSHTMLCollectionCustom.cpp:
   88199         (WebCore::toJS): Ditto.
   88200         * bindings/js/JSNodeCustom.cpp:
   88201         (WebCore::JSNode::mark): Ditto.
   88202         (WebCore::createWrapper): Ditto.
   88203         (WebCore::toJS): Ditto.
   88204         * bindings/js/JSSVGPathSegCustom.cpp:
   88205         (WebCore::toJS): Ditto.
   88206         * bindings/js/JSStyleSheetCustom.cpp:
   88207         (WebCore::toJS): Ditto.
   88208         (WebCore::JSStyleSheet::mark): Ditto.
   88209         * bindings/js/JSTextCustom.cpp:
   88210         (WebCore::toJSNewlyCreated): Ditto.
   88211         * bindings/js/JSXMLHttpRequestConstructor.cpp:
   88212         (WebCore::constructXMLHttpRequest): Ditto.
   88213         * bindings/js/JSXMLHttpRequestCustom.cpp:
   88214         (WebCore::JSXMLHttpRequest::mark): Ditto.
   88215         * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
   88216         (WebCore::JSXMLHttpRequestUpload::mark): Ditto.
   88217         * bindings/js/JSXSLTProcessorConstructor.cpp:
   88218         (WebCore::constructXSLTProcessor): Ditto.
   88219         * bindings/js/ScriptController.cpp:
   88220         (WebCore::ScriptController::finishedWithEvent): Ditto.
   88221         * xml/XMLHttpRequest.cpp:
   88222         (WebCore::XMLHttpRequest::loadRequestAsynchronously): Ditto.
   88223         (WebCore::XMLHttpRequest::dropProtection): Ditto.
   88224 
   88225 2008-09-18  David Hyatt  <hyatt (a] apple.com>
   88226 
   88227         This patch gets a viewless scrollbar working on Mac. It is turned off
   88228         by default.  Hit testing works.  For now the scrollbar just paints ugly
   88229         debug rects in the place of the buttons, track and thumb.  It does match
   88230         Aqua metrics though.
   88231 
   88232         Reviewed by Sam Weinig
   88233 
   88234         * WebCore.xcodeproj/project.pbxproj:
   88235         * page/mac/EventHandlerMac.mm:
   88236         (WebCore::EventHandler::passMousePressEventToScrollbar):
   88237         * platform/ScrollbarThemeComposite.cpp:
   88238         (WebCore::ScrollbarThemeComposite::paint):
   88239         (WebCore::ScrollbarThemeComposite::trackPosition):
   88240         * platform/ScrollbarThemeComposite.h:
   88241         * platform/mac/ScrollViewMac.mm:
   88242         (WebCore::ScrollView::addChild):
   88243         * platform/mac/ScrollbarThemeMac.cpp:
   88244         (WebCore::):
   88245         (WebCore::ScrollbarThemeMac::hasButtons):
   88246         (WebCore::ScrollbarThemeMac::hasThumb):
   88247         (WebCore::buttonRepaintRect):
   88248         (WebCore::ScrollbarThemeMac::backButtonRect):
   88249         (WebCore::ScrollbarThemeMac::forwardButtonRect):
   88250         (WebCore::trackRepaintRect):
   88251         (WebCore::ScrollbarThemeMac::trackRect):
   88252         (WebCore::ScrollbarThemeMac::minimumThumbLength):
   88253         (WebCore::ScrollbarThemeMac::shouldCenterOnThumb):
   88254         (WebCore::ScrollbarThemeMac::paintTrack):
   88255         (WebCore::ScrollbarThemeMac::paintButton):
   88256         (WebCore::ScrollbarThemeMac::paintThumb):
   88257         * platform/mac/ScrollbarThemeMac.h:
   88258         (WebCore::ScrollbarThemeMac::supportsControlTints):
   88259         * platform/qt/ScrollbarThemeQt.cpp:
   88260         (WebCore::ScrollbarThemeQt::trackPosition):
   88261 
   88262 2008-09-18  Collin Jackson  <collinj (a] webkit.org>
   88263 
   88264         Build fix; added missing header file to GNUmakefile.am
   88265 
   88266         * GNUmakefile.am:
   88267 
   88268 2008-09-18  Sam Weinig  <sam (a] webkit.org>
   88269 
   88270         Reviewed by David "the Hair" Hyatt.
   88271 
   88272         Move DataRef, SVGRenderStyle and SVGRenderStyleDefs in render/style.
   88273 
   88274         * GNUmakefile.am:
   88275         * WebCore.pro:
   88276         * WebCore.vcproj/WebCore.vcproj:
   88277         * WebCore.xcodeproj/project.pbxproj:
   88278         * rendering/DataRef.h: Removed.
   88279         * rendering/SVGRenderStyle.cpp: Removed.
   88280         * rendering/SVGRenderStyle.h: Removed.
   88281         * rendering/SVGRenderStyleDefs.cpp: Removed.
   88282         * rendering/SVGRenderStyleDefs.h: Removed.
   88283         * rendering/style/DataRef.h: Copied from rendering/DataRef.h.
   88284         * rendering/style/SVGRenderStyle.cpp: Copied from rendering/SVGRenderStyle.cpp.
   88285         * rendering/style/SVGRenderStyle.h: Copied from rendering/SVGRenderStyle.h.
   88286         * rendering/style/SVGRenderStyleDefs.cpp: Copied from rendering/SVGRenderStyleDefs.cpp.
   88287         * rendering/style/SVGRenderStyleDefs.h: Copied from rendering/SVGRenderStyleDefs.h.
   88288 
   88289 2008-09-18  Mark Rowe  <mrowe (a] apple.com>
   88290 
   88291         Reviewed by Dan Bernstein.
   88292 
   88293         Add a means of clearing a FrameTree's name.
   88294 
   88295         * WebCore.base.exp:
   88296         * page/FrameTree.cpp:
   88297         (WebCore::FrameTree::clearName):
   88298         * page/FrameTree.h:
   88299 
   88300 2008-09-18  David Hyatt  <hyatt (a] apple.com>
   88301 
   88302         Eliminate addToSuperview from Widget, since it was only called
   88303         by ScrollViewMac's addChild method.  Just shift the original body
   88304         of addToSuperView into addChild.
   88305 
   88306         Reviewed by Sam Weinig
   88307 
   88308         * platform/Widget.h:
   88309         * platform/mac/ScrollViewMac.mm:
   88310         (WebCore::ScrollView::addChild):
   88311         * platform/mac/WidgetMac.mm:
   88312 
   88313 2008-09-18  Collin Jackson  <collinj (a] webkit.org>
   88314 
   88315         Reviewed by Antti Koivisto and Mark Rowe.
   88316 
   88317         Test: http/tests/misc/dns-prefetch-control.html
   88318 
   88319         https://bugs.webkit.org/show_bug.cgi?id=20690
   88320 
   88321         Invoke WebCore::prefetchDNS() on host names that appear in
   88322         in the href of hyperlinks and <link rel="dns-prefetch">. This
   88323         can be used to implement DNS prefetching.
   88324 
   88325         * WebCore.vcproj/WebCore.vcproj:
   88326         * WebCore.xcodeproj/project.pbxproj:
   88327         * dom/Document.cpp:
   88328         (WebCore::Document::Document):
   88329         (WebCore::Document::processHttpEquiv):
   88330         (WebCore::Document::setSecurityOrigin):
   88331         (WebCore::Document::initDNSPrefetch):
   88332         (WebCore::Document::parseDNSPrefetchControlHeader):
   88333         * dom/Document.h:
   88334         (WebCore::Document::isDNSPrefetchEnabled):
   88335         * html/HTMLAnchorElement.cpp:
   88336         (WebCore::HTMLAnchorElement::parseMappedAttribute):
   88337         * html/HTMLLinkElement.cpp:
   88338         (WebCore::HTMLLinkElement::HTMLLinkElement):
   88339         (WebCore::HTMLLinkElement::parseMappedAttribute):
   88340         (WebCore::HTMLLinkElement::tokenizeRelAttribute):
   88341         (WebCore::HTMLLinkElement::process):
   88342         * html/HTMLLinkElement.h:
   88343         * html/PreloadScanner.cpp:
   88344         (WebCore::PreloadScanner::processAttribute):
   88345         * loader/FrameLoader.cpp:
   88346         (WebCore::FrameLoader::begin):
   88347         * platform/gtk/TemporaryLinkStubs.cpp:
   88348         (WebCore::prefetchDNS):
   88349         * platform/network/DNS.h: Added.
   88350         * platform/network/cf/DNSCFNet.cpp: Added.
   88351         (WebCore::prefetchDNS):
   88352         * platform/qt/TemporaryLinkStubs.cpp:
   88353         (WebCore::prefetchDNS):
   88354         * platform/wx/TemporaryLinkStubs.cpp:
   88355         (WebCore::prefetchDNS):
   88356 
   88357 2008-09-18  David Hyatt  <hyatt (a] apple.com>
   88358 
   88359         Eliminate the convertToScreenCoordinate method on Widget, since
   88360         ScrollView has redundant methods that already do the same thing.
   88361 
   88362         Reviewed by Sam Weinig
   88363 
   88364         * editing/mac/SelectionControllerMac.mm:
   88365         (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
   88366         * platform/Widget.h:
   88367         * platform/mac/WidgetMac.mm:
   88368         (WebCore::Widget::containingWindow):
   88369 
   88370 2008-09-18  David Hyatt  <hyatt (a] apple.com>
   88371 
   88372         Move to only one constructor for Widgets.  Rename data to m_data and make
   88373         it have an #ifdef only for platforms that have platform-specific data (Mac
   88374         and Gtk).
   88375 
   88376         Reviewed by Sam Weinig
   88377 
   88378         * WebCore.base.exp:
   88379         * platform/Widget.cpp:
   88380         (WebCore::Widget::init):
   88381         * platform/Widget.h:
   88382         * platform/gtk/WidgetGtk.cpp:
   88383         (WebCore::Widget::Widget):
   88384         (WebCore::Widget::~Widget):
   88385         (WebCore::Widget::cursor):
   88386         (WebCore::Widget::setCursor):
   88387         * platform/mac/WidgetMac.mm:
   88388         (WebCore::Widget::Widget):
   88389         (WebCore::Widget::~Widget):
   88390         (WebCore::Widget::addToSuperview):
   88391         (WebCore::Widget::removeFromSuperview):
   88392         (WebCore::Widget::beforeMouseDown):
   88393         (WebCore::Widget::afterMouseDown):
   88394         * platform/qt/WidgetQt.cpp:
   88395         (WebCore::Widget::Widget):
   88396         * platform/win/WidgetWin.cpp:
   88397         (WebCore::Widget::Widget):
   88398         * platform/wx/WidgetWx.cpp:
   88399         (WebCore::Widget::Widget):
   88400 
   88401 2008-09-18  David Hyatt  <hyatt (a] apple.com>
   88402 
   88403         Move Qt's isNPAPIPlugin boolean from Widget down to PluginView, since there
   88404         was no reason for it to be on Widget.  This change eliminates Qt ifdefs
   88405         from Widget.
   88406 
   88407         Reviewed by Sam Weinig
   88408 
   88409         * bindings/js/ScriptControllerQt.cpp:
   88410         (WebCore::ScriptController::createScriptInstanceForWidget):
   88411         * platform/qt/WidgetQt.cpp:
   88412         (WebCore::WidgetPrivate::WidgetPrivate):
   88413         (WebCore::WidgetPrivate::~WidgetPrivate):
   88414         (WebCore::Widget::Widget):
   88415         (WebCore::Widget::~Widget):
   88416         * plugins/PluginView.cpp:
   88417         (WebCore::PluginView::PluginView):
   88418         * plugins/PluginView.h:
   88419         (WebCore::PluginView::isNPAPIPlugin):
   88420         (WebCore::PluginView::setIsNPAPIPlugin):
   88421 
   88422 2008-09-18  David Hyatt  <hyatt (a] apple.com>
   88423 
   88424         Make geometryChanged() cross-platform on Widget.  GTK and WIN platform
   88425         ifdefs are now gone from Widget!
   88426 
   88427         Reviewed by Sam Weinig
   88428 
   88429         * platform/Widget.h:
   88430         (WebCore::Widget::geometryChanged):
   88431         * platform/gtk/WidgetGtk.cpp:
   88432         * platform/qt/WidgetQt.cpp:
   88433 
   88434 2008-09-18  David Hyatt  <hyatt (a] apple.com>
   88435 
   88436         Consolidate convertTo/FromContainingWindow methods so that all platforms
   88437         but Mac share the same code.
   88438 
   88439         Move convertSelfToChild and convertChildToSelf to ScrollView, since
   88440         Widget should know nothing about children.  Make the methods cross-platform
   88441         on ScrollView.
   88442 
   88443         Reviewed by Sam Weinig
   88444 
   88445         * platform/ScrollView.h:
   88446         (WebCore::ScrollView::convertChildToSelf):
   88447         (WebCore::ScrollView::convertSelfToChild):
   88448         * platform/Widget.cpp:
   88449         (WebCore::Widget::convertToContainingWindow):
   88450         (WebCore::Widget::convertFromContainingWindow):
   88451         * platform/Widget.h:
   88452         (WebCore::Widget::geometryChanged):
   88453         * platform/gtk/ScrollViewGtk.cpp:
   88454         (WebCore::ScrollView::isScrollViewScrollbar):
   88455         * platform/gtk/WidgetGtk.cpp:
   88456         * platform/mac/ScrollViewMac.mm:
   88457         (WebCore::ScrollView::isScrollViewScrollbar):
   88458         * platform/mac/WidgetMac.mm:
   88459         * platform/qt/ScrollViewQt.cpp:
   88460         (WebCore::ScrollView::isScrollViewScrollbar):
   88461         * platform/qt/WidgetQt.cpp:
   88462         * platform/win/ScrollViewWin.cpp:
   88463         (WebCore::ScrollView::isScrollViewScrollbar):
   88464         * platform/win/WidgetWin.cpp:
   88465 
   88466 2008-09-18  David Hyatt  <hyatt (a] apple.com>
   88467 
   88468         Make the conversion methods that go to and from some containingWindow
   88469         cross-platform.  Implement them on Mac.
   88470 
   88471         Reviewed by Sam Weinig
   88472 
   88473         * platform/Widget.h:
   88474         (WebCore::Widget::setContainingWindow):
   88475         * platform/mac/WidgetMac.mm:
   88476         (WebCore::Widget::convertFromContainingWindow):
   88477         (WebCore::Widget::convertToContainingWindow):
   88478 
   88479 2008-09-18  Sam Weinig  <sam (a] webkit.org>
   88480 
   88481         Rubber-stamped by David "Yeah-yeah" Hyatt.
   88482 
   88483         Cleanup RenderStyle.
   88484 
   88485         * WebCore.xcodeproj/project.pbxproj:
   88486         * rendering/style/CounterContent.h:
   88487         * rendering/style/RenderStyle.cpp:
   88488         * rendering/style/RenderStyle.h:
   88489 
   88490 2008-09-18  Chris Marrin  <cmarrin (a] apple.com>
   88491 
   88492         Reviewed by Sam Weinig
   88493 
   88494         Fixed https://bugs.webkit.org/show_bug.cgi?id=20908
   88495         Now TransformOperations and AnimationList no longer
   88496         inherit from Vector<> but rather have API to access.
   88497 
   88498         * css/CSSComputedStyleDeclaration.cpp:
   88499         (WebCore::computedTransform):
   88500         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   88501         * css/CSSStyleSelector.cpp:
   88502         (WebCore::CSSStyleSelector::createTransformOperations):
   88503         * page/animation/AnimationBase.cpp:
   88504         (WebCore::blendFunc):
   88505         * page/animation/CompositeAnimation.cpp:
   88506         (WebCore::CompositeAnimation::updateTransitions):
   88507         (WebCore::CompositeAnimation::updateKeyframeAnimations):
   88508         (WebCore::CompositeAnimation::animate):
   88509         * page/animation/ImplicitAnimation.cpp:
   88510         (WebCore::ImplicitAnimation::validateTransformFunctionList):
   88511         * page/animation/KeyframeAnimation.cpp:
   88512         (WebCore::KeyframeAnimation::validateTransformFunctionList):
   88513         * rendering/RenderLayer.cpp:
   88514         (WebCore::RenderLayer::updateReflectionStyle):
   88515         * rendering/style/AnimationList.cpp:
   88516         (WebCore::AnimationList::operator==):
   88517         * rendering/style/AnimationList.h:
   88518         (WebCore::AnimationList::operator!=):
   88519         (WebCore::AnimationList::size):
   88520         (WebCore::AnimationList::isEmpty):
   88521         (WebCore::AnimationList::resize):
   88522         (WebCore::AnimationList::remove):
   88523         (WebCore::AnimationList::append):
   88524         (WebCore::AnimationList::animation):
   88525         * rendering/style/RenderStyle.cpp:
   88526         (WebCore::StyleRareNonInheritedData::updateKeyframes):
   88527         (WebCore::RenderStyle::applyTransform):
   88528         (WebCore::RenderStyle::adjustAnimations):
   88529         (WebCore::RenderStyle::adjustTransitions):
   88530         (WebCore::RenderStyle::transitionForProperty):
   88531         * rendering/style/RenderStyle.h:
   88532         (WebCore::RenderStyle::hasTransform):
   88533         * rendering/style/TransformOperations.cpp:
   88534         (WebCore::TransformOperations::TransformOperations):
   88535         (WebCore::TransformOperations::operator==):
   88536         * rendering/style/TransformOperations.h:
   88537         (WebCore::TransformOperations::apply):
   88538         (WebCore::TransformOperations::operations):
   88539 
   88540 2008-09-18  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   88541 
   88542         Build fix.
   88543 
   88544         [qt] Build fixes after the Widget/ScrollView cleanup
   88545         topLevel() is now root()
   88546 
   88547 
   88548         * platform/qt/ScrollViewQt.cpp:
   88549         (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore):
   88550         (WebCore::ScrollView::addChild):
   88551         (WebCore::ScrollView::removeChild):
   88552 
   88553 2008-09-18  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   88554 
   88555         Reviewed by Mark Rowe.
   88556 
   88557         https://bugs.webkit.org/show_bug.cgi?id=20437
   88558 
   88559         XMLTokenizer.cpp used to contain two different implementations. One was using
   88560         libxml2 and the other was using the Qt XML StreamReader. Clean up the code by
   88561         separating the two implementations from each other.
   88562         Common code and some small bits are kept inside the XMLTokenizer.cpp, the Qt code
   88563         was moved to XMLTokenizerQt.cpp and the Libxml2 based code was moved to
   88564         XMLTokenizerLibxml2.cpp. There should be no functional changes.
   88565 
   88566         Attempt to add XMLTokenizerLibxml2.cpp to every buildsystem so the build continues
   88567         to work.
   88568 
   88569         * GNUmakefile.am:
   88570         * WebCore.pro:
   88571         * WebCore.vcproj/WebCore.vcproj:
   88572         * WebCore.xcodeproj/project.pbxproj:
   88573         * WebCoreSources.bkl:
   88574         * dom/XMLTokenizer.cpp:
   88575         (WebCore::isScriptElement):
   88576         (WebCore::castToScriptElement):
   88577         (WebCore::XMLTokenizer::setCurrentNode):
   88578         (WebCore::XMLTokenizer::write):
   88579         (WebCore::XMLTokenizer::eventuallyMarkAsParserCreated):
   88580         (WebCore::XMLTokenizer::enterText):
   88581         (WebCore::toString):
   88582         (WebCore::XMLTokenizer::exitText):
   88583         (WebCore::XMLTokenizer::end):
   88584         (WebCore::XMLTokenizer::insertErrorMessageBlock):
   88585         * dom/XMLTokenizer.h:
   88586         (WebCore::XMLTokenizer::wellFormed):
   88587         * dom/XMLTokenizerLibxml2.cpp: Copied from WebCore/dom/XMLTokenizer.cpp.
   88588         (WebCore::createMemoryParser):
   88589         (WebCore::XMLTokenizer::XMLTokenizer):
   88590         (WebCore::XMLTokenizer::~XMLTokenizer):
   88591         (WebCore::XMLTokenizer::doWrite):
   88592         (WebCore::ignorableWhitespaceHandler):
   88593         (WebCore::XMLTokenizer::initializeParserContext):
   88594         (WebCore::XMLTokenizer::doEnd):
   88595         (WebCore::XMLTokenizer::lineNumber):
   88596         (WebCore::XMLTokenizer::columnNumber):
   88597         (WebCore::XMLTokenizer::stopParsing):
   88598         (WebCore::XMLTokenizer::resumeParsing):
   88599         (WebCore::parseXMLDocumentFragment):
   88600         (WebCore::attributesStartElementNsHandler):
   88601         (WebCore::parseAttributes):
   88602         * dom/XMLTokenizerQt.cpp: Copied from WebCore/dom/XMLTokenizer.cpp.
   88603         (WebCore::EntityResolver::resolveUndeclaredEntity):
   88604         (WebCore::XMLTokenizer::XMLTokenizer):
   88605         (WebCore::XMLTokenizer::~XMLTokenizer):
   88606         (WebCore::XMLTokenizer::doWrite):
   88607         (WebCore::XMLTokenizer::initializeParserContext):
   88608         (WebCore::XMLTokenizer::doEnd):
   88609         (WebCore::XMLTokenizer::lineNumber):
   88610         (WebCore::XMLTokenizer::columnNumber):
   88611         (WebCore::XMLTokenizer::stopParsing):
   88612         (WebCore::XMLTokenizer::resumeParsing):
   88613         (WebCore::parseXMLDocumentFragment):
   88614         (WebCore::attributesStartElementNsHandler):
   88615         (WebCore::parseAttributes):
   88616         (WebCore::):
   88617 
   88618 2008-09-18  Beth Dakin  <bdakin (a] apple.com>
   88619 
   88620         Reviewed by Geoff Garen.
   88621 
   88622         Build fix for non-Mac builds.
   88623 
   88624         * css/CSSPrimitiveValue.cpp:
   88625         (WebCore::CSSPrimitiveValue::cssText):
   88626 
   88627 2008-09-18  Peter Kasting  <pkasting (a] google.com>
   88628 
   88629         Reviewed by hyatt.  Landed by eseidel.
   88630 
   88631         https://bugs.webkit.org/show_bug.cgi?id=20745
   88632         Animated GIFs do not animate properly with (at least) CG.
   88633 
   88634         * WebCore\platform\graphics\BitmapImage.cpp:
   88635         * WebCore\platform\graphics\BitmapImage.h:
   88636         * WebCore\platform\graphics\cairo\ImageCairo.cpp:
   88637         * WebCore\platform\graphics\cg\ImageCG.cpp:
   88638         * WebCore\platform\graphics\qt\ImageQt.cpp:
   88639         * WebCore\platform\graphics\wx\ImageWx.cpp:
   88640 
   88641 2008-09-18  Chris Fleizach  <cfleizach (a] apple.com>
   88642 
   88643         Reviewed by Beth Dakin
   88644 
   88645         <rdar://problem/6224222> AX: should not expose a <table> as an AXTable if ARIA
   88646         role specifies otherwise
   88647 
   88648         If a <table> isn't an AXTable, the rows and cells should default to AccessibilityRenderObject
   88649 
   88650         Test: accessibility/table-with-aria-role.html
   88651 
   88652         * page/AccessibilityTable.cpp:
   88653         (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
   88654         (WebCore::AccessibilityTable::addChildren):
   88655         (WebCore::AccessibilityTable::roleValue):
   88656         (WebCore::AccessibilityTable::accessibilityIsIgnored):
   88657         (WebCore::AccessibilityTable::title):
   88658         * page/AccessibilityTableCell.cpp:
   88659         (WebCore::AccessibilityTableCell::accessibilityIsIgnored):
   88660         (WebCore::AccessibilityTableCell::isTableCell):
   88661         (WebCore::AccessibilityTableCell::roleValue):
   88662         * page/AccessibilityTableCell.h:
   88663         * page/AccessibilityTableRow.cpp:
   88664         (WebCore::AccessibilityTableRow::roleValue):
   88665         (WebCore::AccessibilityTableRow::isTableRow):
   88666         (WebCore::AccessibilityTableRow::accessibilityIsIgnored):
   88667         * page/AccessibilityTableRow.h:
   88668 
   88669 2008-09-18  Steve Falkenburg  <sfalken (a] apple.com>
   88670 
   88671         Use higher-resolution timers on all variants of Windows.
   88672 
   88673         Reviewed by Darin Adler.
   88674 
   88675         * platform/win/SharedTimerWin.cpp:
   88676         (WebCore::setSharedTimerFireTime):
   88677 
   88678 
   88679 2008-09-18  David Hyatt  <hyatt (a] apple.com>
   88680 
   88681         Make containingWindow() and setContainingWindow() cross-platform.
   88682         Add a root() function cross-platform so Qt doesn't have to
   88683         define its own.
   88684 
   88685         Reviewed by Darin Adler
   88686 
   88687         * platform/Widget.cpp:
   88688         (WebCore::Widget::root):
   88689         * platform/Widget.h:
   88690         (WebCore::Widget::setContainingWindow):
   88691         * platform/gtk/WidgetGtk.cpp:
   88692         (WebCore::Widget::Widget):
   88693         (WebCore::Widget::containingWindow):
   88694         * platform/mac/ScrollViewMac.mm:
   88695         (WebCore::ScrollView::addChild):
   88696         (WebCore::ScrollView::removeChild):
   88697         * platform/mac/WidgetMac.mm:
   88698         (WebCore::Widget::containingWindow):
   88699         * platform/qt/WidgetQt.cpp:
   88700         (WebCore::Widget::invalidateRect):
   88701         (WebCore::Widget::containingWindow):
   88702         * platform/win/WidgetWin.cpp:
   88703         (WebCore::Widget::Widget):
   88704         (WebCore::Widget::~Widget):
   88705         (WebCore::Widget::containingWindow):
   88706 
   88707 2008-09-18  Beth Dakin  <bdakin (a] apple.com>
   88708 
   88709         Reviewed by Dave Hyatt.
   88710 
   88711         Fix for https://bugs.webkit.org/show_bug.cgi?id=20515 Crash upon
   88712         parsing CSS: unicode-range: searchfield-cancel-buttonpt=-webkit-
   88713         dashboard-region=
   88714         and corresponding: <rdar://problem/6174100>
   88715 
   88716         This patch makes CSSParserValue::createCSSValue handle unknown
   88717         identifiers.
   88718 
   88719         * css/CSSParserValues.cpp:
   88720         (WebCore::CSSParserValue::createCSSValue): If we have an identifier
   88721         with no id (an unknown identifier) create a CSSPrimitiveValue of
   88722         type CSS_PARSER_IDENTIFIER
   88723         * css/CSSPrimitiveValue.cpp:
   88724         (WebCore::CSSPrimitiveValue::cssText):
   88725         (WebCore::CSSPrimitiveValue::parserValue):
   88726         * css/CSSPrimitiveValue.h:
   88727         (WebCore::CSSPrimitiveValue::):
   88728 
   88729 2008-09-18  Sam Weinig  <sam (a] webkit.org>
   88730 
   88731         Rubber-stamped by David "I'd prefer not" Hyatt.
   88732 
   88733         More the remaining class out of RenderStyle.h/cpp
   88734 
   88735         * GNUmakefile.am:
   88736         * WebCore.pro:
   88737         * WebCore.vcproj/WebCore.vcproj:
   88738         * WebCore.xcodeproj/project.pbxproj:
   88739         * WebCoreSources.bkl:
   88740         * rendering/style/CursorData.h: Copied from rendering/style/RenderStyle.h.
   88741         (WebCore::CursorData::CursorData):
   88742         (WebCore::CursorData::operator==):
   88743         (WebCore::CursorData::operator!=):
   88744         * rendering/style/CursorList.h: Copied from rendering/style/RenderStyle.h.
   88745         (WebCore::CursorList::operator[]):
   88746         (WebCore::CursorList::CursorList):
   88747         * rendering/style/RenderStyle.cpp:
   88748         * rendering/style/RenderStyle.h:
   88749         (WebCore::RenderStyle::deref):
   88750         (WebCore::RenderStyle::hasOneRef):
   88751         (WebCore::RenderStyle::InheritedFlags::operator!=):
   88752         (WebCore::RenderStyle::NonInheritedFlags::operator!=):
   88753         (WebCore::RenderStyle::hasBackground):
   88754         (WebCore::RenderStyle::outlineWidth):
   88755         (WebCore::RenderStyle::autoWrap):
   88756         (WebCore::RenderStyle::preserveNewline):
   88757         (WebCore::RenderStyle::collapseWhiteSpace):
   88758         (WebCore::RenderStyle::isCollapsibleWhiteSpace):
   88759         (WebCore::RenderStyle::breakOnlyAfterWhiteSpace):
   88760         (WebCore::RenderStyle::breakWords):
   88761         (WebCore::RenderStyle::outlineOffset):
   88762         (WebCore::RenderStyle::setLeft):
   88763         (WebCore::RenderStyle::setRight):
   88764         (WebCore::RenderStyle::setTop):
   88765         (WebCore::RenderStyle::setBottom):
   88766         (WebCore::RenderStyle::setDashboardRegion):
   88767         (WebCore::RenderStyle::setBackgroundColor):
   88768         (WebCore::RenderStyle::setBorderImage):
   88769         (WebCore::RenderStyle::setBorderRadius):
   88770         (WebCore::RenderStyle::setFontDescription):
   88771         (WebCore::RenderStyle::adjustBackgroundLayers):
   88772         (WebCore::RenderStyle::adjustMaskLayers):
   88773         (WebCore::RenderStyle::deleteBindingURIs):
   88774         (WebCore::RenderStyle::inheritBindingURIs):
   88775         (WebCore::RenderStyle::isDisplayReplacedType):
   88776         (WebCore::RenderStyle::isDisplayInlineType):
   88777         (WebCore::RenderStyle::isOriginalDisplayInlineType):
   88778         * rendering/style/StyleInheritedData.cpp: Copied from rendering/style/RenderStyle.cpp.
   88779         * rendering/style/StyleInheritedData.h: Copied from rendering/style/RenderStyle.h.
   88780         (WebCore::StyleInheritedData::operator!=):
   88781         * rendering/style/StyleRareInheritedData.cpp: Copied from rendering/style/RenderStyle.cpp.
   88782         * rendering/style/StyleRareInheritedData.h: Copied from rendering/style/RenderStyle.h.
   88783         (WebCore::StyleRareInheritedData::operator!=):
   88784         * rendering/style/StyleRareNonInheritedData.cpp: Copied from rendering/style/RenderStyle.cpp.
   88785         * rendering/style/StyleRareNonInheritedData.h: Copied from rendering/style/RenderStyle.h.
   88786         * rendering/style/StyleReflection.h: Copied from rendering/style/RenderStyle.h.
   88787 
   88788 2008-09-18  David Hyatt  <hyatt (a] apple.com>
   88789 
   88790         Move the concept of suppression invalidation on Widgets to Scrollbar
   88791         instead.  Since this is only used by Scrollbars, there is no need for
   88792         it to be on Widget.
   88793 
   88794         Reviewed by Sam Weinig
   88795 
   88796         * platform/Scrollbar.cpp:
   88797         (WebCore::Scrollbar::Scrollbar):
   88798         (WebCore::Scrollbar::invalidateRect):
   88799         * platform/Scrollbar.h:
   88800         (WebCore::Scrollbar::suppressInvalidation):
   88801         (WebCore::Scrollbar::setSuppressInvalidation):
   88802         * platform/Widget.h:
   88803         * platform/gtk/WidgetGtk.cpp:
   88804         (WebCore::Widget::Widget):
   88805         (WebCore::Widget::invalidateRect):
   88806         * platform/qt/WidgetQt.cpp:
   88807         (WebCore::WidgetPrivate::WidgetPrivate):
   88808         (WebCore::Widget::invalidateRect):
   88809         * platform/win/WidgetWin.cpp:
   88810         (WebCore::Widget::Widget):
   88811         (WebCore::Widget::invalidateRect):
   88812 
   88813 2008-09-18  David Hyatt  <hyatt (a] apple.com>
   88814 
   88815         Make invalidate() on Widget non-virtual and make it just call
   88816         invalidateRect() on the boundsGeometry() of the Widget.
   88817 
   88818         Reviewed by Dan Bernstein
   88819 
   88820         * platform/Widget.h:
   88821         (WebCore::Widget::boundsGeometry):
   88822         (WebCore::Widget::invalidate):
   88823         * platform/gtk/WidgetGtk.cpp:
   88824         * platform/mac/WidgetMac.mm:
   88825         * platform/qt/WidgetQt.cpp:
   88826         * platform/win/WidgetWin.cpp:
   88827         * platform/wx/WidgetWx.cpp:
   88828 
   88829 2008-09-18  Sam Weinig  <sam (a] webkit.org>
   88830 
   88831         Rubber-stamped in exile by David Hyatt.
   88832 
   88833         Split Animation, AnimationList, BindingURI, ContentData, CounterContent,
   88834         KeyframeList, ShadowData, StyleFlexibleBoxData and TimingFunction out of
   88835         RenderStyle.h/cpp
   88836 
   88837         * GNUmakefile.am:
   88838         * WebCore.pro:
   88839         * WebCore.vcproj/WebCore.vcproj:
   88840         * WebCore.xcodeproj/project.pbxproj:
   88841         * WebCoreSources.bkl:
   88842         * css/CSSStyleSelector.cpp:
   88843         * css/CSSStyleSelector.h:
   88844         * page/animation/CompositeAnimation.cpp:
   88845         * page/animation/KeyframeAnimation.cpp:
   88846         * page/animation/KeyframeAnimation.h:
   88847         * rendering/RenderCounter.h:
   88848         * rendering/style/Animation.cpp: Copied from rendering/style/RenderStyle.cpp.
   88849         (WebCore::Animation::~Animation):
   88850         (WebCore::Animation::animationsMatch):
   88851         (WebCore::Animation::keyframeList):
   88852         (WebCore::Animation::setAnimationKeyframe):
   88853         * rendering/style/Animation.h: Copied from rendering/style/RenderStyle.h.
   88854         * rendering/style/AnimationList.cpp: Copied from rendering/style/RenderStyle.cpp.
   88855         * rendering/style/AnimationList.h: Copied from rendering/style/RenderStyle.h.
   88856         * rendering/style/BindingURI.cpp: Copied from rendering/style/RenderStyle.cpp.
   88857         * rendering/style/BindingURI.h: Copied from rendering/style/RenderStyle.h.
   88858         (WebCore::BindingURI::operator!=):
   88859         * rendering/style/ContentData.cpp: Copied from rendering/style/RenderStyle.cpp.
   88860         * rendering/style/ContentData.h: Copied from rendering/style/RenderStyle.h.
   88861         (WebCore::ContentData::ContentData):
   88862         (WebCore::ContentData::~ContentData):
   88863         * rendering/style/CounterContent.h: Copied from rendering/style/RenderStyle.h.
   88864         (WebCore::CounterContent::CounterContent):
   88865         * rendering/style/CounterDirectives.cpp: Copied from rendering/style/RenderStyle.cpp.
   88866         * rendering/style/CounterDirectives.h: Copied from rendering/style/RenderStyle.h.
   88867         (WebCore::CounterDirectives::CounterDirectives):
   88868         * rendering/style/KeyframeList.cpp: Copied from rendering/style/RenderStyle.cpp.
   88869         (WebCore::KeyframeList::insert):
   88870         * rendering/style/KeyframeList.h: Copied from rendering/style/RenderStyle.h.
   88871         (WebCore::KeyframeValue::KeyframeValue):
   88872         (WebCore::KeyframeList::create):
   88873         (WebCore::KeyframeList::KeyframeList):
   88874         * rendering/style/RenderStyle.cpp:
   88875         * rendering/style/RenderStyle.h:
   88876         * rendering/style/ShadowData.cpp: Copied from rendering/style/RenderStyle.cpp.
   88877         * rendering/style/ShadowData.h: Copied from rendering/style/RenderStyle.h.
   88878         (WebCore::ShadowData::ShadowData):
   88879         (WebCore::ShadowData::~ShadowData):
   88880         (WebCore::ShadowData::operator!=):
   88881         * rendering/style/StyleFlexibleBoxData.cpp: Copied from rendering/style/RenderStyle.cpp.
   88882         * rendering/style/StyleFlexibleBoxData.h: Copied from rendering/style/RenderStyle.h.
   88883         (WebCore::StyleFlexibleBoxData::operator!=):
   88884         * rendering/style/TimingFunction.h: Copied from rendering/style/RenderStyle.h.
   88885         (WebCore::TimingFunction::TimingFunction):
   88886         (WebCore::TimingFunction::operator==):
   88887 
   88888 2008-09-18  Adele Peterson  <adele (a] apple.com>
   88889 
   88890         Reviewed by Dan Bernstein.
   88891 
   88892         Fix RenderStyle leaks.
   88893 
   88894         * rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::createSubtreeIfNeeded):
   88895 
   88896 2008-09-18  Kevin McCullough  <kmccullough (a] apple.com>
   88897 
   88898         Accidentally checked in code.
   88899 
   88900         * html/HTMLElementFactory.cpp:
   88901         (WebCore::frameConstructor):
   88902         (WebCore::iframeConstructor):
   88903 
   88904 2008-09-18  Kevin McCullough  <kmccullough (a] apple.com>
   88905 
   88906         Reviewed by Tim.
   88907 
   88908         <rdar://problem/5722310> gracefully handle too many console messages
   88909         (20904)
   88910         - Keep track of the most previous message and then compare it to the
   88911         subsequent messages as they come in.  If there are multiple of the same
   88912         message create a count that indicates the current number.
   88913 
   88914         * manual-tests/inspector/multiple-console-messages.html: Added.
   88915         * page/inspector/Console.js:
   88916         * page/inspector/inspector.css:
   88917 
   88918 2008-09-18  Jonathon Jongsma  <jonathon (a] quotidian.org>
   88919 
   88920         Reviewed by Alp Toker
   88921 
   88922         https://bugs.webkit.org/show_bug.cgi?id=20830
   88923         [GTK] Don't use deprecated pango API
   88924 
   88925         Replace deprecated pango functions with non-deprecated ones for newer
   88926         versions of pango
   88927 
   88928         * platform/graphics/gtk/FontGtk.cpp:
   88929         (WebCore::getDefaultPangoLayout):
   88930         * platform/graphics/gtk/FontPlatformDataPango.cpp:
   88931         (WebCore::FontPlatformData::FontPlatformData):
   88932 
   88933 2008-09-18  Alp Toker  <alp (a] nuanti.com>
   88934 
   88935         Build fix for r36587. Add new sources (and sort the lists).
   88936 
   88937         * GNUmakefile.am:
   88938 
   88939 2008-09-17  Sam Weinig  <sam (a] webkit.org>
   88940 
   88941         Fix Windows build.
   88942 
   88943         * WebCore.vcproj/WebCore.vcproj:
   88944 
   88945 2008-09-17  David Hyatt  <hyatt (a] apple.com>
   88946 
   88947         Switch back to having frameGeometry be virtual in order to keep Mac
   88948         the way it used to be.
   88949 
   88950         Reviewed by Sam Weinig
   88951 
   88952         * WebCore.base.exp:
   88953         * platform/Widget.cpp:
   88954         (WebCore::Widget::setParent):
   88955         * platform/Widget.h:
   88956         * platform/gtk/WidgetGtk.cpp:
   88957         (WebCore::Widget::frameGeometry):
   88958         (WebCore::Widget::setFrameGeometry):
   88959         * platform/mac/WidgetMac.mm:
   88960         (WebCore::Widget::frameGeometry):
   88961         (WebCore::Widget::setFrameGeometry):
   88962         * platform/qt/WidgetQt.cpp:
   88963         (WebCore::Widget::frameGeometry):
   88964         (WebCore::Widget::setFrameGeometry):
   88965         * platform/win/WidgetWin.cpp:
   88966         (WebCore::Widget::frameGeometry):
   88967         (WebCore::Widget::setFrameGeometry):
   88968         * platform/wx/WidgetWx.cpp:
   88969         (WebCore::Widget::frameGeometry):
   88970         (WebCore::Widget::setFrameGeometry):
   88971         * plugins/PluginView.cpp:
   88972         (WebCore::PluginView::setFrameGeometry):
   88973         (WebCore::PluginView::geometryChanged):
   88974         * plugins/PluginView.h:
   88975         * plugins/gtk/PluginViewGtk.cpp:
   88976         (WebCore::PluginView::updatePluginWidget):
   88977         * plugins/qt/PluginViewQt.cpp:
   88978         (WebCore::PluginView::updatePluginWidget):
   88979         * plugins/win/PluginViewWin.cpp:
   88980         (WebCore::PluginView::updatePluginWidget):
   88981 
   88982 2008-09-17  Sam Weinig  <sam (a] webkit.org>
   88983 
   88984         Reviewed by Mark Rowe.
   88985 
   88986         Fix assertion in DOMWindow::adjustWindowRect where we were passing
   88987         in garbage values and were getting lucky that they were a not Nan.
   88988 
   88989         * bindings/js/JSDOMWindowBase.cpp:
   88990         (WebCore::windowProtoFuncOpen):
   88991 
   88992 2008-09-17  Sam Weinig  <sam (a] webkit.org>
   88993 
   88994         Fix gtk build.
   88995 
   88996         * rendering/style/MatrixTransformOperation.cpp:
   88997 
   88998 2008-09-17  Sam Weinig  <sam (a] webkit.org>
   88999 
   89000         Rubber-stamped with love by David Hyatt.
   89001 
   89002         Split IdentityTransformOperation, MatrixTransformOperation, RotateTransformOperation,
   89003         ScaleTransformOperation, SkewTransformOperation, StyleTransformData, TransformOperation,
   89004         TransformOperations and TranslateTransformOperation out of RenderStyle.h/cpp
   89005 
   89006         * GNUmakefile.am:
   89007         * WebCore.pro:
   89008         * WebCore.vcproj/WebCore.vcproj:
   89009         * WebCore.xcodeproj/project.pbxproj:
   89010         * WebCoreSources.bkl:
   89011         * css/CSSStyleSelector.cpp:
   89012         * page/animation/AnimationBase.cpp:
   89013         (WebCore::solveEpsilon):
   89014         * rendering/RenderLayer.cpp:
   89015         * rendering/style/IdentityTransformOperation.h: Copied from rendering/style/RenderStyle.h.
   89016         * rendering/style/MatrixTransformOperation.cpp: Copied from rendering/style/RenderStyle.cpp.
   89017         * rendering/style/MatrixTransformOperation.h: Copied from rendering/style/RenderStyle.h.
   89018         (WebCore::MatrixTransformOperation::MatrixTransformOperation):
   89019         * rendering/style/RenderStyle.cpp:
   89020         * rendering/style/RenderStyle.h:
   89021         * rendering/style/RotateTransformOperation.cpp: Copied from rendering/style/RenderStyle.cpp.
   89022         * rendering/style/RotateTransformOperation.h: Copied from rendering/style/RenderStyle.h.
   89023         (WebCore::RotateTransformOperation::RotateTransformOperation):
   89024         * rendering/style/ScaleTransformOperation.cpp: Copied from rendering/style/RenderStyle.cpp.
   89025         * rendering/style/ScaleTransformOperation.h: Copied from rendering/style/RenderStyle.h.
   89026         (WebCore::ScaleTransformOperation::ScaleTransformOperation):
   89027         * rendering/style/SkewTransformOperation.cpp: Copied from rendering/style/RenderStyle.cpp.
   89028         * rendering/style/SkewTransformOperation.h: Copied from rendering/style/RenderStyle.h.
   89029         (WebCore::SkewTransformOperation::SkewTransformOperation):
   89030         * rendering/style/StyleTransformData.cpp: Copied from rendering/style/RenderStyle.cpp.
   89031         * rendering/style/StyleTransformData.h: Copied from rendering/style/RenderStyle.h.
   89032         (WebCore::StyleTransformData::operator!=):
   89033         * rendering/style/TransformOperation.h: Copied from rendering/style/RenderStyle.h.
   89034         (WebCore::TransformOperation::):
   89035         * rendering/style/TransformOperations.cpp: Copied from rendering/style/RenderStyle.cpp.
   89036         (WebCore::TransformOperations::TransformOperations):
   89037         * rendering/style/TransformOperations.h: Copied from rendering/style/RenderStyle.h.
   89038         (WebCore::TransformOperations::operator!=):
   89039         * rendering/style/TranslateTransformOperation.cpp: Copied from rendering/style/RenderStyle.cpp.
   89040         * rendering/style/TranslateTransformOperation.h: Copied from rendering/style/RenderStyle.h.
   89041         (WebCore::TranslateTransformOperation::TranslateTransformOperation):
   89042 
   89043 2008-09-17  Mark Rowe  <mrowe (a] apple.com>
   89044 
   89045         Build fix.
   89046 
   89047         * rendering/style/StyleDashboardRegion.h:  PlatformString.h rather than String.h.
   89048 
   89049 2008-09-17  David Hyatt  <hyatt (a] apple.com>
   89050 
   89051         (1) Inline a bunch of methods for accessing frame geometry.
   89052         (2) Make sure frameGeometry() works even when you have no underlying
   89053         native widget.
   89054         (3) Cache a frame geometry rect cross-platform (even for widgets that
   89055         have underlying native widgets.
   89056         (4) PluginView's updateWindow call is now a virtual function on Widget.
   89057 
   89058         Reviewed by Sam Weinig
   89059 
   89060         * ChangeLog:
   89061         * WebCore.base.exp:
   89062         * platform/Widget.cpp:
   89063         (WebCore::Widget::setFrameGeometry):
   89064         * platform/Widget.h:
   89065         (WebCore::Widget::x):
   89066         (WebCore::Widget::y):
   89067         (WebCore::Widget::width):
   89068         (WebCore::Widget::height):
   89069         (WebCore::Widget::size):
   89070         (WebCore::Widget::pos):
   89071         (WebCore::Widget::frameGeometry):
   89072         (WebCore::Widget::resize):
   89073         (WebCore::Widget::move):
   89074         (WebCore::Widget::isFrameView):
   89075         (WebCore::Widget::windowClipRect):
   89076         * platform/mac/WidgetMac.mm:
   89077         (WebCore::Widget::~Widget):
   89078         (WebCore::Widget::updatePlatformWidgetFrameGeometry):
   89079         * platform/win/WidgetWin.cpp:
   89080         (WebCore::Widget::updatePlatformWidgetFrameGeometry):
   89081         * plugins/PluginView.cpp:
   89082         (WebCore::PluginView::setFrameGeometry):
   89083         (WebCore::PluginView::geometryChanged):
   89084         * plugins/PluginView.h:
   89085         * plugins/gtk/PluginViewGtk.cpp:
   89086         (WebCore::PluginView::updatePlatformWidgetFrameGeometry):
   89087         * plugins/qt/PluginViewQt.cpp:
   89088         (WebCore::PluginView::updatePlatformWidgetFrameGeometry):
   89089         * plugins/win/PluginViewWin.cpp:
   89090         (WebCore::PluginView::updatePlatformWidgetFrameGeometry):
   89091         * plugins/wx/PluginViewWx.cpp:
   89092 
   89093 2008-09-17  Sam Weinig  <sam (a] webkit.org>
   89094 
   89095         Reviewed by David "Waterman" Hyatt.
   89096 
   89097         Fix a leak of NSViews in WidgetMac.mm.
   89098 
   89099         * platform/mac/WidgetMac.mm:
   89100         (WebCore::Widget::~Widget):
   89101 
   89102 2008-09-17  Sam Weinig  <sam (a] webkit.org>
   89103 
   89104         Rubber-stamped by David Waterman Hyatt.
   89105 
   89106         Split FillLayer, StyleBackgroundData, StyleBoxData, StyleDashboardRegion, StyleMarqueeData
   89107         StyleMultiColData and StyleVisualData out of RenderStyle.h/cpp
   89108 
   89109         * GNUmakefile.am:
   89110         * WebCore.pro:
   89111         * WebCore.vcproj/WebCore.vcproj:
   89112         * WebCore.xcodeproj/project.pbxproj:
   89113         * WebCoreSources.bkl:
   89114         * rendering/style/FillLayer.cpp: Copied from rendering/style/RenderStyle.cpp.
   89115         * rendering/style/FillLayer.h: Copied from rendering/style/RenderStyle.h.
   89116         (WebCore::FillLayer::operator!=):
   89117         (WebCore::FillLayer::hasImage):
   89118         (WebCore::FillLayer::hasFixedImage):
   89119         * rendering/style/RenderStyle.cpp:
   89120         * rendering/style/RenderStyle.h:
   89121         * rendering/style/StyleBackgroundData.cpp: Copied from rendering/style/RenderStyle.cpp.
   89122         (WebCore::StyleBackgroundData::StyleBackgroundData):
   89123         * rendering/style/StyleBackgroundData.h: Copied from rendering/style/RenderStyle.h.
   89124         (WebCore::StyleBackgroundData::~StyleBackgroundData):
   89125         (WebCore::StyleBackgroundData::operator!=):
   89126         * rendering/style/StyleBoxData.cpp: Copied from rendering/style/RenderStyle.cpp.
   89127         * rendering/style/StyleBoxData.h: Copied from rendering/style/RenderStyle.h.
   89128         (WebCore::StyleBoxData::operator!=):
   89129         * rendering/style/StyleDashboardRegion.h: Copied from rendering/style/RenderStyle.h.
   89130         (WebCore::StyleDashboardRegion::operator!=):
   89131         * rendering/style/StyleMarqueeData.cpp: Copied from rendering/style/RenderStyle.cpp.
   89132         * rendering/style/StyleMarqueeData.h: Copied from rendering/style/RenderStyle.h.
   89133         (WebCore::StyleMarqueeData::operator!=):
   89134         * rendering/style/StyleMultiColData.cpp: Copied from rendering/style/RenderStyle.cpp.
   89135         * rendering/style/StyleMultiColData.h: Copied from rendering/style/RenderStyle.h.
   89136         (WebCore::StyleMultiColData::operator!=):
   89137         (WebCore::StyleMultiColData::ruleWidth):
   89138         * rendering/style/StyleVisualData.cpp: Copied from rendering/style/RenderStyle.cpp.
   89139         * rendering/style/StyleVisualData.h: Copied from rendering/style/RenderStyle.h.
   89140         (WebCore::StyleVisualData::operator==):
   89141 
   89142 2008-09-17  David Hyatt  <hyatt (a] apple.com>
   89143 
   89144         Remove WidgetClient from Widget.
   89145 
   89146         Reviewed by Sam Weinig
   89147 
   89148         * WebCore.xcodeproj/project.pbxproj:
   89149         * platform/Widget.h:
   89150         (WebCore::Widget::setClient):
   89151         (WebCore::Widget::client):
   89152         * platform/WidgetClient.h: Removed.
   89153         * platform/gtk/WidgetGtk.cpp:
   89154         * platform/mac/WidgetMac.mm:
   89155         (WebCore::Widget::Widget):
   89156         (WebCore::Widget::show):
   89157         (WebCore::Widget::hide):
   89158         * platform/qt/WidgetQt.cpp:
   89159         (WebCore::WidgetPrivate::WidgetPrivate):
   89160         * platform/win/WidgetWin.cpp:
   89161         (WebCore::Widget::Widget):
   89162         * platform/wx/WidgetWx.cpp:
   89163         (WebCore::Widget::Widget):
   89164 
   89165 2008-09-17  David Hyatt  <hyatt (a] apple.com>
   89166 
   89167         Remove isEnabled/setEnabled from Widget.  The concept of being enabled now
   89168         only applies to Scrollbars so the method has been moved there and made
   89169         cross-platform.  Scrollbar subclasses that have a corresponding native
   89170         widget can subclass setEnabled to change the enabled state of the native
   89171         widget.
   89172 
   89173         Reviewed by Sam Weinig & Darin Adler
   89174 
   89175         * WebCore.base.exp:
   89176         * platform/Scrollbar.cpp:
   89177         (WebCore::Scrollbar::Scrollbar):
   89178         * platform/Scrollbar.h:
   89179         (WebCore::Scrollbar::enabled):
   89180         (WebCore::Scrollbar::setEnabled):
   89181         * platform/Widget.h:
   89182         * platform/gtk/ScrollbarGtk.cpp:
   89183         (ScrollbarGtk::setEnabled):
   89184         * platform/gtk/ScrollbarGtk.h:
   89185         * platform/gtk/WidgetGtk.cpp:
   89186         * platform/mac/ScrollbarMac.h:
   89187         * platform/mac/ScrollbarMac.mm:
   89188         (WebCore::ScrollbarMac::scrollbarHit):
   89189         (WebCore::ScrollbarMac::setEnabled):
   89190         * platform/mac/WidgetMac.mm:
   89191         * platform/qt/WidgetQt.cpp:
   89192         (WebCore::WidgetPrivate::WidgetPrivate):
   89193         * platform/win/WidgetWin.cpp:
   89194         (WebCore::Widget::Widget):
   89195         * platform/wx/WidgetWx.cpp:
   89196 
   89197 2008-09-17  Sam Weinig  <sam (a] webkit.org>
   89198 
   89199         Rubber-stamped by David Hyatt.
   89200 
   89201         Split all RenderStyle enums into their own file.
   89202 
   89203         * GNUmakefile.am:
   89204         * WebCore.vcproj/WebCore.vcproj:
   89205         * WebCore.xcodeproj/project.pbxproj:
   89206         * rendering/style/BorderValue.h:
   89207         * rendering/style/CollapsedBorderValue.h:
   89208         * rendering/style/RenderStyle.h:
   89209         * rendering/style/RenderStyleConstants.h: Copied from rendering/style/RenderStyle.h.
   89210         (WebCore::):
   89211         * rendering/style/StyleCachedImage.h:
   89212         * rendering/style/StyleGeneratedImage.h:
   89213         * rendering/style/StyleImage.h:
   89214 
   89215 2008-09-17  Steve Falkenburg  <sfalken (a] apple.com>
   89216 
   89217         Add back isFrameView check to fix failed assertion during scroll bar teardown.
   89218 
   89219         Reviewed by Dave Hyatt.
   89220 
   89221         * platform/Scrollbar.cpp:
   89222         (WebCore::Scrollbar::setParent):
   89223 
   89224 2008-09-17  Brady Eidson  <beidson (a] apple.com>
   89225 
   89226         Reviewed by Mac build fix
   89227 
   89228         * WebCore.xcodeproj/project.pbxproj: Send appropriate headers to WebKit
   89229 
   89230 2008-09-17  Steve Falkenburg  <sfalken (a] apple.com>
   89231 
   89232         Fix build.
   89233 
   89234         * platform/win/ScrollViewWin.cpp:
   89235         (WebCore::ScrollView::setParentVisible):
   89236         * plugins/win/PluginViewWin.cpp:
   89237         (WebCore::PluginView::init):
   89238 
   89239 2008-09-17  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   89240 
   89241         Reviewed by Simon.
   89242 
   89243         [QtWebKit] Implement error handling in TextCodecQt::decode
   89244         Use the QTextCodec parsing state to set the sawError out variable. This
   89245         is needed to pass Test 70 of acid3. The test case for this bug is
   89246         fast/encoding/invalid-xml.html that is now partially passed. To pass
   89247         it completely the Qt text codecs need to be adjusted to have proper
   89248         error handling.
   89249 
   89250         * platform/text/qt/TextCodecQt.cpp:
   89251         (WebCore::TextCodecQt::decode):
   89252 
   89253 2008-09-17  Sam Weinig  <sam (a] webkit.org>
   89254 
   89255         Rubber-stamped by Dave Hyatt.
   89256 
   89257         Split BorderData, BorderValue, CollapsedBorderValue, OutlineValue and StyleSurroundData
   89258         out of RenderStyle.h/cpp
   89259 
   89260         * GNUmakefile.am:
   89261         * WebCore.pro:
   89262         * WebCore.vcproj/WebCore.vcproj:
   89263         * WebCore.xcodeproj/project.pbxproj:
   89264         * WebCoreSources.bkl:
   89265         * rendering/style/BorderData.h: Copied from rendering/style/RenderStyle.h.
   89266         (WebCore::BorderData::hasBorderRadius):
   89267         (WebCore::BorderData::borderLeftWidth):
   89268         (WebCore::BorderData::borderRightWidth):
   89269         (WebCore::BorderData::borderTopWidth):
   89270         (WebCore::BorderData::borderBottomWidth):
   89271         (WebCore::BorderData::operator!=):
   89272         * rendering/style/BorderValue.h: Copied from rendering/style/RenderStyle.h.
   89273         (WebCore::):
   89274         (WebCore::BorderValue::BorderValue):
   89275         (WebCore::BorderValue::nonZero):
   89276         (WebCore::BorderValue::isTransparent):
   89277         (WebCore::BorderValue::isVisible):
   89278         * rendering/style/CollapsedBorderValue.h: Copied from rendering/style/RenderStyle.h.
   89279         (WebCore::):
   89280         (WebCore::CollapsedBorderValue::CollapsedBorderValue):
   89281         (WebCore::CollapsedBorderValue::operator==):
   89282         * rendering/style/OutlineValue.h: Copied from rendering/style/RenderStyle.h.
   89283         (WebCore::OutlineValue::OutlineValue):
   89284         * rendering/style/RenderStyle.cpp:
   89285         * rendering/style/RenderStyle.h:
   89286         * rendering/style/StyleSurroundData.cpp: Copied from rendering/style/RenderStyle.cpp.
   89287         * rendering/style/StyleSurroundData.h: Copied from rendering/style/RenderStyle.h.
   89288         (WebCore::StyleSurroundData::operator!=):
   89289 
   89290 2008-09-17  Beth Dakin  <bdakin (a] apple.com>
   89291 
   89292         Reviewed by Darin Adler.
   89293 
   89294         This is a better fix for: Invalid CSS code crashes Safari
   89295         https://bugs.webkit.org/show_bug.cgi?id=20512
   89296 
   89297         The spec indicates that the only valid input for a counter is a
   89298         number or an identifier. So that is exactly what we allow.
   89299 
   89300         * css/CSSParser.cpp:
   89301         (WebCore::CSSParser::parseCounterContent):
   89302 
   89303 2008-09-17  Alp Toker  <alp (a] nuanti.com>
   89304 
   89305         GTK+ build fix. Adapt to use PlatformWidget functions.
   89306 
   89307         * platform/gtk/ScrollViewGtk.cpp:
   89308         (WebCore::ScrollViewScrollbar::geometryChanged):
   89309         (WebCore::ScrollView::addChild):
   89310         (WebCore::ScrollView::removeChild):
   89311         * platform/gtk/ScrollbarGtk.cpp:
   89312         (ScrollbarGtk::ScrollbarGtk):
   89313         (ScrollbarGtk::~ScrollbarGtk):
   89314         (ScrollbarGtk::geometryChanged):
   89315 
   89316 2008-09-17  Sam Weinig  <sam (a] webkit.org>
   89317 
   89318         Reviewed by Adele Peterson.
   89319 
   89320         Patch for <rdar://problem/6133884>
   89321         Calling window.resizeTo() on a subframe shouldn't change the window size
   89322 
   89323         Test: fast/dom/Window/window-resize-and-move-sub-frame.html
   89324 
   89325         * page/DOMWindow.cpp:
   89326         (WebCore::DOMWindow::moveBy):
   89327         (WebCore::DOMWindow::moveTo):
   89328         (WebCore::DOMWindow::resizeBy):
   89329         (WebCore::DOMWindow::resizeTo):
   89330 
   89331 2008-09-17  Beth Dakin  <bdakin (a] apple.com>
   89332 
   89333         Reviewed by Adam Roben.
   89334 
   89335         Fix for https://bugs.webkit.org/show_bug.cgi?id=20512 Invalid CSS
   89336         code crashes Safari
   89337         and corresponding: <rdar://problem/6173832>
   89338 
   89339         Reading through the spec, it seems like a function is not valid
   89340         input for a counter. So this patch checks for that and bails in the
   89341         case of invalid input.
   89342 
   89343         * css/CSSParser.cpp:
   89344         (WebCore::CSSParser::parseCounterContent):
   89345 
   89346 2008-09-17  Greg Bolsinga  <bolsinga (a] apple.com>
   89347 
   89348         Reviewed by Antti Koivisto.
   89349 
   89350         Fix <rdar://problem/6227089>
   89351         Crash in WebCore::Frame::setNeedsReapplyStyles()
   89352 
   89353         View is null checked elsewhere too.
   89354 
   89355         * page/Frame.cpp:
   89356         (WebCore::Frame::setNeedsReapplyStyles):
   89357 
   89358 2008-09-17  David Hyatt  <hyatt (a] apple.com>
   89359 
   89360         Make the notion of having a native widget backing a Widget cross-platform.
   89361         The PlatformWidget abstraction (which already existed) is used for this.
   89362              Windows = HWND
   89363              Qt = QWidget
   89364              Mac = NSView
   89365              wx = wxWindow
   89366              Gtk = GtkWidget
   89367 
   89368         There are new cross-platform methods that replace all of the unique
   89369         platform-specific methods.
   89370              platformWidget()
   89371              setPlatformWidget()
   89372 
   89373         For plugins, on every platform except Qt on Windows, the plugin's native
   89374         widget is now stored in the Widget base class.  Since Qt on Windows uses
   89375         HWNDs for plugins instead of QWidget, it is the only platform to keep the
   89376         m_window variable in PluginView.
   89377 
   89378         Reviewed by Sam Weinig
   89379 
   89380         * WebCore.base.exp:
   89381         * bindings/js/ScriptControllerMac.mm:
   89382         (WebCore::ScriptController::createScriptInstanceForWidget):
   89383         * page/mac/AccessibilityObjectWrapper.mm:
   89384         (-[AccessibilityObjectWrapper attachmentView]):
   89385         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
   89386         * page/mac/EventHandlerMac.mm:
   89387         (WebCore::EventHandler::passMouseDownEventToWidget):
   89388         (WebCore::EventHandler::mouseDownViewIfStillGood):
   89389         (WebCore::EventHandler::passWheelEventToWidget):
   89390         (WebCore::EventHandler::sendFakeEventsAfterWidgetTracking):
   89391         * platform/Widget.cpp:
   89392         (WebCore::Widget::init):
   89393         (WebCore::Widget::setParent):
   89394         (WebCore::Widget::releasePlatformWidget):
   89395         (WebCore::Widget::retainPlatformWidget):
   89396         * platform/Widget.h:
   89397         (WebCore::Widget::platformWidget):
   89398         (WebCore::Widget::setPlatformWidget):
   89399         * platform/gtk/WidgetGtk.cpp:
   89400         (WebCore::Widget::Widget):
   89401         (WebCore::Widget::setFocus):
   89402         (WebCore::gdkDrawable):
   89403         (WebCore::Widget::setCursor):
   89404         (WebCore::Widget::show):
   89405         (WebCore::Widget::hide):
   89406         (WebCore::Widget::setEnabled):
   89407         (WebCore::Widget::isEnabled):
   89408         (WebCore::Widget::paint):
   89409         * platform/mac/PlatformScreenMac.mm:
   89410         (WebCore::screenRect):
   89411         (WebCore::screenAvailableRect):
   89412         * platform/mac/ScrollViewMac.mm:
   89413         (WebCore::ScrollView::scrollView):
   89414         (WebCore::ScrollView::update):
   89415         (WebCore::ScrollView::inWindow):
   89416         * platform/mac/ScrollbarMac.mm:
   89417         (WebCore::ScrollbarMac::ScrollbarMac):
   89418         (WebCore::ScrollbarMac::~ScrollbarMac):
   89419         (WebCore::ScrollbarMac::updateThumbPosition):
   89420         (WebCore::ScrollbarMac::updateThumbProportion):
   89421         (WebCore::ScrollbarMac::scrollbarHit):
   89422         * platform/mac/WidgetMac.mm:
   89423         (WebCore::Widget::Widget):
   89424         (WebCore::Widget::setEnabled):
   89425         (WebCore::Widget::isEnabled):
   89426         (WebCore::Widget::setFocus):
   89427         (WebCore::Widget::getOuterView):
   89428         (WebCore::Widget::paint):
   89429         (WebCore::Widget::invalidate):
   89430         (WebCore::Widget::invalidateRect):
   89431         (WebCore::Widget::setIsSelected):
   89432         (WebCore::Widget::releasePlatformWidget):
   89433         (WebCore::Widget::retainPlatformWidget):
   89434         * platform/qt/WidgetQt.cpp:
   89435         (WebCore::WidgetPrivate::WidgetPrivate):
   89436         (WebCore::Widget::Widget):
   89437         (WebCore::Widget::setFrameGeometry):
   89438         (WebCore::Widget::show):
   89439         (WebCore::Widget::hide):
   89440         (WebCore::Widget::isEnabled):
   89441         (WebCore::Widget::setEnabled):
   89442         (WebCore::Widget::invalidateRect):
   89443         (WebCore::Widget::containingWindow):
   89444         * platform/win/WidgetWin.cpp:
   89445         (WebCore::Widget::Widget):
   89446         * platform/wx/WidgetWx.cpp:
   89447         (WebCore::Widget::Widget):
   89448         (WebCore::Widget::frameGeometry):
   89449         (WebCore::Widget::setFocus):
   89450         (WebCore::Widget::setCursor):
   89451         (WebCore::Widget::show):
   89452         (WebCore::Widget::hide):
   89453         (WebCore::Widget::setFrameGeometry):
   89454         (WebCore::Widget::setEnabled):
   89455         (WebCore::Widget::isEnabled):
   89456         (WebCore::Widget::invalidate):
   89457         (WebCore::Widget::invalidateRect):
   89458         (WebCore::Widget::paint):
   89459         * plugins/PluginView.cpp:
   89460         (WebCore::PluginView::PluginView):
   89461         * plugins/PluginView.h:
   89462         (WebCore::PluginView::platformPluginWidget):
   89463         * plugins/gtk/PluginViewGtk.cpp:
   89464         (WebCore::PluginView::updateWindow):
   89465         (WebCore::PluginView::setFocus):
   89466         (WebCore::PluginView::show):
   89467         (WebCore::PluginView::hide):
   89468         (WebCore::PluginView::setParent):
   89469         (WebCore::PluginView::setNPWindowRect):
   89470         (WebCore::PluginView::setParentVisible):
   89471         (WebCore::PluginView::getValue):
   89472         (WebCore::PluginView::forceRedraw):
   89473         (WebCore::PluginView::init):
   89474         * plugins/qt/PluginViewQt.cpp:
   89475         (WebCore::PluginView::updateWindow):
   89476         (WebCore::PluginView::setFocus):
   89477         (WebCore::PluginView::show):
   89478         (WebCore::PluginView::hide):
   89479         (WebCore::PluginView::setParent):
   89480         (WebCore::PluginView::setNPWindowRect):
   89481         (WebCore::PluginView::setParentVisible):
   89482         (WebCore::PluginView::getValue):
   89483         (WebCore::PluginView::~PluginView):
   89484         (WebCore::PluginView::init):
   89485         * plugins/win/PluginViewWin.cpp:
   89486         (WebCore::PluginView::updateWindow):
   89487         (WebCore::PluginView::setFocus):
   89488         (WebCore::PluginView::show):
   89489         (WebCore::PluginView::hide):
   89490         (WebCore::PluginView::paint):
   89491         (WebCore::PluginView::setParent):
   89492         (WebCore::PluginView::setParentVisible):
   89493         (WebCore::PluginView::setNPWindowRect):
   89494         (WebCore::PluginView::stop):
   89495         (WebCore::PluginView::invalidateRect):
   89496         (WebCore::PluginView::forceRedraw):
   89497         (WebCore::PluginView::~PluginView):
   89498         (WebCore::PluginView::init):
   89499 
   89500 2008-09-17  Sam Weinig  <sam (a] webkit.org>
   89501 
   89502         Fix assert.
   89503 
   89504         * platform/Widget.cpp:
   89505         (WebCore::Widget::setParent):
   89506 
   89507 2008-09-17  David Hyatt  <hyatt (a] apple.com>
   89508 
   89509         Beginnings of Widget refactoring (in order to make the mixing of
   89510         widgets with and without corresponding native widgets more cross-platform).
   89511 
   89512         This first patch makes the concept of a parent ScrollView cross-platform.
   89513 
   89514         Note the similarity of the show/hide methods on the three PluginViews.  This
   89515         will be refactored better in a later patch so that they can all share
   89516         a base class Widget show/hide method.  For now the changes were made
   89517         simply to be able to bring WidgetWin's setParent method up into Widget.
   89518 
   89519         Reviewed by Sam Weinig
   89520 
   89521         * WebCore.base.exp:
   89522         * platform/ScrollView.h:
   89523         * platform/Widget.cpp:
   89524         (WebCore::Widget::init):
   89525         (WebCore::Widget::setParent):
   89526         * platform/Widget.h:
   89527         (WebCore::Widget::isSelfVisible):
   89528         (WebCore::Widget::isParentVisible):
   89529         (WebCore::Widget::isVisible):
   89530         (WebCore::Widget::setParentVisible):
   89531         (WebCore::Widget::isPluginView):
   89532         (WebCore::Widget::parent):
   89533         (WebCore::Widget::handleEvent):
   89534         (WebCore::Widget::geometryChanged):
   89535         * platform/gtk/WidgetGtk.cpp:
   89536         (WebCore::Widget::Widget):
   89537         * platform/mac/ScrollViewMac.mm:
   89538         (WebCore::ScrollView::addChild):
   89539         (WebCore::ScrollView::removeChild):
   89540         * platform/mac/ScrollbarMac.mm:
   89541         (WebCore::ScrollbarMac::~ScrollbarMac):
   89542         * platform/mac/WidgetMac.mm:
   89543         (WebCore::Widget::Widget):
   89544         (WebCore::Widget::~Widget):
   89545         * platform/qt/WidgetQt.cpp:
   89546         (WebCore::WidgetPrivate::WidgetPrivate):
   89547         (WebCore::Widget::Widget):
   89548         (WebCore::Widget::topLevel):
   89549         * platform/win/ScrollViewWin.cpp:
   89550         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
   89551         (WebCore::ScrollView::setAncestorVisible):
   89552         (WebCore::ScrollView::show):
   89553         (WebCore::ScrollView::hide):
   89554         * platform/win/WidgetWin.cpp:
   89555         (WebCore::Widget::Widget):
   89556         (WebCore::Widget::setParent):
   89557         * platform/wx/WidgetWx.cpp:
   89558         (WebCore::Widget::Widget):
   89559         * plugins/PluginView.cpp:
   89560         (WebCore::PluginView::PluginView):
   89561         * plugins/PluginView.h:
   89562         * plugins/gtk/PluginViewGtk.cpp:
   89563         (WebCore::PluginView::show):
   89564         (WebCore::PluginView::hide):
   89565         (WebCore::PluginView::setParentVisible):
   89566         * plugins/qt/PluginViewQt.cpp:
   89567         (WebCore::PluginView::show):
   89568         (WebCore::PluginView::hide):
   89569         (WebCore::PluginView::setParentVisible):
   89570         * plugins/win/PluginViewWin.cpp:
   89571         (WebCore::PluginView::show):
   89572         (WebCore::PluginView::hide):
   89573         (WebCore::PluginView::setParentVisible):
   89574 
   89575 2008-09-17  Alexey Proskuryakov  <ap (a] webkit.org>
   89576 
   89577         Reviewed by Adam Roben.
   89578 
   89579         <rdar://problem/6219577> Spew in console at launch about encoding mappings when running with ICU 4.0
   89580 
   89581         * platform/text/TextCodecICU.cpp:
   89582         (WebCore::TextCodecICU::registerExtendedEncodingNames): Updated for new encoding names.
   89583 
   89584 2008-09-17  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   89585 
   89586         Fix the QtWebKit/Mac build
   89587 
   89588         * platform/qt/ScrollViewQt.cpp: add include
   89589 
   89590 2008-09-17  David Hyatt  <hyatt (a] apple.com>
   89591 
   89592         Add a #define to control whether or not to use an NSScroller on Mac.
   89593         This ifdef will allow the new NSView-less NSScroller on Mac to be
   89594         developed side by side with the current one.
   89595 
   89596         The new scroller paints a debug red if turned on (although due to
   89597         Widget issues you won't see anything paint yet).
   89598 
   89599         Reviewed by olliej
   89600 
   89601         * platform/Scrollbar.cpp:
   89602         * platform/Scrollbar.h:
   89603         * platform/mac/ScrollbarMac.h:
   89604         * platform/mac/ScrollbarMac.mm:
   89605         * platform/mac/ScrollbarThemeMac.cpp:
   89606         (WebCore::ScrollbarThemeMac::paint):
   89607         * platform/mac/ScrollbarThemeMac.h:
   89608 
   89609 2008-09-16  Marco Barisione  <marco.barisione (a] collabora.co.uk>
   89610 
   89611         Reviewed by Alp Toker.
   89612 
   89613         http://bugs.webkit.org/show_bug.cgi?id=20854
   89614         [GTK] Windows can be not realized in ScrollView::update
   89615 
   89616         Do not call gdk_window_invalidate_rect on a non-realized GtkWidget.
   89617 
   89618         * platform/gtk/ScrollViewGtk.cpp:
   89619         (WebCore::ScrollView::update):
   89620 
   89621 2008-09-16  Alp Toker  <alp (a] nuanti.com>
   89622 
   89623         Suggested by Dave Hyatt.
   89624 
   89625         Build fix and cleanup. Rename ScrollBar to Scrollbar.
   89626 
   89627         * GNUmakefile.am:
   89628         * WebCore.pro:
   89629         * WebCore.vcproj/WebCore.vcproj:
   89630         * WebCore.xcodeproj/project.pbxproj:
   89631         * WebCoreSources.bkl:
   89632         * editing/EditorCommand.cpp:
   89633         * page/EventHandler.cpp:
   89634         * page/gtk/EventHandlerGtk.cpp:
   89635         * page/mac/EventHandlerMac.mm:
   89636         * page/mac/FrameMac.mm:
   89637         * page/qt/EventHandlerQt.cpp:
   89638         * page/wx/EventHandlerWx.cpp:
   89639         * platform/PopupMenu.h:
   89640         * platform/ScrollBar.cpp: Removed.
   89641         * platform/ScrollBar.h: Removed.
   89642         * platform/Scrollbar.cpp: Copied from WebCore/platform/ScrollBar.cpp.
   89643         * platform/Scrollbar.h: Copied from WebCore/platform/ScrollBar.h.
   89644         * platform/gtk/ScrollbarGtk.cpp:
   89645         (ScrollbarGtk::ScrollbarGtk):
   89646         * platform/gtk/ScrollbarGtk.h:
   89647         * platform/mac/ScrollbarMac.h:
   89648         * platform/qt/ScrollViewQt.cpp:
   89649         * platform/qt/ScrollbarQt.cpp:
   89650         * platform/qt/ScrollbarThemeQt.cpp:
   89651         * platform/win/PlatformScrollBar.h:
   89652         * platform/win/PopupMenuWin.cpp:
   89653         * platform/win/ScrollViewWin.cpp:
   89654         * platform/win/ScrollbarThemeWin.cpp:
   89655         * platform/wx/ScrollViewWx.cpp:
   89656         * platform/wx/TemporaryLinkStubs.cpp:
   89657         * rendering/HitTestResult.cpp:
   89658         * rendering/RenderLayer.cpp:
   89659         * rendering/RenderTextControl.cpp:
   89660 
   89661 2008-09-16  David Hyatt  <hyatt (a] apple.com>
   89662 
   89663         Fix Qt build bustage by making moveThumb a member of Scrollbar so that
   89664         it can be called from ScrollbarQt.
   89665 
   89666         * platform/ScrollBar.cpp:
   89667         (WebCore::Scrollbar::moveThumb):
   89668         (WebCore::Scrollbar::handleMouseMoveEvent):
   89669         (WebCore::Scrollbar::handleMousePressEvent):
   89670         * platform/ScrollBar.h:
   89671         * platform/qt/ScrollViewQt.cpp:
   89672         * platform/qt/ScrollbarQt.cpp:
   89673         (WebCore::Scrollbar::handleContextMenuEvent):
   89674 
   89675 2008-09-16  David Hyatt  <hyatt (a] apple.com>
   89676 
   89677         Eliminate PlatformScrollbar.  Mac and Gtk now have subclasses for their
   89678         native-widget scrollbars (ScrollbarMac and ScrollbarGtk).  Other platforms
   89679         now just use Scrollbar.
   89680 
   89681         Reviewed by Sam Weinig
   89682 
   89683         * GNUmakefile.am:
   89684         * WebCore.pro:
   89685         * WebCore.vcproj/WebCore.vcproj:
   89686         * WebCore.xcodeproj/project.pbxproj:
   89687         * page/mac/FrameMac.mm:
   89688         * platform/PopupMenu.h:
   89689         (WebCore::PopupMenu::scrollbar):
   89690         * platform/ScrollBar.cpp:
   89691         (WebCore::createNativeScrollbar):
   89692         * platform/ScrollBar.h:
   89693         * platform/gtk/PlatformScrollBar.h: Removed.
   89694         * platform/gtk/PlatformScrollBarGtk.cpp: Removed.
   89695         * platform/gtk/ScrollbarGtk.cpp: Copied from platform/gtk/PlatformScrollBarGtk.cpp.
   89696         (gtkScrollEventCallback):
   89697         (ScrollbarGtk::ScrollbarGtk):
   89698         (ScrollbarGtk::~ScrollbarGtk):
   89699         (ScrollbarGtk::updateThumbPosition):
   89700         (ScrollbarGtk::updateThumbProportion):
   89701         (ScrollbarGtk::setFrameGeometry):
   89702         (ScrollbarGtk::geometryChanged):
   89703         (ScrollbarGtk::gtkValueChanged):
   89704         * platform/gtk/ScrollbarGtk.h: Copied from platform/gtk/PlatformScrollBar.h.
   89705         * platform/mac/PlatformScrollBar.h: Removed.
   89706         * platform/mac/PlatformScrollBarMac.mm: Removed.
   89707         * platform/mac/ScrollbarMac.h: Copied from platform/mac/PlatformScrollBar.h.
   89708         * platform/mac/ScrollbarMac.mm: Copied from platform/mac/PlatformScrollBarMac.mm.
   89709         (-[WebCoreScrollBar initWithScrollbarMac:]):
   89710         (-[WebCoreScrollBar detachScrollbarMac]):
   89711         (WebCore::Scrollbar::createNativeScrollbar):
   89712         (WebCore::ScrollbarMac::ScrollbarMac):
   89713         (WebCore::ScrollbarMac::~ScrollbarMac):
   89714         (WebCore::ScrollbarMac::updateThumbPosition):
   89715         (WebCore::ScrollbarMac::updateThumbProportion):
   89716         (WebCore::ScrollbarMac::scrollbarHit):
   89717         * platform/qt/PlatformScrollBar.h: Removed.
   89718         * platform/qt/PlatformScrollBarQt.cpp: Removed.
   89719         * platform/qt/ScrollbarQt.cpp: Copied from platform/qt/PlatformScrollBarQt.cpp.
   89720         (WebCore::Scrollbar::handleContextMenuEvent):
   89721         * rendering/HitTestResult.cpp:
   89722         * rendering/RenderLayer.cpp:
   89723         (WebCore::RenderLayer::createScrollbar):
   89724         (WebCore::RenderLayer::destroyScrollbar):
   89725         * rendering/RenderLayer.h:
   89726         * rendering/RenderListBox.cpp:
   89727         (WebCore::RenderListBox::~RenderListBox):
   89728         (WebCore::RenderListBox::updateFromElement):
   89729         (WebCore::RenderListBox::isPointInOverflowControl):
   89730         * rendering/RenderObject.h:
   89731         * rendering/RenderTextControl.cpp:
   89732 
   89733 2008-09-16  David Hyatt  <hyatt (a] apple.com>
   89734 
   89735         Make the scrollbar resizer-dodging logic cross-platform in the
   89736         Scrollbar class.
   89737 
   89738         Reviewed by Sam Weinig
   89739 
   89740         * platform/ScrollBar.cpp:
   89741         (WebCore::Scrollbar::setFrameGeometry):
   89742         (WebCore::Scrollbar::setParent):
   89743         (WebCore::Scrollbar::windowClipRect):
   89744         * platform/ScrollBar.h:
   89745         * platform/ScrollView.h:
   89746         (WebCore::ScrollView::windowResizerRect):
   89747         (WebCore::ScrollView::resizerOverlapsContent):
   89748         (WebCore::ScrollView::adjustOverlappingScrollbarCount):
   89749         * platform/Widget.h:
   89750         (WebCore::Widget::setParent):
   89751         * platform/mac/WidgetMac.mm:
   89752         (WebCore::Widget::convertToContainingWindow):
   89753         * platform/win/PlatformScrollBar.h:
   89754         * platform/win/PlatformScrollBarWin.cpp:
   89755 
   89756 2008-09-16  Dan Bernstein  <mitz (a] apple.com>
   89757 
   89758         Reviewed by Darin Adler.
   89759 
   89760         - fix https://bugs.webkit.org/show_bug.cgi?id=15129
   89761           <rdar://problem/4644824> adding a new line with DOM does unnecessary additional repaint
   89762 
   89763         Covered by fast/repaint/4776765.html
   89764 
   89765         * rendering/RenderBlock.cpp:
   89766         (WebCore::RenderBlock::layoutBlock): Avoid repainting this object if it
   89767         did not have layout in the beginning.
   89768         (WebCore::RenderBlock::layoutBlockChildren): If a child did not have
   89769         layout in the beginning, repaint it in its new position, to compensate
   89770         for the above (regardless of whether it "moved").
   89771         * rendering/RenderObject.cpp:
   89772         (WebCore::RenderObject::checkForRepaintDuringLayout): Added a comment
   89773         about generalizing this fix in the future.
   89774 
   89775 2008-09-16  Dan Bernstein  <mitz (a] apple.com>
   89776 
   89777         Reviewed by Dave Hyatt.
   89778 
   89779         - fix https://bugs.webkit.org/show_bug.cgi?id=15384
   89780           Div does not notice when grandparent changes height
   89781 
   89782         Test: fast/block/basic/quirk-percent-height-grandchild.html
   89783 
   89784         - fix https://bugs.webkit.org/show_bug.cgi?id=20714
   89785           Resizing Gmail inbox vertically results in whitespace at the bottom of the window
   89786 
   89787         Test: fast/replaced/percent-height-in-anonymous-block.html
   89788 
   89789         Added a two-way mapping between boxes with percentage heights and
   89790         their non-parent ancestors up to the one the height is computed relative
   89791         to. In quirks mode (the first bug), this can be any number of containing
   89792         block with auto height. In strict mode (the second bug) this can be
   89793         the containing block of an anonymous block containing a replaced
   89794         element.
   89795 
   89796         * rendering/RenderBlock.cpp:
   89797         (WebCore::RenderBlock::~RenderBlock): Added code to remove the all the
   89798         mapping to/from this block to percentage-height descendants.
   89799         (WebCore::RenderBlock::layoutBlockChildren): Added code to mark
   89800         percentage-height descendants (and their containing block ancestry chain
   89801         up to this block) for layout. This ensures that those descendants whose
   89802         height depends on the height of this block (or an ancestor) are updated.
   89803         (WebCore::RenderBlock::addPercentHeightDescendant): Added. Establishes
   89804         a two-way mapping between this block and the given box.
   89805         (WebCore::RenderBlock::removePercentHeightDescendant): Added. Removes
   89806         all the mapping to/from this box.
   89807         * rendering/RenderBlock.h:
   89808         * rendering/RenderBox.cpp:
   89809         (WebCore::RenderBox::setStyle): Added calls to
   89810         removePercentHeightDescendant() when style changes and the box
   89811         previously had a percentage height. An exception is when the style
   89812         change does not require layout, in which case the box still has
   89813         a percentage height and the mappings are valid. In all other cases,
   89814         any required mappings will be (re-)established during layout.
   89815         (WebCore::RenderBox::destroy): Added a call to
   89816         removePercentHeightDescendant.
   89817         (WebCore::RenderBox::calcPercentageHeight): Added code that, in quirks
   89818         mode, if a higher-than-parent containing block is affecting the box's
   89819         height, creates a mapping between the box and that block.
   89820         (WebCore::RenderBox::calcReplacedHeightUsing): Changed to skip over
   89821         anonymous containing blocks, if any, and when that happens, use
   89822         addPercentHeightDescendant() to ensure that the non-anonymous block
   89823         is aware of the dependent percent-height box.
   89824 
   89825 2008-09-16  Dirk Schulze  <vbs85 (a] gmx.de>
   89826 
   89827         Reviewed by Oliver Hunt and Alp Toker.
   89828 
   89829         Implemented toDataURL in Cairo. Only PNG support
   89830         at the moment.
   89831 
   89832         Qt, Cairo and wx require toDataURL implementations
   89833         https://bugs.webkit.org/show_bug.cgi?id=17719
   89834 
   89835         * platform/MIMETypeRegistry.cpp:
   89836         (WebCore::initializeSupportedImageMIMETypesForEncoding):
   89837         * platform/graphics/cairo/ImageBufferCairo.cpp:
   89838         (WebCore::ImageBuffer::ImageBuffer):
   89839         (WebCore::writeFunction):
   89840         (WebCore::ImageBuffer::toDataURL):
   89841 
   89842 2008-09-16  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   89843 
   89844         Reviewed by Simon.
   89845 
   89846         Hide unused media element controls in the QtWebKit port
   89847 
   89848         * platform/qt/html4-adjustments-qt.css
   89849 
   89850 2008-09-16  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   89851 
   89852         Reviewed by Simon.
   89853 
   89854         Fix compilation of the Qt scrollbar code.
   89855 
   89856         * platform/qt/PlatformScrollBarQt.cpp:
   89857         (WebCore::scPart):
   89858         (WebCore::styleOptionSlider):
   89859         (WebCore::thumbLength):
   89860         (WebCore::pixelPosToRangeValue):
   89861         (WebCore::PlatformScrollbar::handleContextMenuEvent):
   89862 
   89863 2008-09-16  Adam Treat  <treat (a] kde.org>
   89864 
   89865         Reviewed by Anders Carlsson.
   89866 
   89867         Prevent accesses off of the end of the buffer introduced in r36450
   89868         and when checking for descriptions of mime. Also, coding style fix.
   89869 
   89870         * plugins/qt/PluginPackageQt.cpp:
   89871         (WebCore::PluginPackage::fetchInfo):
   89872 
   89873 2008-09-15  Rob Buis  <buis (a] kde.org>
   89874 
   89875         Reviewed by Eric.
   89876 
   89877         https://bugs.webkit.org/show_bug.cgi?id=20634
   89878         SVG transform attribute is ignored by <use> in <clipPath>
   89879 
   89880         Transform the paths with the local transform when part
   89881         of a clip path.
   89882 
   89883         Test: svg/custom/use-clipped-transform.svg
   89884 
   89885         * svg/SVGClipPathElement.cpp:
   89886         (WebCore::SVGClipPathElement::canvasResource):
   89887         * svg/SVGStyledTransformableElement.cpp:
   89888         (WebCore::SVGStyledTransformableElement::toClipPath):
   89889         * svg/SVGStyledTransformableElement.h:
   89890 
   89891 2008-09-15  Dave Hyatt  <hyatt (a] apple.com>
   89892 
   89893         Convert Qt over to its ScrollbarTheme.  Add cross-platform support for jumping the thumb location directly
   89894         to a pressed location on the track (this is done with the middle mouse on Qt and with Shift-Click on Windows).
   89895 
   89896         Reviewed by Sam Weinig
   89897 
   89898         * platform/ScrollBar.cpp:
   89899         (WebCore::thumbUnderMouse):
   89900         (WebCore::Scrollbar::autoscrollPressedPart):
   89901         (WebCore::Scrollbar::startTimerIfNeeded):
   89902         (WebCore::moveThumb):
   89903         (WebCore::Scrollbar::handleMouseMoveEvent):
   89904         (WebCore::Scrollbar::handleMousePressEvent):
   89905         * platform/ScrollBar.h:
   89906         (WebCore::Scrollbar::pressedPos):
   89907         (WebCore::Scrollbar::pixelStep):
   89908         (WebCore::Scrollbar::setPressedPos):
   89909         * platform/ScrollbarTheme.h:
   89910         (WebCore::ScrollbarTheme::thumbPosition):
   89911         (WebCore::ScrollbarTheme::thumbLength):
   89912         (WebCore::ScrollbarTheme::trackPosition):
   89913         (WebCore::ScrollbarTheme::trackLength):
   89914         * platform/ScrollbarThemeComposite.cpp:
   89915         (WebCore::ScrollbarThemeComposite::trackPosition):
   89916         * platform/ScrollbarThemeComposite.h:
   89917         * platform/qt/PlatformScrollBarQt.cpp:
   89918         (WebCore::PlatformScrollbar::PlatformScrollbar):
   89919         (WebCore::):
   89920         * platform/qt/ScrollbarThemeQt.cpp:
   89921         (WebCore::styleOptionSlider):
   89922         (WebCore::ScrollbarThemeQt::hitTest):
   89923         (WebCore::ScrollbarThemeQt::shouldCenterOnThumb):
   89924         (WebCore::ScrollbarThemeQt::invalidatePart):
   89925         (WebCore::ScrollbarThemeQt::thumbPosition):
   89926         (WebCore::):
   89927         * platform/qt/ScrollbarThemeQt.h:
   89928         * platform/win/ScrollbarThemeSafari.cpp:
   89929         (WebCore::ScrollbarThemeSafari::shouldCenterOnThumb):
   89930         * platform/win/ScrollbarThemeSafari.h:
   89931         * platform/win/ScrollbarThemeWin.cpp:
   89932         (WebCore::ScrollbarThemeWin::shouldCenterOnThumb):
   89933         * platform/win/ScrollbarThemeWin.h:
   89934 
   89935 2008-09-15  David Smith  <catfish.man (a] gmail.com>
   89936 
   89937         Reviewed by Sam Weinig.
   89938 
   89939         https://bugs.webkit.org/show_bug.cgi?id=20180
   89940 
   89941         Cache the result of parsing the an+b expression in :nth-child(an+b). Roughly a 2x speedup for :nth-child on SlickSpeed.
   89942 
   89943         * GNUmakefile.am: Add CSSNthSelector
   89944         * WebCore.pro: Add CSSNthSelector
   89945         * WebCore.vcproj/WebCore.vcproj: Add CSSNthSelector
   89946         * WebCore.xcodeproj/project.pbxproj: Add CSSNthSelector
   89947         * css/CSSGrammar.y: Create CSSNthSelectors instead of CSSSelectors for :nth-*
   89948         * css/CSSNthSelector.cpp: Added.
   89949         (WebCore::CSSNthSelector::parseNth): Moved from CSSStyleSelector and modified to cache
   89950         (WebCore::CSSNthSelector::matchNth): Moved from CSSStyleSelector and modified to use the cache
   89951         * css/CSSNthSelector.h: Added.
   89952         (WebCore::CSSNthSelector::CSSNthSelector):
   89953         (WebCore::CSSNthSelector::~CSSNthSelector):
   89954         * css/CSSParser.cpp:
   89955         (WebCore::CSSParser::createFloatingNthSelector):
   89956         * css/CSSParser.h:
   89957         * css/CSSSelector.h: Use the free bit here to store a flag for CSSNthSelector
   89958         (WebCore::CSSSelector::CSSSelector):
   89959         * css/CSSStyleSelector.cpp:
   89960         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): Take advantage of knowing that all :nth-* selectors are CSSNthSelectors
   89961 
   89962 2008-09-15  Matt Lilek  <webkit (a] mattlilek.com>
   89963 
   89964         Reviewed by Tim Hatcher.
   89965 
   89966         Clean up some inspector JS callbacks to remove an extra return.
   89967 
   89968         * page/InspectorController.cpp:
   89969         (WebCore::hideDOMNodeHighlight):
   89970         (WebCore::loaded):
   89971         (WebCore::unloading):
   89972         (WebCore::attach):
   89973         (WebCore::detach):
   89974         (WebCore::startDebuggingAndReloadInspectedPage):
   89975         (WebCore::stopDebugging):
   89976         (WebCore::debuggerAttached):
   89977         (WebCore::pauseOnExceptions):
   89978         (WebCore::pauseInDebugger):
   89979         (WebCore::resumeDebugger):
   89980         (WebCore::stepOverStatementInDebugger):
   89981         (WebCore::stepIntoStatementInDebugger):
   89982         (WebCore::stepOutOfFunctionInDebugger):
   89983         (WebCore::isWindowVisible):
   89984         (WebCore::closeWindow):
   89985 
   89986 2008-09-15  Dave Hyatt  <hyatt (a] apple.com>
   89987 
   89988         Completely switch Windows scrollbars over to ScrollbarTheme.  The Aqua windows scrollbar and native scrollbar
   89989         now share most of their code.
   89990 
   89991         Also removing mini size scrollbar support, since it would have crashed Windows had it ever been used, and it
   89992         also is never used in our code anyway.
   89993 
   89994         Reviewed by Sam Weinig
   89995 
   89996         * WebCore.vcproj/WebCore.vcproj:
   89997         * platform/ScrollTypes.h:
   89998         (WebCore::):
   89999         * platform/ScrollbarThemeComposite.cpp:
   90000         (WebCore::ScrollbarThemeComposite::splitTrack):
   90001         (WebCore::ScrollbarThemeComposite::thumbLength):
   90002         (WebCore::ScrollbarThemeComposite::minimumThumbLength):
   90003         * platform/ScrollbarThemeComposite.h:
   90004         * platform/mac/PlatformScrollBarMac.mm:
   90005         (NSControlSizeForScrollBarControlSize):
   90006         * platform/win/PlatformScrollBar.h:
   90007         * platform/win/PlatformScrollBarSafari.cpp: Removed.
   90008         * platform/win/PlatformScrollBarWin.cpp:
   90009         (WebCore::PlatformScrollbar::PlatformScrollbar):
   90010         * platform/win/ScrollbarThemeSafari.cpp:
   90011         (WebCore::ScrollbarTheme::nativeTheme):
   90012         (WebCore::):
   90013         (WebCore::scrollbarControlStateFromThemeState):
   90014         (WebCore::ScrollbarThemeSafari::hasButtons):
   90015         (WebCore::ScrollbarThemeSafari::hasThumb):
   90016         (WebCore::buttonRepaintRect):
   90017         (WebCore::ScrollbarThemeSafari::backButtonRect):
   90018         (WebCore::ScrollbarThemeSafari::forwardButtonRect):
   90019         (WebCore::trackRepaintRect):
   90020         (WebCore::ScrollbarThemeSafari::trackRect):
   90021         (WebCore::ScrollbarThemeSafari::minimumThumbLength):
   90022         (WebCore::ScrollbarThemeSafari::paintTrack):
   90023         (WebCore::ScrollbarThemeSafari::paintButton):
   90024         (WebCore::ScrollbarThemeSafari::paintThumb):
   90025         * platform/win/ScrollbarThemeSafari.h:
   90026         * platform/win/ScrollbarThemeWin.cpp:
   90027         * platform/win/ScrollbarThemeWin.h:
   90028 
   90029 2008-09-15  Chris Fleizach  <cfleizach (a] apple.com>
   90030 
   90031         Reviewed by Darin Adler, Beth Dakin
   90032 
   90033         <rdar://problem/4003789> Expose lists as AXList
   90034         <rdar://problem/5707399> VO: Definition lists not announced in Safari
   90035 
   90036         Lists are now exposed through AX. On the mac (in SnowLeopard) they use two new subroles
   90037         AXContentList for <ul>, <ol> and AXDefinitionList for <dl>
   90038         Inside the definition list, each <dt> "term" has an accessibility description ("term"),
   90039         as does each <dd> tag ("definition")
   90040 
   90041         Test: accessibility/lists.html
   90042 
   90043         * GNUmakefile.am:
   90044         * WebCore.pro:
   90045         * WebCore.vcproj/WebCore.vcproj:
   90046         * WebCore.xcodeproj/project.pbxproj:
   90047         * WebCoreSources.bkl:
   90048         * page/AXObjectCache.cpp:
   90049         * page/AccessibilityList.cpp: Added.
   90050         * page/AccessibilityList.h: Added.
   90051         * page/AccessibilityObject.h:
   90052         * page/AccessibilityRenderObject.cpp:
   90053         * page/AccessibilityTable.cpp:
   90054         * page/mac/AccessibilityObjectWrapper.mm:
   90055         * page/mac/WebCoreViewFactory.h:
   90056         * platform/LocalizedStrings.h:
   90057         * platform/mac/LocalizedStringsMac.mm:
   90058         * platform/qt/Localizations.cpp:
   90059 
   90060 2008-09-15  Nikolas Zimmermann  <zimmermann (a] kde.org>
   90061 
   90062         Reviewed by Eric.
   90063 
   90064         Fixes: https://bugs.webkit.org/show_bug.cgi?id=20865
   90065         Prepare HTMLScriptElement & SVGScriptElement unification, and unification of event handling.
   90066 
   90067         Several renames:
   90068         dispatchHTMLEvent -> dispatchEventForType
   90069         setHTMLEventListener -> setEventListenerForType
   90070         getHTMLEventListener -> eventListenerForType
   90071         removeHTMLEventListener -> removeEventListenerForType
   90072         isHTMLEventListener -> isAttachedToEventTargetNode
   90073         ...
   90074 
   90075         Similar renames for the dispatch/get/set/*Window*Event functions.
   90076         Kill JSSVGLazyEventListener and merge with JSLazyEventListener.
   90077 
   90078         Most important change: Rename setHTMLEventListener to setEventListenerForTypeAndAttribute,
   90079         as there exists a generic createEventListener() method now, taking care of JSLazyEventListener creation.
   90080 
   90081         setHTMLEventListener() used createHTMLEventListener() before and was HTML specific.
   90082         SVG is able to use the code as well now. This affects most files in html/.
   90083 
   90084         No functional changes.
   90085 
   90086         * GNUmakefile.am:
   90087         * WebCore.pro:
   90088         * WebCore.vcproj/WebCore.vcproj:
   90089         * WebCore.xcodeproj/project.pbxproj:
   90090         * bindings/js/JSDOMWindowBase.cpp:
   90091         (WebCore::JSDOMWindowBase::~JSDOMWindowBase):
   90092         (WebCore::JSDOMWindowBase::setListener):
   90093         (WebCore::JSDOMWindowBase::getListener):
   90094         (WebCore::JSDOMWindowBase::findJSEventListener):
   90095         (WebCore::JSDOMWindowBase::findOrCreateJSEventListener):
   90096         (WebCore::JSDOMWindowBase::findJSUnprotectedEventListener):
   90097         (WebCore::JSDOMWindowBase::findOrCreateJSUnprotectedEventListener):
   90098         (WebCore::JSDOMWindowBase::jsEventListenersAttachedToEventTargetNodes):
   90099         (WebCore::JSDOMWindowBase::jsUnprotectedEventListenersAttachedToEventTargetNodes):
   90100         * bindings/js/JSDOMWindowBase.h:
   90101         * bindings/js/JSEventListener.cpp:
   90102         (WebCore::JSAbstractEventListener::handleEvent):
   90103         (WebCore::JSAbstractEventListener::isAttachedToEventTargetNode):
   90104         (WebCore::JSUnprotectedEventListener::JSUnprotectedEventListener):
   90105         (WebCore::JSUnprotectedEventListener::~JSUnprotectedEventListener):
   90106         (WebCore::JSEventListener::JSEventListener):
   90107         (WebCore::JSEventListener::~JSEventListener):
   90108         (WebCore::JSLazyEventListener::JSLazyEventListener):
   90109         (WebCore::eventParameterName):
   90110         (WebCore::JSLazyEventListener::parseCode):
   90111         (WebCore::getNodeEventListener):
   90112         * bindings/js/JSEventListener.h:
   90113         (WebCore::JSAbstractEventListener::JSAbstractEventListener):
   90114         (WebCore::JSUnprotectedEventListener::create):
   90115         (WebCore::JSEventListener::create):
   90116         (WebCore::JSLazyEventListener::):
   90117         (WebCore::JSLazyEventListener::create):
   90118         * bindings/js/JSEventTargetNode.cpp:
   90119         (WebCore::JSEventTargetNode::setListener):
   90120         (WebCore::JSEventTargetNode::getListener):
   90121         * bindings/js/JSSVGLazyEventListener.cpp: Removed.
   90122         * bindings/js/JSSVGLazyEventListener.h: Removed.
   90123         * bindings/js/ScriptController.cpp:
   90124         (WebCore::ScriptController::createHTMLEventHandler):
   90125         (WebCore::ScriptController::createSVGEventHandler):
   90126         * dom/Document.cpp:
   90127         (WebCore::Document::setFocusedNode):
   90128         (WebCore::Document::handleWindowEvent):
   90129         (WebCore::Document::setWindowEventListenerForType):
   90130         (WebCore::Document::windowEventListenerForType):
   90131         (WebCore::Document::removeWindowEventListenerForType):
   90132         (WebCore::Document::addWindowEventListener):
   90133         (WebCore::Document::hasWindowEventListener):
   90134         (WebCore::Document::removePendingFrameBeforeUnloadEventCount):
   90135         (WebCore::Document::createEventListener):
   90136         (WebCore::Document::setWindowEventListenerForTypeAndAttribute):
   90137         * dom/Document.h:
   90138         * dom/EventListener.h:
   90139         (WebCore::EventListener::isAttachedToEventTargetNode):
   90140         * dom/EventTargetNode.cpp:
   90141         (WebCore::EventTargetNode::dispatchFocusEvent):
   90142         (WebCore::EventTargetNode::dispatchBlurEvent):
   90143         (WebCore::EventTargetNode::dispatchEventForType):
   90144         (WebCore::EventTargetNode::removeEventListenerForType):
   90145         (WebCore::EventTargetNode::setEventListenerForType):
   90146         (WebCore::EventTargetNode::setEventListenerForTypeAndAttribute):
   90147         (WebCore::EventTargetNode::eventListenerForType):
   90148         * dom/EventTargetNode.h:
   90149         * dom/XMLTokenizer.cpp:
   90150         (WebCore::XMLTokenizer::notifyFinished):
   90151         * editing/ReplaceSelectionCommand.cpp:
   90152         (WebCore::ReplacementFragment::ReplacementFragment):
   90153         * html/HTMLBodyElement.cpp:
   90154         (WebCore::HTMLBodyElement::parseMappedAttribute):
   90155         * html/HTMLButtonElement.cpp:
   90156         (WebCore::HTMLButtonElement::parseMappedAttribute):
   90157         * html/HTMLElement.cpp:
   90158         (WebCore::HTMLElement::parseMappedAttribute):
   90159         (WebCore::HTMLElement::checkDTD):
   90160         * html/HTMLElement.h:
   90161         * html/HTMLFormControlElement.cpp:
   90162         (WebCore::HTMLFormControlElement::onChange):
   90163         * html/HTMLFormElement.cpp:
   90164         (WebCore::HTMLFormElement::prepareSubmit):
   90165         (WebCore::HTMLFormElement::reset):
   90166         (WebCore::HTMLFormElement::parseMappedAttribute):
   90167         * html/HTMLFrameElementBase.cpp:
   90168         (WebCore::HTMLFrameElementBase::parseMappedAttribute):
   90169         * html/HTMLFrameSetElement.cpp:
   90170         (WebCore::HTMLFrameSetElement::parseMappedAttribute):
   90171         * html/HTMLImageElement.cpp:
   90172         (WebCore::HTMLImageElement::parseMappedAttribute):
   90173         * html/HTMLImageLoader.cpp:
   90174         (WebCore::HTMLImageLoader::dispatchLoadEvent):
   90175         * html/HTMLInputElement.cpp:
   90176         (WebCore::HTMLInputElement::parseMappedAttribute):
   90177         (WebCore::HTMLInputElement::setValueFromRenderer):
   90178         (WebCore::HTMLInputElement::onSearch):
   90179         * html/HTMLMediaElement.cpp:
   90180         (WebCore::HTMLMediaElement::asyncEventTimerFired):
   90181         (WebCore::HTMLMediaElement::load):
   90182         (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged):
   90183         (WebCore::HTMLMediaElement::setReadyState):
   90184         (WebCore::HTMLMediaElement::seek):
   90185         (WebCore::HTMLMediaElement::mediaPlayerTimeChanged):
   90186         (WebCore::HTMLMediaElement::willSaveToCache):
   90187         * html/HTMLObjectElement.cpp:
   90188         (WebCore::HTMLObjectElement::parseMappedAttribute):
   90189         * html/HTMLScriptElement.cpp:
   90190         (WebCore::HTMLScriptElement::parseMappedAttribute):
   90191         (WebCore::HTMLScriptElement::dispatchLoadEvent):
   90192         (WebCore::HTMLScriptElement::dispatchErrorEvent):
   90193         * html/HTMLSelectElement.cpp:
   90194         (WebCore::HTMLSelectElement::parseMappedAttribute):
   90195         * html/HTMLTextAreaElement.cpp:
   90196         (WebCore::HTMLTextAreaElement::parseMappedAttribute):
   90197         * html/HTMLTokenizer.cpp:
   90198         (WebCore::HTMLTokenizer::notifyFinished):
   90199         * page/AccessibilityRenderObject.cpp:
   90200         (WebCore::AccessibilityRenderObject::mouseButtonListener):
   90201         * page/EventHandler.cpp:
   90202         (WebCore::EventHandler::canMouseDownStartSelect):
   90203         (WebCore::EventHandler::canMouseDragExtendSelect):
   90204         * page/Frame.cpp:
   90205         (WebCore::Frame::sendScrollEvent):
   90206         * page/Page.cpp:
   90207         (WebCore::networkStateChanged):
   90208         * rendering/RenderListBox.cpp:
   90209         (WebCore::RenderListBox::valueChanged):
   90210         * rendering/RenderTextControl.cpp:
   90211         (WebCore::RenderTextControl::selectionChanged):
   90212         * svg/SVGDocumentExtensions.cpp:
   90213         * svg/SVGDocumentExtensions.h:
   90214         * svg/SVGElement.cpp:
   90215         (WebCore::SVGElement::parseMappedAttribute):
   90216         (WebCore::SVGElement::finishParsingChildren):
   90217         * svg/SVGElement.h:
   90218         * svg/SVGSVGElement.cpp:
   90219         (WebCore::SVGSVGElement::parseMappedAttribute):
   90220         * svg/SVGSVGElement.h:
   90221 
   90222 2008-09-15  Dave Hyatt  <hyatt (a] apple.com>
   90223 
   90224         Convert PlatformScrollbarWin to use ScrollbarTheme for hit testing.  PlatformScrollbarQt/Gtk still
   90225         need to be converted.
   90226 
   90227         Reviewed by Sam Weinig
   90228 
   90229         * platform/ScrollBar.cpp:
   90230         (WebCore::Scrollbar::Scrollbar):
   90231         (WebCore::Scrollbar::updateThumbPosition):
   90232         (WebCore::Scrollbar::updateThumbProportion):
   90233         (WebCore::Scrollbar::autoscrollPressedPart):
   90234         (WebCore::Scrollbar::startTimerIfNeeded):
   90235         * platform/ScrollBar.h:
   90236         * platform/ScrollbarTheme.h:
   90237         (WebCore::ScrollbarTheme::invalidateParts):
   90238         * platform/ScrollbarThemeComposite.cpp:
   90239         (WebCore::ScrollbarThemeComposite::hitTest):
   90240         (WebCore::ScrollbarThemeComposite::invalidatePart):
   90241         (WebCore::ScrollbarThemeComposite::thumbPosition):
   90242         (WebCore::ScrollbarThemeComposite::thumbLength):
   90243         (WebCore::ScrollbarThemeComposite::trackLength):
   90244         * platform/ScrollbarThemeComposite.h:
   90245         * platform/win/PlatformScrollBarSafari.cpp:
   90246         (WebCore::PlatformScrollbar::PlatformScrollbar):
   90247         * platform/win/PlatformScrollBarWin.cpp:
   90248         (WebCore::PlatformScrollbar::PlatformScrollbar):
   90249 
   90250 2008-09-15  David Smith  <catfish.man (a] gmail.com>
   90251 
   90252         "Just do it"'d by Mark Rowe
   90253 
   90254         https://bugs.webkit.org/show_bug.cgi?id=20856
   90255         Add missing license header
   90256 
   90257         * dom/NodeRenderStyle.h:
   90258 
   90259 2008-09-15  Dean Jackson  <dino (a] apple.com>
   90260 
   90261         Reviewed by Tim Hatcher.
   90262 
   90263         Add default constructor for ShadowData
   90264         https://bugs.webkit.org/show_bug.cgi?id=20757
   90265 
   90266         Test: transitions/shadow.html
   90267 
   90268         * rendering/style/RenderStyle.h:
   90269 
   90270 2008-09-15  Dean Jackson  <dino (a] apple.com>
   90271 
   90272         Reviewed by Tim Hatcher.
   90273 
   90274         RenderStyle should update keyframes.
   90275         http://bugs.webkit.org/show_bug.cgi?id=20756
   90276 
   90277         * rendering/style/RenderStyle.cpp:
   90278         (WebCore::StyleRareNonInheritedData::updateKeyframes):
   90279 
   90280 2008-09-15  Dean Jackson  <dino (a] apple.com>
   90281 
   90282         Reviewed by Tim Hatcher.
   90283 
   90284         Unnecessary ASSERT in ImplicitAnimation destructor.
   90285         https://bugs.webkit.org/show_bug.cgi?id=20817
   90286 
   90287         * page/animation/ImplicitAnimation.cpp:
   90288         (WebCore::ImplicitAnimation::~ImplicitAnimation):
   90289 
   90290 2008-09-15  Adam Treat  <treat (a] kde.org>
   90291 
   90292         Reviewed by Simon.
   90293 
   90294         Fix plugin extension info. It was returning the mimetype where the
   90295         extension was given.
   90296 
   90297         * plugins/qt/PluginPackageQt.cpp:
   90298         (WebCore::PluginPackage::fetchInfo):
   90299 
   90300 2008-09-15  Dean Jackson  <dino (a] apple.com>
   90301 
   90302         Reviewed by Tim Hatcher
   90303 
   90304         Coding style violation!!!! Cleanup AnimationBase.cpp
   90305 
   90306         * page/animation/AnimationBase.cpp:
   90307         (WebCore::blendFunc):
   90308 
   90309 2008-09-15  David Hyatt  <hyatt (a] apple.com>
   90310 
   90311         Move all hit testing code for scrollbars into the base class.  Refactor
   90312         it to accommodate all platform-specific behaviors using virtual ScrollbarTheme
   90313         functions.
   90314 
   90315         No platform is using this code yet.  Although it has been moved and compiles
   90316         (even on Mac), it is not being used on any platform.
   90317 
   90318         Reviewed by Sam Weinig
   90319 
   90320         * platform/ScrollBar.cpp:
   90321         (WebCore::Scrollbar::autoscrollPressedPart):
   90322         (WebCore::Scrollbar::startTimerIfNeeded):
   90323         (WebCore::Scrollbar::handleMouseMoveEvent):
   90324         (WebCore::Scrollbar::handleMouseOutEvent):
   90325         (WebCore::Scrollbar::handleMouseReleaseEvent):
   90326         (WebCore::Scrollbar::handleMousePressEvent):
   90327         * platform/ScrollBar.h:
   90328         (WebCore::Scrollbar::handleContextMenuEvent):
   90329         * platform/ScrollbarTheme.h:
   90330         (WebCore::ScrollbarTheme::hitTest):
   90331         (WebCore::ScrollbarTheme::invalidateOnMouseEnterExit):
   90332         (WebCore::ScrollbarTheme::invalidatePart):
   90333         (WebCore::ScrollbarTheme::shouldCenterOnThumb):
   90334         (WebCore::ScrollbarTheme::centerOnThumb):
   90335         (WebCore::ScrollbarTheme::thumbPosition):
   90336         (WebCore::ScrollbarTheme::thumbLength):
   90337         (WebCore::ScrollbarTheme::trackLength):
   90338         (WebCore::ScrollbarTheme::initialAutoscrollTimerDelay):
   90339         (WebCore::ScrollbarTheme::autoscrollTimerDelay):
   90340         * platform/Widget.h:
   90341         (WebCore::Widget::parent):
   90342         * platform/mac/PlatformScrollBar.h:
   90343         (WebCore::PlatformScrollbar::handleMouseMoveEvent):
   90344         (WebCore::PlatformScrollbar::handleMouseOutEvent):
   90345         (WebCore::PlatformScrollbar::handleMousePressEvent):
   90346         (WebCore::PlatformScrollbar::handleMouseReleaseEvent):
   90347         * platform/mac/WidgetMac.mm:
   90348         (WebCore::Widget::convertFromContainingWindow):
   90349         * platform/win/ScrollbarThemeWin.cpp:
   90350         (WebCore::ScrollbarThemeWin::invalidateOnMouseEnterExit):
   90351         * platform/win/ScrollbarThemeWin.h:
   90352 
   90353 2008-09-15  Dan Bernstein  <mitz (a] apple.com>
   90354 
   90355         Reviewed by Sam Weinig.
   90356 
   90357         - fix <rdar://problem/5842247> Single long breakable word takes O(n^2) to lay out
   90358 
   90359         Cache the next breakable position for text nodes in InlineIterator.
   90360 
   90361         * rendering/bidi.cpp:
   90362         (WebCore::InlineIterator::InlineIterator):
   90363         (WebCore::InlineIterator::increment):
   90364         (WebCore::RenderBlock::findNextLineBreak):
   90365 
   90366 2008-09-15  Simon Fraser  <simon.fraser (a] apple.com>
   90367 
   90368         Reviewed by Dan Bernstein
   90369 
   90370         Fix assertion and integral pixel issue when creating subimages.
   90371         https://bugs.webkit.org/show_bug.cgi?id=20786
   90372 
   90373         * platform/graphics/cg/ImageCG.cpp:
   90374         (WebCore::BitmapImage::draw):
   90375 
   90376 2008-09-15  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   90377 
   90378         Reviewed by Simon.
   90379 
   90380         Implment seek() and clean up and improve debugging output
   90381 
   90382         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
   90383         (debugMediaObject):
   90384         (WebCore::MediaPlayerPrivate::seek):
   90385         (WebCore::MediaPlayerPrivate::setVolume):
   90386         (WebCore::MediaPlayerPrivate::setMuted):
   90387         (WebCore::MediaPlayerPrivate::updateStates):
   90388         (WebCore::MediaPlayerPrivate::naturalSize):
   90389         (WebCore::MediaPlayerPrivate::paint):
   90390         (WebCore::MediaPlayerPrivate::stateChanged):
   90391         (WebCore::MediaPlayerPrivate::tick):
   90392 
   90393 2008-09-15  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   90394 
   90395         Reviewed by Simon.
   90396 
   90397         Remove bogus Q_ASSERTs from the MediaPlayer Phonon implementation
   90398 
   90399         m_mediaObject, m_audioOutput, m_videoWidget get created in the
   90400         c'tor and will only be deleted in the c'tor. The Q_ASSERTs would
   90401         only check if we use the MediaPlayerPrivate after it has been deleted.
   90402 
   90403         Acked-by: Tor Arne Vestb  <tavestbo (a] trolltech.com>
   90404 
   90405         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
   90406         (WebCore::MediaPlayerPrivate::play):
   90407         (WebCore::MediaPlayerPrivate::setVolume):
   90408         (WebCore::MediaPlayerPrivate::updateStates):
   90409 
   90410 2008-09-15  Anders Carlsson  <andersca (a] apple.com>
   90411 
   90412         Reviewed by Maciej.
   90413 
   90414         <rdar://problem/6163988>
   90415         https://bugs.webkit.org/show_bug.cgi?id=20457
   90416         Canvas: createPattern crashes WebKit in WTF::RefPtr<WebCore::Image>::operator!() const + 9 with a 1D pattern
   90417 
   90418         Check the width and height and throw an exception if any of them are 0.
   90419 
   90420         * html/CanvasRenderingContext2D.cpp:
   90421         (WebCore::CanvasRenderingContext2D::createPattern):
   90422 
   90423 2008-09-15  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   90424 
   90425         Reviewed by Simon.
   90426 
   90427         Render media element controls with antialiasing enabled
   90428 
   90429         * platform/qt/RenderThemeQt.cpp:
   90430         (WebCore::RenderThemeQt::paintMediaMuteButton):
   90431         (WebCore::RenderThemeQt::paintMediaPlayButton):
   90432         (WebCore::RenderThemeQt::paintMediaSliderTrack):
   90433         (WebCore::RenderThemeQt::paintMediaSliderThumb):
   90434 
   90435 2008-09-15  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   90436 
   90437         Reviewed by Simon.
   90438 
   90439         Upon non fatal error, switch to the pause state (so that playback can continue)
   90440 
   90441         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
   90442         (WebCore::MediaPlayerPrivate::updateStates):
   90443 
   90444 2008-09-15  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   90445 
   90446         Reviewed by Simon.
   90447 
   90448         Don't set WTF_USE_JSC in WebCore.pro now that it's set in config.h
   90449 
   90450         * WebCore.pro:
   90451 
   90452 2008-09-15  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   90453 
   90454         Reviewed by Simon.
   90455 
   90456         Make QtInstance::create() private and fix caching
   90457 
   90458         * bindings/js/ScriptControllerQt.cpp:
   90459         (WebCore::ScriptController::createScriptInstanceForWidget):
   90460         * bridge/qt/qt_instance.cpp:
   90461         (JSC::Bindings::QtInstance::getQtInstance):
   90462         (JSC::Bindings::QtInstance::getRuntimeObject):
   90463         * bridge/qt/qt_instance.h:
   90464         (JSC::Bindings::QtInstance::create):
   90465         * bridge/qt/qt_runtime.cpp:
   90466         (JSC::Bindings::convertQVariantToValue):
   90467         (JSC::Bindings::QtConnectionObject::execute):
   90468 
   90469 2008-09-15  David Smith  <catfish.man (a] gmail.com>
   90470 
   90471         Reviewed by Dave Hyatt.
   90472 
   90473         https://bugs.webkit.org/show_bug.cgi?id=20180
   90474 
   90475         >2x speedup on querySelector[All] with :nth-child by removing the collectRulesOnly argument on SelectorChecker.
   90476         With collectRulesOnly set to true (the default) an optimization is turned off, and no callers were intentionally leaving it true.
   90477         querySelector[All] assumed that the default was probably the right way to go, and so ended up being slow.
   90478 
   90479         * css/CSSStyleSelector.cpp:
   90480         (WebCore::CSSStyleSelector::CSSStyleSelector):
   90481         (WebCore::CSSStyleSelector::SelectorChecker::SelectorChecker):
   90482         * css/CSSStyleSelector.h:
   90483 
   90484 2008-09-14  Dave Hyatt  <hyatt (a] apple.com>
   90485 
   90486         Refactor PlatformScrollbarWin's painting so that it is now done by ScrollbarThemeWin.  PlatformScrollbarSafari
   90487         is still painting itself (a subsequent patch will move its painting into ScrollbarThemeSafari).
   90488 
   90489         Reviewed by Sam Weinig
   90490 
   90491         * platform/ScrollBar.h:
   90492         (WebCore::Scrollbar::client):
   90493         (WebCore::Scrollbar::currentPos):
   90494         (WebCore::Scrollbar::totalSize):
   90495         * platform/ScrollbarTheme.h:
   90496         * platform/ScrollbarThemeComposite.cpp:
   90497         (WebCore::pageForScrollView):
   90498         (WebCore::ScrollbarThemeComposite::paint):
   90499         * platform/ScrollbarThemeComposite.h:
   90500         (WebCore::ScrollbarThemeComposite::trackIsSinglePiece):
   90501         * platform/win/PlatformScrollBar.h:
   90502         * platform/win/PlatformScrollBarSafari.cpp:
   90503         * platform/win/PlatformScrollBarWin.cpp:
   90504         * platform/win/ScrollbarThemeSafari.h:
   90505         (WebCore::ScrollbarThemeSafari::hasButtons):
   90506         (WebCore::ScrollbarThemeSafari::hasThumb):
   90507         (WebCore::ScrollbarThemeSafari::backButtonRect):
   90508         (WebCore::ScrollbarThemeSafari::forwardButtonRect):
   90509         (WebCore::ScrollbarThemeSafari::trackRect):
   90510         (WebCore::ScrollbarThemeSafari::splitTrack):
   90511         (WebCore::ScrollbarThemeSafari::paintTrack):
   90512         (WebCore::ScrollbarThemeSafari::paintButton):
   90513         (WebCore::ScrollbarThemeSafari::paintThumb):
   90514         * platform/win/ScrollbarThemeWin.cpp:
   90515         (WebCore::isRunningOnVistaOrLater):
   90516         (WebCore::checkAndInitScrollbarTheme):
   90517         (WebCore::ScrollbarThemeWin::ScrollbarThemeWin):
   90518         (WebCore::ScrollbarThemeWin::themeChanged):
   90519         (WebCore::ScrollbarThemeWin::hasThumb):
   90520         (WebCore::ScrollbarThemeWin::backButtonRect):
   90521         (WebCore::ScrollbarThemeWin::forwardButtonRect):
   90522         (WebCore::ScrollbarThemeWin::trackRect):
   90523         (WebCore::ScrollbarThemeWin::splitTrack):
   90524         (WebCore::ScrollbarThemeWin::paintTrack):
   90525         (WebCore::ScrollbarThemeWin::paintButton):
   90526         (WebCore::gripperRect):
   90527         (WebCore::paintGripper):
   90528         (WebCore::ScrollbarThemeWin::paintThumb):
   90529         (WebCore::ScrollbarThemeWin::thumbPosition):
   90530         (WebCore::ScrollbarThemeWin::thumbLength):
   90531         (WebCore::ScrollbarThemeWin::trackLength):
   90532         * platform/win/ScrollbarThemeWin.h:
   90533         (WebCore::ScrollbarThemeWin::hasButtons):
   90534         (WebCore::ScrollbarThemeWin::trackIsSinglePiece):
   90535 
   90536 2008-09-14  Anthony Ricaud  <rik24d (a] gmail.com>
   90537 
   90538         Moving all resource graphs under the same container for future scalable feature.
   90539         This is a speedup on resize but maybe a loss on changing the sorting function.
   90540 
   90541         https://bugs.webkit.org/show_bug.cgi?id=20555
   90542 
   90543         Reviewed by Timothy Hatcher.
   90544 
   90545         * page/inspector/ResourcesPanel.js: Added a container for all resource graphs.
   90546         Added WebInspector.ResourceGraph. No more _updateGraphBars on resize.
   90547         * page/inspector/inspector.css: Edited corresponding rules and removed unnecessaries.
   90548 
   90549 2008-09-14  Alexey Proskuryakov  <ap (a] webkit.org>
   90550 
   90551         Reviewed by Maciej Stachowiak.
   90552 
   90553         https://bugs.webkit.org/show_bug.cgi?id=20738
   90554         compareBoundaryPoints gives incorrect results
   90555 
   90556         Test: fast/dom/Range/compareBoundaryPoints-2.html
   90557 
   90558         * dom/Range.cpp: (WebCore::Range::compareBoundaryPoints): Correct meanings of START_TO_END
   90559         and END_TO_START.
   90560         * page/DOMSelection.cpp: (WebCore::DOMSelection::addRange): Updated for this change.
   90561 
   90562 2008-09-14  Maciej Stachowiak  <mjs (a] apple.com>
   90563 
   90564         Unreviewed build fix.
   90565 
   90566         Trying again.
   90567 
   90568         * bindings/js/JSQuarantinedObjectWrapper.cpp:
   90569         (WebCore::JSQuarantinedObjectWrapper::hasInstance):
   90570 
   90571 2008-09-14  Maciej Stachowiak  <mjs (a] apple.com>
   90572 
   90573         Unreviewed build fix.
   90574 
   90575         Blind attempt to fix build. Correct parameters for hasInstance.
   90576 
   90577         * bindings/js/JSQuarantinedObjectWrapper.cpp:
   90578         (WebCore::JSQuarantinedObjectWrapper::hasInstance):
   90579         * bindings/js/JSQuarantinedObjectWrapper.h:
   90580 
   90581 2008-09-14  Dan Bernstein  <mitz (a] apple.com>
   90582 
   90583         Rubber-stamped by Sam Weinig.
   90584 
   90585         - revert <http://trac.webkit.org/changeset/36382> because it exposed
   90586           <https://bugs.webkit.org/show_bug.cgi?id=20846> and resulted in crashes
   90587           on Tiger.
   90588 
   90589         * platform/graphics/mac/FontCacheMac.mm:
   90590         (WebCore::FontCache::getFontDataForCharacters):
   90591         (WebCore::FontCache::getLastResortFallbackFont):
   90592 
   90593 2008-09-14  Dave Hyatt  <hyatt (a] apple.com>
   90594 
   90595         Add a new ScrollbarThemeComposite base class that is shared by ScrollbarThemeSafari and
   90596         ScrollbarThemeWin.  Any scrollbar that wants to render by ScrollbarPart can subclass from this
   90597         theme.
   90598 
   90599         Reviewed by Sam Weinig
   90600 
   90601         * WebCore.vcproj/WebCore.vcproj:
   90602         * platform/win/ScrollbarThemeSafari.h:
   90603         * platform/win/ScrollbarThemeWin.h:
   90604 
   90605 2008-09-14  Alp Toker  <alp (a] nuanti.com>
   90606 
   90607         https://bugs.webkit.org/show_bug.cgi?id=20320
   90608         [GTK] A white rectangle is visible behind widgets with rounded corners
   90609 
   90610         Sync bundled gtk2drawing.c to the latest version from Mozilla (coding
   90611         style exempt).
   90612 
   90613         Requested by Michael Monreal.
   90614 
   90615         * platform/gtk/RenderThemeGtk.cpp:
   90616         (WebCore::RenderThemeGtk::RenderThemeGtk):
   90617         * platform/gtk/gtk2drawing.c:
   90618         (moz_gtk_set_widget_name):
   90619         (ensure_window_widget):
   90620         (setup_widget_prototype):
   90621         (ensure_button_arrow_widget):
   90622         (moz_gtk_get_combo_box_inner_button):
   90623         (moz_gtk_get_combo_box_button_inner_widgets):
   90624         (ensure_combo_box_widgets):
   90625         (moz_gtk_get_combo_box_entry_inner_widgets):
   90626         (moz_gtk_get_combo_box_entry_arrow):
   90627         (ensure_combo_box_entry_widgets):
   90628         (ensure_toolbar_widget):
   90629         (ensure_tooltip_widget):
   90630         (ensure_menu_bar_widget):
   90631         (ensure_menu_bar_item_widget):
   90632         (ensure_menu_popup_widget):
   90633         (ensure_menu_item_widget):
   90634         (ensure_image_menu_item_widget):
   90635         (ensure_menu_separator_widget):
   90636         (ensure_check_menu_item_widget):
   90637         (ensure_tree_header_cell_widget):
   90638         (ensure_scrolled_window_widget):
   90639         (moz_gtk_button_paint):
   90640         (moz_gtk_init):
   90641         (moz_gtk_button_get_inner_border):
   90642         (moz_gtk_toggle_paint):
   90643         (calculate_button_inner_rect):
   90644         (calculate_arrow_rect):
   90645         (moz_gtk_scrollbar_button_paint):
   90646         (moz_gtk_scrollbar_thumb_paint):
   90647         (moz_gtk_caret_paint):
   90648         (moz_gtk_entry_paint):
   90649         (moz_gtk_treeview_paint):
   90650         (moz_gtk_tree_header_cell_paint):
   90651         (moz_gtk_combo_box_paint):
   90652         (moz_gtk_downarrow_paint):
   90653         (moz_gtk_combo_box_entry_button_paint):
   90654         (moz_gtk_toolbar_paint):
   90655         (moz_gtk_tab_scroll_arrow_paint):
   90656         (moz_gtk_menu_bar_paint):
   90657         (moz_gtk_menu_item_paint):
   90658         (moz_gtk_get_widget_border):
   90659         (moz_gtk_get_combo_box_entry_button_size):
   90660         (moz_gtk_get_tab_scroll_arrow_size):
   90661         (moz_gtk_get_downarrow_size):
   90662         (moz_gtk_images_in_menus):
   90663         (moz_gtk_widget_paint):
   90664         (moz_gtk_shutdown):
   90665         * platform/gtk/gtkdrawing.h:
   90666 
   90667 2008-09-14  David Hyatt  <hyatt (a] apple.com>
   90668 
   90669         Convert Mac, Gtk, wx and Qt over to the new ScrollbarTheme for
   90670         painting.  Mac and Gtk themes don't do anything and just let the
   90671         underlying widget paint.  Qt now uses the theme to paint.  wx doesn't
   90672         do anything yet.
   90673 
   90674         Reviewed by Sam Weinig
   90675 
   90676         * platform/ScrollBar.cpp:
   90677         (WebCore::Scrollbar::paint):
   90678         * platform/ScrollBar.h:
   90679         (WebCore::Scrollbar::value):
   90680         (WebCore::Scrollbar::visibleSize):
   90681         (WebCore::Scrollbar::maximum):
   90682         (WebCore::Scrollbar::lineStep):
   90683         (WebCore::Scrollbar::pageStep):
   90684         (WebCore::Scrollbar::pixelStep):
   90685         (WebCore::Scrollbar::pressedPart):
   90686         (WebCore::Scrollbar::hoveredPart):
   90687         (WebCore::Scrollbar::theme):
   90688         * platform/ScrollbarTheme.h:
   90689         (WebCore::ScrollbarTheme::paint):
   90690         (WebCore::ScrollbarTheme::scrollbarThickness):
   90691         (WebCore::ScrollbarTheme::supportsControlTints):
   90692         (WebCore::ScrollbarTheme::themeChanged):
   90693         * platform/gtk/PlatformScrollBar.h:
   90694         * platform/gtk/PlatformScrollBarGtk.cpp:
   90695         * platform/mac/PlatformScrollBar.h:
   90696         * platform/mac/PlatformScrollBarMac.mm:
   90697         * platform/qt/PlatformScrollBar.h:
   90698         * platform/qt/PlatformScrollBarQt.cpp:
   90699         * platform/qt/ScrollbarThemeQt.cpp:
   90700         (WebCore::styleOptionSlider):
   90701         * platform/qt/ScrollbarThemeQt.h:
   90702         (WebCore::ScrollbarThemeQt::paint):
   90703         * platform/win/PlatformScrollBarSafari.cpp:
   90704         (WebCore::PlatformScrollbar::paint):
   90705         * platform/win/ScrollbarThemeSafari.h:
   90706         (WebCore::ScrollbarThemeSafari::supportsControlTints):
   90707         * platform/wx/PlatformScrollBar.h:
   90708         * platform/wx/TemporaryLinkStubs.cpp:
   90709         (PlatformScrollbar::~PlatformScrollbar):
   90710 
   90711 2008-09-14  Sam Weinig  <sam (a] webkit.org>
   90712 
   90713         Qt build fix.
   90714 
   90715         * platform/qt/PlatformScrollBarQt.cpp:
   90716 
   90717 2008-09-14  Sam Weinig  <sam (a] webkit.org>
   90718 
   90719         Reviewed by Mark Rowe.
   90720 
   90721         Remove extraneous semicolons.
   90722 
   90723         * bindings/scripts/CodeGeneratorObjC.pm:
   90724         * html/HTMLLinkElement.cpp:
   90725         (WebCore::HTMLLinkElement::tokenizeRelAttribute):
   90726         * html/HTMLScriptElement.cpp:
   90727         (WebCore::HTMLScriptElement::charsetAttributeValue):
   90728         (WebCore::HTMLScriptElement::typeAttributeValue):
   90729         * platform/graphics/qt/GradientQt.cpp:
   90730         (WebCore::Gradient::platformGradient):
   90731         * platform/qt/ScrollViewQt.cpp:
   90732         (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar):
   90733         * platform/win/ScrollViewWin.cpp:
   90734         (WebCore::ScrollView::updateScrollbars):
   90735         * rendering/RenderBlock.cpp:
   90736         (WebCore::RenderBlock::paintEllipsisBoxes):
   90737         * svg/SVGPathSegList.cpp:
   90738         (WebCore::SVGPathSegList::toPathData):
   90739 
   90740 2008-09-14  Sam Weinig  <sam (a] webkit.org>
   90741 
   90742         Qt build fix.
   90743 
   90744         * platform/qt/ScrollViewQt.cpp:
   90745         (WebCore::ScrollView::updateScrollbars):
   90746 
   90747 2008-09-14  Sam Weinig  <sam (a] webkit.org>
   90748 
   90749         Qt build fix.
   90750 
   90751         * platform/qt/PlatformScrollBarQt.cpp:
   90752         (WebCore::PlatformScrollbar::PlatformScrollbar):
   90753         (WebCore::PlatformScrollbar::paint):
   90754 
   90755 2008-09-13  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   90756 
   90757         Gtk build fix, not reviewed.
   90758 
   90759         * platform/gtk/PlatformScrollBarGtk.cpp:
   90760         (PlatformScrollbar::PlatformScrollbar):
   90761         * platform/gtk/ScrollViewGtk.cpp:
   90762         (WebCore::ScrollView::updateScrollbars):
   90763 
   90764 2008-09-13  Dave Hyatt  <hyatt (a] apple.com>
   90765 
   90766         Remove scrollbar's setRect method.  Clients can now just call setFrameGeometry (the corresponding Widget) method
   90767         to set the dimensions of a scrollbar.
   90768 
   90769         Reviewed by Sam Weinig
   90770 
   90771         * platform/ScrollBar.h:
   90772         * platform/gtk/PlatformScrollBar.h:
   90773         * platform/gtk/PlatformScrollBarGtk.cpp:
   90774         (PlatformScrollbar::setFrameGeometry):
   90775         * platform/gtk/ScrollViewGtk.cpp:
   90776         (WebCore::ScrollView::updateScrollbars):
   90777         * platform/mac/PlatformScrollBarMac.mm:
   90778         * platform/qt/PlatformScrollBarQt.cpp:
   90779         * platform/qt/ScrollViewQt.cpp:
   90780         (WebCore::ScrollView::updateScrollbars):
   90781         * platform/win/PlatformScrollBar.h:
   90782         * platform/win/PlatformScrollBarSafari.cpp:
   90783         (WebCore::PlatformScrollbar::PlatformScrollbar):
   90784         (WebCore::PlatformScrollbar::setFrameGeometry):
   90785         * platform/win/PlatformScrollBarWin.cpp:
   90786         (WebCore::PlatformScrollbar::PlatformScrollbar):
   90787         (WebCore::PlatformScrollbar::setFrameGeometry):
   90788         * platform/win/PopupMenuWin.cpp:
   90789         (WebCore::PopupWndProc):
   90790         * platform/win/ScrollViewWin.cpp:
   90791         (WebCore::ScrollView::updateScrollbars):
   90792         * platform/wx/PlatformScrollBar.h:
   90793         * platform/wx/TemporaryLinkStubs.cpp:
   90794         (PlatformScrollbar::updateThumbProportion):
   90795         * rendering/RenderLayer.cpp:
   90796         (WebCore::RenderLayer::positionOverflowControls):
   90797         * rendering/RenderListBox.cpp:
   90798         (WebCore::RenderListBox::paintScrollbar):
   90799 
   90800 2008-09-13  Dave Hyatt  <hyatt (a] apple.com>
   90801 
   90802         Remove setEnabled() from all Scrollbar classes that were just using their Widget base class methods.
   90803 
   90804         Reviewed by Sam Weinig
   90805 
   90806         * platform/ScrollBar.h:
   90807         * platform/gtk/PlatformScrollBar.h:
   90808         * platform/gtk/PlatformScrollBarGtk.cpp:
   90809         * platform/mac/PlatformScrollBar.h:
   90810         * platform/mac/PlatformScrollBarMac.mm:
   90811         * platform/win/PlatformScrollBar.h:
   90812         * platform/win/PlatformScrollBarSafari.cpp:
   90813         * platform/win/PlatformScrollBarWin.cpp:
   90814         * platform/wx/PlatformScrollBar.h:
   90815         * platform/wx/TemporaryLinkStubs.cpp:
   90816         (PlatformScrollbar::~PlatformScrollbar):
   90817 
   90818 2008-09-13  Dave Hyatt  <hyatt (a] apple.com>
   90819 
   90820         Remove width()/height() from Scrollbar now that it derives from Widget.  Remove width()/height() from
   90821         all PlatformScrollbar subclasses that just called the Widget base class versions of those methods.
   90822 
   90823         Reviewed by Sam Weinig
   90824 
   90825         * platform/ScrollBar.h:
   90826         * platform/gtk/PlatformScrollBar.h:
   90827         * platform/gtk/PlatformScrollBarGtk.cpp:
   90828         * platform/mac/PlatformScrollBar.h:
   90829         * platform/mac/PlatformScrollBarMac.mm:
   90830         * platform/win/PlatformScrollBarSafari.cpp:
   90831         * platform/win/PlatformScrollBarWin.cpp:
   90832         * platform/wx/PlatformScrollBar.h:
   90833         * platform/wx/TemporaryLinkStubs.cpp:
   90834         (PlatformScrollbar::~PlatformScrollbar):
   90835 
   90836 2008-09-13  Dave Hyatt  <hyatt (a] apple.com>
   90837 
   90838         Move stopTimerIfNeeded out of PlatformScrollbar destructors and into Scrollbar.
   90839 
   90840         Reviewed by Sam Weinig
   90841 
   90842         * platform/ScrollBar.cpp:
   90843         (WebCore::Scrollbar::~Scrollbar):
   90844         * platform/ScrollBar.h:
   90845         * platform/qt/PlatformScrollBarQt.cpp:
   90846         (WebCore::PlatformScrollbar::~PlatformScrollbar):
   90847         * platform/win/PlatformScrollBarSafari.cpp:
   90848         (WebCore::PlatformScrollbar::~PlatformScrollbar):
   90849         * platform/win/PlatformScrollBarWin.cpp:
   90850         (WebCore::PlatformScrollbar::~PlatformScrollbar):
   90851 
   90852 2008-09-13  David Hyatt  <hyatt (a] apple.com>
   90853 
   90854         Move maximum() from Qt's PlatformScrollbar to be a cross-platform
   90855         function on Scrollbar.  Fixes Qt build bustage.
   90856 
   90857         Reviewed by Sam Weinig
   90858 
   90859         * platform/ScrollBar.h:
   90860         (WebCore::Scrollbar::orientation):
   90861         (WebCore::Scrollbar::value):
   90862         (WebCore::Scrollbar::maximum):
   90863         * platform/qt/PlatformScrollBar.h:
   90864 
   90865 2008-09-13  Dan Bernstein  <mitz (a] apple.com>
   90866 
   90867         Reviewed by Sam Weinig.
   90868 
   90869         - use the LastResort font for missing glyphs instead of showing the
   90870           primary font's missing glyph
   90871 
   90872         Test: platform/mac/fast/text/last-resort-font.html
   90873 
   90874         * platform/graphics/mac/FontCacheMac.mm:
   90875         (WebCore::FontCache::getFontDataForCharacters): Changed to return the
   90876         last resort font if a substitute font cannot be found.
   90877         (WebCore::FontCache::getLastResortFallbackFont): Removed an outdated
   90878         comment (the user's preferred standard font is included in the search
   90879         thanks to code in FontCache::getFontData()) and changed to return the
   90880         LastResort font.
   90881 
   90882 2008-09-13  Dave Hyatt  <hyatt (a] apple.com>
   90883 
   90884         This patch adds ScrollbarTheme to the build.  ScrollbarTheme is similar to RenderTheme (but for
   90885         scrollbars only).  For now ScrollbarTheme just handles returning the size of scrollbars.  Subsequent
   90886         patches will move rendering and hit testing functionality into this class.
   90887 
   90888         Implemented ScrollbarTheme subclasses for four ports (Mac, Win, Gtk, Qt).  The wxWidgets port does not
   90889         implement scrollbars yet, so I added a temporary link stub to keep things compiling on wx.
   90890 
   90891         Reviewed by Sam Weinig
   90892 
   90893         * GNUmakefile.am:
   90894         * WebCore.pro:
   90895         * WebCore.vcproj/WebCore.vcproj:
   90896         * platform/ScrollBar.cpp:
   90897         (WebCore::Scrollbar::Scrollbar):
   90898         * platform/ScrollBar.h:
   90899         * platform/ScrollbarTheme.h: Added.
   90900         (WebCore::ScrollbarTheme::~ScrollbarTheme):
   90901         (WebCore::ScrollbarTheme::scrollbarThickness):
   90902         (WebCore::ScrollbarTheme::themeChanged):
   90903         * platform/gtk/ScrollbarThemeGtk.cpp: Added.
   90904         (WebCore::ScrollbarTheme::nativeTheme):
   90905         (WebCore::ScrollbarThemeGtk::~ScrollbarThemeGtk):
   90906         (WebCore::ScrollbarThemeGtk::scrollbarThickness):
   90907         * platform/gtk/ScrollbarThemeGtk.h: Added.
   90908         * platform/mac/PlatformScrollBar.h:
   90909         * platform/mac/ScrollbarThemeMac.cpp: Added.
   90910         (WebCore::ScrollbarTheme::nativeTheme):
   90911         (WebCore::):
   90912         (WebCore::ScrollbarThemeMac::~ScrollbarThemeMac):
   90913         (WebCore::ScrollbarThemeMac::scrollbarThickness):
   90914         * platform/mac/ScrollbarThemeMac.h: Added.
   90915         * platform/qt/PlatformScrollBarQt.cpp:
   90916         * platform/qt/ScrollbarThemeQt.cpp: Added.
   90917         (WebCore::ScrollbarTheme::nativeTheme):
   90918         (WebCore::ScrollbarThemeQt::~ScrollbarThemeQt):
   90919         (WebCore::ScrollbarThemeQt::scrollbarThickness):
   90920         * platform/qt/ScrollbarThemeQt.h: Added.
   90921         * platform/win/PlatformScrollBar.h:
   90922         * platform/win/PlatformScrollBarSafari.cpp:
   90923         * platform/win/PlatformScrollBarWin.cpp:
   90924         * platform/win/PopupMenuWin.cpp:
   90925         (WebCore::PopupMenu::calculatePositionAndSize):
   90926         * platform/win/ScrollViewWin.cpp:
   90927         (WebCore::ScrollView::updateScrollbars):
   90928         (WebCore::ScrollView::themeChanged):
   90929         * platform/win/ScrollbarThemeSafari.cpp: Added.
   90930         (WebCore::ScrollbarTheme::nativeTheme):
   90931         (WebCore::):
   90932         (WebCore::ScrollbarThemeSafari::~ScrollbarThemeSafari):
   90933         (WebCore::ScrollbarThemeSafari::scrollbarThickness):
   90934         * platform/win/ScrollbarThemeSafari.h: Added.
   90935         * platform/win/ScrollbarThemeWin.cpp: Added.
   90936         (WebCore::ScrollbarTheme::nativeTheme):
   90937         (WebCore::ScrollbarThemeWin::~ScrollbarThemeWin):
   90938         (WebCore::ScrollbarThemeWin::scrollbarThickness):
   90939         (WebCore::ScrollbarThemeWin::themeChanged):
   90940         * platform/win/ScrollbarThemeWin.h: Added.
   90941         * platform/wx/TemporaryLinkStubs.cpp:
   90942         (ScrollbarTheme::nativeTheme):
   90943         * rendering/RenderLayer.cpp:
   90944         (WebCore::scrollCornerRect):
   90945         * rendering/RenderTextControl.cpp:
   90946         (WebCore::RenderTextControl::calcHeight):
   90947         (WebCore::RenderTextControl::calcPrefWidths):
   90948 
   90949 2008-09-13  Chris Fleizach  <cfleizach (a] apple.com>
   90950 
   90951         Reviewed by Timothy Hatcher.
   90952 
   90953         <rdar://problem/5060439> Web elements should have an AXTopLevelUIElement
   90954 
   90955         * page/mac/AccessibilityObjectWrapper.mm:
   90956         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
   90957 
   90958 2008-09-13  Dan Bernstein  <mitz (a] apple.com>
   90959 
   90960         Reviewed by Timothy Hatcher.
   90961 
   90962         - fix <rdar://problem/6171280> REGRESSION (r35667): Assertion failure in WebCore::FrameView::scheduleRelayout() when releasing a page with counters from the b/f cache
   90963 
   90964         No regression test because the back/forward cache is disabled in DumpRenderTree
   90965 
   90966         * rendering/RenderContainer.cpp:
   90967         (WebCore::RenderContainer::invalidateCounters): Bail out if the document
   90968         is being destroyed.
   90969 
   90970 2008-09-13  Kevin Ollivier  <kevino (a] theolliviers.com>
   90971 
   90972         wx build fixes for new methods recently introduced.
   90973 
   90974         * platform/graphics/wx/AffineTransformWx.cpp:
   90975         (WebCore::AffineTransform::AffineTransform):
   90976         (WebCore::AffineTransform::setMatrix):
   90977         (WebCore::AffineTransform::setA):
   90978         (WebCore::AffineTransform::setB):
   90979         (WebCore::AffineTransform::setC):
   90980         (WebCore::AffineTransform::setD):
   90981         (WebCore::AffineTransform::setE):
   90982         (WebCore::AffineTransform::setF):
   90983         * platform/wx/LocalizedStringsWx.cpp:
   90984         (WebCore::AXDefinitionListTermText):
   90985         (WebCore::AXDefinitionListDefinitionText):
   90986 
   90987 2008-09-12  Dave Hyatt  <hyatt (a] apple.com>
   90988 
   90989         Move the member variables of PlatformScrollbar up into Scrollbar.  Move autoscroll timer handling
   90990         up into scrollbar.  Make sure a bunch of cross-platform code now just uses "Scrollbar" instead of
   90991         "PlatformScrollbar."
   90992 
   90993         Reviewed by Sam Weinig
   90994 
   90995         * WebCore.vcproj/WebCore.vcproj:
   90996         * editing/EditorCommand.cpp:
   90997         * page/EventHandler.cpp:
   90998         (WebCore::EventHandler::selectCursor):
   90999         (WebCore::EventHandler::handleMousePressEvent):
   91000         (WebCore::EventHandler::handleMouseMoveEvent):
   91001         * page/EventHandler.h:
   91002         * page/MouseEventWithHitTestResults.cpp:
   91003         (WebCore::MouseEventWithHitTestResults::scrollbar):
   91004         * page/MouseEventWithHitTestResults.h:
   91005         * page/gtk/EventHandlerGtk.cpp:
   91006         (WebCore::EventHandler::passMousePressEventToScrollbar):
   91007         * page/mac/EventHandlerMac.mm:
   91008         (WebCore::EventHandler::passMousePressEventToScrollbar):
   91009         * page/qt/EventHandlerQt.cpp:
   91010         (WebCore::EventHandler::passMousePressEventToScrollbar):
   91011         * page/win/EventHandlerWin.cpp:
   91012         (WebCore::EventHandler::passMousePressEventToScrollbar):
   91013         * page/wx/EventHandlerWx.cpp:
   91014         (WebCore::EventHandler::passMousePressEventToScrollbar):
   91015         * platform/PopupMenu.h:
   91016         * platform/ScrollBar.cpp:
   91017         (WebCore::Scrollbar::Scrollbar):
   91018         (WebCore::Scrollbar::autoscrollTimerFired):
   91019         (WebCore::Scrollbar::autoscrollPressedPart):
   91020         (WebCore::Scrollbar::startTimerIfNeeded):
   91021         (WebCore::Scrollbar::stopTimerIfNeeded):
   91022         (WebCore::Scrollbar::pressedPartScrollDirection):
   91023         (WebCore::Scrollbar::pressedPartScrollGranularity):
   91024         * platform/ScrollBar.h:
   91025         (WebCore::Scrollbar::handleMousePressEvent):
   91026         (WebCore::Scrollbar::invalidatePart):
   91027         (WebCore::Scrollbar::thumbUnderMouse):
   91028         * platform/ScrollView.h:
   91029         * platform/ScrollbarClient.h: Added.
   91030         (WebCore::ScrollbarClient::~ScrollbarClient):
   91031         * platform/gtk/ScrollViewGtk.cpp:
   91032         (WebCore::ScrollView::scrollbarUnderMouse):
   91033         * platform/qt/PlatformScrollBar.h:
   91034         * platform/qt/PlatformScrollBarQt.cpp:
   91035         (WebCore::PlatformScrollbar::PlatformScrollbar):
   91036         (WebCore::scrollbarPart):
   91037         (WebCore::PlatformScrollbar::handleMouseMoveEvent):
   91038         (WebCore::PlatformScrollbar::handleMouseOutEvent):
   91039         (WebCore::PlatformScrollbar::handleMousePressEvent):
   91040         (WebCore::PlatformScrollbar::handleMouseReleaseEvent):
   91041         * platform/qt/ScrollViewQt.cpp:
   91042         (WebCore::ScrollView::scrollbarUnderMouse):
   91043         (WebCore::ScrollView::wheelEvent):
   91044         * platform/win/PlatformScrollBar.h:
   91045         * platform/win/PlatformScrollBarSafari.cpp:
   91046         (WebCore::PlatformScrollbar::PlatformScrollbar):
   91047         * platform/win/PlatformScrollBarWin.cpp:
   91048         (WebCore::PlatformScrollbar::PlatformScrollbar):
   91049         * platform/win/ScrollViewWin.cpp:
   91050         (WebCore::ScrollView::scrollbarUnderMouse):
   91051         * rendering/HitTestResult.cpp:
   91052         (WebCore::HitTestResult::setScrollbar):
   91053         * rendering/HitTestResult.h:
   91054         (WebCore::HitTestResult::scrollbar):
   91055         * rendering/RenderLayer.cpp:
   91056         (WebCore::RenderLayer::hitTestOverflowControls):
   91057         * rendering/RenderLayer.h:
   91058         * rendering/RenderListBox.h:
   91059 
   91060 2008-09-12  Steve Falkenburg  <sfalken (a] apple.com>
   91061 
   91062         Fix Mac build.
   91063 
   91064         * css/CSSStyleSelector.cpp:
   91065         (WebCore::getTransformOperationType):
   91066 
   91067 2008-09-12  Chris Marrin  <cmarrin (a] apple.com>
   91068 
   91069         Reviewed by Dave Hyatt.
   91070 
   91071         Make transform animation behavior match spec
   91072         https://bugs.webkit.org/show_bug.cgi?id=20770
   91073 
   91074         Tests: transitions/transform-op-list-match.html
   91075                transitions/transform-op-list-no-match.html
   91076 
   91077         * css/CSSStyleSelector.cpp:
   91078         * css/CSSStyleSelector.h:
   91079         * page/animation/AnimationBase.cpp:
   91080         * page/animation/AnimationBase.h:
   91081         * page/animation/ImplicitAnimation.cpp:
   91082         * page/animation/ImplicitAnimation.h:
   91083         * page/animation/KeyframeAnimation.cpp:
   91084         * page/animation/KeyframeAnimation.h:
   91085         * rendering/RenderLayer.cpp:
   91086         * rendering/style/RenderStyle.cpp:
   91087         * rendering/style/RenderStyle.h:
   91088 
   91089 2008-09-12  Ojan Vafai  <ojan (a] chromium.org>
   91090 
   91091         Properly escape contents of links added to the inspector.
   91092         For now, just build the link with the DOM and get the
   91093         outerHTML. Eventually, we probably just want to do
   91094         this entirely with the DOM.
   91095 
   91096         Reviewed by Timothy Hatcher.
   91097 
   91098         https://bugs.webkit.org/show_bug.cgi?id=20684
   91099 
   91100         * manual-tests/inspector/escape-links.html: Added.
   91101         * page/inspector/StylesSidebarPane.js:
   91102         * page/inspector/inspector.js:
   91103         * page/inspector/utilities.js:
   91104 
   91105 2008-09-12  Adele Peterson  <adele (a] apple.com>
   91106 
   91107         Reviewed by John Sullivan and Kevin McCullough.
   91108 
   91109         Fix for <rdar://problem/6216951> REGRESSION (r36000?): Crash due to infinite recursion into EventHandler::hitTestResultAtPoint() with disconnected frames
   91110 
   91111         * page/EventHandler.cpp: (WebCore::EventHandler::hitTestResultAtPoint):
   91112         Hit testing again on the main frame will only work if we aren't already on the main frame.  If we are already on the main frame, that will
   91113         cause infinite recursion.  This change checks that we're not already on the main frame before hit testing again.
   91114 
   91115 2008-09-12  Kevin McCullough  <kmccullough (a] apple.com>
   91116 
   91117         RS by Tim .
   91118 
   91119         Re-introducing the code since it was not the cause of the crash.
   91120         See r36343.
   91121 
   91122         * rendering/RenderObject.cpp:
   91123         (WebCore::RenderObject::canBeProgramaticallyScrolled):
   91124         * rendering/RenderObject.h:
   91125 
   91126 2008-09-12  Chris Marrin  <cmarrin (a] apple.com>
   91127 
   91128         Reviewed by Dave Hyatt.
   91129 
   91130         When changing one animation in a list, don't reset other animations
   91131         https://bugs.webkit.org/show_bug.cgi?id=20675
   91132 
   91133         Test: animations/change-one-anim.html
   91134 
   91135         * page/animation/AnimationBase.cpp:
   91136         (WebCore::AnimationBase::getNumProperties):
   91137         * page/animation/AnimationBase.h:
   91138         * page/animation/AnimationController.cpp:
   91139         * page/animation/CompositeAnimation.cpp:
   91140         (WebCore::CompositeAnimation::updateKeyframeAnimations):
   91141         * page/animation/CompositeAnimation.h:
   91142         * page/animation/ImplicitAnimation.cpp:
   91143         * page/animation/KeyframeAnimation.cpp:
   91144         * page/animation/KeyframeAnimation.h:
   91145         (WebCore::KeyframeAnimation::setIndex):
   91146 
   91147 2008-09-12  Brady Eidson  <beidson (a] apple.com>
   91148 
   91149         Reviewed by Mitz Pettel
   91150 
   91151         Fix the ASSERT and failure in webarchive/archive-empty-frame-source.html
   91152 
   91153         * loader/DocumentLoader.cpp:
   91154         (WebCore::DocumentLoader::mainResource): Further restoration of original WebArchive behavior.
   91155           Subresources can never be created from nil data, but there is always a MainResource, whether
   91156           or not there's any data.  So in the case where the main resource has no data, fake it for the
   91157           sake of creating the ArchiveResource.
   91158 
   91159 2008-09-12  Dave Hyatt  <hyatt (a] apple.com>
   91160 
   91161         Preparation for major scrollbar rearchitecture.  Eliminate the concept of non-widget based
   91162         scrollbars (which we never supported anyway).  Make Scrollbar derive from Widget directly.
   91163         Remove all the isWidget and hasPlatformScrollbars guards.
   91164 
   91165         Reviewed by Tim Hatcher
   91166 
   91167         * platform/ScrollBar.h:
   91168         * platform/gtk/PlatformScrollBar.h:
   91169         * platform/mac/PlatformScrollBar.h:
   91170         * platform/qt/PlatformScrollBar.h:
   91171         * platform/win/PlatformScrollBar.h:
   91172         * platform/win/ScrollViewWin.cpp:
   91173         (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar):
   91174         (WebCore::ScrollView::ScrollViewPrivate::setHasVerticalScrollbar):
   91175         * platform/wx/PlatformScrollBar.h:
   91176         * rendering/RenderLayer.cpp:
   91177         (WebCore::RenderLayer::horizontalScrollbarWidget):
   91178         (WebCore::RenderLayer::verticalScrollbarWidget):
   91179         (WebCore::RenderLayer::createScrollbar):
   91180         (WebCore::RenderLayer::destroyScrollbar):
   91181         * rendering/RenderListBox.cpp:
   91182         (WebCore::RenderListBox::~RenderListBox):
   91183         (WebCore::RenderListBox::updateFromElement):
   91184         (WebCore::RenderListBox::isPointInOverflowControl):
   91185 
   91186 2008-09-12  Dan Bernstein  <mitz (a] apple.com>
   91187 
   91188         Reviewed by Sam Weinig.
   91189 
   91190         - https://bugs.webkit.org/show_bug.cgi?id=20793 clean up page/animation
   91191 
   91192         * page/animation/AnimationController.cpp:
   91193         * page/animation/AnimationController.h:
   91194         * page/animation/CompositeAnimation.cpp:
   91195         * page/animation/CompositeAnimation.h:
   91196         * page/animation/ImplicitAnimation.cpp:
   91197         * page/animation/ImplicitAnimation.h:
   91198         * page/animation/KeyframeAnimation.cpp:
   91199         * page/animation/KeyframeAnimation.h:
   91200 
   91201 2008-09-11  Timothy Hatcher  <timothy (a] apple.com>
   91202 
   91203         Add a renderedImage method to DOMNode to get an image
   91204         of the rendering for the node and it's descendants.
   91205 
   91206         <rdar://problem/5849349> Would like API to create
   91207         an image for a DOM node
   91208 
   91209         Reviewed by Oliver Hunt.
   91210 
   91211         * bindings/objc/DOM.mm:
   91212         (-[DOMNode renderedImage]): Call Frame::nodeImage.
   91213         * bindings/objc/DOMPrivate.h:
   91214         * page/Frame.h:
   91215         * page/mac/FrameMac.mm:
   91216         (WebCore::Frame::nodeImage):
   91217 
   91218 2008-09-08  Chris Marrin  <cmarrin (a] apple.com>
   91219 
   91220         Reviewed by Dave Hyatt
   91221 
   91222         Need to support comma separated list of key times in keyframes selectors
   91223         https://bugs.webkit.org/show_bug.cgi?id=20680
   91224 
   91225         Test: animations/keyframes-comma-separated.html
   91226 
   91227         * css/CSSGrammar.y:
   91228         * css/CSSParser.cpp:
   91229         (WebCore::CSSParser::createKeyframeRule):
   91230         * css/CSSParser.h:
   91231         * css/CSSStyleSelector.cpp:
   91232         (WebCore::CSSStyleSelector::addKeyframeStyle):
   91233         * css/WebKitCSSKeyframeRule.cpp:
   91234         (WebCore::WebKitCSSKeyframeRule::WebKitCSSKeyframeRule):
   91235         (WebCore::WebKitCSSKeyframeRule::cssText):
   91236         (WebCore::WebKitCSSKeyframeRule::parseKeyString):
   91237         * css/WebKitCSSKeyframeRule.h:
   91238         (WebCore::WebKitCSSKeyframeRule::keyText):
   91239         (WebCore::WebKitCSSKeyframeRule::setKeyText):
   91240         (WebCore::WebKitCSSKeyframeRule::getKeys):
   91241         * css/WebKitCSSKeyframesRule.cpp:
   91242         (WebCore::WebKitCSSKeyframesRule::append):
   91243         (WebCore::WebKitCSSKeyframesRule::insertRule):
   91244         (WebCore::WebKitCSSKeyframesRule::deleteRule):
   91245         (WebCore::WebKitCSSKeyframesRule::findRule):
   91246         (WebCore::WebKitCSSKeyframesRule::findRuleIndex):
   91247         * css/WebKitCSSKeyframesRule.h:
   91248         * page/animation/AnimationBase.cpp:
   91249         (WebCore::AnimationBase::blendProperties):
   91250 
   91251 2008-09-11  Kevin McCullough  <kmccullough (a] apple.com>
   91252 
   91253         RS by Tim.
   91254 
   91255         Reverting because this caused a crash.
   91256 
   91257         * rendering/RenderObject.cpp:
   91258         (WebCore::RenderObject::canBeProgramaticallyScrolled):
   91259         (WebCore::RenderObject::hasScrollableView):
   91260         * rendering/RenderObject.h:
   91261 
   91262 2008-09-11  Dean Jackson  <dino (a] apple.com>
   91263 
   91264         Reviewed by Dan Bernstein.
   91265 
   91266         Fix assertion on transition property "none"
   91267         https://bugs.webkit.org/show_bug.cgi?id=20751
   91268 
   91269         Test: transitions/transition-end-event-set-none.html
   91270 
   91271         * page/animation/CompositeAnimation.cpp:
   91272         (WebCore::CompositeAnimation::updateTransitions):
   91273 
   91274 2008-09-11  David Smith  <catfish.man (a] gmail.com>
   91275 
   91276         Rubber-stamped by mitzpettel.
   91277 
   91278         Remove an accidentally added extra file.
   91279 
   91280         * WebCore: Removed.
   91281 
   91282 2008-09-11  David Smith  <catfish.man (a] gmail.com>
   91283 
   91284         Reviewed by Darin
   91285 
   91286         https://bugs.webkit.org/show_bug.cgi?id=20180
   91287 
   91288         This speeds up :nth-child matching as tested by querySelectorAll by around 10% by inlining the common case of Node::renderStyle(). Many thanks to mitzpettel and othermaciej for suggestions and help.
   91289 
   91290         * WebCore.xcodeproj/project.pbxproj: Add NodeRenderStyle.h
   91291         * css/CSSStyleSelector.cpp: include NodeRenderStyle.h
   91292         * dom/Element.cpp: include NodeRenderStyle.h
   91293         * dom/Node.cpp: Remove the definition of renderStyle()
   91294         (WebCore::Node::nonRendererRenderStyle):
   91295         * dom/Node.h: Make renderStyle() nonvirtual and add nonRendererRenderStyle()
   91296         * dom/NodeRenderStyle.h: Added.
   91297         (WebCore::Node::renderStyle): Inline the common case of this, call nonRendererRenderStyle for the part that needed to be virtual
   91298         * html/HTMLOptGroupElement.cpp: include NodeRenderStyle.h
   91299         * html/HTMLOptGroupElement.h:
   91300         (WebCore::HTMLOptGroupElement::nonRendererRenderStyle): override to return m_style
   91301         * html/HTMLOptionElement.cpp: include NodeRenderStyle.h
   91302         * html/HTMLOptionElement.h:
   91303         (WebCore::HTMLOptionElement::nonRendererRenderStyle): override to return m_style
   91304         * rendering/RenderListBox.cpp: include NodeRenderStyle.h
   91305         * rendering/RenderMenuList.cpp: include NodeRenderStyle.h
   91306         * svg/SVGUseElement.cpp: include NodeRenderStyle.h
   91307 
   91308 2008-09-11  Kevin McCullough  <kmccullough (a] apple.com>
   91309 
   91310         Reviewed by Adele and Tim.
   91311 
   91312         <rdar://problem/6100597> REGRESSION: clicking on search results in Web
   91313         Inspector does not scroll to the line of the results (20167)
   91314         - This was put in by Max to fix auto scrolling but is not correct for
   91315         the whole web: rdar://problem/6213098
   91316 
   91317         * rendering/RenderObject.cpp:
   91318         (WebCore::RenderObject::canBeProgramaticallyScrolled):
   91319         * rendering/RenderObject.h:
   91320 
   91321 2008-09-11  Chris Fleizach  <cfleizach (a] apple.com>
   91322 
   91323         Reviewed by Beth Dakin
   91324 
   91325         <rdar://problem/6210511> AX: if a frame has a title, that should be reported as the AXWebArea's title
   91326 
   91327         Test: accessibility/frame-with-title.html
   91328 
   91329         * page/AccessibilityRenderObject.cpp:
   91330         (WebCore::AccessibilityRenderObject::accessibilityDescription):
   91331 
   91332 2008-09-11  Dirk Schulze  <vbs85 (a] gmx.de>
   91333 
   91334         Reviewed by Simon.
   91335 
   91336         Fixed stroke() and strokeRect() to support gradients
   91337         and patterns on Qt.
   91338 
   91339         [Qt] Canvas stroke don't work for gradients and patterns
   91340         [https://bugs.webkit.org/show_bug.cgi?id=20749]
   91341 
   91342         * platform/graphics/qt/GraphicsContextQt.cpp:
   91343         (WebCore::GraphicsContext::strokePath):
   91344         (WebCore::GraphicsContext::strokeRect):
   91345 
   91346 2008-09-11  Dirk Schulze  <vbs85 (a] gmx.de>
   91347 
   91348         Reviewed by Simon.
   91349 
   91350         https://bugs.webkit.org/show_bug.cgi?id=20729
   91351 
   91352         Fixed canvas gradients for Qt
   91353 
   91354         [Qt] Canvas gradients don't work as expected
   91355         [https://bugs.webkit.org/show_bug.cgi?id=20729]
   91356 
   91357         * platform/graphics/qt/GradientQt.cpp:
   91358         (WebCore::Gradient::platformGradient):
   91359 
   91360 2008-09-11  Dirk Schulze  <vbs85 (a] gmx.de>
   91361 
   91362         Reviewed by Simon.
   91363 
   91364         https://bugs.webkit.org/show_bug.cgi?id=20568
   91365 
   91366         Add support for patterns to Qt.
   91367 
   91368         * platform/graphics/qt/PatternQt.cpp:
   91369         (WebCore::Pattern::createPlatformPattern):
   91370 
   91371 2008-09-10  Dan Bernstein  <mitz (a] apple.com>
   91372 
   91373         Reviewed by Sam Weinig.
   91374 
   91375         - clean up AnimationBase
   91376 
   91377         * page/animation/AnimationBase.cpp:
   91378         * page/animation/AnimationBase.h:
   91379         * page/animation/CompositeAnimation.cpp:
   91380         * page/animation/ImplicitAnimation.cpp:
   91381         * page/animation/ImplicitAnimation.h:
   91382         * page/animation/KeyframeAnimation.cpp:
   91383         * page/animation/KeyframeAnimation.h:
   91384 
   91385 2008-09-10  Alexey Proskuryakov  <ap (a] webkit.org>
   91386 
   91387         Reviewed by Darin Adler.
   91388 
   91389         https://bugs.webkit.org/show_bug.cgi?id=20741
   91390         REGRESSION: ISO-8859-8-I encoding is registered incorrectly
   91391 
   91392         Turns out that there were no real behavior changes for 8859-8, as it was only a debug-only
   91393         check to ignore this specific registration that was failing. Yet, I decided to add a bunch of
   91394         tests for ISO-8859-8 encoding aliases, as we handle them in a quite complicated manner.
   91395 
   91396         I also found and fixed a potential crasher for non-Mac ports.
   91397 
   91398         Tests: fast/encoding/hebrew/8859-8-e.html
   91399                fast/encoding/hebrew/8859-8-i.html
   91400                fast/encoding/hebrew/8859-8.html
   91401                fast/encoding/hebrew/csISO88598I.html
   91402                fast/encoding/hebrew/hebrew.html
   91403                fast/encoding/hebrew/iso-ir-138.html
   91404                fast/encoding/hebrew/logical.html
   91405 
   91406         * platform/text/TextEncodingRegistry.cpp: (WebCore::checkExistingName): Check for iso-8859-8
   91407         (case-insensitively, because different versions of ICU report this MIME name in different
   91408         case).
   91409 
   91410         * platform/text/TextCodecICU.cpp:
   91411         (WebCore::TextCodecICU::registerExtendedEncodingNames): Updated some comments.
   91412         (WebCore::TextCodecICU::registerExtendedCodecs): Try both MIME and IANA names here, too.
   91413         There are four names in ICU that only have MIME names (x-mac-* ones), so we could end up
   91414         with an encoding map entry, but no codec for these. This was not an issue on the Mac, as
   91415         we also support these via TEC (which we should stop doing), but on Windows, this would
   91416         likely crash.
   91417 
   91418 2008-09-09  Dave Hyatt  <hyatt (a] apple.com
   91419 
   91420         Resurrect PlatformScrollbarWin.
   91421 
   91422         Reviewed by Adam Roben
   91423 
   91424         * WebCore.vcproj/WebCore.vcproj:
   91425         * platform/win/PlatformScrollBarWin.cpp:
   91426         (WebCore::isRunningOnVistaOrLater):
   91427         (WebCore::checkAndInitScrollbarTheme):
   91428         (WebCore::PlatformScrollbar::PlatformScrollbar):
   91429         (WebCore::PlatformScrollbar::invalidateTrack):
   91430         (WebCore::PlatformScrollbar::invalidatePart):
   91431         (WebCore::PlatformScrollbar::paint):
   91432         (WebCore::PlatformScrollbar::hasButtons):
   91433         (WebCore::PlatformScrollbar::hasThumb):
   91434         (WebCore::PlatformScrollbar::backButtonRect):
   91435         (WebCore::PlatformScrollbar::forwardButtonRect):
   91436         (WebCore::PlatformScrollbar::trackRect):
   91437         (WebCore::PlatformScrollbar::gripperRect):
   91438         (WebCore::PlatformScrollbar::thumbLength):
   91439         (WebCore::PlatformScrollbar::paintButton):
   91440         (WebCore::PlatformScrollbar::paintTrack):
   91441         (WebCore::PlatformScrollbar::paintThumb):
   91442         (WebCore::PlatformScrollbar::paintGripper):
   91443         (WebCore::PlatformScrollbar::hitTest):
   91444         (WebCore::PlatformScrollbar::handleMouseMoveEvent):
   91445         (WebCore::PlatformScrollbar::handleMouseOutEvent):
   91446         (WebCore::PlatformScrollbar::themeChanged):
   91447 
   91448 2008-09-09  Cameron Zwarich  <cwzwarich (a] uwaterloo.ca>
   91449 
   91450         Reviewed by Maciej Stachowiak.
   91451 
   91452         Bug 20759: Remove MacroAssembler
   91453         <https://bugs.webkit.org/show_bug.cgi?id=20759>
   91454 
   91455         Make the necessary changes to ForwardingHeaders to remove
   91456         MacroAssembler.
   91457 
   91458         * ForwardingHeaders/masm/IA32MacroAsm.h: Removed.
   91459         * ForwardingHeaders/masm/MacroAssembler.h: Removed.
   91460         * ForwardingHeaders/masm/X86Assembler.h: Added.
   91461 
   91462 2008-09-09  Alp Toker  <alp (a] nuanti.com>
   91463 
   91464         Reviewed by Dave Hyatt.
   91465 
   91466         https://bugs.webkit.org/show_bug.cgi?id=16792
   91467         [GTK] Fails to render Japanese/Chinese text with simple path
   91468 
   91469         https://bugs.webkit.org/show_bug.cgi?id=16942
   91470         [GTK] Oddities in font selection and fall back
   91471 
   91472         https://bugs.webkit.org/show_bug.cgi?id=16862
   91473         [GTK] Custom fonts hard-coded to use grayscale antialiasing and no hinting
   91474 
   91475         GTK+ font fixes and enhancements.
   91476 
   91477         Implement font fallback for the simple FontConfig-based text path and
   91478         improve the Pango-based complex text path to make use of requested
   91479         font properties and available font selection.
   91480 
   91481         Add text shadow support to the complex path.
   91482 
   91483         * platform/graphics/gtk/FontCacheGtk.cpp:
   91484         (WebCore::FontCache::getFontDataForCharacters):
   91485         (WebCore::FontCache::getSimilarFontPlatformData):
   91486         * platform/graphics/gtk/FontGtk.cpp:
   91487         (WebCore::setPangoAttributes):
   91488         (WebCore::Font::drawComplexText):
   91489         (WebCore::getDefaultPangoLayout):
   91490         (WebCore::Font::floatWidthForComplexText):
   91491         (WebCore::Font::offsetForPositionForComplexText):
   91492         (WebCore::Font::selectionRectForComplexText):
   91493         * platform/graphics/gtk/FontPlatformData.h:
   91494         (WebCore::FontPlatformData::FontPlatformData):
   91495         (WebCore::FontPlatformData::hash):
   91496         * platform/graphics/gtk/FontPlatformDataGtk.cpp:
   91497         (WebCore::FontPlatformData::FontPlatformData):
   91498         * platform/graphics/gtk/SimpleFontDataGtk.cpp:
   91499         (WebCore::SimpleFontData::platformDestroy):
   91500 
   91501 2008-09-09  Dave Hyatt  <hyatt (a] apple.com>
   91502 
   91503         Make the Windows classic case work again.  Overlap in slider constants and other constants broke
   91504         the push state for buttons and checkboxes.  Make sure to check the RenderObject's appearance
   91505         value to make sure it's really a slider thumb to resolve this conflict.
   91506 
   91507         Reviewed by Adam Roben
   91508 
   91509         * rendering/RenderThemeWin.cpp:
   91510         (WebCore::drawControl):
   91511 
   91512 2008-09-05  Chris Marrin  <cmarrin (a] apple.com>
   91513 
   91514         Reviewed by Sam Weinig.
   91515 
   91516         Need to handle the case when 0% or 100% keyframe is omitted
   91517         https://bugs.webkit.org/show_bug.cgi?id=20679
   91518 
   91519         Tests: animations/keyframes-from-missing.html
   91520                animations/keyframes-to-missing.html
   91521 
   91522         * css/CSSStyleSelector.cpp:
   91523         (WebCore::CSSStyleSelector::addKeyframeStyle):
   91524 
   91525 2008-09-09  Dave Hyatt  <hyatt (a] apple.com>
   91526 
   91527         Resurrect Safari's original RenderThemeWin and bring it up to date with ToT.  Having a current
   91528         RenderThemeWin that does not have any Skia dependencies should provide a good basis for a potential
   91529         merge of Google Chrome's RenderThemeWin (to help us see where the Skia stuff can be cut and to see
   91530         what changes have been made as compared with the old RenderThemeWin).
   91531 
   91532         Fix CSS2 system fonts to properly set both the rendering mode (so that they properly pick up GDI vs. CG
   91533         text rendering modes) and the printer font setting (so that OS X system fonts properly pick up screen
   91534         vs. printer advancement rounding).
   91535 
   91536         Reviewed by Adam/Sam
   91537 
   91538         * css/CSSStyleSelector.cpp:
   91539         (WebCore::CSSStyleSelector::applyProperty):
   91540         * platform/graphics/Icon.h:
   91541         (WebCore::Icon::create):
   91542         * rendering/RenderThemeWin.cpp:
   91543         (WebCore::RenderThemeWin::RenderThemeWin):
   91544         (WebCore::RenderThemeWin::~RenderThemeWin):
   91545         (WebCore::RenderThemeWin::buttonTheme):
   91546         (WebCore::RenderThemeWin::textFieldTheme):
   91547         (WebCore::RenderThemeWin::menuListTheme):
   91548         (WebCore::RenderThemeWin::sliderTheme):
   91549         (WebCore::RenderThemeWin::close):
   91550         (WebCore::RenderThemeWin::themeChanged):
   91551         (WebCore::RenderThemeWin::supportsHover):
   91552         (WebCore::fillFontDescription):
   91553         (WebCore::RenderThemeWin::systemFont):
   91554         (WebCore::RenderThemeWin::supportsFocus):
   91555         (WebCore::RenderThemeWin::determineClassicState):
   91556         (WebCore::RenderThemeWin::determineState):
   91557         (WebCore::RenderThemeWin::determineSliderThumbState):
   91558         (WebCore::RenderThemeWin::getClassicThemeData):
   91559         (WebCore::RenderThemeWin::getThemeData):
   91560         (WebCore::drawControl):
   91561         (WebCore::RenderThemeWin::paintButton):
   91562         (WebCore::RenderThemeWin::paintTextField):
   91563         (WebCore::RenderThemeWin::paintMenuList):
   91564         (WebCore::RenderThemeWin::adjustMenuListStyle):
   91565         (WebCore::RenderThemeWin::adjustMenuListButtonStyle):
   91566         (WebCore::RenderThemeWin::paintMenuListButton):
   91567         (WebCore::RenderThemeWin::paintSliderTrack):
   91568         (WebCore::RenderThemeWin::paintSliderThumb):
   91569         (WebCore::RenderThemeWin::adjustSliderThumbSize):
   91570         (WebCore::RenderThemeWin::paintSearchField):
   91571         (WebCore::RenderThemeWin::adjustSearchFieldStyle):
   91572         (WebCore::RenderThemeWin::paintSearchFieldCancelButton):
   91573         (WebCore::RenderThemeWin::adjustSearchFieldCancelButtonStyle):
   91574         (WebCore::RenderThemeWin::adjustSearchFieldDecorationStyle):
   91575         (WebCore::RenderThemeWin::adjustSearchFieldResultsDecorationStyle):
   91576         (WebCore::RenderThemeWin::paintSearchFieldResultsDecoration):
   91577         (WebCore::RenderThemeWin::adjustSearchFieldResultsButtonStyle):
   91578         (WebCore::RenderThemeWin::paintSearchFieldResultsButton):
   91579         * rendering/RenderThemeWin.h:
   91580         (WebCore::ThemeData::ThemeData):
   91581         (WebCore::RenderThemeWin::paintSearchFieldDecoration):
   91582         (WebCore::RenderThemeWin::adjustButtonStyle):
   91583         (WebCore::RenderThemeWin::adjustTextFieldStyle):
   91584         (WebCore::RenderThemeWin::adjustTextAreaStyle):
   91585 
   91586 2008-09-09  Dean Jackson  <dino (a] apple.com>
   91587 
   91588         Reviewed by Sam Weinig.
   91589 
   91590         Document::createEvent missing cases for animation and
   91591         transition events.
   91592         https://bugs.webkit.org/show_bug.cgi?id=20734
   91593 
   91594         Test: transitions/transition-end-event-create.html
   91595         Test: animations/animation-events-create.html
   91596 
   91597         * dom/Document.cpp:
   91598         (WebCore::Document::createEvent):
   91599             - add the two cases
   91600 
   91601 2008-09-09  Dan Bernstein  <mitz (a] apple.com>
   91602 
   91603         - Tiger build fix
   91604 
   91605         * WebCore.Tiger.exp:
   91606         * WebCore.base.exp:
   91607         * platform/mac/WebCoreSystemInterface.h:
   91608         * platform/mac/WebCoreSystemInterface.mm:
   91609 
   91610 2008-09-09  Dan Bernstein  <mitz (a] apple.com>
   91611 
   91612         Reviewed by Darin Adler.
   91613 
   91614         - WebCore part of <rdar://problem/6206244> Use alternate character-to-glyph interface on Leopard
   91615 
   91616         * WebCore.Tiger.exp:
   91617         * WebCore.base.exp:
   91618         * platform/graphics/SimpleFontData.h:
   91619         * platform/graphics/mac/GlyphPageTreeNodeMac.cpp:
   91620         (WebCore::GlyphPage::fill):
   91621         * platform/graphics/mac/SimpleFontDataMac.mm:
   91622         (WebCore::initFontData):
   91623         (WebCore::SimpleFontData::platformInit):
   91624         (WebCore::SimpleFontData::platformDestroy):
   91625         * platform/mac/WebCoreSystemInterface.h:
   91626         * platform/mac/WebCoreSystemInterface.mm:
   91627 
   91628 2008-09-09  Kevin McCullough  <kmccullough (a] apple.com>
   91629 
   91630         Reviewed by Tim.
   91631 
   91632         <rdar://problem/6198545> REGRESSION: Inspector debugger barfs on
   91633         breakpoints inside eval.
   91634 
   91635         * page/inspector/inspector.js:
   91636 
   91637 2008-09-09  Joerg Bornemann  <joerg.bornemann (a] trolltech.com>
   91638 
   91639         Reviewed by Simon.
   91640 
   91641         Fix compilation of the Qt port with disabled plugins on Windows
   91642 
   91643         * WebCore.pro:
   91644         * plugins/PluginView.cpp:
   91645         (WebCore::PluginView::PluginView):
   91646         * plugins/PluginView.h:
   91647 
   91648 2008-09-09  Jungshik Shin  <jungshik.shin (a] gmail.com>
   91649 
   91650         Reviewed by Alexey Proskuryakov.
   91651 
   91652         Try MIME charset names before trying IANA names
   91653         ( https://bugs.webkit.org/show_bug.cgi?id=17537 )
   91654 
   91655         With this change, shorter and more widely used names (preferred MIME
   91656         names) are returned by document.charset, document.characterSet,
   91657         document.inputEncoding rather than IANA names. This  helps
   91658         fixing bug 18085 in addition to web developers who are more familiar
   91659         with MIME names. For instance, EUC-JP, ISO-8859-X and US-ASCII will be
   91660         returned instead of Extended_UNIX_Code_Packed_Format_for_Japanese,
   91661         ISO-8859-X:19xx, and ANSI_X3.4-1968. It also replaces IBM8xx with cp8xx.
   91662         Note that cp/IBM 8xx are extremly rare in today's web. Even if they're
   91663         used, the former is still recognized as aliases to the latter so that
   91664         there's very little, if any, to worry about.
   91665 
   91666         * platform/text/TextCodecICU.cpp:
   91667         (WebCore::TextCodecICU::registerExtendedEncodingNames):
   91668 
   91669 2008-09-08  Sam Weinig  <sam (a] webkit.org>
   91670 
   91671         Reviewed by Maciej Stachowiak and Oliver Hunt.
   91672 
   91673         Add forwarding headers.
   91674 
   91675         * ForwardingHeaders/wtf/HashFunctions.h: Added.
   91676 
   91677 2008-09-05  Dean Jackson  <dino (a] apple.com>
   91678 
   91679         Reviewed by Dan Bernstein.
   91680 
   91681         Update grammar so that we can add a keyframe rule via the DOM.
   91682         https://bugs.webkit.org/show_bug.cgi?id=20613
   91683 
   91684         * css/CSSGrammar.y:
   91685         * css/tokenizer.flex:
   91686 
   91687 2008-09-08  Antti Koivisto  <antti (a] apple.com>
   91688 
   91689         Reviewed by Dan Bernstein.
   91690 
   91691         Allow <br> for simple UA stylesheet. Editing code generates them. It does not
   91692         actually show up in any of the default stylesheets.
   91693 
   91694         * css/CSSStyleSelector.cpp:
   91695         (WebCore::elementCanUseSimpleDefaultStyle):
   91696 
   91697 2008-09-08  Dimitri Glazkov  <dglazkov (a] google.com>
   91698 
   91699         Reviewed by Dan Bernstein.
   91700 
   91701         - fix https://bugs.webkit.org/show_bug.cgi?id=20237
   91702           Zero width and space characters are displayed incorrectly if not contained in a fallback font
   91703 
   91704         Adds an extra check for Object Replacement Character (U+FFFC) to address
   91705         the issue with fast/text/zero-width-characters.html test when run
   91706         with Windows system default fonts.
   91707 
   91708         * platform/graphics/Font.h:
   91709         (WebCore::Font::treatAsZeroWidthSpace):
   91710 
   91711 2008-09-08  Dean Jackson  <dino (a] apple.com>
   91712 
   91713         Reviewed by Sam Weinig.
   91714 
   91715         Code style issue I forgot to fix from previous commit.
   91716 
   91717         * platform/graphics/AffineTransform.cpp:
   91718         (WebCore::AffineTransform::blend):
   91719 
   91720 2008-09-08  Chris Marrin  <cmarrin (a] apple.com>
   91721 
   91722         Reviewed by Sam Weinig
   91723 
   91724         - Animation of -webkit-transform matrix() function should not do linear interpolation
   91725           https://bugs.webkit.org/show_bug.cgi?id=20667
   91726 
   91727         Test: animations/matrix-anim.html
   91728 
   91729         * ChangeLog:
   91730         * platform/graphics/AffineTransform.cpp:
   91731         (WebCore::affineTransformDecompose):
   91732         (WebCore::affineTransformCompose):
   91733         (WebCore::AffineTransform::blend):
   91734         * platform/graphics/AffineTransform.h:
   91735         * rendering/style/RenderStyle.cpp:
   91736         (WebCore::MatrixTransformOperation::blend):
   91737 
   91738 2008-09-08  Alexey Proskuryakov  <ap (a] webkit.org>
   91739 
   91740         Reviewed by Darin Adler.
   91741 
   91742         https://bugs.webkit.org/show_bug.cgi?id=20668
   91743         multipart/form-data does not always include Content-type for submitted files
   91744 
   91745         Cannot be tested with DRT or manual tests.
   91746 
   91747         * platform/MIMETypeRegistry.cpp:
   91748         (WebCore::initializeSupportedNonImageMimeTypes): Fix spacing.
   91749         (WebCore::MIMETypeRegistry::getMIMETypeForPath): Default to application/octet-stream for
   91750         unknown extensions, not just missing ones.
   91751 
   91752 2008-09-08  Simon Hausmann  <hausmann (a] webkit.org>
   91753 
   91754         Build fix for the Qt/Windows build, define USE_JSC to
   91755         enable the WebCore::String -> JSC::UString operator that
   91756         MSVC insists on seeing
   91757 
   91758         * WebCore.pro:
   91759 
   91760 2008-09-08  Anders Carlsson  <andersca (a] apple.com>
   91761 
   91762         Reviewed by Maciej.
   91763 
   91764         <rdar://problem/5850387> Showing bookmarks reloads Google Reader instead.
   91765 
   91766         In some cases, timeouts scheduled by a page in the onunload handler could fire even when the
   91767         page had been unloaded and replaced by a non-HTML representation based view (such as the bookmarks view).
   91768 
   91769         Fix this by clearing timeouts for pages that aren't cached when the provisional load is committed.
   91770 
   91771         * bindings/js/JSDOMWindowBase.h:
   91772         * loader/FrameLoader.cpp:
   91773         (WebCore::FrameLoader::commitProvisionalLoad):
   91774 
   91775 2008-09-07  Antti Koivisto  <antti (a] apple.com>
   91776 
   91777         Reviewed by Dave Hyatt.
   91778 
   91779         Don't leak the simple stylesheet.
   91780         Also call RenderTheme::adjustDefaultStyleSheet() in right place.
   91781 
   91782         * css/CSSStyleSelector.cpp:
   91783         (WebCore::loadFullDefaultStyle):
   91784         (WebCore::loadSimpleDefaultStyle):
   91785         (WebCore::CSSStyleSelector::styleForElement):
   91786 
   91787 2008-09-07  Cameron Zwarich  <cwzwarich (a] uwaterloo.ca>
   91788 
   91789         Reviewed by Oliver Hunt.
   91790 
   91791         Bug 20711: Change KJS prefix on preprocessor macros to JSC
   91792         <https://bugs.webkit.org/show_bug.cgi?id=20711>
   91793 
   91794         * bindings/js/JSEventTargetBase.h:
   91795         * bindings/js/JSHTMLInputElementBase.cpp:
   91796         * bindings/js/JSHTMLInputElementBase.h:
   91797         * bindings/scripts/CodeGeneratorJS.pm:
   91798 
   91799 2008-09-07  Cameron Zwarich  <cwzwarich (a] uwaterloo.ca>
   91800 
   91801         Reviewed by Maciej Stachowiak.
   91802 
   91803         Bug 20704: Replace the KJS namespace
   91804         <https://bugs.webkit.org/show_bug.cgi?id=20704>
   91805 
   91806         Rename the KJS namespace to JSC. There are still some uses of KJS in the
   91807         names of JNI functions, and I will check if these are safe to change
   91808         as well.
   91809 
   91810         * WebCore.base.exp:
   91811         * bindings/js/GCController.cpp:
   91812         * bindings/js/JSAttrCustom.cpp:
   91813         * bindings/js/JSAudioConstructor.cpp:
   91814         * bindings/js/JSAudioConstructor.h:
   91815         (WebCore::JSAudioConstructor::classInfo):
   91816         * bindings/js/JSCSSRuleCustom.cpp:
   91817         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
   91818         * bindings/js/JSCSSValueCustom.cpp:
   91819         * bindings/js/JSCanvasPixelArrayCustom.cpp:
   91820         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
   91821         * bindings/js/JSClipboardCustom.cpp:
   91822         * bindings/js/JSConsoleCustom.cpp:
   91823         * bindings/js/JSCustomSQLStatementCallback.cpp:
   91824         (WebCore::JSCustomSQLStatementCallback::handleEvent):
   91825         * bindings/js/JSCustomSQLStatementCallback.h:
   91826         (WebCore::JSCustomSQLStatementCallback::create):
   91827         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
   91828         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
   91829         * bindings/js/JSCustomSQLStatementErrorCallback.h:
   91830         (WebCore::JSCustomSQLStatementErrorCallback::create):
   91831         * bindings/js/JSCustomSQLTransactionCallback.cpp:
   91832         (WebCore::JSCustomSQLTransactionCallback::handleEvent):
   91833         * bindings/js/JSCustomSQLTransactionCallback.h:
   91834         (WebCore::JSCustomSQLTransactionCallback::create):
   91835         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
   91836         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
   91837         * bindings/js/JSCustomSQLTransactionErrorCallback.h:
   91838         (WebCore::JSCustomSQLTransactionErrorCallback::create):
   91839         * bindings/js/JSCustomVoidCallback.cpp:
   91840         (WebCore::JSCustomVoidCallback::handleEvent):
   91841         * bindings/js/JSCustomVoidCallback.h:
   91842         (WebCore::JSCustomVoidCallback::create):
   91843         * bindings/js/JSCustomXPathNSResolver.cpp:
   91844         (WebCore::JSCustomXPathNSResolver::create):
   91845         * bindings/js/JSCustomXPathNSResolver.h:
   91846         * bindings/js/JSDOMApplicationCacheCustom.cpp:
   91847         (WebCore::JSDOMApplicationCache::dispatchEvent):
   91848         * bindings/js/JSDOMBinding.cpp:
   91849         (WebCore::jsOwnedStringOrNull):
   91850         * bindings/js/JSDOMBinding.h:
   91851         (WebCore::DOMObject::DOMObject):
   91852         (WebCore::cacheDOMObject):
   91853         (WebCore::cacheSVGDOMObject):
   91854         (WebCore::DOMExceptionTranslator::DOMExceptionTranslator):
   91855         (WebCore::toJS):
   91856         * bindings/js/JSDOMWindowBase.cpp:
   91857         * bindings/js/JSDOMWindowBase.h:
   91858         (WebCore::JSDOMWindowBase::classInfo):
   91859         (WebCore::JSDOMWindowBase::d):
   91860         * bindings/js/JSDOMWindowCustom.cpp:
   91861         (WebCore::JSDOMWindow::getPropertyAttributes):
   91862         * bindings/js/JSDOMWindowCustom.h:
   91863         (WebCore::asJSDOMWindow):
   91864         (WebCore::JSDOMWindow::customGetOwnPropertySlot):
   91865         (WebCore::JSDOMWindow::customPut):
   91866         (WebCore::JSDOMWindowBase::allowsAccessFrom):
   91867         (WebCore::JSDOMWindowBase::allowsAccessFromNoErrorMessage):
   91868         * bindings/js/JSDOMWindowShell.cpp:
   91869         (WebCore::JSDOMWindowShell::getPropertyAttributes):
   91870         * bindings/js/JSDOMWindowShell.h:
   91871         (WebCore::JSDOMWindowShell::classInfo):
   91872         * bindings/js/JSDatabaseCustom.cpp:
   91873         * bindings/js/JSDocumentCustom.cpp:
   91874         * bindings/js/JSDocumentFragmentCustom.cpp:
   91875         * bindings/js/JSElementCustom.cpp:
   91876         * bindings/js/JSEventCustom.cpp:
   91877         * bindings/js/JSEventListener.cpp:
   91878         * bindings/js/JSEventListener.h:
   91879         (WebCore::JSUnprotectedEventListener::create):
   91880         (WebCore::JSEventListener::create):
   91881         * bindings/js/JSEventTargetBase.cpp:
   91882         * bindings/js/JSEventTargetBase.h:
   91883         (WebCore::JSEventTargetBase::getValueProperty):
   91884         (WebCore::JSEventTargetBase::putValueProperty):
   91885         (WebCore::JSEventTargetBase::getOwnPropertySlot):
   91886         (WebCore::JSEventTargetBase::put):
   91887         (WebCore::JSEventTargetPrototype::JSEventTargetPrototype):
   91888         (WebCore::JSEventTargetPrototype::self):
   91889         (WebCore::JSEventTargetPrototype::getOwnPropertySlot):
   91890         (WebCore::JSEventTargetPrototype::classInfo):
   91891         * bindings/js/JSEventTargetNode.cpp:
   91892         * bindings/js/JSEventTargetNode.h:
   91893         (WebCore::JSEventTargetNode::getOwnPropertySlot):
   91894         (WebCore::JSEventTargetNode::getValueProperty):
   91895         (WebCore::JSEventTargetNode::put):
   91896         (WebCore::JSEventTargetNode::putValueProperty):
   91897         * bindings/js/JSHTMLAllCollection.h:
   91898         (WebCore::JSHTMLAllCollection::JSHTMLAllCollection):
   91899         (WebCore::JSHTMLAllCollection::toBoolean):
   91900         * bindings/js/JSHTMLAppletElementCustom.cpp:
   91901         * bindings/js/JSHTMLCollectionCustom.cpp:
   91902         * bindings/js/JSHTMLDocumentCustom.cpp:
   91903         * bindings/js/JSHTMLElementCustom.cpp:
   91904         * bindings/js/JSHTMLEmbedElementCustom.cpp:
   91905         * bindings/js/JSHTMLFormElementCustom.cpp:
   91906         * bindings/js/JSHTMLFrameElementCustom.cpp:
   91907         * bindings/js/JSHTMLFrameSetElementCustom.cpp:
   91908         * bindings/js/JSHTMLIFrameElementCustom.cpp:
   91909         * bindings/js/JSHTMLInputElementBase.cpp:
   91910         (WebCore::JSHTMLInputElementBase::JSHTMLInputElementBase):
   91911         (WebCore::JSHTMLInputElementBase::getOwnPropertySlot):
   91912         * bindings/js/JSHTMLInputElementBase.h:
   91913         (WebCore::JSHTMLInputElementBase::classInfo):
   91914         * bindings/js/JSHTMLObjectElementCustom.cpp:
   91915         * bindings/js/JSHTMLOptionElementConstructor.cpp:
   91916         * bindings/js/JSHTMLOptionElementConstructor.h:
   91917         (WebCore::JSHTMLOptionElementConstructor::classInfo):
   91918         * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
   91919         * bindings/js/JSHTMLSelectElementCustom.cpp:
   91920         (WebCore::selectIndexSetter):
   91921         (WebCore::JSHTMLSelectElement::indexSetter):
   91922         * bindings/js/JSHTMLSelectElementCustom.h:
   91923         * bindings/js/JSHistoryCustom.cpp:
   91924         * bindings/js/JSImageConstructor.cpp:
   91925         * bindings/js/JSImageConstructor.h:
   91926         (WebCore::JSImageConstructor::classInfo):
   91927         * bindings/js/JSInspectedObjectWrapper.cpp:
   91928         * bindings/js/JSInspectedObjectWrapper.h:
   91929         (WebCore::JSInspectedObjectWrapper::wrapOutgoingValue):
   91930         (WebCore::JSInspectedObjectWrapper::classInfo):
   91931         * bindings/js/JSInspectorCallbackWrapper.cpp:
   91932         * bindings/js/JSInspectorCallbackWrapper.h:
   91933         (WebCore::JSInspectorCallbackWrapper::classInfo):
   91934         (WebCore::JSInspectorCallbackWrapper::wrapOutgoingValue):
   91935         * bindings/js/JSJavaScriptCallFrameCustom.cpp:
   91936         * bindings/js/JSLocationCustom.cpp:
   91937         * bindings/js/JSMimeTypeArrayCustom.cpp:
   91938         * bindings/js/JSNSResolver.cpp:
   91939         * bindings/js/JSNSResolver.h:
   91940         (WebCore::JSNSResolver::create):
   91941         * bindings/js/JSNamedNodeMapCustom.cpp:
   91942         * bindings/js/JSNamedNodesCollection.cpp:
   91943         (WebCore::JSNamedNodesCollection::JSNamedNodesCollection):
   91944         * bindings/js/JSNamedNodesCollection.h:
   91945         (WebCore::JSNamedNodesCollection::classInfo):
   91946         * bindings/js/JSNavigatorCustom.cpp:
   91947         * bindings/js/JSNodeCustom.cpp:
   91948         * bindings/js/JSNodeFilterCondition.cpp:
   91949         (WebCore::JSNodeFilterCondition::acceptNode):
   91950         * bindings/js/JSNodeFilterCondition.h:
   91951         (WebCore::JSNodeFilterCondition::create):
   91952         * bindings/js/JSNodeFilterCustom.cpp:
   91953         * bindings/js/JSNodeIteratorCustom.cpp:
   91954         * bindings/js/JSNodeListCustom.cpp:
   91955         * bindings/js/JSPluginArrayCustom.cpp:
   91956         * bindings/js/JSPluginCustom.cpp:
   91957         * bindings/js/JSPluginElementFunctions.cpp:
   91958         (WebCore::getRuntimeObject):
   91959         * bindings/js/JSPluginElementFunctions.h:
   91960         * bindings/js/JSQuarantinedObjectWrapper.cpp:
   91961         (WebCore::JSQuarantinedObjectWrapper::construct):
   91962         (WebCore::JSQuarantinedObjectWrapper::call):
   91963         * bindings/js/JSQuarantinedObjectWrapper.h:
   91964         (WebCore::JSQuarantinedObjectWrapper::unwrappedObject):
   91965         (WebCore::JSQuarantinedObjectWrapper::unwrappedGlobalObject):
   91966         (WebCore::JSQuarantinedObjectWrapper::className):
   91967         * bindings/js/JSRGBColor.cpp:
   91968         * bindings/js/JSRGBColor.h:
   91969         (WebCore::JSRGBColor::classInfo):
   91970         * bindings/js/JSSQLResultSetRowListCustom.cpp:
   91971         * bindings/js/JSSQLTransactionCustom.cpp:
   91972         * bindings/js/JSSVGLazyEventListener.cpp:
   91973         * bindings/js/JSSVGLazyEventListener.h:
   91974         * bindings/js/JSSVGLengthCustom.cpp:
   91975         * bindings/js/JSSVGMatrixCustom.cpp:
   91976         (WebCore::JSSVGMatrix::inverse):
   91977         (WebCore::JSSVGMatrix::rotateFromVector):
   91978         * bindings/js/JSSVGPathSegCustom.cpp:
   91979         * bindings/js/JSSVGPathSegListCustom.cpp:
   91980         (WebCore::JSSVGPathSegList::initialize):
   91981         (WebCore::JSSVGPathSegList::getItem):
   91982         (WebCore::JSSVGPathSegList::insertItemBefore):
   91983         (WebCore::JSSVGPathSegList::replaceItem):
   91984         (WebCore::JSSVGPathSegList::removeItem):
   91985         (WebCore::JSSVGPathSegList::appendItem):
   91986         * bindings/js/JSSVGPointListCustom.cpp:
   91987         * bindings/js/JSSVGTransformListCustom.cpp:
   91988         * bindings/js/JSStorageCustom.cpp:
   91989         * bindings/js/JSStyleSheetCustom.cpp:
   91990         * bindings/js/JSStyleSheetListCustom.cpp:
   91991         * bindings/js/JSTextCustom.cpp:
   91992         * bindings/js/JSTreeWalkerCustom.cpp:
   91993         * bindings/js/JSXMLHttpRequestConstructor.cpp:
   91994         * bindings/js/JSXMLHttpRequestConstructor.h:
   91995         (WebCore::JSXMLHttpRequestConstructor::classInfo):
   91996         * bindings/js/JSXMLHttpRequestCustom.cpp:
   91997         * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
   91998         * bindings/js/JSXSLTProcessorConstructor.cpp:
   91999         * bindings/js/JSXSLTProcessorConstructor.h:
   92000         (WebCore::JSXSLTProcessorConstructor::classInfo):
   92001         * bindings/js/JSXSLTProcessorCustom.cpp:
   92002         * bindings/js/ScheduledAction.cpp:
   92003         * bindings/js/ScheduledAction.h:
   92004         * bindings/js/ScriptController.cpp:
   92005         (WebCore::ScriptController::attachDebugger):
   92006         (WebCore::ScriptController::windowScriptNPObject):
   92007         * bindings/js/ScriptController.h:
   92008         * bindings/js/ScriptControllerGtk.cpp:
   92009         (WebCore::ScriptController::createScriptInstanceForWidget):
   92010         * bindings/js/ScriptControllerMac.mm:
   92011         (WebCore::ScriptController::createScriptInstanceForWidget):
   92012         (WebCore::ScriptController::windowScriptObject):
   92013         (WebCore::ScriptController::clearPlatformScriptObjects):
   92014         (WebCore::updateRenderingForBindings):
   92015         (WebCore::ScriptController::initJavaJSBindings):
   92016         * bindings/js/ScriptControllerQt.cpp:
   92017         (WebCore::ScriptController::createScriptInstanceForWidget):
   92018         * bindings/js/ScriptControllerWin.cpp:
   92019         (WebCore::ScriptController::createScriptInstanceForWidget):
   92020         * bindings/js/ScriptControllerWx.cpp:
   92021         (WebCore::ScriptController::createScriptInstanceForWidget):
   92022         * bindings/js/StringSourceProvider.h:
   92023         (WebCore::StringSourceProvider::getRange):
   92024         * bindings/objc/DOM.mm:
   92025         (-[DOMNode JSC::Bindings::]):
   92026         * bindings/objc/DOMInternal.h:
   92027         * bindings/objc/DOMInternal.mm:
   92028         (-[WebScriptObject _initializeScriptDOMNodeImp]):
   92029         * bindings/objc/DOMUtility.mm:
   92030         (JSC::createDOMWrapper):
   92031         (WebCore::createDOMWrapper):
   92032         * bindings/objc/WebScriptObject.mm:
   92033         (WebCore::createJSWrapper):
   92034         (-[WebScriptObject _initWithJSObject:JSC::originRootObject:JSC::Bindings::rootObject:JSC::Bindings::]):
   92035         * bindings/objc/WebScriptObjectPrivate.h:
   92036         * bindings/scripts/CodeGeneratorJS.pm:
   92037         * bridge/NP_jsobject.cpp:
   92038         * bridge/NP_jsobject.h:
   92039         * bridge/c/c_class.cpp:
   92040         * bridge/c/c_class.h:
   92041         * bridge/c/c_instance.cpp:
   92042         * bridge/c/c_instance.h:
   92043         * bridge/c/c_runtime.cpp:
   92044         * bridge/c/c_runtime.h:
   92045         * bridge/c/c_utility.cpp:
   92046         * bridge/c/c_utility.h:
   92047         * bridge/jni/jni_class.cpp:
   92048         * bridge/jni/jni_class.h:
   92049         * bridge/jni/jni_instance.cpp:
   92050         * bridge/jni/jni_instance.h:
   92051         * bridge/jni/jni_jsobject.h:
   92052         * bridge/jni/jni_jsobject.mm:
   92053         (JavaJSObject::call):
   92054         (JavaJSObject::convertJObjectToValue):
   92055         * bridge/jni/jni_objc.mm:
   92056         (JSC::Bindings::dispatchJNICall):
   92057         * bridge/jni/jni_runtime.cpp:
   92058         * bridge/jni/jni_runtime.h:
   92059         * bridge/jni/jni_utility.cpp:
   92060         * bridge/jni/jni_utility.h:
   92061         * bridge/npruntime.cpp:
   92062         (_NPN_GetStringIdentifier):
   92063         * bridge/objc/WebScriptObject.h:
   92064         * bridge/objc/objc_class.h:
   92065         * bridge/objc/objc_class.mm:
   92066         * bridge/objc/objc_instance.h:
   92067         * bridge/objc/objc_instance.mm:
   92068         * bridge/objc/objc_runtime.h:
   92069         * bridge/objc/objc_runtime.mm:
   92070         * bridge/objc/objc_utility.h:
   92071         * bridge/objc/objc_utility.mm:
   92072         * bridge/qt/qt_class.cpp:
   92073         * bridge/qt/qt_class.h:
   92074         * bridge/qt/qt_instance.cpp:
   92075         * bridge/qt/qt_instance.h:
   92076         * bridge/qt/qt_runtime.cpp:
   92077         (JSC::Bindings::convertQVariantToValue):
   92078         (JSC::Bindings::):
   92079         * bridge/qt/qt_runtime.h:
   92080         * bridge/runtime.cpp:
   92081         * bridge/runtime.h:
   92082         * bridge/runtime_array.cpp:
   92083         * bridge/runtime_array.h:
   92084         * bridge/runtime_method.cpp:
   92085         * bridge/runtime_method.h:
   92086         * bridge/runtime_object.cpp:
   92087         * bridge/runtime_object.h:
   92088         * bridge/runtime_root.cpp:
   92089         (JSC::Bindings::RootObject::invalidate):
   92090         (JSC::Bindings::RootObject::gcProtect):
   92091         (JSC::Bindings::RootObject::gcUnprotect):
   92092         * bridge/runtime_root.h:
   92093         * bridge/testbindings.cpp:
   92094         * bridge/testbindings.mm:
   92095         * bridge/testqtbindings.cpp:
   92096         * dom/Document.cpp:
   92097         (WebCore::Document::~Document):
   92098         * dom/NSResolver.h:
   92099         * dom/Node.cpp:
   92100         (WebCore::Node::setDocument):
   92101         (WebCore::ResolveNamespaceFunctor::ResolveNamespaceFunctor):
   92102         (WebCore::resolveNamespacesForSelector):
   92103         (WebCore::Node::querySelector):
   92104         (WebCore::Node::querySelectorAll):
   92105         * dom/Node.h:
   92106         * dom/NodeFilter.cpp:
   92107         * dom/NodeFilter.h:
   92108         * dom/NodeFilterCondition.cpp:
   92109         * dom/NodeFilterCondition.h:
   92110         * dom/NodeIterator.cpp:
   92111         * dom/NodeIterator.h:
   92112         * dom/Traversal.cpp:
   92113         * dom/Traversal.h:
   92114         * dom/TreeWalker.cpp:
   92115         * dom/TreeWalker.h:
   92116         * dom/make_names.pl:
   92117         * history/CachedPage.cpp:
   92118         * history/CachedPage.h:
   92119         * html/HTMLPlugInElement.cpp:
   92120         (WebCore::HTMLPlugInElement::getInstance):
   92121         * html/HTMLPlugInElement.h:
   92122         * loader/FrameLoader.cpp:
   92123         * loader/FrameLoader.h:
   92124         * loader/icon/IconDatabase.cpp:
   92125         (WebCore::iconDatabase):
   92126         * page/Console.cpp:
   92127         * page/Console.h:
   92128         * page/InspectorController.cpp:
   92129         (WebCore::XMLHttpRequestResource::XMLHttpRequestResource):
   92130         (WebCore::XMLHttpRequestResource::~XMLHttpRequestResource):
   92131         (WebCore::InspectorResource::setXMLHttpRequestProperties):
   92132         (WebCore::InspectorResource::sourceString):
   92133         (WebCore::getResourceDocumentNode):
   92134         (WebCore::search):
   92135         (WebCore::InspectorController::focusNode):
   92136         (WebCore::InspectorController::inspectedWindowScriptObjectCleared):
   92137         (WebCore::InspectorController::addDatabaseScriptResource):
   92138         (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
   92139         * page/InspectorController.h:
   92140         (WebCore::InspectorController::profiles):
   92141         * page/JavaScriptCallFrame.cpp:
   92142         (WebCore::JavaScriptCallFrame::scopeChain):
   92143         * page/JavaScriptCallFrame.h:
   92144         (WebCore::JavaScriptCallFrame::create):
   92145         (WebCore::JavaScriptCallFrame::update):
   92146         * page/JavaScriptDebugListener.h:
   92147         * page/JavaScriptDebugServer.cpp:
   92148         (WebCore::dispatchDidParseSource):
   92149         * page/JavaScriptDebugServer.h:
   92150         * page/JavaScriptProfile.cpp:
   92151         * page/JavaScriptProfile.h:
   92152         * page/JavaScriptProfileNode.cpp:
   92153         (WebCore::getTotalTime):
   92154         (WebCore::getSelfTime):
   92155         (WebCore::getTotalPercent):
   92156         (WebCore::getSelfPercent):
   92157         (WebCore::getNumberOfCalls):
   92158         (WebCore::getChildren):
   92159         (WebCore::getVisible):
   92160         * page/JavaScriptProfileNode.h:
   92161         * page/Page.cpp:
   92162         (WebCore::Page::setDebuggerForAllPages):
   92163         (WebCore::Page::setDebugger):
   92164         * page/Page.h:
   92165         (WebCore::Page::debugger):
   92166         * page/mac/FrameMac.mm:
   92167         * platform/KURL.h:
   92168         (WebCore::KURL::operator JSC::UString):
   92169         * platform/text/AtomicString.cpp:
   92170         (WebCore::AtomicString::add):
   92171         (WebCore::AtomicString::find):
   92172         * platform/text/AtomicString.h:
   92173         (WebCore::AtomicString::AtomicString):
   92174         * platform/text/PlatformString.h:
   92175         * platform/text/String.cpp:
   92176         (WebCore::charactersToDouble):
   92177         * platform/win/BString.cpp:
   92178         * platform/win/BString.h:
   92179         * plugins/MimeTypeArray.h:
   92180         * plugins/Plugin.h:
   92181         * plugins/PluginArray.h:
   92182         * plugins/PluginView.cpp:
   92183         (WebCore::PluginView::start):
   92184         (WebCore::PluginView::performRequest):
   92185         (WebCore::PluginView::bindingInstance):
   92186         * plugins/PluginView.h:
   92187         * plugins/gtk/PluginViewGtk.cpp:
   92188         (WebCore::PluginView::paint):
   92189         (WebCore::PluginView::handleKeyboardEvent):
   92190         (WebCore::PluginView::handleMouseEvent):
   92191         (WebCore::PluginView::setNPWindowRect):
   92192         (WebCore::PluginView::stop):
   92193         (WebCore::PluginView::init):
   92194         * plugins/qt/PluginViewQt.cpp:
   92195         (WebCore::PluginView::setNPWindowRect):
   92196         (WebCore::PluginView::stop):
   92197         (WebCore::PluginView::init):
   92198         * plugins/win/PluginViewWin.cpp:
   92199         (WebCore::PluginView::dispatchNPEvent):
   92200         (WebCore::PluginView::handleKeyboardEvent):
   92201         (WebCore::PluginView::handleMouseEvent):
   92202         (WebCore::PluginView::setNPWindowRect):
   92203         (WebCore::PluginView::stop):
   92204         * storage/Database.cpp:
   92205         (WebCore::Database::Database):
   92206         * xml/XMLHttpRequest.cpp:
   92207         (WebCore::XMLHttpRequest::responseText):
   92208         (WebCore::XMLHttpRequest::loadRequestAsynchronously):
   92209         (WebCore::XMLHttpRequest::clearResponse):
   92210         (WebCore::XMLHttpRequest::dropProtection):
   92211         (WebCore::XMLHttpRequest::didFinishLoading):
   92212         (WebCore::XMLHttpRequest::didReceiveData):
   92213         * xml/XMLHttpRequest.h:
   92214 
   92215 2008-09-07  Adam Barth  <abarth (a] webkit.org>
   92216 
   92217         Reviewed by Sam Weinig.
   92218 
   92219         Adopt opener restriction on frame navigation.
   92220           https://bugs.webkit.org/show_bug.cgi?id=20642
   92221 
   92222         This restriction helps prevent an attacker from navigating top-level
   92223         windows that were created by another web site.
   92224 
   92225         Tests: http/tests/security/frameNavigation/not-opener.html
   92226                http/tests/security/frameNavigation/opener.html
   92227 
   92228         * loader/FrameLoader.cpp:
   92229         (WebCore::canAccessAncestor):
   92230         (WebCore::FrameLoader::shouldAllowNavigation):
   92231 
   92232 2008-09-07  Dan Bernstein  <mitz (a] apple.com>
   92233 
   92234         Reviewed by Maciej Stachowiak.
   92235 
   92236         - use the correct sign for vertical offsets of combining marks
   92237 
   92238         * platform/graphics/win/UniscribeController.cpp:
   92239         (WebCore::UniscribeController::shapeAndPlaceItem):
   92240 
   92241 2008-09-07  Dan Bernstein  <mitz (a] apple.com>
   92242 
   92243         Reviewed by Dave Hyatt.
   92244 
   92245         - add the combining mark offsets in two places where I forgot them
   92246 
   92247         * platform/graphics/win/FontCGWin.cpp:
   92248         (WebCore::Font::drawGlyphs):
   92249 
   92250 2008-09-07  Dan Bernstein  <mitz (a] apple.com>
   92251 
   92252         Reviewed by Dave Hyatt.
   92253 
   92254         - correct glyph advances in complex text using web fonts rendered with
   92255           Core Graphics
   92256 
   92257         * platform/graphics/win/FontCustomPlatformData.cpp:
   92258         (WebCore::FontCustomPlatformData::fontPlatformData):
   92259 
   92260 2008-09-07  Keishi Hattori  <casey.hattori (a] gmail.com>
   92261 
   92262         Adds console.dirxml support to the Web Inspector.
   92263 
   92264         https://bugs.webkit.org/show_bug.cgi?id=19156
   92265 
   92266         Reviewed by Timothy Hatcher.
   92267 
   92268         * WebCore.vcproj/WebCore.vcproj: Added ElementsTreeOutline.js.
   92269         * bindings/js/JSConsoleCustom.cpp:
   92270         (WebCore::JSConsole::dirxml):
   92271         * page/Console.cpp:
   92272         (WebCore::Console::dirxml): Adds a ConsoleMessage with NodeMessageLevel.
   92273         * page/Console.h:
   92274         (WebCore::): Added NodeMessageLevel.
   92275         * page/Console.idl: Added console.dirxml.
   92276         * page/inspector/Console.js: A NodeMessage creates a ElementsTreeOutline.
   92277         * page/inspector/ElementsPanel.js: Modified to use ElementsTreeOutline. The ElementsTreeOutline
   92278         in the ElementsPanel has includeRootDOMNode and selectEnabled set to true.
   92279         * page/inspector/ElementsTreeOutline.js: Added.
   92280         (WebInspector.ElementsTreeOutline): A subclass of TreeOutline for displaying a DOM node tree.
   92281         (WebInspector.ElementsTreeElement): A subclass of TreeElement for ElementsTreeOutline.
   92282         * page/inspector/WebKit.qrc: Added ElementsTreeOutline.js.
   92283         * page/inspector/inspector.css:
   92284         * page/inspector/inspector.html: Added ElementsTreeOutline.js.
   92285         * page/inspector/inspector.js: Moved hover related methods to WebInspector.
   92286         (WebInspector.altKeyDown):
   92287         (WebInspector.forceHoverHighlight):
   92288         (WebInspector.hoveredDOMNode):
   92289         (WebInspector._updateHoverHighlightSoon):
   92290         (WebInspector._updateHoverHighlight):
   92291         (WebInspector.documentKeyDown): Updates WebInspector.altKeyDown
   92292         (WebInspector.documentKeyUp): Updates WebInspector.altKeyDown
   92293         * page/inspector/utilities.js: Added getDocumentForNode, parentNodeOrFrameElement,
   92294         isAncestorIncludingParentFrames.
   92295 
   92296 2008-09-06  Mark Rowe  <mrowe (a] apple.com>
   92297 
   92298         Qt build fix.
   92299 
   92300         * bridge/qt/qt_runtime.cpp:
   92301         (KJS::Bindings::convertQVariantToValue):
   92302 
   92303 === End merge of squirrelfish-extreme ===
   92304 
   92305 2008-09-05  Oliver Hunt  <oliver (a] apple.com>
   92306 
   92307         Start bringing up SFX on windows.
   92308 
   92309         Reviewed by Mark Rowe and Sam Weinig
   92310 
   92311         Start doing the work to bring up SFX on windows.  Initially
   92312         just working on WREC, as it does not make any calls so reduces
   92313         the amount of code that needs to be corrected.
   92314 
   92315         Add forwarding headers
   92316 
   92317         * ChangeLog:
   92318         * ForwardingHeaders/masm/MacroAssembler.h: Added.
   92319         * WebCore.vcproj/WebCore.vcproj:
   92320 
   92321 2008-08-27  Mark Rowe  <mrowe (a] apple.com>
   92322 
   92323         Reviewed by Oliver Hunt.
   92324 
   92325         Fix the build of the full WebKit stack.
   92326 
   92327         Add forwarding headers.
   92328 
   92329         * ForwardingHeaders/masm/IA32MacroAsm.h: Added.
   92330         * ForwardingHeaders/wrec/WREC.h: Added.
   92331 
   92332 === Start merge of squirrelfish-extreme ===
   92333 
   92334 2008-09-06  Antti Koivisto  <antti (a] apple.com>
   92335 
   92336         Reviewed by Dave Hyatt.
   92337 
   92338         <rdar://problem/6187043>
   92339         Don't parse full HTML user agent style sheet unless it is actually needed
   92340         <rdar://problem/6131889>
   92341         WebView is significantly more expensive to create recently
   92342 
   92343         Parsing the html4.css takes significant amount of time and memory (~50kb) on application
   92344         startup. Some clients may never use most of the rules.
   92345 
   92346         With this patch we use simplified UA stylesheet until we hit something it can't handle.
   92347         This avoids full stylesheet parsing on application startup (due to empty document construction)
   92348         and also makes it possible for clients with very simple demands (divs and spans only) never to load
   92349         the full style.
   92350 
   92351         It also delays view source style parsing until it is used.
   92352 
   92353         * css/CSSStyleSelector.cpp:
   92354         (WebCore::elementCanUseSimpleDefaultStyle):
   92355         (WebCore::CSSStyleSelector::CSSStyleSelector):
   92356         (WebCore::loadFullDefaultStyle):
   92357         (WebCore::loadSimpleDefaultStyle):
   92358         (WebCore::loadViewSourceStyle):
   92359         (WebCore::CSSStyleSelector::matchUARules):
   92360         (WebCore::CSSStyleSelector::styleForElement):
   92361 
   92362 2008-09-06  Kevin Ollivier  <kevino (a] theolliviers.com>
   92363 
   92364         wx build fix.
   92365 
   92366         * WebCoreSources.bkl:
   92367 
   92368 2008-09-06  Antti Koivisto  <antti (a] apple.com>
   92369 
   92370         Reverting r35953 which was causing problems on Windows which relies on
   92371         WebCore timers in nested event loops. r36132 did alternative fix.
   92372 
   92373         * page/Chrome.cpp:
   92374         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
   92375         (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
   92376 
   92377 2008-09-06  Antti Koivisto  <antti (a] apple.com>
   92378 
   92379         Reviewed by Dan Bernstein.
   92380 
   92381         Fix <rdar://problem/6201644>
   92382         https://bugs.webkit.org/show_bug.cgi?id=20493
   92383         Crash after OK in dialog box and reloading page in secure mode
   92384 
   92385         Limited loader only fix since the general timer fix is causing problems on Windows.
   92386 
   92387         * loader/loader.cpp:
   92388         (WebCore::Loader::servePendingRequests):
   92389         (WebCore::Loader::Host::Host):
   92390         (WebCore::Loader::Host::didFinishLoading):
   92391         (WebCore::Loader::Host::didFail):
   92392         (WebCore::Loader::Host::didReceiveData):
   92393         * loader/loader.h:
   92394         (WebCore::Loader::Host::processingResource):
   92395 
   92396 2008-09-06  Dan Bernstein  <mitz (a] apple.com>
   92397 
   92398         Reviewed by Dave Hyatt.
   92399 
   92400         The initial Core Text adoption prototype was made by Daniel Fenwick.
   92401 
   92402         - <rdar://problem/5158514> Add a Core Text-based complex text code path
   92403 
   92404         Currently the Core Text code path is not used in any configuration.
   92405 
   92406         * WebCore.xcodeproj/project.pbxproj: Added files.
   92407         * config.h: Defined WTF_USE_ATSUI and WTF_USE_CORE_TEXT.
   92408         * platform/graphics/Font.cpp:
   92409         (WebCore::WidthIterator::advance): Moved the spacingDisabled() test out
   92410         of the loop.
   92411         * platform/graphics/GlyphBuffer.h:
   92412         (WebCore::GlyphBuffer::add): Added this version that takes an advance.
   92413         * platform/graphics/SimpleFontData.h: Added ATSUI and CORE_TEXT #ifdefs.
   92414         Added getCTFont() and getCFStringAttributes() and corresponding data
   92415         members for Core Text.
   92416         * platform/graphics/mac/CoreTextController.cpp: Added.
   92417         (WebCore::roundCGFloat): Helper function.
   92418         (WebCore::ceilCGFloat): Helper function.
   92419         (WebCore::CoreTextController::CoreTextRun::CoreTextRun):
   92420         (WebCore::CoreTextController::CoreTextController):
   92421         (WebCore::CoreTextController::offsetForPosition):
   92422         (WebCore::CoreTextController::collectCoreTextRuns): Added. Segments the
   92423         run into subruns as necessary such that each subrun can be rendered with
   92424         a single font. Also separates out soft hyphens and replaces them with
   92425         real hyphens, because Core Text does not emit a glyph for soft hyphens.
   92426         Then calls collectCoreTextRunsForCharacters() on each subrun.
   92427         (WebCore::CoreTextController::advance):
   92428         (WebCore::CoreTextController::collectCoreTextRunsForCharacters): Creates
   92429         a CTLine from the given subrun and collects its CoreTextRuns.
   92430         (WebCore::CoreTextController::adjustGlyphsAndAdvances): Applies the
   92431         rounding hacks, letter- and word-spacing and glyph substitutions and
   92432         stores the resulting adjusted glyphs and advances.
   92433         * platform/graphics/mac/CoreTextController.h: Copied from WebCore/platform/graphics/win/UniscribeController.h.
   92434         (WebCore::CoreTextController::totalWidth):
   92435         (WebCore::CoreTextController::finalRoundingWidth):
   92436         (WebCore::CoreTextController::CoreTextRun::ctRun):
   92437         (WebCore::CoreTextController::CoreTextRun::glyphCount):
   92438         (WebCore::CoreTextController::CoreTextRun::fontData):
   92439         (WebCore::CoreTextController::CoreTextRun::characters):
   92440         (WebCore::CoreTextController::CoreTextRun::stringLocation):
   92441         (WebCore::CoreTextController::CoreTextRun::stringLength):
   92442         (WebCore::CoreTextController::CoreTextRun::indexAt):
   92443         * platform/graphics/mac/FontMac.mm: Moved the ATSUI-specific parts to
   92444         FontMacATSUI.mm.
   92445         * platform/graphics/mac/FontMacATSUI.mm: Copied from WebCore/platform/graphics/mac/FontMac.mm.
   92446         (WebCore::disableLigatures): Changed to call
   92447         FontPlatformData::allowsLigatures().
   92448         (WebCore::overrideLayoutOperation): Changed to call
   92449         FontPlatformData::roundsGlyphAdvances().
   92450         * platform/graphics/mac/FontMacCoreText.cpp: Copied from WebCore/platform/graphics/win/FontWin.cpp.
   92451         (WebCore::Font::selectionRectForComplexText): Changed to use
   92452         totalWidth() instead of advancing to the end and using runWidthSoFar().
   92453         (WebCore::Font::drawComplexText):
   92454         (WebCore::Font::floatWidthForComplexText): Ditto.
   92455         (WebCore::Font::offsetForPositionForComplexText):
   92456         * platform/graphics/mac/FontPlatformData.h:
   92457         * platform/graphics/mac/FontPlatformDataMac.mm:
   92458         (WebCore::FontPlatformData::setFont):
   92459         (WebCore::FontPlatformData::roundsGlyphAdvances): Added. Checks the
   92460         AppKit rendering mode.
   92461         (WebCore::FontPlatformData::allowsLigatures): Added. Implements the
   92462         heuristic that allows ligatures in fonts that do not have a glyph for
   92463         'a', based on the assumption that such fonts are only used in complex
   92464         text.
   92465         * platform/graphics/mac/SimpleFontDataMac.mm:
   92466         (WebCore::SimpleFontData::platformInit):
   92467         (WebCore::SimpleFontData::platformDestroy):
   92468         (WebCore::SimpleFontData::getCTFont): Added.
   92469         (WebCore::SimpleFontData::getCFStringAttributes): Added. Caches and
   92470         returns an attributes dictionary.
   92471         * platform/text/mac/ShapeArabic.c: Added ATSUI #ifdefs.
   92472         * platform/text/mac/ShapeArabic.h: Ditto.
   92473 
   92474 2008-09-06  Dan Bernstein  <mitz (a] apple.com>
   92475 
   92476         Reviewed by Dave Hyatt.
   92477 
   92478         - make combining mark offsets work in CG text on Windows
   92479 
   92480         * platform/graphics/win/FontCGWin.cpp:
   92481         (WebCore::Font::drawGlyphs): The old code tried to translate the text
   92482         matrix, but failed for two reasons: it did not actually change the
   92483         matrix, and even if it did, CGContextSetTextPosition overwrites the
   92484         translation values in the text matrix. Instead, just added the
   92485         translation to the anchor point.
   92486 
   92487 2008-09-05  Gustavo Noronha Silva  <gns (a] gnome.org>
   92488 
   92489         Reviewed by Alp Toker.
   92490 
   92491         https://bugs.webkit.org/show_bug.cgi?id=18346
   92492         [GTK] Remove build warnings
   92493 
   92494         Applied some casts, and removed an unused typedef to make the
   92495         compiler happy, printing less warnings when building.
   92496 
   92497         * page/gtk/AccessibilityObjectWrapperAtk.cpp:
   92498         * platform/graphics/gtk/SimpleFontDataPango.cpp:
   92499         (WebCore::SimpleFontData::containsCharacters):
   92500         * platform/graphics/gtk/VideoSinkGStreamer.cpp:
   92501         (webkit_video_sink_set_caps):
   92502         * platform/network/soup/ResourceHandleSoup.cpp:
   92503 
   92504 2008-09-05  Eric Seidel  <eric (a] webkit.org>
   92505 
   92506         Reviewed by Adam Roben.
   92507 
   92508         Build fix for WebKitWin and Chromium
   92509 
   92510         * platform/FileSystem.h:
   92511 
   92512 2008-09-05  Eric Seidel  <eric (a] webkit.org>
   92513 
   92514         Reviewed by Darin Adler.
   92515 
   92516         Try to make Chromium compile with ToT:
   92517         - Wrap a few places which depend on KJS:: in #if USE(JSC)
   92518         - Include some windows forward declarations
   92519 
   92520         * dom/Node.h:
   92521         * page/Console.h:
   92522         * page/animation/CompositeAnimation.h:
   92523         * platform/FileSystem.h:
   92524         * platform/graphics/Image.h:
   92525         * platform/text/AtomicString.h:
   92526         * platform/text/String.cpp:
   92527         * rendering/style/RenderStyle.h:
   92528 
   92529 2008-09-05  Dave Hyatt  <hyatt (a] apple.com>
   92530 
   92531         Add support for runtime switchability of the Aqua look and the native look on Windows.
   92532         Make RenderThemeWin compile by default even when USE(SAFARI_THEME) is set.
   92533 
   92534         Reviewed by Adam Roben
   92535 
   92536         * WebCore.vcproj/WebCore.vcproj:
   92537         * page/Settings.cpp:
   92538         (WebCore::Settings::setShouldPaintNativeControls):
   92539         * page/Settings.h:
   92540         (WebCore::Settings::shouldPaintNativeControls):
   92541         * rendering/RenderThemeSafari.cpp:
   92542         (WebCore::theme):
   92543         * rendering/RenderThemeWin.cpp:
   92544 
   92545 2008-09-05  Antti Koivisto  <antti (a] apple.com>
   92546 
   92547         Qt build fix.
   92548 
   92549         * svg/SVGFEImageElement.cpp:
   92550         (WebCore::SVGFEImageElement::build):
   92551 
   92552 2008-09-05  Dirk Schulze  <vbs85 (a] gmx.de>
   92553 
   92554         Gtk build fix
   92555 
   92556         * GNUmakefile.am:
   92557 
   92558 2008-09-05  Antti Koivisto  <antti (a] apple.com>
   92559 
   92560         Another build fix.
   92561 
   92562         * svg/SVGFEImageElement.cpp:
   92563         (WebCore::SVGFEImageElement::notifyFinished):
   92564 
   92565 2008-09-05  Antti Koivisto  <antti (a] apple.com>
   92566 
   92567         Build fixes.
   92568 
   92569         * WebCore.xcodeproj/project.pbxproj:
   92570         * svg/graphics/filters/SVGFEImage.cpp:
   92571         (WebCore::FEImage::cachedImage):
   92572 
   92573 2008-09-05  Antti Koivisto  <antti (a] apple.com>
   92574 
   92575         Reviewed by Darin Adler.
   92576 
   92577         Most of the implementation for https://bugs.webkit.org/show_bug.cgi?id=17998
   92578         When a resource is cached locally, WebKit should follow RFC 2616 "Specific end-to-end revalidation" instead of "Unspecified end-to-end revalidation"
   92579 
   92580         Implement HTTP 1.1 "Specific end-to-end revalidation" for WebCore memory cache. This patch does
   92581         not yet enable it for the biggest use case, reloading. However it is good for general browsing as
   92582         well. Doing this in WebCore level as opposed to relying on disk cache has big benefit that
   92583         we avoid re-decoding resources, especially images.
   92584 
   92585         To be exact the enabled case is not actually the "Specific end-to-end revalidation" since it does not include
   92586         CacheControl: max-age=0 header. That would be added in reload case.
   92587 
   92588         The approach for revalidation is to kick the original resource out from the memory cache
   92589         and create a new CachedResource that represents the revalidation request. In case
   92590         we get 304 back for the request we put the original resource back to the cache, update
   92591         its expiration date and switch the clients registered to revalidation resource to be
   92592         clients of the original resource.
   92593 
   92594         All heap allocated CachedImage pointers now use CachedResourceHandle<CachedImage> (and so on) instead.
   92595         This allows updating the handles to point to the original resource when the revalidation succeeds. It
   92596         also acts as refcounting smart pointer.
   92597 
   92598         * WebCore.pro:
   92599         * WebCore.vcproj/WebCore.vcproj:
   92600         * WebCore.xcodeproj/project.pbxproj:
   92601         * css/CSSFontFaceSource.h:
   92602         * css/CSSImportRule.h:
   92603         * dom/Clipboard.h:
   92604         (WebCore::Clipboard::dragImage):
   92605         * dom/ProcessingInstruction.h:
   92606         * dom/ScriptElement.h:
   92607         * dom/XMLTokenizer.cpp:
   92608         (WebCore::XMLTokenizer::isWaitingForScripts):
   92609         * dom/XMLTokenizer.h:
   92610         * html/HTMLImageLoader.cpp:
   92611         (WebCore::HTMLImageLoader::setImage):
   92612         (WebCore::HTMLImageLoader::updateFromElement):
   92613         (WebCore::HTMLImageLoader::notifyFinished):
   92614         * html/HTMLImageLoader.h:
   92615         (WebCore::HTMLImageLoader::image):
   92616         * html/HTMLLinkElement.h:
   92617         * html/HTMLTokenizer.cpp:
   92618         (WebCore::HTMLTokenizer::reset):
   92619         (WebCore::HTMLTokenizer::scriptHandler):
   92620         (WebCore::HTMLTokenizer::notifyFinished):
   92621         * html/HTMLTokenizer.h:
   92622         * loader/Cache.cpp:
   92623         (WebCore::Cache::revalidateResource):
   92624         (WebCore::Cache::revalidationSucceeded):
   92625         (WebCore::Cache::revalidationFailed):
   92626         * loader/Cache.h:
   92627         * loader/CachedResource.cpp:
   92628         (WebCore::CachedResource::CachedResource):
   92629         (WebCore::CachedResource::~CachedResource):
   92630         (WebCore::CachedResource::isExpired):
   92631         (WebCore::CachedResource::setResponse):
   92632         (WebCore::CachedResource::deleteIfPossible):
   92633         (WebCore::CachedResource::setResourceToRevalidate):
   92634         (WebCore::CachedResource::clearResourceToRevalidate):
   92635         (WebCore::CachedResource::switchClientsToRevalidatedResource):
   92636         (WebCore::CachedResource::canUseCacheValidator):
   92637         (WebCore::CachedResource::mustRevalidate):
   92638         * loader/CachedResource.h:
   92639         (WebCore::CachedResource::canDelete):
   92640         (WebCore::CachedResource::registerHandle):
   92641         (WebCore::CachedResource::unregisterHandle):
   92642         (WebCore::CachedResource::isCacheValidator):
   92643         (WebCore::CachedResource::resourceToRevalidate):
   92644         (WebCore::CachedResource::setExpirationDate):
   92645         * loader/CachedResourceHandle.cpp: Added.
   92646         (WebCore::CachedResourceHandleBase::setResource):
   92647         * loader/CachedResourceHandle.h: Added.
   92648         (WebCore::CachedResourceHandleBase::~CachedResourceHandleBase):
   92649         (WebCore::CachedResourceHandleBase::get):
   92650         (WebCore::CachedResourceHandleBase::operator!):
   92651         (WebCore::CachedResourceHandleBase::operator UnspecifiedBoolType):
   92652         (WebCore::CachedResourceHandleBase::CachedResourceHandleBase):
   92653         (WebCore::CachedResourceHandleBase::operator=):
   92654         (WebCore::CachedResourceHandle::CachedResourceHandle):
   92655         (WebCore::CachedResourceHandle::get):
   92656         (WebCore::CachedResourceHandle::operator->):
   92657         (WebCore::CachedResourceHandle::operator=):
   92658         (WebCore::CachedResourceHandle::operator==):
   92659         (WebCore::CachedResourceHandle::operator!=):
   92660         (WebCore::operator==):
   92661         (WebCore::operator!=):
   92662         * loader/DocLoader.cpp:
   92663         (WebCore::DocLoader::checkForReload):
   92664         * loader/UserStyleSheetLoader.h:
   92665         * loader/loader.cpp:
   92666         (WebCore::Loader::Host::servePendingRequests):
   92667         (WebCore::Loader::Host::didFinishLoading):
   92668         (WebCore::Loader::Host::didFail):
   92669         (WebCore::Loader::Host::didReceiveResponse):
   92670         (WebCore::Loader::Host::didReceiveData):
   92671         * page/EventHandler.cpp:
   92672         (WebCore::EventHandler::selectCursor):
   92673         * rendering/RenderImage.cpp:
   92674         (WebCore::RenderImage::setCachedImage):
   92675         (WebCore::RenderImage::imageChanged):
   92676         * rendering/RenderImage.h:
   92677         (WebCore::RenderImage::cachedImage):
   92678         (WebCore::RenderImage::imagePtr):
   92679         * rendering/style/RenderStyle.h:
   92680         * rendering/style/StyleCachedImage.h:
   92681         (WebCore::StyleCachedImage::data):
   92682         (WebCore::StyleCachedImage::cachedImage):
   92683         * svg/SVGFEImageElement.h:
   92684         * svg/graphics/filters/SVGFEImage.h:
   92685         * xml/XSLImportRule.h:
   92686 
   92687 2008-09-04  Brady Eidson  <beidson (a] apple.com>
   92688 
   92689         Reviewed by Mitz
   92690 
   92691         <rdar://problem/6180236> - Safari times out connections after 1 or 2 minutes
   92692 
   92693         A 60-second default timeout was added in http://trac.webkit.org/changeset/17144 in an attempt
   92694         to model default NSURLRequest behavior in a cross-platform manner.
   92695 
   92696         Sadly by always enforcing this 60 second timeout, WebCore was stomping over the wishes of any Webkit
   92697         client that wished to enforce a much larger default timeout using NSURLRequest API.
   92698 
   92699         Additionally, upon reviewing what all other browsers do, it seems apparent that "no limit" is desirable
   92700         behavior on the web and this restores previous Safari/WebKit behavior.
   92701 
   92702         It would be easy to write a layout test for this, but to be effective it would have
   92703         to run for at least 61 seconds, which seems insane until will can parallelize run-webkit-tests
   92704 
   92705         * manual-tests/timeout-test.html: Added.
   92706         * manual-tests/timeout-test.php: Added.
   92707 
   92708         * platform/network/ResourceRequestBase.h:
   92709         (WebCore::ResourceRequestBase::ResourceRequestBase):  Rename the constant to "unspecifiedTimeoutInterval"
   92710           and make it UINT_MAX so platforms that do set it have an effective "no timeout."  (Windows, for example)
   92711         * platform/network/mac/ResourceRequestMac.mm:
   92712         (WebCore::ResourceRequest::doUpdatePlatformRequest):  If the timeout for this request is
   92713           "unspecifiedTimeoutInterval", then don't bother setting the timeout using NSURLRequest API, allowing
   92714           WebKit applications to enforce their own default timeout.
   92715 
   92716 2008-09-04  Dan Bernstein  <mitz (a] apple.com>
   92717 
   92718         Reviewed by Beth Dakin.
   92719 
   92720         - fix <rdar://problem/6198514> Changing a button's opacity triggers relayout
   92721 
   92722         Test: fast/repaint/button-spurious-layout-hint.html
   92723 
   92724         * rendering/RenderButton.cpp:
   92725         (WebCore::RenderButton::setStyle): Reset the inner block's style box
   92726         flex to 0 to avoid getting a spurious layout hint.
   92727 
   92728 2008-09-04  Kevin Ollivier  <kevino (a] theolliviers.com>
   92729 
   92730         wx build fixes.
   92731 
   92732         * WebCoreSources.bkl:
   92733         * bindings/js/ScriptControllerWx.cpp: Added.
   92734         (WebCore::ScriptController::createScriptInstanceForWidget):
   92735         * page/wx/AccessibilityObjectWx.cpp: Added.
   92736         (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
   92737         * platform/graphics/wx/GraphicsContextWx.cpp:
   92738         * webcore-base.bkl:
   92739         * webcore-wx.bkl:
   92740 
   92741 2008-09-04  Dan Bernstein  <mitz (a] apple.com>
   92742 
   92743         Reviewed by Mark Rowe.
   92744 
   92745         - roll out r36050 because it made svg/custom/invalid-fill-hex.svg fail,
   92746           and fixing https://bugs.webkit.org/show_bug.cgi?id=15360 appears to
   92747           require a different approach
   92748 
   92749         * css/CSSGrammar.y:
   92750 
   92751 2008-09-04  Mark Rowe  <mrowe (a] apple.com>
   92752 
   92753         Reviewed by Eric Seidel.
   92754 
   92755         Fix https://bugs.webkit.org/show_bug.cgi?id=20639.
   92756         Bug 20639: ENABLE_DASHBOARD_SUPPORT does not need to be a FEATURE_DEFINE
   92757 
   92758         * Configurations/WebCore.xcconfig: Remove ENABLE_DASHBOARD_SUPPORT from FEATURE_DEFINES.
   92759         * DerivedSources.make: Revert to checking for ENABLE_DASHBOARD_SUPPORT rather than looking
   92760         for ENABLE_DASHBOARD_SUPPORT in FEATURE_DEFINES.
   92761 
   92762 2008-09-04  Mark Rowe  <mrowe (a] apple.com>
   92763 
   92764         Mac build fix.
   92765 
   92766         * config.h: Only check the value of HAVE_CONFIG_H if it is defined.
   92767 
   92768 2008-09-04  Eric Seidel  <eric (a] webkit.org>
   92769 
   92770         Build fix only, no review.
   92771 
   92772         * dom/XMLTokenizer.cpp: Fix the Chromium merge build by adding a missing header (the Mac files must include it somewhere).
   92773 
   92774 2008-09-04  Marco Barisione  <marco.barisione (a] collabora.co.uk>
   92775 
   92776         Reviewed by Eric Seidel.
   92777 
   92778         http://bugs.webkit.org/show_bug.cgi?id=20380
   92779         [GTK][AUTOTOOLS] Include autotoolsconfig.h from config.h
   92780 
   92781         * config.h: Include the configuration header generated by autotools if
   92782         available.
   92783 
   92784 2008-09-04  Dan Bernstein  <mitz (a] apple.com>
   92785 
   92786         Rubber-stamped by Dave Hyatt.
   92787 
   92788         - rename CachedResource::allReferencesRemoved() to allClientsRemoved()
   92789 
   92790         * loader/CachedFont.cpp:
   92791         (WebCore::CachedFont::allClientsRemoved):
   92792         * loader/CachedFont.h:
   92793         * loader/CachedImage.cpp:
   92794         (WebCore::CachedImage::allClientsRemoved):
   92795         * loader/CachedImage.h:
   92796         * loader/CachedResource.cpp:
   92797         (WebCore::CachedResource::removeClient):
   92798         * loader/CachedResource.h:
   92799         (WebCore::CachedResource::allClientsRemoved):
   92800 
   92801 2008-09-04  Adam Roben  <aroben (a] apple.com>
   92802 
   92803         Windows build fix after r36071
   92804 
   92805         We were getting these errors:
   92806 
   92807         error C2356: initialization segment must not change during translation
   92808         unit
   92809 
   92810         This was happening because multiple files #included by
   92811         DerivedSources.cpp were themselves #including StaticConstructors.h. I
   92812         fixed the error by adding header guards to StaticConstructors.h so its
   92813         contents will only be included once.
   92814 
   92815         But it's also not a good idea for StaticConstructors.h to end up in
   92816         DerivedSources.cpp, since it ends up "polluting" all the source files
   92817         we have in there. So I removed all the files that include
   92818         StaticConstructors.h and added some preprocessor directives to
   92819         DerivedSources.cpp to catch this error in the future.
   92820 
   92821         * DerivedSources.cpp: Removed the *Names.cpp files, which include
   92822         StaticConstructors.h, and added some preprocessor directives to make
   92823         sure we don't end up accidentally including StaticConstructors.h in
   92824         the future.
   92825         * WebCore.vcproj/WebCore.vcproj: Added the *Names.cpp files.
   92826         * platform/StaticConstructors.h: Added header guards.
   92827 
   92828 2008-09-04  Adam Roben  <aroben (a] apple.com>
   92829 
   92830         Windows build fix
   92831 
   92832         * platform/graphics/win/FontPlatformData.h: Added a missing #include
   92833         of PassRefPtr.h, and corrected the capitalization of RefCounted.h.
   92834         * platform/text/PlatformString.h: Added a missing #include of
   92835         PassRefPtr.h.
   92836 
   92837 2008-09-04  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   92838 
   92839         Reviewed by Simon.
   92840 
   92841         Fix the QtWebKit build to match changes in r36016
   92842 
   92843         * WebCore.pro:
   92844         * bridge/qt/qt_instance.cpp:
   92845         (KJS::Bindings::QtInstance::getRuntimeObject):
   92846         * bridge/qt/qt_runtime.cpp:
   92847         (KJS::Bindings::convertQVariantToValue):
   92848         (KJS::Bindings::QtConnectionObject::execute):
   92849 
   92850 2008-09-04  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   92851 
   92852         Reviewed by Simon.
   92853 
   92854         Re-enable support for user stylesheets in QtWebKit
   92855 
   92856         QtWebKit now follows the FRAME_LOADS_USER_STYLESHEET
   92857         code path, which allows us to keep API support for
   92858         loading user style sheets from remote URLs.
   92859 
   92860         As part of the change UserStyleSheetLoader.cpp/h was
   92861         moved from WebCore/loader/mac to WebCore/loader.
   92862 
   92863         * WebCore.pro:
   92864         * WebCore.xcodeproj/project.pbxproj:
   92865         * dom/Document.h:
   92866         * loader/UserStyleSheetLoader.cpp: Renamed from WebCore/loader/mac/UserStyleSheetLoader.cpp.
   92867         (UserStyleSheetLoader::UserStyleSheetLoader):
   92868         (UserStyleSheetLoader::~UserStyleSheetLoader):
   92869         * loader/UserStyleSheetLoader.h: Renamed from WebCore/loader/mac/UserStyleSheetLoader.h.
   92870         * page/qt/FrameQt.cpp:
   92871         (WebCore::Frame::setUserStyleSheetLocation):
   92872         (WebCore::Frame::setUserStyleSheet):
   92873 
   92874 2008-09-04  Alp Toker  <alp (a] nuanti.com>
   92875 
   92876         Reviewed by Eric.
   92877 
   92878         Remove left-over QT and CAIRO platform checks.
   92879 
   92880         * html/CanvasRenderingContext2D.cpp:
   92881 
   92882 2008-09-04  Eric Seidel  <eric (a] webkit.org>
   92883 
   92884         Reviewed by Mark Rowe.
   92885 
   92886         Fix leak of TextMetrics due to over-ref as see on buildbot.
   92887 
   92888         * html/TextMetrics.h: use adoptRef since RefCounted starts @ refcount 1 instead of 0 now.
   92889 
   92890 2008-09-04  Dan Bernstein  <mitz (a] apple.com>
   92891 
   92892         Reviewed by Dave Hyatt.
   92893 
   92894         - fix https://bugs.webkit.org/show_bug.cgi?id=19717
   92895           <rdar://problem/6026832> REGRESSION (r31876): menu items render horizontally at the Economist
   92896 
   92897         * rendering/RenderBlock.cpp:
   92898         (WebCore::RenderBlock::layoutOnlyPositionedObjects): In the
   92899         positioned movement only case, call
   92900         tryLayoutDoingPositionedMovementOnly() and fall back on doing a full
   92901         layout if that fails.
   92902         (WebCore::RenderBlock::layoutPositionedObjects): Ditto.
   92903         * rendering/RenderBox.h:
   92904         (WebCore::RenderBox::tryLayoutDoingPositionedMovementOnly): Renamed
   92905         layoutDoingPositionedMovementOnly to this, and made this function
   92906         check if the width changed. If it did, return, leaving the object
   92907         dirty. The caller can then call layout(). The width can change even
   92908         in the "positioned movement only" case if the object is shrink-to-fit
   92909         and the available width constraint is met. (This was the case in the
   92910         bug).
   92911         * rendering/RenderObject.h:
   92912         (WebCore::RenderObject::tryLayoutDoingPositionedMovementOnly):
   92913         Renamed layoutDoingPositionedMovementOnly() to this.
   92914 
   92915 2008-09-03  Eric Seidel  <eric (a] webkit.org>
   92916 
   92917         No review, build fix only.
   92918 
   92919         Attempt to fix the Qt build.
   92920 
   92921         * WebCore.pro: add page/animation to include path
   92922 
   92923 2008-09-03  Mark Rowe  <mrowe (a] apple.com>
   92924 
   92925         Mac build fix.  Correctly detect whether dashboard support is enabled.
   92926 
   92927         * DerivedSources.make:
   92928 
   92929 2008-09-03  Eric Seidel  <eric (a] webkit.org>
   92930 
   92931         Reviewed by Sam.
   92932 
   92933         Clean up Platform.h and add PLATFORM(CHROMIUM), PLATFORM(SKIA) and USE(V8_BINDINGS)
   92934 
   92935         * Configurations/WebCore.xcconfig: add missing ENABLE_*
   92936         * config.h: add rules for V8_BINDINGS
   92937 
   92938 2008-09-03  Eric Seidel  <eric (a] webkit.org>
   92939 
   92940         Reviewed by Sam.
   92941 
   92942         https://bugs.webkit.org/show_bug.cgi?id=20620
   92943 
   92944         Add #if USE(JSC) around KJS dependencies
   92945         Remove !USE(JAVASCRIPTCORE_BINDINGS) support for 3 reasons:
   92946         1. Most platforms have it on anyway
   92947         2. V8 is going to want to share some of that code
   92948         3. Those platforms which want it off, should have a separate file instead of an #ifdef in our .cpp
   92949 
   92950         * bindings/js/JSPluginElementFunctions.cpp: remove !USE(JAVASCRIPTCORE_BINDINGS) support
   92951         * config.h: change JAVASCRIPTCORE_BINDINGS to JSC and add USE(V8)
   92952         * html/HTMLAppletElement.cpp: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
   92953         * html/HTMLAppletElement.h: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
   92954         * html/HTMLEmbedElement.cpp: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
   92955         * html/HTMLEmbedElement.h: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
   92956         * html/HTMLObjectElement.cpp: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
   92957         * html/HTMLObjectElement.h: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
   92958         * html/HTMLPlugInElement.cpp: replace USE(JAVASCRIPTCORE_BINDINGS) with USE(JSC) where needed
   92959         * html/HTMLPlugInElement.h: replace USE(JAVASCRIPTCORE_BINDINGS) with USE(JSC) where needed
   92960         * platform/text/AtomicString.cpp: add USE(JSC)
   92961         * platform/text/AtomicString.h: add USE(JSC)
   92962         * platform/text/PlatformString.h: add USE(JSC)
   92963         * platform/text/String.cpp: add USE(JSC)
   92964         * platform/text/StringImpl.cpp: add USE(JSC)
   92965         * platform/text/StringImpl.h: add USE(JSC)
   92966 
   92967 2008-09-03  Dean McNamee  <deanm (a] chromium.org>
   92968 
   92969         Reviewed by Darin Adler.
   92970 
   92971         Fix https://bugs.webkit.org/show_bug.cgi?id=20511
   92972         Bug 20511: Remove static initializers on Windows
   92973 
   92974         Avoid static initializers on Windows by forcing Visual C++ to put
   92975         all static initializers in a code segment that is never executed.
   92976 
   92977         * config.h:
   92978         * css/MediaFeatureNames.cpp:
   92979         * dom/EventNames.cpp:
   92980         * dom/QualifiedName.cpp:
   92981         * dom/make_names.pl:
   92982         * platform/StaticConstructors.h:
   92983         * platform/text/AtomicString.cpp:
   92984 
   92985 2008-09-03  Dirk Schulze  <vbs85 (a] gmx.de>
   92986 
   92987         Reviewed by Dave Hyatt.
   92988 
   92989         Make FontCairo draw TextStroke and TextFill separately.
   92990 
   92991         [CAIRO] draw TextFill and TextStroke separately.
   92992         [https://bugs.webkit.org/show_bug.cgi?id=20631]
   92993 
   92994         * platform/graphics/cairo/FontCairo.cpp:
   92995         (WebCore::Font::drawGlyphs):
   92996 
   92997 2008-09-03  Peter Kasting  <pkasting (a] google.com>
   92998 
   92999         Reviewed by Dave Hyatt.
   93000 
   93001         https://bugs.webkit.org/show_bug.cgi?id=19663
   93002         Account for paint and timer lag when animating images.  Also pretend
   93003         that images whose animations were paused (by becoming invisible)
   93004         continued to animate, by "catching up" to the correct frame when they're
   93005         shown again.
   93006 
   93007         * platform/graphics/BitmapImage.cpp:
   93008         (WebCore::BitmapImage::BitmapImage):
   93009         (WebCore::BitmapImage::startAnimation):
   93010         (WebCore::BitmapImage::advanceAnimation):
   93011         (WebCore::BitmapImage::internalAdvanceAnimation):
   93012         (WebCore::BitmapImage::notifyObserverAndTrimDecodedData):
   93013         * platform/graphics/BitmapImage.h:
   93014         * platform/graphics/cairo/ImageCairo.cpp:
   93015         (WebCore::BitmapImage::draw):
   93016         * platform/graphics/cg/ImageCG.cpp:
   93017         (WebCore::BitmapImage::draw):
   93018         * platform/graphics/qt/ImageQt.cpp:
   93019         (WebCore::BitmapImage::draw):
   93020         * platform/graphics/wx/ImageWx.cpp:
   93021         (WebCore::BitmapImage::draw):
   93022 
   93023 2008-09-03  Kevin McCullough  <kmccullough (a] apple.com>
   93024 
   93025         Reviewed by Tim.
   93026 
   93027         Remove the rest of the "zombie" code from the profiler.
   93028         - There is no longer a need for the ProfilerClient callback mechanism.
   93029 
   93030         * page/Console.cpp:
   93031         (WebCore::Console::Console):
   93032         (WebCore::Console::profile):
   93033         (WebCore::Console::profileEnd): Move the variables from the header to
   93034         here since we don't have to wait for a callback to use them.
   93035         * page/Console.h:
   93036         * page/InspectorController.cpp:
   93037         (WebCore::InspectorController::startUserInitiatedProfiling):
   93038         (WebCore::InspectorController::stopUserInitiatedProfiling):
   93039         * page/InspectorController.h:
   93040 
   93041 2008-09-03  Ada Chan  <adachan (a] apple.com>
   93042 
   93043         Windows build fix.
   93044 
   93045         * WebCore.vcproj/WebCore.vcproj: Added JSWebKitCSSKeyframeRule.cpp and JSWebKitCSSKeyframesRule.cpp to the project.
   93046 
   93047 2008-09-01  Dean Jackson  <dino (a] apple.com>
   93048 
   93049         Reviewed by Dave Hyatt.
   93050 
   93051         https://bugs.webkit.org/show_bug.cgi?id=20594
   93052         Add DOM interfaces for WebKitCSSKeyframeRule
   93053         and WebKitCSSKeyframesRule.
   93054 
   93055         TEST: LayoutTests/css3/keyframes-rule.html
   93056 
   93057         * css/WebKitCSSKeyframeRule.idl: Added
   93058         * css/WebKitCSSKeyframesRule.idl: Added
   93059 
   93060         * bindings/js/JSCSSRuleCustom.cpp:
   93061         (WebCore::toJS):
   93062             Add return of new JS Keyframe rules
   93063         * bindings/objc/DOMInternal.h:
   93064             Include new internal header
   93065 
   93066         * DerivedSources.make:
   93067         * GNUmakefile.am:
   93068         * WebCore.pro:
   93069         * WebCore.vcproj/WebCore.vcproj:
   93070         * WebCore.xcodeproj/project.pbxproj:
   93071         * WebCoreSources.bkl:
   93072             Build configs for new files
   93073 
   93074 2008-09-03  Adam Roben  <aroben (a] apple.com>
   93075 
   93076         Windows build fix
   93077 
   93078         * DerivedSources.cpp: Add JSTextMetrics.cpp to fix the build.
   93079         * WebCore.vcproj/WebCore.vcproj: Add JSTextMetrics.h for
   93080         convenience/consistency.
   93081 
   93082 2008-09-03  Adele Peterson  <adele (a] apple.com>
   93083 
   93084         Build fix.
   93085 
   93086         * WebCore.vcproj/WebCore.vcproj:
   93087 
   93088 2008-09-03  David Hyatt  <hyatt (a] apple.com>
   93089 
   93090         Fix for bug 18203, right floats should be allowed to overflow past the left border edge.
   93091 
   93092         Reviewed by Darin (ages ago)
   93093 
   93094         Added fast/block/float/clamped-right-float.html
   93095 
   93096         * rendering/RenderBlock.cpp:
   93097         (WebCore::RenderBlock::positionNewFloats):
   93098 
   93099 2008-09-02  David Hyatt  <hyatt (a] apple.com>
   93100 
   93101         Add support for canvas text drawing APIs.
   93102 
   93103         Reviewed by olliej
   93104 
   93105         Tests added as fast/canvas/canvas-text-*.html
   93106 
   93107         * DerivedSources.make:
   93108         * WebCore.xcodeproj/project.pbxproj:
   93109         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
   93110         (WebCore::JSCanvasRenderingContext2D::fillText):
   93111         (WebCore::JSCanvasRenderingContext2D::strokeText):
   93112         * css/CSSStyleSelector.cpp:
   93113         (WebCore::CSSStyleSelector::initForStyleResolve):
   93114         (WebCore::CSSStyleSelector::applyPropertyToStyle):
   93115         * css/CSSStyleSelector.h:
   93116         * html/CanvasRenderingContext2D.cpp:
   93117         (WebCore::CanvasRenderingContext2D::State::State):
   93118         (WebCore::CanvasRenderingContext2D::font):
   93119         (WebCore::CanvasRenderingContext2D::setFont):
   93120         (WebCore::CanvasRenderingContext2D::textAlign):
   93121         (WebCore::CanvasRenderingContext2D::setTextAlign):
   93122         (WebCore::CanvasRenderingContext2D::textBaseline):
   93123         (WebCore::CanvasRenderingContext2D::setTextBaseline):
   93124         (WebCore::CanvasRenderingContext2D::fillText):
   93125         (WebCore::CanvasRenderingContext2D::strokeText):
   93126         (WebCore::CanvasRenderingContext2D::measureText):
   93127         (WebCore::CanvasRenderingContext2D::drawTextInternal):
   93128         (WebCore::CanvasRenderingContext2D::accessFont):
   93129         * html/CanvasRenderingContext2D.h:
   93130         * html/CanvasRenderingContext2D.idl:
   93131         * html/TextMetrics.h: Added.
   93132         (WebCore::TextMetrics::create):
   93133         (WebCore::TextMetrics::width):
   93134         (WebCore::TextMetrics::setWidth):
   93135         (WebCore::TextMetrics::TextMetrics):
   93136         * html/TextMetrics.idl: Added.
   93137         * platform/graphics/Font.cpp:
   93138         (WebCore::Font::lineGap):
   93139         * platform/graphics/Font.h:
   93140         * platform/graphics/GraphicsContext.cpp:
   93141         (WebCore::GraphicsContext::drawBidiText):
   93142         * platform/graphics/GraphicsContext.h:
   93143         * platform/graphics/GraphicsTypes.cpp:
   93144         (WebCore::textAlignName):
   93145         (WebCore::parseTextAlign):
   93146         (WebCore::textBaselineName):
   93147         (WebCore::parseTextBaseline):
   93148         * platform/graphics/GraphicsTypes.h:
   93149         (WebCore::):
   93150 
   93151 2008-09-03  John Sullivan  <sullivan (a] apple.com>
   93152 
   93153         Fixed <rdar://problem/6193022> <rdar://problem/6193022> Crash occurs at WebCore::AnimationBase::propertiesEqual () after certain steps
   93154 
   93155         Fixed by Darin, reviewed by me
   93156 
   93157         * page/animation/AnimationBase.cpp:
   93158         (WebCore::AnimationBase::propertiesEqual):
   93159         added ensurePropertyMap() to this static function
   93160         (WebCore::AnimationBase::getPropertyAtIndex):
   93161         ditto
   93162         (WebCore::AnimationBase::getNumProperties):
   93163         ditto
   93164 
   93165 2008-09-03  Kevin McCullough  <kmccullough (a] apple.com>
   93166 
   93167         Reviewed by Darin and Tim.
   93168 
   93169         Remove most of the "zombie" mode from the profiler.  Next we will need
   93170         to remove the client callback mechanism in profiles.
   93171         - These changes are a result of changes to JSCore.
   93172 
   93173         * manual-tests/inspector/profiler-test-nested-start-and-stop-profiler.html:
   93174         * page/Console.cpp:
   93175         (WebCore::retrieveLastCaller):
   93176         (WebCore::Console::profileEnd):
   93177         * page/InspectorController.cpp:
   93178         (WebCore::InspectorController::stopUserInitiatedProfiling):
   93179 
   93180 2008-09-03  Adele Peterson  <adele (a] apple.com>
   93181 
   93182         Reviewed by Darin Adler.
   93183 
   93184         Test: fast/forms/search-display-none-cancel-button.html
   93185 
   93186         Allow display:none to work on a search field's cancel button.  Prepare for adding more style-ability for the results button too.
   93187 
   93188         * css/html4.css: Set display:inline-block for these buttons.  Now they can be overridden by a web author.
   93189 
   93190         * rendering/RenderTextControl.cpp:
   93191         (WebCore::RenderTextControl::setStyle): Add nil checks for the button renderers.
   93192         (WebCore::RenderTextControl::createResultsButtonStyle): Don't set the display explicitly.  This is now done in html4.css.
   93193         (WebCore::RenderTextControl::createCancelButtonStyle): ditto.
   93194         (WebCore::RenderTextControl::createSubtreeIfNeeded):
   93195         Reorganize this code so our complicated way of adding shadow nodes is abstracted out into the TextControlInnerElement class.
   93196         (WebCore::RenderTextControl::updateFromElement): Added nil checks for the button renderers.
   93197         (WebCore::RenderTextControl::subtreeHasChanged): ditto.
   93198         (WebCore::RenderTextControl::calcHeight): ditto.
   93199         (WebCore::RenderTextControl::nodeAtPoint): ditto.
   93200         (WebCore::RenderTextControl::layout): ditto.
   93201         (WebCore::RenderTextControl::calcPrefWidths): ditto.
   93202         (WebCore::RenderTextControl::clientPaddingLeft): ditto.
   93203         (WebCore::RenderTextControl::clientPaddingRight): ditto.
   93204 
   93205         * rendering/TextControlInnerElements.cpp:
   93206         (WebCore::RenderTextControlInnerBlock::RenderTextControlInnerBlock): Moved from RenderTextControl.cpp.
   93207         (WebCore::RenderTextControlInnerBlock::nodeAtPoint): ditto.
   93208         (WebCore::TextControlInnerElement::attachInnerElement): Added.
   93209          This does all the separate steps of attaching a shadow node that used to be repeated in RenderTextControl::createSubtreeIfNeeded for each element.
   93210         (WebCore::TextControlInnerTextElement::createRenderer): Added.  Creates a RenderTextControlInnerBlock.
   93211         * rendering/TextControlInnerElements.h:
   93212 
   93213 2008-08-28  Alexey Proskuryakov  <ap (a] webkit.org>
   93214 
   93215         Reviewed by Maciej.
   93216 
   93217         Elminate SQLiteAuthorizer class.
   93218 
   93219         * WebCore.xcodeproj/project.pbxproj:
   93220         * WebCore.vcproj/WebCore.vcproj:
   93221         * GNUmakefile.am
   93222         Removed SQLiteAuthorizer.h.
   93223 
   93224         * platform/sql/SQLiteAuthorizer.cpp:
   93225         * platform/sql/SQLiteAuthorizer.h: Removed.
   93226         * platform/sql/SQLiteDatabase.cpp:
   93227         (WebCore::SQLiteDatabase::authorizerFunction):
   93228         (WebCore::SQLiteDatabase::setAuthorizer):
   93229         * platform/sql/SQLiteDatabase.h:
   93230         * storage/DatabaseAuthorizer.h:
   93231         (WebCore::DatabaseAuthorizer::create):
   93232         (WebCore::DatabaseAuthorizer::createView):
   93233         (WebCore::DatabaseAuthorizer::createTempView):
   93234         (WebCore::DatabaseAuthorizer::dropView):
   93235         (WebCore::DatabaseAuthorizer::dropTempView):
   93236         (WebCore::DatabaseAuthorizer::allowSelect):
   93237         (WebCore::DatabaseAuthorizer::allowReindex):
   93238         Merge SQLiteAuthorizer and DatabaseAuthorizer, as keeping them separate serves no purpose.
   93239 
   93240 2008-09-03  Dirk Schulze  <vbs85 (a] gmx.de>
   93241 
   93242         Reviewed by Mark Rowe.
   93243 
   93244         WebKitGtk build fix.
   93245 
   93246         * GNUmakefile.am:
   93247         * page/animation/AnimationController.h:
   93248 
   93249 2008-09-02  Robert Blaut  <webkit (a] blaut.biz>
   93250 
   93251         Reviewed by Geoff Garen.
   93252 
   93253         Fix for <https://bugs.webkit.org/show_bug.cgi?id=16913>
   93254         Misplaced elements should not close DL lists.
   93255 
   93256         Test: fast/invalid/test-case-tr-th-td-should-not-close-dl-list.html
   93257 
   93258         * html/HTMLParser.cpp:
   93259         (WebCore::HTMLParser::handleError):
   93260 
   93261 2008-09-02  Glenn Wilson  <wilsong (a] gmail.com>
   93262 
   93263         Reviewed by Darin Adler.
   93264 
   93265         Fix for <https://bugs.webkit.org/show_bug.cgi?id=15360>
   93266         Bug 15360: color:#{predefined colorName} is treated as colorName in Safari
   93267 
   93268         We would inappropriately interpret and apply an invalid CSS "color" property
   93269         when the value is a predefined color preceded by a '#' symbol.  For example,
   93270         style="color:#gray;" would apply the color gray when it should not.
   93271 
   93272         In the bison template, "hexcolor" was defined as both "HEX maybe_space" OR "IDENT maybe_space".
   93273         This caused identifiers not fitting the appropriate hex format but preceded by a '#' to be
   93274         interpreted as a valid color (CSSPrimitiveValue::CSS_PARSER_HEXCOLOR), when it was really just
   93275         an ignorable token.
   93276 
   93277         To correct this, "IDENT maybe_space" was removed from "hexcolor" and added under "term" as
   93278         '#' IDENT maybe_space, which is then processed as a CSSPrimitiveValue::CSS_STRING instead of
   93279         CSSPrimitiveValue::CSS_PARSER_HEXCOLOR.
   93280 
   93281         Test: css1/color_and_background/invalid_color.html
   93282 
   93283         * css/CSSGrammar.y:
   93284 
   93285 2008-09-02  Mihnea Ovidenie  <mihnea (a] adobe.com>
   93286 
   93287         Reviewed by Darin Adler.
   93288 
   93289         Fix for https://bugs.webkit.org/show_bug.cgi?id=19964
   93290         Bug 19964: Divide by zero crash in RenderBox::calculateBackgroundSize with 0,0 bmp background image
   93291 
   93292         Add a check to RenderBox::repaintLayerRectsForImage to make sure the current layer image can be rendered.
   93293 
   93294         Test: css3/khtml-background-size-0x0-bmp.html
   93295 
   93296         * rendering/RenderBox.cpp:
   93297         (WebCore::RenderBox::repaintLayerRectsForImage):
   93298 
   93299 2008-09-02  Glenn Wilson  <wilsong (a] gmail.com>
   93300 
   93301         Reviewed by Eric Seidel.
   93302 
   93303         Fix https://bugs.webkit.org/show_bug.cgi?id=20397
   93304         Bug 20397: Invalid webkit-border-bottom-left-radius property causes crash
   93305 
   93306         The function checkForOrphanedUnits() would change the length of a list whose size was
   93307         was already determined before the call to checkForOrphanedUnits was made.  Later in
   93308         the caller, the old size was being used for boundary management.
   93309 
   93310         This has been fixed by moving the call to checkForOrphanedUnits() earlier in the
   93311         calling function, before the size of the list is determined.
   93312 
   93313         Test: fast/css/orphaned_units_crash.html
   93314 
   93315         * css/CSSParser.cpp:
   93316         (WebCore::CSSParser::parseValue):  Moved call to checkForOrphanedUnits() earlier in the function.
   93317 
   93318 2008-09-02  Dirk Schulze  <vbs85 (a] gmx.de>
   93319 
   93320         Reviewed by Darin Adler.
   93321 
   93322         Fallback on invalid fill or stroke styles in Canvas was
   93323         transparent black. Changed it to last valid style.
   93324 
   93325         Canvas fillStyle() and strokeStyle() needs fallback
   93326         https://bugs.webkit.org/show_bug.cgi?id=20474
   93327 
   93328         Tests: fast/canvas/canvas-invalid-fillstyle.html
   93329                fast/canvas/canvas-invalid-strokestyle.html
   93330 
   93331         * html/CanvasStyle.cpp:
   93332         (WebCore::CanvasStyle::applyStrokeColor):
   93333         (WebCore::CanvasStyle::applyFillColor):
   93334 
   93335 2008-09-02  Dirk Schulze  <vbs85 (a] gmx.de>
   93336 
   93337         Reviewed by Darin Adler.
   93338 
   93339         Fix https://bugs.webkit.org/show_bug.cgi?id=20468
   93340         Updated drawImage() in canvas to match the current specification.
   93341 
   93342         Test: fast/canvas/drawImage-with-negative-source-destination.html
   93343 
   93344         * html/CanvasRenderingContext2D.cpp:
   93345         (WebCore::normalizeRect):
   93346         (WebCore::CanvasRenderingContext2D::drawImage):
   93347 
   93348 2008-08-26  Mark Rowe  <mrowe (a] apple.com>
   93349 
   93350         Reviewed by Darin Adler.
   93351 
   93352         <rdar://problem/5768210> Switch back to the system version of SQLite
   93353 
   93354         Use the system version of SQLite when it is new enough to provide the functionality
   93355         that WebCore requires.
   93356 
   93357         * Configurations/Base.xcconfig:
   93358         * Configurations/DebugRelease.xcconfig:
   93359         * Configurations/WebCore.xcconfig:
   93360 
   93361 2008-09-02  Dan Bernstein  <mitz (a] apple.com>
   93362 
   93363         - build fix
   93364 
   93365         * page/animation/AnimationBase.h:
   93366 
   93367 2008-09-02  Chris Marrin  <cmarrin (a] apple.com>
   93368 
   93369         Reviewed by Dave Hyatt.
   93370 
   93371         AnimationController.cpp should be split into separate files
   93372         https://bugs.webkit.org/show_bug.cgi?id=20604
   93373 
   93374         Note: All makefiles, except WebCore.xcodeproj have been changed without testing, upon
   93375         recommendation of Dave Hyatt.
   93376 
   93377         * GNUmakefile.am:
   93378         * WebCore.pro:
   93379         * WebCore.vcproj/WebCore.vcproj:
   93380         * WebCore.xcodeproj/project.pbxproj:
   93381         * WebCoreSources.bkl:
   93382             Build files.
   93383 
   93384         * page/AnimationController.cpp: Removed.
   93385         * page/AnimationController.h: Removed.
   93386         * page/animation: Added.
   93387         * page/animation/AnimationBase.cpp: Added.
   93388         * page/animation/AnimationBase.h: Added.
   93389         * page/animation/AnimationController.cpp: Copied from WebCore/page/AnimationController.cpp.
   93390         * page/animation/AnimationController.h: Copied from WebCore/page/AnimationController.h.
   93391         * page/animation/CompositeAnimation.cpp: Added.
   93392         * page/animation/CompositeAnimation.h: Added.
   93393         * page/animation/ImplicitAnimation.cpp: Added.
   93394         * page/animation/ImplicitAnimation.h: Added.
   93395         * page/animation/KeyframeAnimation.cpp: Added.
   93396         * page/animation/KeyframeAnimation.h: Added.
   93397 
   93398 2008-09-02  Dan Bernstein  <mitz (a] apple.com>
   93399 
   93400         - release build fix
   93401 
   93402         * platform/graphics/cg/GraphicsContextCG.cpp:
   93403         (WebCore::calculateDrawingMode):
   93404 
   93405 2008-09-02  Timothy Hatcher  <timothy (a] apple.com>
   93406 
   93407         Make console functions log the correct resource URL and
   93408         line number for where the call originated.
   93409 
   93410         https://bugs.webkit.org/show_bug.cgi?id=17234
   93411         <rdar://problem/5732837>
   93412 
   93413         Reviewed by Kevin McCullough.
   93414 
   93415         Test: manual-tests/inspector/console-call-line-numbers.html
   93416 
   93417         * bindings/js/JSConsoleCustom.cpp:
   93418         (WebCore::JSConsole::count): Call the impl.
   93419         (WebCore::JSConsole::timeEnd): Ditto.
   93420         * manual-tests/inspector/console-call-line-numbers.html: Added.
   93421         * manual-tests/inspector/resources/script-console-calls.js: Added.
   93422         * page/Console.cpp:
   93423         (WebCore::retrieveLastCaller): Helper to get the URL and line.
   93424         (WebCore::Console::error): Call retrieveLastCaller to get the URL and
   93425         line number to pass to addMessageToConsole.
   93426         (WebCore::Console::info): Ditto.
   93427         (WebCore::Console::log): Ditto.
   93428         (WebCore::Console::assertCondition): Ditto.
   93429         (WebCore::Console::count): Ditto.
   93430         (WebCore::Console::timeEnd): Ditto.
   93431         (WebCore::Console::warn): Ditto.
   93432         * page/Console.h:
   93433         * page/Console.idl: Make count and timeEnd custom.
   93434 
   93435 2008-09-02  Timothy Hatcher  <timothy (a] apple.com>
   93436 
   93437         Removed IDL files from WebCore's framework resources.
   93438 
   93439         * WebCore.xcodeproj/project.pbxproj:
   93440 
   93441 2008-09-02  Dan Bernstein  <mitz (a] apple.com>
   93442 
   93443         Reviewed by Dave Hyatt.
   93444 
   93445         - <rdar://problem/5681647> pages at http://www.stendmarsofa.com/ are so slow to calculate style it seems like a hang
   93446 
   93447         * html/HTMLParser.cpp:
   93448         (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks): Added a
   93449         cap on the number of consecutive identical residual style tags to
   93450         reopen.
   93451         (WebCore::HTMLParser::popBlock): Ditto.
   93452 
   93453 2008-09-02  Alexey Proskuryakov  <ap (a] webkit.org>
   93454 
   93455         Reviewed by Adam Roben.
   93456 
   93457         A little database quota management cleanup.
   93458 
   93459         * storage/OriginQuotaManager.cpp:
   93460         (WebCore::OriginQuotaManager::OriginQuotaManager):
   93461         (WebCore::OriginQuotaManager::lock):
   93462         (WebCore::OriginQuotaManager::unlock):
   93463         (WebCore::OriginQuotaManager::trackOrigin):
   93464         (WebCore::OriginQuotaManager::tracksOrigin):
   93465         (WebCore::OriginQuotaManager::addDatabase):
   93466         (WebCore::OriginQuotaManager::removeDatabase):
   93467         (WebCore::OriginQuotaManager::removeOrigin):
   93468         (WebCore::OriginQuotaManager::markDatabase):
   93469         (WebCore::OriginQuotaManager::diskUsage):
   93470         * storage/OriginQuotaManager.h:
   93471         Changed to assert that a lock is taken more directly and reliably. Removed comments about
   93472         main/background threads, as this is likely to stop being true with synchronous Database calls
   93473         being made on worker threads.
   93474 
   93475         * storage/OriginUsageRecord.cpp:
   93476         (WebCore::OriginUsageRecord::OriginUsageRecord):
   93477         (WebCore::OriginUsageRecord::addDatabase):
   93478         (WebCore::OriginUsageRecord::removeDatabase):
   93479         (WebCore::OriginUsageRecord::markDatabase):
   93480         (WebCore::OriginUsageRecord::diskUsage):
   93481         * storage/OriginUsageRecord.h:
   93482         (WebCore::OriginUsageRecord::DatabaseEntry::DatabaseEntry):
   93483         Don't use a magic value for unknown. It is totally unnecessary for DatabaseEntry, and
   93484         can be replaced with a single boolean for OriginUsageRecord.
   93485         Added assertions for string parameters being unshared.
   93486 
   93487 
   93488 2008-09-01  Adam Barth  <abarth (a] webkit.org>
   93489 
   93490         Reviewed by Sam Weinig.
   93491 
   93492         https://bugs.webkit.org/show_bug.cgi?id=19760
   93493 
   93494         Make granting LoadLocalResources conditional on a policy.
   93495 
   93496         * WebCore.base.exp:
   93497         * dom/Document.cpp:
   93498         (WebCore::Document::initSecurityContext):
   93499         * loader/FrameLoader.cpp:
   93500         (WebCore::FrameLoader::setLocalLoadPolicy):
   93501         (WebCore::FrameLoader::restrictAccessToLocal):
   93502         * loader/FrameLoader.h:
   93503         (WebCore::FrameLoader::):
   93504         * platform/SecurityOrigin.cpp:
   93505         (WebCore::SecurityOrigin::grantLoadLocalResources):
   93506         * platform/SecurityOrigin.h:
   93507 
   93508 2008-09-01  Dean Jackson  <dino (a] apple.com>
   93509 
   93510         Reviewed by Sam Weinig.
   93511 
   93512         https://bugs.webkit.org/show_bug.cgi?id=20571
   93513         Make sure Window object can assign Animation/Transition event
   93514         listeners via attributes.
   93515 
   93516         Also added a bunch of transition event tests, although
   93517         only transition-end-event-window is directly relevant to this patch.
   93518 
   93519         (WebCore::JSDOMWindowBase::put):
   93520 
   93521         Tests: transitions/transition-end-event-all-properties.html
   93522                transitions/transition-end-event-attributes.html
   93523                transitions/transition-end-event-container.html
   93524                transitions/transition-end-event-left.html
   93525                transitions/transition-end-event-multiple-01.html
   93526                transitions/transition-end-event-multiple-02.html
   93527                transitions/transition-end-event-multiple-03.html
   93528                transitions/transition-end-event-multiple-04.html
   93529                transitions/transition-end-event-nested.html
   93530                transitions/transition-end-event-transform.html
   93531                transitions/transition-end-event-window.html
   93532 
   93533 2008-09-01  Dean Jackson  <dino (a] apple.com>
   93534 
   93535         Reviewed by Sam Weinig
   93536 
   93537         Code styling cleanup.
   93538 
   93539         * bindings/js/JSDOMWindowBase.cpp:
   93540         (WebCore::JSDOMWindowBase::getValueProperty):
   93541         (WebCore::JSDOMWindowBase::put):
   93542 
   93543 2008-09-01  Geoffrey Garen  <ggaren (a] apple.com>
   93544 
   93545         Reviewed by Darin Adler.
   93546 
   93547         First cut at inline caching for access to vanilla JavaScript properties.
   93548 
   93549         Updated for JavaScriptCore changes. Mostly mechanical addition of StructureIDs
   93550         to WebCore classes, and PutPropertySlot& arguments to put functions.
   93551 
   93552         (WebCore::JSCSSStyleDeclaration::customPut): Be sure to play nice with
   93553         inline caching for global properties, so global assignment can be optimized.
   93554 
   93555         * ForwardingHeaders/kjs/StructureID.h: Added.
   93556         * bindings/js/JSDOMBinding.h:
   93557         (WebCore::DOMObject::DOMObject):
   93558         * bindings/js/JSDOMWindowBase.cpp:
   93559         (WebCore::JSDOMWindowBase::put):
   93560         * bindings/js/JSDOMWindowBase.h:
   93561         * bindings/js/JSDOMWindowCustom.h:
   93562         (WebCore::JSDOMWindow::customPut):
   93563         * bindings/js/JSDOMWindowShell.cpp:
   93564         (WebCore::JSDOMWindowShell::JSDOMWindowShell):
   93565         (WebCore::JSDOMWindowShell::put):
   93566         * bindings/js/JSDOMWindowShell.h:
   93567         * bindings/js/JSEventTargetBase.h:
   93568         (WebCore::JSEventTargetBase::put):
   93569         * bindings/js/JSEventTargetNode.h:
   93570         (WebCore::JSEventTargetNode::put):
   93571         * bindings/js/JSHTMLAppletElementCustom.cpp:
   93572         (WebCore::JSHTMLAppletElement::customPut):
   93573         * bindings/js/JSHTMLEmbedElementCustom.cpp:
   93574         (WebCore::JSHTMLEmbedElement::customPut):
   93575         * bindings/js/JSHTMLInputElementBase.cpp:
   93576         (WebCore::JSHTMLInputElementBase::put):
   93577         * bindings/js/JSHTMLInputElementBase.h:
   93578         * bindings/js/JSHTMLObjectElementCustom.cpp:
   93579         (WebCore::JSHTMLObjectElement::customPut):
   93580         * bindings/js/JSHistoryCustom.cpp:
   93581         (WebCore::JSHistory::customPut):
   93582         * bindings/js/JSInspectedObjectWrapper.cpp:
   93583         (WebCore::JSInspectedObjectWrapper::wrap):
   93584         (WebCore::JSInspectedObjectWrapper::JSInspectedObjectWrapper):
   93585         * bindings/js/JSInspectedObjectWrapper.h:
   93586         * bindings/js/JSInspectorCallbackWrapper.cpp:
   93587         (WebCore::JSInspectorCallbackWrapper::wrap):
   93588         (WebCore::JSInspectorCallbackWrapper::JSInspectorCallbackWrapper):
   93589         * bindings/js/JSInspectorCallbackWrapper.h:
   93590         * bindings/js/JSLocationCustom.cpp:
   93591         (WebCore::JSLocation::customPut):
   93592         * bindings/js/JSPluginElementFunctions.cpp:
   93593         (WebCore::runtimeObjectCustomPut):
   93594         * bindings/js/JSPluginElementFunctions.h:
   93595         * bindings/js/JSQuarantinedObjectWrapper.cpp:
   93596         (WebCore::JSQuarantinedObjectWrapper::JSQuarantinedObjectWrapper):
   93597         (WebCore::JSQuarantinedObjectWrapper::put):
   93598         * bindings/js/JSQuarantinedObjectWrapper.h:
   93599         * bindings/js/JSStorageCustom.cpp:
   93600         (WebCore::JSStorage::customPut):
   93601         * bindings/objc/WebScriptObject.mm:
   93602         (-[WebScriptObject setValue:forKey:]):
   93603         * bindings/scripts/CodeGeneratorJS.pm:
   93604         * bridge/NP_jsobject.cpp:
   93605         (_NPN_SetProperty):
   93606         * bridge/jni/jni_jsobject.mm:
   93607         (JavaJSObject::setMember):
   93608         * bridge/objc/objc_class.mm:
   93609         (KJS::Bindings::ObjcClass::fallbackObject):
   93610         * bridge/objc/objc_runtime.h:
   93611         * bridge/objc/objc_runtime.mm:
   93612         (ObjcFallbackObjectImp::ObjcFallbackObjectImp):
   93613         (ObjcFallbackObjectImp::put):
   93614         * bridge/runtime.cpp:
   93615         (KJS::Bindings::Instance::createRuntimeObject):
   93616         * bridge/runtime_array.cpp:
   93617         (RuntimeArray::put):
   93618         * bridge/runtime_array.h:
   93619         * bridge/runtime_object.cpp:
   93620         (RuntimeObjectImp::RuntimeObjectImp):
   93621         (RuntimeObjectImp::put):
   93622         * bridge/runtime_object.h:
   93623 
   93624 2008-09-01  Dirk Schulze  <vbs85 (a] gmx.de>
   93625 
   93626         Reviewed by Eric Seidel.
   93627 
   93628         Fixed border-radius for Cairo.
   93629 
   93630         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   93631         (WebCore::GraphicsContext::strokeArc):
   93632 
   93633 2008-09-01  Dirk Schulze  <vbs85 (a] gmx.de>
   93634 
   93635         Reviewed by Eric Seidel.
   93636 
   93637         Added canvas's globalAlpha to cairo.
   93638 
   93639         * platform/graphics/GraphicsContext.h:
   93640         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   93641         (WebCore::GraphicsContext::fillPath):
   93642         (WebCore::GraphicsContext::strokePath):
   93643         (WebCore::GraphicsContext::setAlpha):
   93644         (WebCore::GraphicsContext::getAlpha):
   93645         * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
   93646         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
   93647         * platform/graphics/cairo/ImageCairo.cpp:
   93648         (WebCore::BitmapImage::draw):
   93649 
   93650 2008-08-31  Simon Hausmann  <hausmann (a] webkit.org>
   93651 
   93652         Unreviewed Qt build fix.
   93653 
   93654         * WebCore.pro: Add TextControlInnerElements.cpp to SOURCES instead of
   93655         the .h file
   93656 
   93657 2008-08-30  Darin Adler  <darin (a] apple.com>
   93658 
   93659         Reviewed by Maciej.
   93660 
   93661         - adopt some new JavaScriptCore functions where appropriate
   93662 
   93663         * bindings/js/JSDOMWindowBase.cpp:
   93664         (WebCore::windowProtoFuncAToB): Adopted jsEmptyString.
   93665         (WebCore::windowProtoFuncBToA): Ditto.
   93666         * bindings/js/JSEventListener.cpp:
   93667         (WebCore::JSLazyEventListener::eventParameterName): Adopted
   93668         jsNontrivialString.
   93669         * bindings/js/JSSVGLazyEventListener.cpp:
   93670         (WebCore::JSSVGLazyEventListener::eventParameterName): Ditto.
   93671 
   93672 2008-08-29  Brady Eidson  <beidson (a] apple.com>
   93673 
   93674         Reviewed by Anders' rubberstamp
   93675 
   93676         Style cleanup to match MediaTokenizer::writeRawData()
   93677 
   93678         * loader/PluginDocument.cpp:
   93679         (WebCore::PluginTokenizer::writeRawData):
   93680 
   93681 2008-08-29  Brady Eidson  <beidson (a] apple.com>
   93682 
   93683         Reviewed by Anders
   93684 
   93685         https://bugs.webkit.org/show_bug.cgi?id=20556
   93686         <rdar://problem/6181817> REGRESSION (r35946): media/video-click-dlbclick-standalone.html [sic] fails because load never fires
   93687 
   93688         Fix regression I introducted in 35946
   93689         Already covered by media/video-click-dlbclick-standalone.html
   93690 
   93691         * loader/MediaDocument.cpp:
   93692         (WebCore::MediaTokenizer::createDocumentStructure): Don't cancel the load here - too early!
   93693         (WebCore::MediaTokenizer::writeRawData): Call finish() here so onload() can be called.  Also add
   93694           an ASSERT signifying that this method should only be called once, to more closely follow the
   93695           PluginDocument case.
   93696 
   93697 2008-08-29  Beth Dakin  <bdakin (a] apple.com>
   93698 
   93699         Reviewed by Sam Weinig.
   93700 
   93701         Fix for <rdar://problem/6181588>
   93702 
   93703         This patch makes hit testing take into account the new concept of a
   93704         disconnected frame, in which some of the content may not be
   93705         visible. The current hit testing mechanism starts at a target frame
   93706         and drills down for a HitTestResult. In some cases, drilling down
   93707         will find a non-visible result. When this happens, we need to try
   93708         again, starting at a higher level -- namely, starting at the main
   93709         frame.
   93710 
   93711         * editing/Editor.cpp:
   93712         (WebCore::Editor::insideVisibleArea): New function that tests if a
   93713         point is inside the visible area for a disconnected frame.
   93714         * editing/Editor.h:
   93715         * page/EventHandler.cpp:
   93716         (WebCore::EventHandler::hitTestResultAtPoint):
   93717 
   93718 2008-08-29  Adele Peterson  <adele (a] apple.com>
   93719 
   93720         Reviewed by Adam Roben.
   93721 
   93722         Rename HTMLTextFieldInnerElement.h/.cpp to TextControlInnerElements.h/.cpp
   93723 
   93724         * GNUmakefile.am:
   93725         * WebCore.pro:
   93726         * WebCore.vcproj/WebCore.vcproj:
   93727         * WebCore.xcodeproj/project.pbxproj:
   93728         * WebCoreSources.bkl:
   93729         * html/HTMLTextFieldInnerElement.cpp: Removed.
   93730         * html/HTMLTextFieldInnerElement.h: Removed.
   93731         * rendering/RenderTextControl.cpp:
   93732         (WebCore::RenderTextControl::createSubtreeIfNeeded):
   93733         * rendering/RenderTextControl.h:
   93734         * rendering/TextControlInnerElements.cpp: Copied from html/HTMLTextFieldInnerElement.cpp.
   93735         (WebCore::TextControlInnerElement::TextControlInnerElement):
   93736         (WebCore::TextControlInnerTextElement::TextControlInnerTextElement):
   93737         (WebCore::TextControlInnerTextElement::defaultEventHandler):
   93738         (WebCore::SearchFieldResultsButtonElement::SearchFieldResultsButtonElement):
   93739         (WebCore::SearchFieldResultsButtonElement::defaultEventHandler):
   93740         (WebCore::SearchFieldCancelButtonElement::SearchFieldCancelButtonElement):
   93741         (WebCore::SearchFieldCancelButtonElement::defaultEventHandler):
   93742         * rendering/TextControlInnerElements.h: Copied from html/HTMLTextFieldInnerElement.h.
   93743 
   93744 2008-08-29  Eric Seidel  <eric (a] webkit.org>
   93745 
   93746         Rubber-stamped by aroben.
   93747 
   93748         Add GraphicsContext.h include to GraphcisContextPrivate.h
   93749 
   93750         GraphicsContextPrivate uses StrokeStyle which is defined
   93751         in GraphicsContext.h but it doesn't include that header.
   93752         CoreGraphics build doesn't fail here due to the order
   93753         it happens to include files.
   93754 
   93755         * platform/graphics/GraphicsContextPrivate.h:
   93756 
   93757 2008-08-29  Eric Seidel  <eric (a] webkit.org>
   93758 
   93759         Reviewed by hyatt.
   93760 
   93761         Fix GeneratedImage to respect Image's refcounting
   93762         Fixing potential crashers (future if not current)
   93763         https://bugs.webkit.org/show_bug.cgi?id=20567
   93764 
   93765         I don't know if it's possible to make the current code
   93766         crash, thus I've not made a test.
   93767 
   93768         * css/CSSGradientValue.cpp:
   93769         (WebCore::CSSGradientValue::image):
   93770         * css/CSSImageGeneratorValue.cpp:
   93771         (WebCore::CSSImageGeneratorValue::removeClient):
   93772         (WebCore::CSSImageGeneratorValue::getImage):
   93773         * css/CSSImageGeneratorValue.h:
   93774         * platform/graphics/GeneratedImage.h:
   93775         (WebCore::GeneratedImage::GeneratedImage):
   93776         * rendering/style/RenderStyle.cpp:
   93777         (WebCore::RenderStyle::setContent):
   93778         * rendering/style/RenderStyle.h:
   93779 
   93780 2008-08-29  Eric Carlson  <eric.carlson (a] apple.com>
   93781 
   93782         Reviewed by Adele.
   93783 
   93784         Fix for <rdar://problem/6093767>
   93785         https://bugs.webkit.org/show_bug.cgi?id=20526
   93786 
   93787         Don't allow video to render until unsupported track types have been disabled.
   93788 
   93789         * platform/graphics/win/QTMovieWin.cpp:
   93790         (QTMovieWinPrivate::task):
   93791         (QTMovieWinPrivate::drawingComplete):
   93792         (QTMovieWinPrivate::clearGWorld):
   93793 
   93794 2008-08-29  Eric Carlson  <eric.carlson (a] apple.com>
   93795 
   93796         Reviewed by Adele.
   93797 
   93798         Fix for https://bugs.webkit.org/show_bug.cgi?id=20525
   93799         <rdar://problem/6169301>
   93800 
   93801         Return the size of the movie data instead of 1000.
   93802 
   93803         Test: media/progress-event-total.html
   93804 
   93805         * platform/graphics/win/QTMovieWin.cpp:
   93806         (QTMovieWin::dataSize):
   93807 
   93808 2008-08-29  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   93809 
   93810         Reviewed by Eric Seidel.
   93811 
   93812         [janitor/qt] Start replacing port specific getters with the generic native getter
   93813         To get the native presentation of an image we currently have platform
   93814         specific #ifdef's and a generic getter using NativeImagePtr. This patch
   93815         extends this to the ImageBuffer and updates the Qt platform to get rid
   93816         of the special #ifdefs.
   93817 
   93818         https://bugs.webkit.org/attachment.cgi?id=22861
   93819 
   93820         * platform/graphics/BitmapImage.h:
   93821         * platform/graphics/Image.h:
   93822         * platform/graphics/qt/ImageQt.cpp:
   93823         * platform/graphics/qt/StillImageQt.cpp:
   93824         * platform/graphics/qt/StillImageQt.h:
   93825         * platform/qt/ClipboardQt.cpp:
   93826         (WebCore::ClipboardQt::createDragImage):
   93827         (WebCore::ClipboardQt::declareAndWriteDragImage):
   93828         * platform/qt/CursorQt.cpp:
   93829         * platform/qt/PasteboardQt.cpp:
   93830         (WebCore::Pasteboard::writeImage):
   93831 
   93832 2008-08-29  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   93833 
   93834         Reviewed by Simon.
   93835 
   93836         [svg/qt] Stop crashing... when no RenderPath/RenderObject is given...
   93837 
   93838         * svg/graphics/qt/SVGPaintServerQt.cpp:
   93839         (WebCore::SVGPaintServer::renderPath):
   93840         * svg/graphics/qt/SVGPaintServerSolidQt.cpp:
   93841         (WebCore::SVGPaintServerSolid::setup):
   93842 
   93843 2008-08-29  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   93844 
   93845         Reviewed by Simon.
   93846 
   93847         [network/qt] Implement defering of loading ResourceHandle's
   93848         This is needed otherwise we end in an ASSERT in the MainResourceLoader. The
   93849         implementation is simply not forwarding anything to the
   93850         ResourceHandleClient until we are allowed to. This might lead to a deadlock
   93851         in Qt as we do not empty the QNetworkReply input buffer and wait until we
   93852         are allowed to read. If that happens we are forced to buffer the data
   93853         within QNetworkReplyHandler, for now this is not done.
   93854 
   93855         Manual test:
   93856         - Open http://acid3.acidtests.org
   93857         - Wait for the test to complete
   93858         - Click on the Reference Rendering link
   93859         - Be fast and see the results of acid3
   93860         => assert
   93861 
   93862         * platform/network/qt/QNetworkReplyHandler.cpp:
   93863         (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
   93864         (WebCore::QNetworkReplyHandler::setLoadMode):
   93865         (WebCore::QNetworkReplyHandler::finish):
   93866         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
   93867         (WebCore::QNetworkReplyHandler::forwardData):
   93868         (WebCore::QNetworkReplyHandler::start):
   93869         (WebCore::QNetworkReplyHandler::resetState):
   93870         (WebCore::QNetworkReplyHandler::sendQueuedItems):
   93871         * platform/network/qt/QNetworkReplyHandler.h:
   93872         (WebCore::QNetworkReplyHandler::):
   93873         * platform/network/qt/ResourceHandleQt.cpp:
   93874         (WebCore::ResourceHandle::start):
   93875         (WebCore::ResourceHandle::loadResourceSynchronously):
   93876         (WebCore::ResourceHandle::setDefersLoading):
   93877 
   93878 2008-08-29  Simon Hausmann  <hausmann (a] webkit.org>
   93879 
   93880         Reviewed by Holger.
   93881 
   93882         Don't crash when drawing patterns with the HTML canvas. Patterns
   93883         remain unimplemented but at least they don't crash anymore. This is
   93884         done by changing the PlatformPatternPtr to be a brush for the Qt
   93885         platform.
   93886 
   93887         * platform/graphics/Pattern.h:
   93888         * platform/graphics/qt/GraphicsContextQt.cpp:
   93889         (WebCore::GraphicsContext::fillPath):
   93890         (WebCore::GraphicsContext::strokePath):
   93891         (WebCore::GraphicsContext::fillRect):
   93892         * platform/graphics/qt/PatternQt.cpp:
   93893         (WebCore::Pattern::createPlatformPattern):
   93894 
   93895 2008-08-29  Simon Hausmann  <hausmann (a] webkit.org>
   93896 
   93897         Fix the Qt build, fontSelector() is not used by the Qt port yet
   93898         and we just return 0 in Font::fontSelector().
   93899 
   93900         * platform/graphics/Font.h:
   93901 
   93902 2008-08-28  Alp Toker  <alp (a] nuanti.com>
   93903 
   93904         GTK+ dist/build fix. List newly added header files.
   93905 
   93906         * GNUmakefile.am:
   93907 
   93908 2008-08-28  Simon Fraser  <simon.fraser (a] apple.com>
   93909 
   93910         Reviewed by Dave Hyatt
   93911 
   93912         Various WebKitCSSTransformValue-related fixes
   93913         https://bugs.webkit.org/show_bug.cgi?id=20562
   93914 
   93915         Test: css3/transform-value-types.html
   93916 
   93917         * bindings/js/JSCSSValueCustom.cpp:
   93918         (WebCore::toJS):
   93919         * css/CSSValue.h:
   93920         * css/WebKitCSSTransformValue.cpp:
   93921         (WebCore::WebKitCSSTransformValue::cssText):
   93922         * css/WebKitCSSTransformValue.h:
   93923         (WebCore::WebKitCSSTransformValue::):
   93924         * css/WebKitCSSTransformValue.idl:
   93925 
   93926 2008-08-28  Dan Bernstein  <mitz (a] apple.com>
   93927 
   93928         Reviewed by Steve Falkenburg.
   93929 
   93930         - do not let the "last chance" WM_TIMER trigger WebCore timers when they should be deferred
   93931 
   93932         * platform/win/SharedTimerWin.cpp:
   93933         (WebCore::TimerWindowWndProc):
   93934 
   93935 2008-08-28  David Hyatt  <hyatt (a] apple.com>
   93936 
   93937         RenderStyle cleanup.
   93938 
   93939         Break out StyleImage, StyleGeneratedImage, StyleCachedImage and NinePieceImage into separate files.
   93940 
   93941         Reviewed by Adam
   93942 
   93943         * css/CSSImageGeneratorValue.cpp:
   93944         * css/CSSImageValue.cpp:
   93945         * css/CSSStyleSelector.cpp:
   93946         * rendering/RenderImageGeneratedContent.cpp:
   93947         * rendering/style/NinePieceImage.cpp: Added.
   93948         * rendering/style/NinePieceImage.h: Added.
   93949         * rendering/style/RenderStyle.cpp:
   93950         (WebCore::FillLayer::operator==):
   93951         (WebCore::FillLayer::containsImage):
   93952         (WebCore::StyleInheritedData::operator==):
   93953         (WebCore::RenderStyle::contentDataEquivalent):
   93954         * rendering/style/RenderStyle.h:
   93955         * rendering/style/StyleCachedImage.cpp: Added.
   93956         * rendering/style/StyleCachedImage.h: Added.
   93957         * rendering/style/StyleGeneratedImage.cpp: Added.
   93958         * rendering/style/StyleGeneratedImage.h: Added.
   93959         * rendering/style/StyleImage.h: Added.
   93960 
   93961 2008-08-28  Simon Fraser  <simon.fraser (a] apple.com>
   93962 
   93963         Reviewed by Dave Hyatt
   93964 
   93965         Make all the 'isFoo()' methods on CSSValue const,
   93966         and fix the subclasses.
   93967 
   93968         https://bugs.webkit.org/show_bug.cgi?id=20561
   93969 
   93970         * css/CSSTimingFunctionValue.h:
   93971         * css/CSSValue.h:
   93972         (WebCore::CSSValue::isFontValue):
   93973         (WebCore::CSSValue::isImageGeneratorValue):
   93974         (WebCore::CSSValue::isImageValue):
   93975         (WebCore::CSSValue::isImplicitInitialValue):
   93976         * css/CSSValueList.h:
   93977         * css/FontValue.h:
   93978 
   93979 2008-08-28  David Hyatt  <hyatt (a] apple.com>
   93980 
   93981         The great RenderStyle cleanup begins!
   93982 
   93983         Move LengthBox and LengthSize out of RenderStyle and into Length.
   93984 
   93985         Reviewed by Adam
   93986 
   93987         * rendering/Length.h:
   93988         (WebCore::):
   93989         (WebCore::Length::Length):
   93990         (WebCore::Length::operator==):
   93991         (WebCore::Length::operator!=):
   93992         (WebCore::Length::value):
   93993         (WebCore::Length::rawValue):
   93994         (WebCore::Length::percent):
   93995         (WebCore::Length::type):
   93996         (WebCore::Length::quirk):
   93997         (WebCore::Length::setValue):
   93998         (WebCore::Length::setRawValue):
   93999         (WebCore::Length::calcValue):
   94000         (WebCore::Length::calcMinValue):
   94001         (WebCore::Length::calcFloatValue):
   94002         (WebCore::Length::isUndefined):
   94003         (WebCore::Length::isZero):
   94004         (WebCore::Length::isPositive):
   94005         (WebCore::Length::isNegative):
   94006         (WebCore::Length::isAuto):
   94007         (WebCore::Length::isRelative):
   94008         (WebCore::Length::isPercent):
   94009         (WebCore::Length::isFixed):
   94010         (WebCore::Length::isStatic):
   94011         (WebCore::Length::isIntrinsicOrAuto):
   94012         (WebCore::Length::blend):
   94013         (WebCore::LengthBox::LengthBox):
   94014         (WebCore::LengthBox::operator=):
   94015         (WebCore::LengthBox::operator==):
   94016         (WebCore::LengthBox::operator!=):
   94017         (WebCore::LengthBox::nonZero):
   94018         (WebCore::LengthSize::LengthSize):
   94019         * rendering/style/RenderStyle.h:
   94020 
   94021 2008-08-28  David Hyatt  <hyatt (a] apple.com>
   94022 
   94023         Reviewed by Darin
   94024 
   94025         https://bugs.webkit.org/show_bug.cgi?id=18091
   94026 
   94027         font-size should be animatable using -webkit-transition.
   94028 
   94029         * page/AnimationController.cpp:
   94030         (WebCore::AnimationControllerPrivate::ensurePropertyMap):
   94031         * rendering/style/RenderStyle.h:
   94032         (WebCore::RenderStyle::setFontSize):
   94033 
   94034 2008-08-28  Brad Garcia  <bgarcia (a] google.com>
   94035 
   94036         Reviewed by Dan Bernstein.
   94037 
   94038         https://bugs.webkit.org/show_bug.cgi?id=20549
   94039         Correctly determine when cursor is over a resizable border within
   94040         a nested frameset.
   94041 
   94042         * rendering/RenderFrameSet.cpp:
   94043         (WebCore::RenderFrameSet::canResizeRow):
   94044         (WebCore::RenderFrameSet::canResizeColumn):
   94045 
   94046 2008-08-28  Simon Fraser  <simon.fraser (a] apple.com>
   94047 
   94048         Reviewed by Eric Seidel
   94049 
   94050         Add RuleTypes to CSSRule.idl for keyframes and keyframe rules.
   94051         https://bugs.webkit.org/show_bug.cgi?id=20552
   94052 
   94053         Test: animations/animation-css-rule-types.html
   94054 
   94055         * css/CSSRule.idl:
   94056 
   94057 2008-08-28  Anders Carlsson  <andersca (a] apple.com>
   94058 
   94059         Reviewed by Kevin and Darin.
   94060 
   94061         <rdar://problem/6182541>
   94062         https://bugs.webkit.org/show_bug.cgi?id=20202
   94063         Missing http status line from the http headers.
   94064 
   94065         Add a status line to the header string.
   94066 
   94067         * plugins/PluginStream.cpp:
   94068         (WebCore::PluginStream::startStream):
   94069 
   94070 2008-08-28  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   94071 
   94072         Rubber-stamped by Darin Adler.
   94073 
   94074         https://bugs.webkit.org/show_bug.cgi?id=17261
   94075 
   94076         Make it possible to theme the default Url icon and enable this for
   94077         the Qt port. To have a minimal usage of #ifdef in the code the setting
   94078         of the icon was moved to a new method which comes in two flavors.
   94079 
   94080         * loader/icon/IconDatabase.cpp:
   94081         (WebCore::loadDefaultIconRecord): Load or set the default icon
   94082         (WebCore::IconDatabase::defaultIcon):
   94083 
   94084 2008-08-28  Holger Hans Peter Freyther <zecke (a] selfish.org>
   94085 
   94086         Unreviewed compile fix
   94087 
   94088         * platform/graphics/qt/GraphicsContextQt.cpp: Remove redefinitions
   94089 
   94090 2008-08-28  Adam Roben  <aroben (a] apple.com>
   94091 
   94092         Windows (and others?) build fix
   94093 
   94094         * page/Chrome.cpp: Added a missing #include.
   94095         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer): Fixed typo.
   94096 
   94097 2008-08-27  Eric Seidel  <eric (a] webkit.org>
   94098 
   94099         Reviewed by Oliver Hunt.
   94100 
   94101         Qt and Cairo support from krit (and blind stab @ wx compile support)
   94102         https://bugs.webkit.org/show_bug.cgi?id=20373
   94103 
   94104         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   94105         (WebCore::GraphicsContext::fillPath):
   94106         (WebCore::GraphicsContext::strokePath):
   94107         (WebCore::GraphicsContext::drawPath):
   94108         (WebCore::GraphicsContext::fillRect):
   94109         (WebCore::GraphicsContext::setPlatformFillColor):
   94110         (WebCore::GraphicsContext::setPlatformStrokeColor):
   94111         (WebCore::GraphicsContext::setPlatformStrokeStyle):
   94112         (WebCore::GraphicsContext::strokeRect):
   94113         (WebCore::GraphicsContext::setImageInterpolationQuality):
   94114         (WebCore::GraphicsContext::imageInterpolationQuality):
   94115         (WebCore::GraphicsContext::setPlatformFillPattern):
   94116         (WebCore::GraphicsContext::setPlatformStrokePattern):
   94117         (WebCore::GraphicsContext::setPlatformFillGradient):
   94118         (WebCore::GraphicsContext::setPlatformStrokeGradient):
   94119         * platform/graphics/qt/GraphicsContextQt.cpp:
   94120         (WebCore::GraphicsContext::fillPath):
   94121         (WebCore::GraphicsContext::strokePath):
   94122         (WebCore::GraphicsContext::fillRect):
   94123         (WebCore::GraphicsContext::strokeRect):
   94124         (WebCore::GraphicsContext::clipToImageBuffer):
   94125         (WebCore::GraphicsContext::setPlatformFillPattern):
   94126         (WebCore::GraphicsContext::setPlatformStrokePattern):
   94127         (WebCore::GraphicsContext::setPlatformFillGradient):
   94128         (WebCore::GraphicsContext::setPlatformStrokeGradient):
   94129         (WebCore::GraphicsContext::setImageInterpolationQuality):
   94130         (WebCore::GraphicsContext::imageInterpolationQuality):
   94131         * platform/graphics/wx/GraphicsContextWx.cpp:
   94132         (WebCore::GraphicsContext::clipToImageBuffer):
   94133         (WebCore::GraphicsContext::setImageInterpolationQuality):
   94134         (WebCore::GraphicsContext::imageInterpolationQuality):
   94135         (WebCore::GraphicsContext::fillPath):
   94136         (WebCore::GraphicsContext::strokePath):
   94137         (WebCore::GraphicsContext::drawPath):
   94138         (WebCore::GraphicsContext::fillRect):
   94139         (WebCore::GraphicsContext::setPlatformFillPattern):
   94140         (WebCore::GraphicsContext::setPlatformStrokePattern):
   94141         (WebCore::GraphicsContext::setPlatformFillGradient):
   94142 
   94143 2008-08-27  Eric Seidel  <eric (a] webkit.org>
   94144 
   94145         Reviewed by Oliver Hunt.
   94146 
   94147         Add stroke/fill Gradient and Pattern support to GraphicsContext and update <canvas> to use it.
   94148         https://bugs.webkit.org/show_bug.cgi?id=20373
   94149 
   94150         Changed pattern() to canvasPattern() on CanvasStyle to match canvasGradient()
   94151 
   94152         Made Generator (aka Gradient) RefCounted so that GraphicsContext didn't
   94153         have to store large Gradient objects in the GraphicsContextState
   94154 
   94155         Made Pattern RefCounted for the same reason.
   94156 
   94157         Many updates to GraphicsContext to support easier drawing with
   94158         Patterns and Gradients.
   94159 
   94160         * WebCore.xcodeproj/project.pbxproj: Add pre-existing GraphicsContextPrivate.h
   94161         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
   94162         (WebCore::toJS):
   94163         * css/CSSGradientValue.cpp:
   94164         (WebCore::CSSGradientValue::createGradient):
   94165         * css/CSSGradientValue.h:
   94166         * html/CanvasGradient.cpp:
   94167         (WebCore::CanvasGradient::CanvasGradient):
   94168         * html/CanvasGradient.h:
   94169         (WebCore::CanvasGradient::gradient):
   94170         (WebCore::CanvasGradient::addColorStop):
   94171         (WebCore::CanvasGradient::getColor):
   94172         * html/CanvasPattern.cpp:
   94173         * html/CanvasPattern.h:
   94174         (WebCore::CanvasPattern::pattern):
   94175         (WebCore::CanvasPattern::originClean):
   94176         * html/CanvasRenderingContext2D.cpp:
   94177         (WebCore::CanvasRenderingContext2D::State::State):
   94178         (WebCore::CanvasRenderingContext2D::setStrokeStyle):
   94179         (WebCore::CanvasRenderingContext2D::setFillStyle):
   94180         (WebCore::CanvasRenderingContext2D::fill):
   94181         (WebCore::CanvasRenderingContext2D::stroke):
   94182         (WebCore::CanvasRenderingContext2D::fillRect):
   94183         (WebCore::CanvasRenderingContext2D::strokeRect):
   94184         * html/CanvasRenderingContext2D.h:
   94185         * html/CanvasStyle.cpp:
   94186         (WebCore::CanvasStyle::applyStrokeColor):
   94187         (WebCore::CanvasStyle::applyFillColor):
   94188         * html/CanvasStyle.h:
   94189         * platform/graphics/GeneratedImage.h:
   94190         (WebCore::GeneratedImage::GeneratedImage):
   94191         * platform/graphics/Generator.h:
   94192         * platform/graphics/Gradient.h:
   94193         (WebCore::Gradient::create):
   94194         * platform/graphics/GraphicsContext.cpp:
   94195         (WebCore::GraphicsContext::fillRule):
   94196         (WebCore::GraphicsContext::setFillRule):
   94197         (WebCore::GraphicsContext::setStrokePattern):
   94198         (WebCore::GraphicsContext::setFillPattern):
   94199         (WebCore::GraphicsContext::setStrokeGradient):
   94200         (WebCore::GraphicsContext::setFillGradient):
   94201         * platform/graphics/GraphicsContext.h:
   94202         * platform/graphics/GraphicsContextPrivate.h:
   94203         (WebCore::):
   94204         (WebCore::GraphicsContextState::GraphicsContextState):
   94205         * platform/graphics/GraphicsTypes.h:
   94206         * platform/graphics/Path.h:
   94207         * platform/graphics/Pattern.h:
   94208         (WebCore::Pattern::create):
   94209         (WebCore::Pattern::tileImage):
   94210         * platform/graphics/cg/GraphicsContextCG.cpp:
   94211         (WebCore::GraphicsContext::drawRect):
   94212         (WebCore::GraphicsContext::drawEllipse):
   94213         (WebCore::GraphicsContext::drawConvexPolygon):
   94214         (WebCore::calculateDrawingMode):
   94215         (WebCore::GraphicsContext::drawPath):
   94216         (WebCore::fillPathWithFillRule):
   94217         (WebCore::GraphicsContext::fillPath):
   94218         (WebCore::GraphicsContext::strokePath):
   94219         (WebCore::GraphicsContext::fillRect):
   94220         (WebCore::GraphicsContext::fillRoundedRect):
   94221         (WebCore::GraphicsContext::setPlatformStrokePattern):
   94222         (WebCore::GraphicsContext::setPlatformFillPattern):
   94223         (WebCore::GraphicsContext::setPlatformStrokeGradient):
   94224         (WebCore::GraphicsContext::setPlatformFillGradient):
   94225 
   94226 2008-08-20  Eric Seidel  <eric (a] webkit.org>
   94227 
   94228         Reviewed by Darin and Alexey.
   94229 
   94230         Close a leak of PausedTimeouts if the JavaScriptDebugServer was destroyed
   94231         with timeouts paused.
   94232         https://bugs.webkit.org/show_bug.cgi?id=20469
   94233 
   94234         I attempted to clean up the memory management of PausedTimeouts, I'm not
   94235         sure the solution I came up with is "cleaner", but it's in some ways
   94236         "safer", since it no longer uses raw pointers and manual new/delete.
   94237 
   94238         This also now prevents CachedPage from needlessly creating Window
   94239         objects when caching pages which didn't already have one. :)
   94240 
   94241         I also made Chrome.cpp no longer depend on the JavaScript bindings
   94242         (aka JSDOMWindowBase.h), since there was no real reason for it to.
   94243 
   94244         * bindings/js/JSDOMWindowBase.cpp:
   94245         (WebCore::JSDOMWindowBase::pauseTimeouts):
   94246         (WebCore::JSDOMWindowBase::resumeTimeouts):
   94247         * bindings/js/JSDOMWindowBase.h:
   94248         * bindings/js/ScriptController.cpp:
   94249         (WebCore::ScriptController::pauseTimeouts):
   94250         (WebCore::ScriptController::resumeTimeouts):
   94251         * bindings/js/ScriptController.h:
   94252         * history/CachedPage.cpp:
   94253         (WebCore::CachedPage::CachedPage):
   94254         (WebCore::CachedPage::restore):
   94255         * page/Chrome.cpp:
   94256         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
   94257         (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
   94258         * page/JavaScriptDebugServer.cpp:
   94259         (WebCore::JavaScriptDebugServer::~JavaScriptDebugServer):
   94260         (WebCore::JavaScriptDebugServer::setJavaScriptPaused):
   94261 
   94262 2008-08-27  Holger Hans Peter Freyther <zecke (a] selfish.org>
   94263 
   94264         Unreviewed compile fix
   94265 
   94266         Add the stub for the Qt port.
   94267 
   94268         * WebCore.pro:
   94269         * page/qt/AccessibilityObjectQt.cpp: Added.
   94270         (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
   94271 
   94272 2008-08-27  Alp Toker  <alp (a] nuanti.com>
   94273 
   94274         Reviewed by Eric.
   94275 
   94276         https://bugs.webkit.org/show_bug.cgi?id=20551
   94277         [GTK] search popup crash
   94278 
   94279         * platform/gtk/SearchPopupMenuGtk.cpp:
   94280         (WebCore::SearchPopupMenu::enabled):
   94281         Fix a search popup crasher by disabling the history popup since we
   94282         don't support this feature yet in the GTK+ port.
   94283 
   94284 2008-08-27  Alp Toker  <alp (a] nuanti.com>
   94285 
   94286         Reviewed by Eric.
   94287 
   94288         https://bugs.webkit.org/show_bug.cgi?id=20551
   94289         [GTK] curl crashers
   94290 
   94291         * platform/network/curl/ResourceHandleManager.cpp:
   94292         (WebCore::ResourceHandleManager::startScheduledJobs):
   94293         Remove the resource handle from the pending list before starting the
   94294         job, not afterwards. Fixes crashers in the test suite.
   94295 
   94296         Test: fast/dom/clientWidthAfterDocumentIsRemoved.html
   94297         Test: fast/encoding/char-encoding.html
   94298 
   94299 2008-08-27  Dirk Schulze  <vbs85 (a] gmx.de>
   94300 
   94301         Reviewed by eseidel.
   94302 
   94303         Fix canvas drawImage to support composite operations.
   94304         Composite had no effect on canvas elements like these:
   94305         http://philip.html5.org/tests/canvas/suite/tests/index.2d.composite.canvas.html
   94306 
   94307         [CAIRO] Canvas composite don't work on canvas-elements.
   94308         https://bugs.webkit.org/show_bug.cgi?id=20548
   94309 
   94310         * html/CanvasRenderingContext2D.cpp:
   94311         (WebCore::CanvasRenderingContext2D::drawImage): pass the current composite operator to the drawImage call
   94312 
   94313 2008-08-27  Mario Bensi  <mbensi (a] pleyo.com>
   94314 
   94315         Reviewed by Eric Seidel.
   94316 
   94317         Fix the data content of an image with a base64.
   94318 
   94319         * platform/network/curl/ResourceHandleManager.cpp:
   94320         (WebCore::parseDataUrl): Remove the String and use only the data
   94321         Vector because the data.latin1().data() convert the data content and
   94322         the image test ( https://bugs.webkit.org/attachment.cgi?id=21726 ) is
   94323         not drawn correctly.
   94324 
   94325 2008-08-27  Antti Koivisto  <antti (a] apple.com>
   94326 
   94327         Reviewed by Eric Seidel.
   94328 
   94329         Crash after OK in dialog box and reloading page in secure mode
   94330         https://bugs.webkit.org/show_bug.cgi?id=20493
   94331 
   94332         The new run loop spawned by a modal dialog causes a timer in the loader to run
   94333         synchronously inside didFinishLoading() deleting "this" object.
   94334 
   94335         Defer all WebCore timers when a modal dialog is up. They are not
   94336         safe to execute.
   94337 
   94338         * page/Chrome.cpp:
   94339         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
   94340         (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
   94341 
   94342 2008-08-27  Chris Marrin  <cmarrin (a] apple.com>
   94343 
   94344         Reviewed by Dave Hyatt
   94345 
   94346         Memory leaks when animating transforms
   94347         https://bugs.webkit.org/show_bug.cgi?id=20532
   94348 
   94349         * rendering/style/RenderStyle.cpp:
   94350         (WebCore::ScaleTransformOperation::blend):
   94351         (WebCore::RotateTransformOperation::blend):
   94352         (WebCore::SkewTransformOperation::blend):
   94353         (WebCore::TranslateTransformOperation::blend):
   94354         (WebCore::MatrixTransformOperation::blend):
   94355         * rendering/style/RenderStyle.h:
   94356 
   94357 2008-08-27  Timothy Hatcher  <timothy (a] apple.com>
   94358 
   94359         Add support for support for -webkit-appearance: default-button on the Mac platform.
   94360 
   94361         <rdar://problem/6173530>
   94362 
   94363         Reviewed by Dave Hyatt.
   94364 
   94365         * WebCore.base.exp: Export new symbols.
   94366         * platform/mac/WebCoreSystemInterface.h: Add wkAdvanceDefaultButtonPulseAnimation.
   94367         * platform/mac/WebCoreSystemInterface.mm: Ditto.
   94368         * rendering/RenderButton.cpp:
   94369         (WebCore::RenderButton::RenderButton): Remove #if PLATFORM(WIN).
   94370         (WebCore::RenderButton::setStyle): Ditto.
   94371         * rendering/RenderButton.h: Ditto.
   94372         * rendering/RenderThemeMac.mm:
   94373         (WebCore::RenderThemeMac::adjustRepaintRect): Add a case for DefaultButtonAppearance.
   94374         (WebCore::RenderThemeMac::setButtonCellState): Set the key equivalent to the return
   94375         key if the button is default, otherwise reset the key equivalent.
   94376         (WebCore::RenderThemeMac::paintButton): If the button is default call setDefaultButtonCell:
   94377         on the window, then wkAdvanceDefaultButtonPulseAnimation before painting. Restore
   94378         the window's previous default button cell when finished.
   94379 
   94380 2008-08-26  David Hyatt  <hyatt (a] apple.com>
   94381 
   94382         First cut at making form controls on OS X respect full page zoom.  There are lots of bugs.
   94383 
   94384         Reviewed by weinig
   94385 
   94386         Added fast/forms/zoomed-controls.html
   94387 
   94388         * css/CSSStyleSelector.cpp:
   94389         (WebCore::addIntrinsicMargins):
   94390         * rendering/RenderSlider.cpp:
   94391         (WebCore::RenderSlider::calcPrefWidths):
   94392         * rendering/RenderThemeMac.h:
   94393         * rendering/RenderThemeMac.mm:
   94394         (WebCore::RenderThemeMac::adjustRepaintRect):
   94395         (WebCore::RenderThemeMac::inflateRect):
   94396         (WebCore::RenderThemeMac::baselinePosition):
   94397         (WebCore::RenderThemeMac::setControlSize):
   94398         (WebCore::RenderThemeMac::sizeForFont):
   94399         (WebCore::RenderThemeMac::sizeForSystemFont):
   94400         (WebCore::RenderThemeMac::setFontFromControlSize):
   94401         (WebCore::RenderThemeMac::paintCheckbox):
   94402         (WebCore::RenderThemeMac::setCheckboxCellState):
   94403         (WebCore::RenderThemeMac::paintRadio):
   94404         (WebCore::RenderThemeMac::setRadioCellState):
   94405         (WebCore::RenderThemeMac::setButtonPaddingFromControlSize):
   94406         (WebCore::RenderThemeMac::adjustButtonStyle):
   94407         (WebCore::RenderThemeMac::setButtonCellState):
   94408         (WebCore::RenderThemeMac::paintButton):
   94409         (WebCore::RenderThemeMac::paintMenuList):
   94410         (WebCore::RenderThemeMac::paintMenuListButton):
   94411         (WebCore::RenderThemeMac::popupInternalPaddingLeft):
   94412         (WebCore::RenderThemeMac::popupInternalPaddingRight):
   94413         (WebCore::RenderThemeMac::popupInternalPaddingTop):
   94414         (WebCore::RenderThemeMac::popupInternalPaddingBottom):
   94415         (WebCore::RenderThemeMac::setPopupButtonCellState):
   94416         (WebCore::RenderThemeMac::paintSliderTrack):
   94417         (WebCore::RenderThemeMac::paintSliderThumb):
   94418         (WebCore::RenderThemeMac::adjustSliderThumbSize):
   94419         (WebCore::RenderThemeMac::paintSearchField):
   94420         (WebCore::RenderThemeMac::adjustSearchFieldStyle):
   94421         (WebCore::RenderThemeMac::paintSearchFieldCancelButton):
   94422         (WebCore::RenderThemeMac::paintSearchFieldResultsButton):
   94423 
   94424 2008-08-27  Brady Eidson  <beidson (a] apple.com>
   94425 
   94426         Reviewed by Anders
   94427 
   94428         <rdar://problem/6134133> - Crash when loading large movie as a standalone document
   94429 
   94430         We hand off these loads to Quicktime which manages and spools the data itself, but we also continued
   94431         to load and buffer the data for the movie in WebCore.  With large media files, this results in blowing
   94432         away the virtual address space and a crash.
   94433 
   94434         * loader/EmptyClients.h:
   94435         (WebCore::EmptyFrameLoaderClient::pluginWillHandleLoadError):
   94436         * loader/FrameLoaderClient.h:  Added client method to get platform specific error for
   94437           "plugin will handle load"
   94438 
   94439         * loader/MediaDocument.cpp:
   94440         (WebCore::MediaTokenizer::createDocumentStructure): Tell the MainResourceLoader to not buffer data,
   94441           and cancel the WebCore-managed load
   94442         (WebCore::MediaTokenizer::writeRawData):
   94443         (WebCore::MediaTokenizer::finish):
   94444 
   94445 2008-08-26  Simon Fraser  <simon.fraser (a] apple.com>
   94446 
   94447         Reviewed by Eric Seidel
   94448 
   94449         Linear timing functions should have control points 0, 0, 1, 1.
   94450         https://bugs.webkit.org/show_bug.cgi?id=20535
   94451 
   94452         * css/CSSStyleSelector.cpp:
   94453         (WebCore::CSSStyleSelector::mapAnimationTimingFunction):
   94454         * rendering/style/RenderStyle.h:
   94455 
   94456 2008-08-27  Adam Roben  <aroben (a] apple.com>
   94457 
   94458         Windows build fix
   94459 
   94460         * WebCore.vcproj/WebCore.vcproj: Fix file extension.
   94461 
   94462 2008-08-26  Chris Fleizach  <cfleizach (a] apple.com>
   94463 
   94464         Reviewed by Beth Dakin.
   94465 
   94466         <rdar://problem/6069462> REGRESSION: webkit is returning flash objects as AXUnknown
   94467 
   94468         Added platform-specific accessibilityIgnoreAttachment, which allows the platform
   94469         to determine if an attachment is ignored through accessibility. Added equivalent
   94470         methods in Gtk, Win and Mac
   94471 
   94472         Test: accessibility/plugin.html
   94473 
   94474         * GNUmakefile.am:
   94475         * WebCore.vcproj/WebCore.vcproj:
   94476         * WebCore.xcodeproj/project.pbxproj:
   94477         * page/AccessibilityObject.h:
   94478         * page/AccessibilityRenderObject.cpp:
   94479         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
   94480         * page/gtk/AccessibilityObjectAtk.cpp: Added.
   94481         (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
   94482         * page/mac/AccessibilityObjectMac.mm: Added.
   94483         (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
   94484         * page/mac/AccessibilityObjectWrapper.h:
   94485         * page/win/AccessibilityObjectWin.cpp: Added.
   94486         (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
   94487 
   94488 2008-08-26  Chris Fleizach  <cfleizach (a] apple.com>
   94489 
   94490         Reviewed by Beth Dakin.
   94491 
   94492         <rdar://problem/5817770> can't bring up contextual menu for embedded objects in WebText
   94493 
   94494         * page/mac/AccessibilityObjectWrapper.mm:
   94495         (-[AccessibilityObjectWrapper accessibilityPerformShowMenuAction]):
   94496         (-[AccessibilityObjectWrapper accessibilityShowContextMenu]):
   94497 
   94498 2008-08-26  Chris Fleizach  <cfleizach (a] apple.com>
   94499 
   94500         Reviewed by Darin Adler.
   94501 
   94502         <rdar://problem/6176924> CrashTracer: [USER] 4 crashes in Safari at com.apple.WebCore: WebCore::RenderTableSection::numColumns
   94503 
   94504         Tests: accessibility/table-notbody.html
   94505 
   94506         * page/AccessibilityTable.cpp:
   94507         (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
   94508 
   94509 2008-08-26  Sam Weinig  <sam (a] webkit.org>
   94510 
   94511         Reviewed by Beth Dakin.
   94512 
   94513         Fix typo.
   94514 
   94515         * dom/DOMCoreException.h:
   94516 
   94517 2008-08-26  Sam Weinig  <sam (a] webkit.org>
   94518 
   94519         Reviewed by Oliver Hunt.
   94520 
   94521         Fix https://bugs.webkit.org/show_bug.cgi?id=20479
   94522         <rdar://problem/6167660>
   94523         Take image redirects into account when tainting the canvas.
   94524 
   94525         Test: http/tests/security/canvas-remote-read-redirect-to-remote-image.html
   94526 
   94527         * html/CanvasRenderingContext2D.cpp:
   94528         (WebCore::CanvasRenderingContext2D::drawImage):
   94529         (WebCore::CanvasRenderingContext2D::drawImageFromRect):
   94530 
   94531 2008-08-26  Sam Weinig  <sam (a] webkit.org>
   94532 
   94533         Reviewed by Darin Adler.
   94534 
   94535         Change canvas tainting logic to ask the image if it contains
   94536         any resources outside of its own origin. Since there is no
   94537         way to determine if SVG images contain any resources outside its
   94538         origin, we always assume it does.
   94539 
   94540         * html/CanvasRenderingContext2D.cpp:
   94541         (WebCore::CanvasRenderingContext2D::drawImage):
   94542         (WebCore::CanvasRenderingContext2D::drawImageFromRect):
   94543         * platform/graphics/BitmapImage.h:
   94544         (WebCore::BitmapImage::hasSingleSecurityOrigin):
   94545         * platform/graphics/GeneratedImage.h:
   94546         (WebCore::GeneratedImage::hasSingleSecurityOrigin):
   94547         * platform/graphics/Image.h:
   94548         (WebCore::Image::hasSingleSecurityOrigin):
   94549         * platform/graphics/cg/PDFDocumentImage.h:
   94550         (WebCore::PDFDocumentImage::hasSingleSecurityOrigin):
   94551         * svg/graphics/SVGImage.h:
   94552 
   94553 2008-08-26  Maxime Britto  <britto (a] apple.com>
   94554 
   94555         Reviewed by Adele.
   94556 
   94557         <rdar://6159244> Pan-scrolling does not work on particular sites (starmagazine.com, nytimes.com)
   94558         This patch fixes the issues and modify the behavior of the panscroll by allowing it to jump to a parent layer when it reaches the end of its scrollable area.
   94559         This is matching the behavior of the mouse wheel when trying to scroll in a smaller layer of the page (div, textarea, ...) and when we reach the edge and keep scrolling then the whole page scrolls.
   94560 
   94561         * page/EventHandler.cpp:
   94562         (WebCore::EventHandler::updateAutoscrollRenderer): if we switch to the parent layer to do the scroll we want to change the renderer for the panning
   94563         * page/EventHandler.h:
   94564         * rendering/RenderLayer.cpp:
   94565         (WebCore::RenderLayer::panScrollFromPoint): now calls the scrollByRecursively method when it has computed the xDelta and yDelta
   94566         (WebCore::RenderLayer::scrollByRecursively): try to scroll the current layer by the xDelta and yDelta provided, if it can't it ask its parent layer to do so.
   94567         * rendering/RenderLayer.h:
   94568         * rendering/RenderObject.cpp:
   94569         (WebCore::RenderObject::canBeProgramaticallyScrolled): a RenderObject must have a RenderLayer to be programatically scrolled
   94570         (WebCore::RenderObject::autoscroll): No need to check for the layer anymore since we verify it's present in the upmentionned method
   94571         (WebCore::RenderObject::panScroll): No need to check for the layer anymore too.
   94572 
   94573 2008-08-25  Julien Chaffraix  <jchaffraix (a] webkit.org>
   94574 
   94575         Reviewed by Darin Adler.
   94576 
   94577         Bug 20247: setAttributeNode() does not work when attribute name has a capital letter in it
   94578         https://bugs.webkit.org/show_bug.cgi?id=20247
   94579 
   94580         <rdar://problem/6118218>
   94581 
   94582         Add a boolean parameter to getAttributeItem to choose between case sensitive and case insensitive
   94583         check. This keeps the behaviour for setAttribute / hasAttribute (case sensitive) and getAttribute
   94584         (case insensitive for HTML elements).
   94585 
   94586         Test: fast/dom/Element/getAttribute-check-case-sensitivity.html
   94587 
   94588         * dom/Element.cpp:
   94589         (WebCore::Element::getAttribute):
   94590         * dom/NamedAttrMap.cpp:
   94591         (WebCore::NamedAttrMap::getNamedItem):
   94592         (WebCore::NamedAttrMap::getAttributeItem):
   94593         * dom/NamedAttrMap.h:
   94594 
   94595 2008-08-25  Sam Weinig  <sam (a] webkit.org>
   94596 
   94597         Reviewed by Oliver Hunt.
   94598 
   94599         Fix for https://bugs.webkit.org/show_bug.cgi?id=20514
   94600         <rdar://problem/6174096>
   94601         Treat SVG images as dirty when drawing to a canvas.
   94602 
   94603         Test: http/tests/security/canvas-remote-read-svg-image.html
   94604 
   94605         * html/CanvasRenderingContext2D.cpp:
   94606         (WebCore::CanvasRenderingContext2D::drawImage):
   94607         (WebCore::CanvasRenderingContext2D::drawImageFromRect):
   94608         * platform/graphics/Image.h:
   94609         (WebCore::Image::isSVGImage):
   94610         * svg/graphics/SVGImage.h:
   94611         (WebCore::SVGImage::isSVGImage):
   94612 
   94613 2008-08-25  Sam Weinig  <sam (a] webkit.org>
   94614 
   94615         Reviewed by Mark Rowe.
   94616 
   94617         Fix https://bugs.webkit.org/show_bug.cgi?id=20377
   94618         Leak in XMLHttpRequest.
   94619 
   94620         * xml/XMLHttpRequest.cpp:
   94621         (WebCore::XMLHttpRequest::makeCrossSiteAccessRequestWithPreflight):
   94622 
   94623 2008-08-25  Brady Eidson  <beidson (a] apple.com>
   94624 
   94625         Reviewed by Anders
   94626 
   94627         Speculative fix for <rdar://problem/6173217>
   94628 
   94629         Moves the "clearArchivedResources()" call to exactly where it used to be in the old version of WebArchive code.
   94630         Also, adds a null check for m_documentLoader since DocumentLoader::stopLoading() can end up clearing it, rendering
   94631         the first null check invalid.
   94632 
   94633         * loader/FrameLoader.cpp:
   94634         (WebCore::FrameLoader::stopAllLoaders):
   94635 
   94636 
   94637 2008-08-25  Kevin McCullough  <kmccullough (a] apple.com>
   94638 
   94639         Reviewed by Tim.
   94640 
   94641         <rdar://problem/6157711> Heavy/Tree view selector is not grayed out if
   94642         there is no profile, can cause crash
   94643 
   94644         * page/inspector/ProfilesPanel.js:
   94645 
   94646 2008-08-25  Dean Jackson  <dino (a] apple.com>
   94647 
   94648         Reviewed by Dave Hyatt
   94649 
   94650         Make sure 'inherit' is handled by transition property.
   94651         https://bugs.webkit.org/show_bug.cgi?id=20513
   94652 
   94653         Test: transitions/inherit.html
   94654         Test: transitions/inherit-other-props.html
   94655 
   94656         * css/CSSStyleSelector.cpp:
   94657           fix macro to check existence of list before getting size
   94658 
   94659 2008-08-25  Anders Carlsson  <andersca (a] apple.com>
   94660 
   94661         Reviewed by Mark.
   94662 
   94663         <rdar://problem/6149787> crash @ com.apple.JavaScriptCore: WTF::callOnMainThread + 37.
   94664 
   94665         Initialize threading in the call to WebCoreObjCFinalizeOnMainThread. We currently assume
   94666         (safely) that any class that needs finalization on the main thread will also need to be deallocated
   94667         on the main thread, and calling initializeThreading from WebCoreObjCFinalizeOnMainThread instead of
   94668         calling it from WebCoreObjCScheduleDeallocateOnMainThread seems safer.
   94669 
   94670         * platform/mac/WebCoreObjCExtras.c:
   94671         (WebCoreObjCFinalizeOnMainThread):
   94672 
   94673 2008-08-25  Antti Koivisto  <antti (a] apple.com>
   94674 
   94675         Reviewed by Dan Bernstein.
   94676 
   94677         Rename CachedResource::referenced() to CachedResource::hasClients() to
   94678         match previous ref() -> addClient() rename.
   94679 
   94680         * loader/Cache.cpp:
   94681         (WebCore::Cache::pruneLiveResources):
   94682         (WebCore::Cache::pruneDeadResources):
   94683         (WebCore::Cache::remove):
   94684         (WebCore::Cache::getStatistics):
   94685         (WebCore::Cache::dumpLRULists):
   94686         * loader/CachedResource.cpp:
   94687         (WebCore::CachedResource::addClient):
   94688         (WebCore::CachedResource::removeClient):
   94689         (WebCore::CachedResource::setDecodedSize):
   94690         (WebCore::CachedResource::setEncodedSize):
   94691         * loader/CachedResource.h:
   94692         (WebCore::CachedResource::hasClients):
   94693         (WebCore::CachedResource::canDelete):
   94694 
   94695 2008-08-25  Anthony Ricaud  <rik24d (a] gmail.com>
   94696 
   94697         Add a missing Inspector localized string for "other".
   94698 
   94699         https://bugs.webkit.org/show_bug.cgi?id=20509
   94700 
   94701         Reviewed by Tim Hatcher.
   94702 
   94703         * English.lproj/localizedStrings.js:
   94704 
   94705 2008-08-22  Kevin McCullough  <kmccullough (a] apple.com>
   94706 
   94707         Reviewed by Geoff, Mark and Tim.
   94708 
   94709         <rdar://problem/6150623> JSProfiler: It would be nice if the profiles
   94710         in the console said what file and line number they came from
   94711         - Lay the foundation for getting line numbers and other data from the
   94712         JavaScript engine.
   94713 
   94714         * ForwardingHeaders/VM: Added.
   94715         * ForwardingHeaders/VM/Machine.h: Added.
   94716         * page/Console.cpp: Gather the line number and file information when
   94717         profileEnd has been called, but don't use it until didFinishProfiling is
   94718         called.  We won't need to wait once we remove the profiler "zombie" mode
   94719         which this patch helps pave the foundation for.
   94720         (WebCore::Console::Console):
   94721         (WebCore::Console::profileEnd):
   94722         (WebCore::Console::finishedProfiling):
   94723         * page/Console.h:
   94724         * page/InspectorController.cpp: Modify calls to
   94725         addProfileMessageToConsole to satisfy the new arguments it takes.
   94726         (WebCore::InspectorController::finishedProfiling):
   94727         (WebCore::InspectorController::addProfile):
   94728         (WebCore::InspectorController::addProfileMessageToConsole):
   94729         (WebCore::InspectorController::finishedProfiling):
   94730         * page/InspectorController.h:
   94731 
   94732 2008-08-25  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   94733 
   94734         Reviewed by Simon.
   94735 
   94736         [inspector] Update the WebKit.qrc Qt resources file
   94737         Catchup with the changes in the directory.
   94738 
   94739         * page/inspector/WebKit.qrc:
   94740 
   94741 2008-08-25  Dirk Schulze  <vbs85 (a] gmx.de>
   94742 
   94743         Reviewed by Simon.
   94744 
   94745         Transformed the radian to degree, to get rotate()
   94746         in canvas work as expected.
   94747 
   94748         [Qt] Canvas.rotate() doesn't work
   94749         https://bugs.webkit.org/show_bug.cgi?id=20496
   94750 
   94751         * platform/graphics/qt/GraphicsContextQt.cpp:
   94752         (WebCore::GraphicsContext::rotate):
   94753 
   94754 2008-08-24  Steve Falkenburg  <sfalken (a] apple.com>
   94755 
   94756         Add a "last chance" WM_TIMER to the Windows shared timer.
   94757 
   94758         The last chance timer fires every 5 seconds to run any lost WM_TIMER based timers.
   94759         Failure to fire a timer is fatal to the cross-platform Timer code, since it won't re-schedule
   94760         timers if a timer with an earlier expiration is already pending. This results in no timers
   94761         firing from that point on.
   94762 
   94763         We lose WM_TIMER messages occasionally (in the neighborhood of 1 per hour) probably due to a
   94764         buggy window message hook.
   94765 
   94766         This timer will start when the first WM_TIMER is scheduled, and will
   94767         fire every 5 seconds thereafter, causing any lost timers to be fired.
   94768 
   94769         Found this via one of its symptoms: leaking WebFrames. The fix prevents timers from stalling
   94770         and prevents the WebFrame leak.
   94771 
   94772         Reviewed by Darin Adler, Geoff Garen.
   94773 
   94774         * platform/win/SharedTimerWin.cpp:
   94775         (WebCore::):
   94776         (WebCore::TimerWindowWndProc):
   94777         (WebCore::setSharedTimerFireTime):
   94778 
   94779 2008-08-24  Dan Bernstein  <mitz (a] apple.com>
   94780 
   94781         Reviewed by Darin Adler.
   94782 
   94783         - fix <rdar://problem/6065547> REGRESSION (r34879): "Subject" in unread emails in Yahoo mail is not shown in bold
   94784 
   94785         Test: fast/css/font-property-priority.html
   94786 
   94787         * css/CSSParser.cpp:
   94788         (WebCore::CSSParser::parseValue): Changed to pass the 'important' flag
   94789         to the font-property-parsing functions.
   94790         (WebCore::CSSParser::parseFontStyle): Added an 'important' argument and
   94791         changed to use it rather than the m_important member.
   94792         (WebCore::CSSParser::parseFontVariant): Ditto.
   94793         (WebCore::CSSParser::parseFontWeight): Ditto.
   94794         * css/CSSParser.h:
   94795 
   94796 2008-08-24  Timothy Hatcher  <timothy (a] apple.com>
   94797 
   94798         Fixes a bug where the Inspector's UI would not animate or
   94799         fully function because JavaScript timeouts, intervals and
   94800         CSS animation timers where not firing while paused at a
   94801         a breakpoint in the inspected page.
   94802 
   94803         https://bugs.webkit.org/show_bug.cgi?id=20042
   94804 
   94805         Reviewed by Darin Adler.
   94806 
   94807         Test: manual-tests/inspector/forzen-ui-while-paused.html
   94808 
   94809         * page/JavaScriptDebugServer.cpp:
   94810         (WebCore::JavaScriptDebugServer::pauseIfNeeded):
   94811         Add a call to TimerBase::fireTimersInNestedEventLoop before
   94812         spinning the EventLoop.
   94813 
   94814 2008-08-24  Rob Buis  <buis (a] kde.org>
   94815 
   94816         Reviewed by Sam Weinig.
   94817 
   94818         https://bugs.webkit.org/show_bug.cgi?id=20324
   94819         A change in SVG Glyph wont show up
   94820 
   94821         Invalidate the glyph cache when the d attribute is set.
   94822 
   94823         Test: svg/custom/glyph-setting-d-attribute.svg
   94824 
   94825         * svg/SVGGlyphElement.cpp:
   94826         (WebCore::SVGGlyphElement::invalidateGlyphCache):
   94827         (WebCore::SVGGlyphElement::parseMappedAttribute):
   94828         (WebCore::SVGGlyphElement::insertedIntoDocument):
   94829         (WebCore::SVGGlyphElement::removedFromDocument):
   94830         * svg/SVGGlyphElement.h:
   94831 
   94832 2008-08-24  Dan Bernstein  <mitz (a] apple.com>
   94833 
   94834         Reviewed by Sam Weinig.
   94835 
   94836         - fix https://bugs.webkit.org/show_bug.cgi?id=13864
   94837           <rdar://problem/5451470> REGRESSION: Uninitialized value in RenderBlock::calcInlinePrefWidths()
   94838 
   94839         * rendering/RenderText.cpp:
   94840         (WebCore::RenderText::trimmedPrefWidths): Moved the assignment to
   94841         beginWS and endWS before the early return to ensure that they are
   94842         initialized in that case.
   94843 
   94844 2008-08-23  Cameron Zwarich  <cwzwarich (a] uwaterloo.ca>
   94845 
   94846         Rubber-stamped by Mark Rowe.
   94847 
   94848         Remove modelines.
   94849 
   94850         * WebCore.pro:
   94851         * bridge/testbindings.cpp:
   94852         * dom/DocPtr.h:
   94853         * loader/SubstituteData.h:
   94854         * page/Chrome.cpp:
   94855         * page/Chrome.h:
   94856         * page/ChromeClient.h:
   94857         * page/Frame.h:
   94858         * page/FrameLoadRequest.h:
   94859         * page/FrameTree.cpp:
   94860         * page/FrameTree.h:
   94861         * page/Page.h:
   94862         * page/mac/ChromeMac.mm:
   94863         * platform/network/HTTPHeaderMap.h:
   94864         * platform/network/ResourceErrorBase.cpp:
   94865         * platform/network/ResourceErrorBase.h:
   94866         * platform/network/ResourceHandleInternal.h:
   94867         * platform/network/ResourceRequestBase.cpp:
   94868         * platform/network/ResourceRequestBase.h:
   94869         * platform/network/ResourceResponseBase.cpp:
   94870         * platform/network/ResourceResponseBase.h:
   94871         * platform/network/cf/ResourceError.h:
   94872         * platform/network/cf/ResourceRequest.h:
   94873         * platform/network/cf/ResourceRequestCFNet.h:
   94874         * platform/network/cf/ResourceResponse.h:
   94875         * platform/network/cf/ResourceResponseCFNet.h:
   94876         * platform/network/curl/ResourceError.h:
   94877         * platform/network/curl/ResourceRequest.h:
   94878         * platform/network/curl/ResourceResponse.h:
   94879         * platform/network/mac/ResourceError.h:
   94880         * platform/network/mac/ResourceErrorMac.mm:
   94881         * platform/network/mac/ResourceRequest.h:
   94882         * platform/network/mac/ResourceRequestMac.mm:
   94883         * platform/network/mac/ResourceResponse.h:
   94884         * platform/network/mac/ResourceResponseMac.mm:
   94885         * platform/network/qt/ResourceError.h:
   94886         * platform/network/qt/ResourceRequest.h:
   94887         * platform/network/qt/ResourceResponse.h:
   94888         * platform/network/soup/CookieJarSoup.cpp:
   94889         * platform/network/soup/ResourceError.h:
   94890         * platform/network/soup/ResourceRequest.h:
   94891         * platform/network/soup/ResourceResponse.h:
   94892 
   94893 2008-08-23  Dan Bernstein  <mitz (a] apple.com>
   94894 
   94895         Reviewed by Dave Hyatt.
   94896 
   94897         - fix <rdar://problem/6065143> Reflowed image in first line of table doesn't affect baseline
   94898 
   94899         Test: fast/table/vertical-align-baseline.html
   94900 
   94901         * rendering/RenderTable.cpp:
   94902         (WebCore::RenderTable::getBaselineOfFirstLineBox): Added. Returns the
   94903         baseline of the first table row, if there is one, -1 otherwise.
   94904         * rendering/RenderTable.h:
   94905         * rendering/RenderTableCell.cpp:
   94906         (WebCore::RenderTableCell::baselinePosition): Changed to follow the
   94907         CSS2.1 definition of the baseline of a table cell.
   94908         * rendering/RenderTableSection.cpp:
   94909         (WebCore::RenderTableSection::getBaselineOfFirstLineBox): Added. Returns
   94910         the baseline of the first row in the section.
   94911         * rendering/RenderTableSection.h:
   94912 
   94913 2008-08-18  Jon Honeycutt  <jhoneycutt (a] apple.com>
   94914 
   94915         Add SPI to make a Windows WebView transparent.
   94916 
   94917         Reviewed by Dan Bernstein.
   94918 
   94919         * platform/graphics/GraphicsContext.h: Add a parameter, hasAlpha, that
   94920         determines whether the created context has an alpha channel.
   94921         * platform/graphics/win/GraphicsContextCGWin.cpp:
   94922         (WebCore::CGContextWithHDC):
   94923 
   94924 2008-08-22  Timothy Hatcher  <timothy (a] apple.com>
   94925 
   94926         Rolls out r35834 because it caused a regression in the Inspector's
   94927         Console where some expressions always threw a syntax error.
   94928 
   94929         https://bugs.webkit.org/show_bug.cgi?id=20487
   94930 
   94931         * page/inspector/Console.js:
   94932         (Console.prototype._evalInInspectedWindow): Removes parenthesis
   94933         around the expression.
   94934 
   94935 2008-08-22  Timothy Hatcher  <timothy (a] apple.com>
   94936 
   94937         Makes getStyleProperty return a value for the overflow property
   94938         when overflow-x and overflow-y are equal.
   94939 
   94940         https://bugs.webkit.org/show_bug.cgi?id=20485
   94941 
   94942         Reviewed by Dan Bernstein.
   94943 
   94944         Test: fast/css/overflow-property.html
   94945 
   94946         * css/CSSMutableStyleDeclaration.cpp:
   94947         (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
   94948 
   94949 2008-08-22  Timothy Hatcher  <timothy (a] apple.com>
   94950 
   94951         Fixes a bug where while editing in the Inspector the
   94952         sidebar scroll position would jump to the top.
   94953 
   94954         https://bugs.webkit.org/show_bug.cgi?id=20484
   94955 
   94956         Reviewed by Darin Adler.
   94957 
   94958         * page/inspector/treeoutline.js:
   94959         (TreeOutline._removeChildren): Remove the offsetTop call that
   94960         was forcing a layout, since layout causes scroll positions
   94961         to be clamped to the new scrollHeight/Width. Layout will happen
   94962         normally when needed.
   94963 
   94964 2008-08-22  Kevin Ollivier  <kevino (a] theolliviers.com>
   94965 
   94966         wx build fix. Add AccessibilityTable sources.
   94967 
   94968         * WebCoreSources.bkl:
   94969 
   94970 2008-08-21  Dan Bernstein  <mitz (a] apple.com>
   94971 
   94972         Reviewed by Jon Honeycutt and Alexey Proskuryakov.
   94973 
   94974         - fix <rdar://problem/6162701> WebKit should correct Geeza Pro's font metrics
   94975 
   94976         Test: platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment.html
   94977 
   94978         * platform/graphics/mac/SimpleFontDataMac.mm:
   94979         (WebCore::SimpleFontData::platformInit): Add 8% to Geeza Pro's reported
   94980         ascent and 100% to its reported descent.
   94981 
   94982 2008-08-21  Kalle Vahlman  <kalle.vahlman (a] movial.com>
   94983 
   94984         Reviewed by Darin Adler.
   94985 
   94986         https://bugs.webkit.org/show_bug.cgi?id=20267
   94987         [GTK] Crash on some pages due to a plugin
   94988 
   94989         Fix handling of badly formatted and empty plugin mime descriptions
   94990 
   94991         * plugins/gtk/PluginPackageGtk.cpp:
   94992         (WebCore::PluginPackage::fetchInfo):
   94993 
   94994 2008-08-21  Kevin Watters  <kevinwatters (a] gmail.com>
   94995 
   94996         Reviewed by Darin Adler.
   94997 
   94998         Follow other ports (and IE) in ImageSourceWx.cpp never to return an
   94999         animated GIF frame duration of less than 50ms.
   95000 
   95001         * platform/graphics/wx/ImageSourceWx.cpp:
   95002         (WebCore::ImageSource::frameDurationAtIndex):
   95003 
   95004 2008-08-21  Maxime Britto  <britto (a] apple.com>
   95005 
   95006         Reviewed by Kevin McCullough.
   95007 
   95008         Test: fast/events/autoscroll-nonscrollable-iframe-in-scrollable-div.html
   95009         https://bugs.webkit.org/show_bug.cgi?id=20451
   95010 
   95011         rdar://problem/6166435 Inspector doesn't auto scroll when selecting text (20451)
   95012         When we climb up the rendering tree looking for a scrollable renderer, we need to be able to jump outside of an iframe.
   95013         This way we can see if what is embedding the iframe can be scrolled even if the iframe content can't.
   95014 
   95015         * page/EventHandler.cpp:
   95016         (WebCore::EventHandler::handleMouseDraggedEvent): when we reach the document node and it can't be scrolled we set the next parent as the document's owner element if it exists.
   95017 
   95018         (WebCore::EventHandler::handleMousePressEvent): ditto
   95019 
   95020 2008-08-21  Anthony Ricaud  <rik24d (a] gmail.com>
   95021 
   95022         Small optimization for when the dividers in the Inspector's
   95023         Resources panel are updated.
   95024 
   95025         Reviewed by Tim Hatcher.
   95026 
   95027         * page/inspector/ResourcesPanel.js:
   95028         (WebInsector.ResourcesPanel.prototype._updateGraphDividersIfNeeded):
   95029         Combind a for loop and clone the divider element.
   95030 
   95031 2008-08-21  Chris Marrin  <cmarrin (a] apple.com>
   95032 
   95033         Allow 0 (without units) for Time eg. duration
   95034         Fix for https://bugs.webkit.org/show_bug.cgi?id=20467
   95035 
   95036         Reviewed by Dave Hyatt.
   95037 
   95038         Test: css1/units/zero-duration-without-units.html
   95039 
   95040         * css/CSSParser.cpp:
   95041         (WebCore::CSSParser::validUnit):
   95042 
   95043 2008-08-21  Timothy Hatcher  <timothy (a] apple.com>
   95044 
   95045         Make deleting all text while editing a DOM attribute in
   95046         the Inspector delete the attribute. This also fixes
   95047         an exception that would happen before.
   95048 
   95049         https://bugs.webkit.org/show_bug.cgi?id=20472
   95050 
   95051         Reviewed by Kevin McCullough.
   95052 
   95053         * page/inspector/ElementsPanel.js:
   95054         (WebInspector.DOMNodeTreeElement.prototype._attributeEditingCommitted):
   95055         Don't check for hasAttributes on the parseElement, continuing
   95056         through the function will correctly remove the attribute.
   95057         If the parseElement is null, call _editingCancelled not
   95058         editingCancelled, this fixes an exception.
   95059 
   95060 2008-08-21  Timothy Hatcher  <timothy (a] apple.com>
   95061 
   95062         Update the Inspector's Metrics pane when editing in
   95063         the Styles pane. This makes sure the metrics shown
   95064         always match what the Styles pane shows.
   95065 
   95066         https://bugs.webkit.org/show_bug.cgi?id=20470
   95067 
   95068         Reviewed by Kevin McCullough.
   95069 
   95070         * page/inspector/ElementsPanel.js:
   95071         (WebInspector.ElementsPanel): Add event listeners for
   95072         the "style edited" and "style property toggled" events,
   95073         so the Metrics pane is updated.
   95074         (WebInspector.ElementsPanel.prototype._stylesPaneEdited):
   95075         Update the Metrics pane.
   95076         * page/inspector/StylesSidebarPane.js:
   95077         (WebInspector.StylePropertyTreeElement.prototype.toggleEnabled):
   95078         Dispatch the "style property toggled" event.
   95079         (WebInspector.StylePropertyTreeElement.prototype.editingCancelled):
   95080         Dispatch the "style edited" event when the CSS text is restored.
   95081         (WebInspector.StylePropertyTreeElement.prototype.applyStyleText):
   95082         Dispatch the "style edited" event.
   95083 
   95084 2008-08-21  Timothy Hatcher  <timothy (a] apple.com>
   95085 
   95086         Make the Inspector's Metrics sidebar pane editable.
   95087 
   95088         https://bugs.webkit.org/show_bug.cgi?id=17218
   95089         rdar://problem/5732818
   95090 
   95091         Reviewed by Kevin McCullough.
   95092 
   95093         * page/inspector/ElementsPanel.js:
   95094         (WebInspector.ElementsPanel): Add an event listener for
   95095         the "metrics edited" event, so the Styles pane is updated.
   95096         * page/inspector/MetricsSidebarPane.js:
   95097         (WebInspector.MetricsSidebarPane.prototype.update): Remember the node
   95098         so future updates work. Add a double click event listener for the
   95099         metric values to start editing.
   95100         (WebInspector.MetricsSidebarPane.prototype.startEditing):
   95101         Call WebInspector.startEditing with some context.
   95102         (WebInspector.MetricsSidebarPane.prototype.editingCancelled):
   95103         (WebInspector.MetricsSidebarPane.prototype.editingCommitted):
   95104         Set the user input on the elements inline style. Fire the
   95105         "metrics edited" event.
   95106 
   95107 2008-08-21  Steve Falkenburg  <sfalken (a] apple.com>
   95108 
   95109         Fix a race condition in Windows timer code.
   95110         Timer function could end up being called with a 0 timer, leading to a Windows exception.
   95111 
   95112         Don't post a timer message if one is already pending.
   95113 
   95114         Reviewed by Ada Chan.
   95115 
   95116         * platform/win/SharedTimerWin.cpp:
   95117         (WebCore::TimerWindowWndProc):
   95118         (WebCore::clearTimer):
   95119         (WebCore::queueTimerProc):
   95120         (WebCore::setSharedTimerFireTime):
   95121 
   95122 2008-08-21  Anthony Ricaud  <rik24d (a] gmail.com>
   95123 
   95124         After trying to add the expression, try again with quotes for
   95125         easier edition.
   95126 
   95127         https://bugs.webkit.org/show_bug.cgi?id=20466
   95128 
   95129         Reviewed by Tim Hatcher.
   95130 
   95131         * page/inspector/ObjectPropertiesSection.js: Added an
   95132         evaluateExpression function.
   95133 
   95134 2008-08-21  Anthony Ricaud  <rik24d (a] gmail.com>
   95135 
   95136         Perform Inspector searches on search event to clear results when
   95137         clicking the cross to empty it. Delete the lastQuery when the field
   95138         is emptied in order to perform the search if exactly the same query
   95139         is entered next.
   95140 
   95141         https://bugs.webkit.org/show_bug.cgi?id=20462
   95142 
   95143         Reviewed by Tim Hatcher.
   95144 
   95145         * page/inspector/inspector.js:
   95146 
   95147 2008-08-21  Marco Barisione  <marco.barisione (a] collabora.co.uk>
   95148 
   95149         Reviewed by Mark Rowe.
   95150 
   95151         http://bugs.webkit.org/show_bug.cgi?id=19656
   95152         [SOUP] The gio code should call didFail() instead of
   95153         didFinishLoading() in case of error
   95154 
   95155         In case of error call didFail() instead of didReceiveResponse() and
   95156         didFinishLoading().
   95157 
   95158         * platform/network/soup/ResourceHandleSoup.cpp:
   95159         (WebCore::networkErrorForFile):
   95160         (WebCore::readCallback):
   95161         (WebCore::openCallback):
   95162         (WebCore::queryInfoCallback):
   95163 
   95164 2008-08-20  Mark Rowe  <mrowe (a] apple.com>
   95165 
   95166         Reviewed by Jon Honeycutt.
   95167 
   95168         Fix build failure.
   95169 
   95170         * bridge/c/c_instance.cpp:
   95171         (KJS::Bindings::CInstance::getPropertyNames): Declare count as uint32_t rather than unsigned
   95172         as that is what NPEnumerationFunctionPtr is declared as accepting.
   95173 
   95174 2008-08-20  Mark Rowe  <mrowe (a] apple.com>
   95175 
   95176         Reviewed by Dan Bernstein.
   95177 
   95178         Build fix.  Handle kCGInterpolationMedium in switch statements if it is available.
   95179 
   95180         * platform/graphics/GraphicsContext.h:
   95181         (WebCore::):
   95182         * platform/graphics/cg/GraphicsContextCG.cpp:
   95183         (WebCore::GraphicsContext::setImageInterpolationQuality):
   95184         (WebCore::GraphicsContext::imageInterpolationQuality):
   95185 
   95186 2008-08-20  Dan Bernstein  <mitz (a] apple.com>
   95187 
   95188         Rubber-stamped by John Sullivan.
   95189 
   95190         - rename shouldUpdateWhileHidden to shouldUpdateWhileOffscreen and
   95191           rename related methods and variables accordingly.
   95192 
   95193         * WebCore.base.exp:
   95194         * page/FrameView.cpp:
   95195         (WebCore::FrameViewPrivate::FrameViewPrivate):
   95196         (WebCore::FrameView::shouldUpdateWhileOffscreen):
   95197         (WebCore::FrameView::setShouldUpdateWhileOffscreen):
   95198         * page/FrameView.h:
   95199         * platform/ScrollView.h:
   95200         * platform/mac/ScrollViewMac.mm:
   95201         (WebCore::ScrollView::updateContents):
   95202 
   95203 2008-08-20  Brady Eidson  <beidson (a] apple.com>
   95204 
   95205         Reviewed by Mitzpettel
   95206 
   95207         <rdar://problem/6153432> - Many images broken in Mail
   95208 
   95209         This can be traced back to the preload scanner.  With that change, CachedResources are created a lot
   95210         sooner than before and confuse the WebArchive machinery.
   95211 
   95212         When referencing WebArchive subresources directly through the WebKit API it is appropriate to ignore
   95213         such CachedResources since they are placeholders and have not been submitted to the ResourceLoadDelegate
   95214         machinery and nothing is known about where the data will eventually come from.
   95215 
   95216         * loader/DocumentLoader.cpp:
   95217         (WebCore::DocumentLoader::subresource):  Ignore a CachedResource if its preloadResult is
   95218           CachedResource::PreloadReferenced.
   95219 
   95220 2008-08-20  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   95221 
   95222         Unreviewed compile fix
   95223 
   95224         Catch up with the JSValue::type elimination.
   95225 
   95226         * bridge/qt/qt_instance.cpp:
   95227         (KJS::Bindings::QtRuntimeObjectImp::construct):
   95228         (KJS::Bindings::QtInstance::defaultValue):
   95229         * bridge/qt/qt_runtime.cpp:
   95230         (KJS::Bindings::QtRuntimeConnectionMethod::call):
   95231 
   95232 2008-08-20  Chris Teague  <chris.teague (a] gmail.com>
   95233 
   95234         Reviewed by Mark Rowe.
   95235 
   95236         Fix https://bugs.webkit.org/show_bug.cgi?id=20449
   95237         Bug 20449: Build fails if LOW_BANDWIDTH_DISPLAY is defined
   95238 
   95239         * ChangeLog:
   95240         * loader/FrameLoader.cpp:
   95241         (WebCore::FrameLoader::switchOutLowBandwidthDisplayIfReady):
   95242 
   95243 2008-08-20  Simon Fraser  <simon.fraser (a] apple.com>
   95244 
   95245         Reviewed by Dave Hyatt
   95246 
   95247         getComputedStyle() for webkitTransform should return a transform
   95248         that does not have the transform origin baked into it.
   95249         https://bugs.webkit.org/show_bug.cgi?id=20464
   95250 
   95251         Test: fast/css/getComputedStyle-transform.html
   95252 
   95253         * css/CSSComputedStyleDeclaration.cpp:
   95254         (WebCore::computedTransform):
   95255         * rendering/style/RenderStyle.cpp:
   95256         (WebCore::RenderStyle::applyTransform):
   95257         * rendering/style/RenderStyle.h:
   95258 
   95259 2008-08-20  Josh Aas  <joshmoz (a] gmail.com>
   95260 
   95261         Reviewed and landed by Anders.
   95262 
   95263         <rdar://problem/6163636>
   95264         rename NPCocoaEvent's "event" struct to "data" (20446)
   95265 
   95266         * bridge/npapi.h:
   95267         (_NPCocoaEvent::):
   95268 
   95269 2008-08-20  Beth Dakin  <bdakin (a] apple.com>
   95270 
   95271         Reviewed by Darin Adler.
   95272 
   95273         Fix for <rdar://problem/6145626>
   95274         This patch fixes a number of remaining problems getting
   95275         disconnected frames to work correctly with markAllMatchesForText()
   95276         and findString(). Details inline.
   95277 
   95278         This was a static helper function in Frame, but this patch requires
   95279         the same functionality in Editor, so I just added it as a function
   95280         on Node.
   95281         * dom/Node.cpp:
   95282         (WebCore::Node::isInShadowTree):
   95283         * dom/Node.h:
   95284 
   95285         * editing/Editor.cpp:
   95286         (WebCore::Editor::insideVisibleArea): Returns false if
   95287         excludeFromTextSearch() is true.
   95288 
   95289         In a normal (non-disconnected) frame, findString returns a range of
   95290         the document node if the text is not found in the frame. I changed
   95291         firstVisibleRange and lastVisibleRange to match that behavior when
   95292         the text is not found
   95293         (WebCore::Editor::firstVisibleRange):
   95294         (WebCore::Editor::lastVisibleRange):
   95295 
   95296         Here are the bulk of the changes in the patch. A lot of text was
   95297         not being found in disconnected frames because I failed to account
   95298         for all of the possible problems associated with shadow trees. That
   95299         is fixed here.
   95300         (WebCore::Editor::nextVisibleRange):
   95301         * editing/Editor.h:
   95302 
   95303         excludeFromTextSearch() is new. It allows a WebKit client to mark a
   95304         frame as not-text-searchable through SPI.
   95305         * WebCore.base.exp:
   95306         * page/Frame.cpp:
   95307         (WebCore::Frame::excludeFromTextSearch):
   95308         (WebCore::Frame::setExcludeFromTextSearch):
   95309         (WebCore::FramePrivate::FramePrivate):
   95310         * page/Frame.h:
   95311         * page/FramePrivate.h:
   95312 
   95313         (WebCore::Frame::findString):
   95314         (WebCore::Frame::markAllMatchesForText):  I kept running into an
   95315         assertion failure in paining code because of the forced paint on
   95316         empty visible rects.
   95317 
   95318 2008-08-20  Timothy Hatcher  <timothy (a] apple.com>
   95319 
   95320         Adds a positon box to the Inspector's Metrics sidebar
   95321         pane. When an element is not statically positioned, there
   95322         is now a position box that show top, right, bottom and
   95323         left computed values.
   95324 
   95325         Reviewed by Kevin McCullough.
   95326 
   95327         * English.lproj/localizedStrings.js: Updated the strings.
   95328         * page/inspector/MetricsSidebarPane.js:
   95329         (WebInspector.MetricsSidebarPane.prototype.update):
   95330         Renamed the boxPartValue function to createBoxPartElement
   95331         and made it create the entire element. Made it understand
   95332         how to get position style properties. Don't use the figure dash
   95333         when 0px is used for positions, since the 0 is meaningful there.
   95334         Instead use the figure dash when a position is auto.
   95335         * page/inspector/inspector.css: Added a new rule for position.
   95336 
   95337 2008-08-20  Chris Fleizach  <cfleizach (a] apple.com>
   95338 
   95339         Reviewed by Beth Dakin
   95340 
   95341         Qt build fix
   95342 
   95343         * WebCore.pro:
   95344 
   95345 2008-08-20  Dan Bernstein  <mitz (a] apple.com>
   95346 
   95347         Reviewed by Anders Carlsson.
   95348 
   95349         - avoid using a deprecated NSScroller method on Leopard
   95350 
   95351         * platform/mac/PlatformScrollBarMac.mm:
   95352         (WebCore::PlatformScrollbar::updateThumbPosition):
   95353         (WebCore::PlatformScrollbar::updateThumbProportion):
   95354 
   95355 2008-08-20  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   95356 
   95357         Reviewed by Oliver Hunt.
   95358 
   95359         Gtk build fix
   95360 
   95361         * GNUmakefile.am:
   95362         * page/AccessibilityTable.cpp: Change nil to 0
   95363         (WebCore::AccessibilityTable::cellForColumnAndRow):
   95364 
   95365 2008-08-19  Alexey Proskuryakov  <ap (a] webkit.org>
   95366 
   95367         Reviewed by Geoff Garen.
   95368 
   95369         Bring back shared JSGlobalData and implicit locking, because too many clients rely on it.
   95370 
   95371         * ForwardingHeaders/kjs/JSLock.h: Added.
   95372         * WebCore.vcproj/WebCore.vcproj:
   95373         * bindings/js/GCController.cpp:
   95374         (WebCore::collect):
   95375         (WebCore::GCController::gcTimerFired):
   95376         (WebCore::GCController::garbageCollectNow):
   95377         * bindings/js/JSCustomSQLStatementCallback.cpp:
   95378         (WebCore::JSCustomSQLStatementCallback::handleEvent):
   95379         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
   95380         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
   95381         * bindings/js/JSCustomSQLTransactionCallback.cpp:
   95382         (WebCore::JSCustomSQLTransactionCallback::handleEvent):
   95383         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
   95384         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
   95385         * bindings/js/JSCustomVoidCallback.cpp:
   95386         (WebCore::JSCustomVoidCallback::handleEvent):
   95387         * bindings/js/JSCustomXPathNSResolver.cpp:
   95388         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
   95389         * bindings/js/JSDOMWindowBase.cpp:
   95390         (WebCore::DOMWindowTimer::~DOMWindowTimer):
   95391         (WebCore::JSDOMWindowBase::clear):
   95392         (WebCore::JSDOMWindowBase::timerFired):
   95393         * bindings/js/JSEventCustom.cpp:
   95394         (WebCore::toJS):
   95395         * bindings/js/JSEventListener.cpp:
   95396         (WebCore::JSAbstractEventListener::handleEvent):
   95397         * bindings/js/JSNSResolver.cpp:
   95398         (WebCore::JSNSResolver::lookupNamespaceURI):
   95399         * bindings/js/JSNodeFilterCondition.cpp:
   95400         (WebCore::JSNodeFilterCondition::acceptNode):
   95401         * bindings/js/ScheduledAction.cpp:
   95402         (WebCore::ScheduledAction::execute):
   95403         * bindings/js/ScriptController.cpp:
   95404         (WebCore::ScriptController::evaluate):
   95405         (WebCore::ScriptController::clearWindowShell):
   95406         (WebCore::ScriptController::createHTMLEventHandler):
   95407         (WebCore::ScriptController::createSVGEventHandler):
   95408         (WebCore::ScriptController::initScript):
   95409         (WebCore::ScriptController::updateDocument):
   95410         (WebCore::ScriptController::bindingRootObject):
   95411         (WebCore::ScriptController::windowScriptNPObject):
   95412         (WebCore::ScriptController::createScriptObjectForPluginElement):
   95413         (WebCore::ScriptController::clearScriptObjects):
   95414         * bindings/js/ScriptControllerMac.mm:
   95415         (WebCore::ScriptController::windowScriptObject):
   95416         * bindings/objc/WebScriptObject.mm:
   95417         (_didExecute):
   95418         (-[WebScriptObject callWebScriptMethod:withArguments:]):
   95419         (-[WebScriptObject evaluateWebScript:]):
   95420         (-[WebScriptObject setValue:forKey:]):
   95421         (-[WebScriptObject valueForKey:]):
   95422         (-[WebScriptObject removeWebScriptKey:]):
   95423         (-[WebScriptObject stringRepresentation]):
   95424         (-[WebScriptObject webScriptValueAtIndex:]):
   95425         (-[WebScriptObject setWebScriptValueAtIndex:value:]):
   95426         (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
   95427         * bridge/NP_jsobject.cpp:
   95428         (_NPN_InvokeDefault):
   95429         (_NPN_Invoke):
   95430         (_NPN_Evaluate):
   95431         (_NPN_GetProperty):
   95432         (_NPN_SetProperty):
   95433         (_NPN_RemoveProperty):
   95434         (_NPN_HasProperty):
   95435         (_NPN_HasMethod):
   95436         (_NPN_Enumerate):
   95437         * bridge/c/c_class.cpp:
   95438         (KJS::Bindings::CClass::~CClass):
   95439         (KJS::Bindings::CClass::methodsNamed):
   95440         (KJS::Bindings::CClass::fieldNamed):
   95441         * bridge/c/c_instance.cpp:
   95442         (KJS::Bindings::CInstance::invokeMethod):
   95443         (KJS::Bindings::CInstance::invokeDefaultMethod):
   95444         (KJS::Bindings::CInstance::getPropertyNames):
   95445         * bridge/c/c_runtime.cpp:
   95446         (KJS::Bindings::CField::valueFromInstance):
   95447         (KJS::Bindings::CField::setValueToInstance):
   95448         * bridge/c/c_utility.cpp:
   95449         (KJS::Bindings::convertValueToNPVariant):
   95450         (KJS::Bindings::convertNPVariantToValue):
   95451         * bridge/jni/jni_class.cpp:
   95452         (JavaClass::JavaClass):
   95453         (JavaClass::~JavaClass):
   95454         * bridge/jni/jni_instance.cpp:
   95455         (JavaInstance::stringValue):
   95456         * bridge/jni/jni_jsobject.mm:
   95457         (JavaJSObject::call):
   95458         (JavaJSObject::eval):
   95459         (JavaJSObject::getMember):
   95460         (JavaJSObject::setMember):
   95461         (JavaJSObject::removeMember):
   95462         (JavaJSObject::getSlot):
   95463         (JavaJSObject::setSlot):
   95464         (JavaJSObject::toString):
   95465         (JavaJSObject::convertValueToJObject):
   95466         (JavaJSObject::convertJObjectToValue):
   95467         * bridge/jni/jni_objc.mm:
   95468         (KJS::Bindings::dispatchJNICall):
   95469         * bridge/jni/jni_runtime.cpp:
   95470         (appendClassName):
   95471         (JavaMethod::signature):
   95472         * bridge/jni/jni_runtime.h:
   95473         (KJS::Bindings::JavaString::JavaString):
   95474         (KJS::Bindings::JavaString::_commonInit):
   95475         (KJS::Bindings::JavaString::~JavaString):
   95476         (KJS::Bindings::JavaString::UTF8String):
   95477         * bridge/jni/jni_utility.cpp:
   95478         (KJS::Bindings::convertValueToJValue):
   95479         * bridge/npruntime.cpp:
   95480         (_NPN_GetStringIdentifier):
   95481         * bridge/objc/objc_instance.mm:
   95482         (ObjcInstance::moveGlobalExceptionToExecState):
   95483         (ObjcInstance::invokeMethod):
   95484         (ObjcInstance::invokeDefaultMethod):
   95485         (ObjcInstance::setValueOfUndefinedField):
   95486         (ObjcInstance::getValueOfUndefinedField):
   95487         * bridge/objc/objc_runtime.mm:
   95488         (ObjcField::valueFromInstance):
   95489         (ObjcField::setValueToInstance):
   95490         * bridge/objc/objc_utility.mm:
   95491         (KJS::Bindings::convertValueToObjcValue):
   95492         (KJS::Bindings::convertNSStringToString):
   95493         (KJS::Bindings::convertObjcValueToValue):
   95494         * bridge/qt/qt_instance.cpp:
   95495         (KJS::Bindings::QtRuntimeObjectImp::removeFromCache):
   95496         (KJS::Bindings::QtInstance::~QtInstance):
   95497         (KJS::Bindings::QtInstance::getQtInstance):
   95498         (KJS::Bindings::QtInstance::getRuntimeObject):
   95499         * bridge/qt/qt_runtime.cpp:
   95500         (KJS::Bindings::convertValueToQVariant):
   95501         (KJS::Bindings::convertQVariantToValue):
   95502         (KJS::Bindings::QtRuntimeMetaMethod::call):
   95503         (KJS::Bindings::QtRuntimeConnectionMethod::call):
   95504         (KJS::Bindings::QtConnectionObject::QtConnectionObject):
   95505         (KJS::Bindings::QtConnectionObject::execute):
   95506         * bridge/runtime.cpp:
   95507         (KJS::Bindings::Instance::createRuntimeObject):
   95508         * bridge/testbindings.cpp:
   95509         (main):
   95510         * bridge/testbindings.mm:
   95511         (main):
   95512         * bridge/testqtbindings.cpp:
   95513         (main):
   95514         * dom/Document.cpp:
   95515         (WebCore::Document::~Document):
   95516         * dom/Node.cpp:
   95517         (WebCore::Node::setDocument):
   95518         * history/CachedPage.cpp:
   95519         (WebCore::CachedPage::CachedPage):
   95520         (WebCore::CachedPage::restore):
   95521         (WebCore::CachedPage::clear):
   95522         * loader/FrameLoader.cpp:
   95523         (WebCore::getString):
   95524         * page/InspectorController.cpp:
   95525         (WebCore::ConsoleMessage::ConsoleMessage):
   95526         (WebCore::XMLHttpRequestResource::XMLHttpRequestResource):
   95527         (WebCore::XMLHttpRequestResource::~XMLHttpRequestResource):
   95528         (WebCore::getResourceDocumentNode):
   95529         (WebCore::search):
   95530         (WebCore::inspectedWindow):
   95531         (WebCore::wrapCallback):
   95532         (WebCore::currentCallFrame):
   95533         (WebCore::profiles):
   95534         (WebCore::InspectorController::focusNode):
   95535         (WebCore::InspectorController::inspectedWindowScriptObjectCleared):
   95536         (WebCore::InspectorController::addDatabaseScriptResource):
   95537         (WebCore::InspectorController::addScriptProfile):
   95538         * page/JavaScriptCallFrame.cpp:
   95539         (WebCore::JavaScriptCallFrame::evaluate):
   95540         * page/JavaScriptProfileNode.cpp:
   95541         (WebCore::getTotalTime):
   95542         (WebCore::getSelfTime):
   95543         (WebCore::getTotalPercent):
   95544         (WebCore::getSelfPercent):
   95545         (WebCore::getNumberOfCalls):
   95546         (WebCore::getChildren):
   95547         (WebCore::getVisible):
   95548         * page/Page.cpp:
   95549         * page/mac/FrameMac.mm:
   95550         * plugins/PluginView.cpp:
   95551         (WebCore::PluginView::start):
   95552         (WebCore::getString):
   95553         (WebCore::PluginView::performRequest):
   95554         (WebCore::PluginView::bindingInstance):
   95555         * plugins/gtk/PluginViewGtk.cpp:
   95556         (WebCore::PluginView::paint):
   95557         (WebCore::PluginView::handleKeyboardEvent):
   95558         (WebCore::PluginView::handleMouseEvent):
   95559         (WebCore::PluginView::setNPWindowRect):
   95560         (WebCore::PluginView::stop):
   95561         (WebCore::PluginView::init):
   95562         * plugins/qt/PluginViewQt.cpp:
   95563         (WebCore::PluginView::setNPWindowRect):
   95564         (WebCore::PluginView::stop):
   95565         (WebCore::PluginView::init):
   95566         * plugins/win/PluginViewWin.cpp:
   95567         (WebCore::PluginView::dispatchNPEvent):
   95568         (WebCore::PluginView::handleKeyboardEvent):
   95569         (WebCore::PluginView::handleMouseEvent):
   95570         (WebCore::PluginView::setNPWindowRect):
   95571         (WebCore::PluginView::stop):
   95572         * xml/XMLHttpRequest.cpp:
   95573         (WebCore::XMLHttpRequest::clearResponse):
   95574         (WebCore::XMLHttpRequest::didFinishLoading):
   95575         (WebCore::XMLHttpRequest::didReceiveData):
   95576 
   95577 2008-08-19  Eric Seidel  <eric (a] webkit.org>
   95578 
   95579         Reviewed by Geoff Garen.
   95580 
   95581         Add the beginnings of Skia graphics support to WebCore
   95582         as I try to begin the long process of un-forking the changes
   95583         needed to WebCore to make Andriod's WebCore build.
   95584 
   95585         I'll follow this up with actual *Skia.cpp files in a separate patch.
   95586 
   95587         * platform/graphics/AffineTransform.h:
   95588         * platform/graphics/FloatPoint.h:
   95589         * platform/graphics/FloatRect.h:
   95590         * platform/graphics/Gradient.h:
   95591         * platform/graphics/GraphicsContext.h:
   95592         * platform/graphics/Image.h:
   95593         * platform/graphics/ImageBuffer.h:
   95594         * platform/graphics/ImageSource.h:
   95595         * platform/graphics/IntPoint.h:
   95596         * platform/graphics/IntRect.h:
   95597         * platform/graphics/Path.h:
   95598         * platform/graphics/Pattern.h:
   95599         * svg/graphics/SVGPaintServerPattern.h:
   95600         * svg/graphics/SVGPaintServerSolid.h:
   95601 
   95602 2008-08-19  Steve Falkenburg  <sfalken (a] apple.com>
   95603 
   95604         Fix Windows build more.
   95605 
   95606         * WebCore.vcproj/WebCore.vcproj:
   95607 
   95608 2008-08-19  Steve Falkenburg  <sfalken (a] apple.com>
   95609 
   95610         Fix Windows build.
   95611 
   95612         * page/AccessibilityRenderObject.cpp:
   95613         (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
   95614 
   95615 2008-08-19  Chris Fleizach  <cfleizach (a] apple.com>
   95616 
   95617         Reviewed by Beth Dakin.
   95618 
   95619         <rdar://problem/4003764> Expose tables as AXTables
   95620 
   95621         Tests: accessibility/table-attributes.html
   95622                accessibility/table-cell-spans.html
   95623                accessibility/table-cells.html
   95624                accessibility/table-detection.html
   95625                accessibility/table-sections.html
   95626                accessibility/table-with-rules.html
   95627 
   95628         * WebCore.xcodeproj/project.pbxproj:
   95629         * page/AXObjectCache.cpp:
   95630         (WebCore::AXObjectCache::get):
   95631         * page/AccessibilityObject.h:
   95632         (WebCore::):
   95633         (WebCore::AccessibilityObject::isDataTable):
   95634         (WebCore::AccessibilityObject::isTableRow):
   95635         (WebCore::AccessibilityObject::isTableColumn):
   95636         (WebCore::AccessibilityObject::isTableCell):
   95637         * page/AccessibilityRenderObject.cpp:
   95638         (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
   95639         * page/AccessibilityTable.cpp: Added.
   95640         (WebCore::AccessibilityTable::AccessibilityTable):
   95641         (WebCore::AccessibilityTable::~AccessibilityTable):
   95642         (WebCore::AccessibilityTable::create):
   95643         (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
   95644         (WebCore::AccessibilityTable::clearChildren):
   95645         (WebCore::AccessibilityTable::addChildren):
   95646         (WebCore::AccessibilityTable::headerContainer):
   95647         (WebCore::AccessibilityTable::columns):
   95648         (WebCore::AccessibilityTable::rows):
   95649         (WebCore::AccessibilityTable::rowHeaders):
   95650         (WebCore::AccessibilityTable::columnHeaders):
   95651         (WebCore::AccessibilityTable::cells):
   95652         (WebCore::AccessibilityTable::columnCount):
   95653         (WebCore::AccessibilityTable::rowCount):
   95654         (WebCore::AccessibilityTable::cellForColumnAndRow):
   95655         (WebCore::AccessibilityTable::roleValue):
   95656         (WebCore::AccessibilityTable::accessibilityIsIgnored):
   95657         (WebCore::AccessibilityTable::title):
   95658         (WebCore::AccessibilityTable::isDataTable):
   95659         * page/AccessibilityTable.h: Added.
   95660         * page/AccessibilityTableCell.cpp: Added.
   95661         (WebCore::AccessibilityTableCell::AccessibilityTableCell):
   95662         (WebCore::AccessibilityTableCell::~AccessibilityTableCell):
   95663         (WebCore::AccessibilityTableCell::create):
   95664         (WebCore::AccessibilityTableCell::accessibilityIsIgnored):
   95665         (WebCore::AccessibilityTableCell::rowIndexRange):
   95666         (WebCore::AccessibilityTableCell::columnIndexRange):
   95667         * page/AccessibilityTableCell.h: Added.
   95668         (WebCore::AccessibilityTableCell::isTableCell):
   95669         (WebCore::AccessibilityTableCell::roleValue):
   95670         * page/AccessibilityTableColumn.cpp: Added.
   95671         (WebCore::AccessibilityTableColumn::AccessibilityTableColumn):
   95672         (WebCore::AccessibilityTableColumn::~AccessibilityTableColumn):
   95673         (WebCore::AccessibilityTableColumn::create):
   95674         (WebCore::AccessibilityTableColumn::setParentTable):
   95675         (WebCore::AccessibilityTableColumn::elementRect):
   95676         (WebCore::AccessibilityTableColumn::size):
   95677         (WebCore::AccessibilityTableColumn::children):
   95678         (WebCore::AccessibilityTableColumn::headerObject):
   95679         (WebCore::AccessibilityTableColumn::headerObjectForSection):
   95680         (WebCore::AccessibilityTableColumn::addChildren):
   95681         * page/AccessibilityTableColumn.h: Added.
   95682         (WebCore::AccessibilityTableColumn::parentObject):
   95683         (WebCore::AccessibilityTableColumn::roleValue):
   95684         (WebCore::AccessibilityTableColumn::accessibilityIsIgnored):
   95685         (WebCore::AccessibilityTableColumn::isTableColumn):
   95686         (WebCore::AccessibilityTableColumn::setColumnIndex):
   95687         (WebCore::AccessibilityTableColumn::columnIndex):
   95688         * page/AccessibilityTableHeaderContainer.cpp: Added.
   95689         (WebCore::AccessibilityTableHeaderContainer::AccessibilityTableHeaderContainer):
   95690         (WebCore::AccessibilityTableHeaderContainer::~AccessibilityTableHeaderContainer):
   95691         (WebCore::AccessibilityTableHeaderContainer::create):
   95692         (WebCore::AccessibilityTableHeaderContainer::children):
   95693         (WebCore::AccessibilityTableHeaderContainer::elementRect):
   95694         (WebCore::AccessibilityTableHeaderContainer::size):
   95695         (WebCore::AccessibilityTableHeaderContainer::addChildren):
   95696         * page/AccessibilityTableHeaderContainer.h: Added.
   95697         (WebCore::AccessibilityTableHeaderContainer::roleValue):
   95698         (WebCore::AccessibilityTableHeaderContainer::setParentTable):
   95699         (WebCore::AccessibilityTableHeaderContainer::parentObject):
   95700         (WebCore::AccessibilityTableHeaderContainer::accessibilityIsIgnored):
   95701         * page/AccessibilityTableRow.cpp: Added.
   95702         (WebCore::AccessibilityTableRow::AccessibilityTableRow):
   95703         (WebCore::AccessibilityTableRow::~AccessibilityTableRow):
   95704         (WebCore::AccessibilityTableRow::create):
   95705         (WebCore::AccessibilityTableRow::accessibilityIsIgnored):
   95706         (WebCore::AccessibilityTableRow::headerObject):
   95707         * page/AccessibilityTableRow.h: Added.
   95708         (WebCore::AccessibilityTableRow::isTableRow):
   95709         (WebCore::AccessibilityTableRow::roleValue):
   95710         (WebCore::AccessibilityTableRow::setRowIndex):
   95711         (WebCore::AccessibilityTableRow::rowIndex):
   95712         * page/mac/AccessibilityObjectWrapper.mm:
   95713         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
   95714         (RoleEntry::):
   95715         (-[AccessibilityObjectWrapper roleDescription]):
   95716         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
   95717         (-[AccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
   95718         (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
   95719 
   95720 2008-08-19  Steve Falkenburg  <sfalken (a] apple.com>
   95721 
   95722         Build fix.
   95723         Add buildfailed support to stop builds early (preventing inaccurate error messages).
   95724         Add missing post-build rule to Release.
   95725 
   95726         * WebCore.vcproj/QTMovieWin.vcproj:
   95727 
   95728 2008-08-19  Keishi Hattori  <casey.hattori (a] gmail.com>
   95729 
   95730         Added support for console.count in the inspector.
   95731 
   95732         Reviewed by Geoff Garen.
   95733 
   95734         * page/Console.cpp:
   95735         (WebCore::Console::count):
   95736         * page/Console.h:
   95737         * page/Console.idl: Added console.count.
   95738         * page/InspectorController.cpp:
   95739         (WebCore::InspectorController::didCommitLoad): Clears m_counts.
   95740         (WebCore::InspectorController::count): Updates the count number
   95741         sing "title@source:line" as the identifier, and adds a
   95742         message to the console.
   95743         * page/InspectorController.h: Added m_counts.
   95744 
   95745 2008-08-19  Keishi Hattori  <casey.hattori (a] gmail.com>
   95746 
   95747         Clear console.time timers when changing page.
   95748 
   95749         Reviewed by Geoff Garen.
   95750 
   95751         * page/InspectorController.cpp:
   95752         (WebCore::InspectorController::didCommitLoad):
   95753 
   95754 2008-08-19  Eric Carlson  <eric.carlson (a] apple.com>
   95755 
   95756         Reviewed by Adele.
   95757 
   95758         Fix for <rdar://problem/6154695> Full-page movies flicker while playing
   95759         https://bugs.webkit.org/show_bug.cgi?id=20404
   95760 
   95761         Ignore setVisible() when visibility doesn't change.
   95762 
   95763         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
   95764         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   95765         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
   95766         (WebCore::MediaPlayerPrivate::setVisible):
   95767 
   95768 2008-08-19  Timothy Hatcher  <timothy (a] apple.com>
   95769 
   95770         Fixes a bug in the Profile view where switching sort order, then
   95771         switching from heavy to tree mode would show the tree in the
   95772         previous sort order.
   95773 
   95774         https://bugs.webkit.org/show_bug.cgi?id=20441
   95775 
   95776         Reviewed by Kevin McCullough.
   95777 
   95778         * page/inspector/ProfileView.js:
   95779         (WebInspector.ProfileView.prototype._changeView): Call _sortProfile
   95780         on the next profile before assigning it to this.profile.
   95781         (WebInspector.ProfileView.prototype._sortData): Call _sortProfile.
   95782         (WebInspector.ProfileView.prototype._sortProfile): Moves from
   95783         _sortData and takes a profile argument. If the profile passed in
   95784         matches the this.profile, then call refresh.
   95785 
   95786 2008-08-18  Timothy Hatcher  <timothy (a] apple.com>
   95787 
   95788         Changed the default sort order now that heavy view is the default.
   95789         Also fixes a bug where the heavy profile was not sorted at first.
   95790 
   95791         https://bugs.webkit.org/show_bug.cgi?id=20440
   95792 
   95793         Reviewed by Kevin McCullough.
   95794 
   95795         * page/inspector/ProfileView.js:
   95796         (WebInspector.ProfileView): Changed the default sort column. Also assign
   95797         heavyProfile to profile, so the sortSelfTimeDescending call happens
   95798         on the heavy profile before assigning to this.profile.
   95799 
   95800 2008-08-18  Timothy Hatcher  <timothy (a] apple.com>
   95801 
   95802         Add support for editing DOM properties and scope variables by double
   95803         clicking a property to enter edit mode.
   95804 
   95805         https://bugs.webkit.org/show_bug.cgi?id=20415
   95806 
   95807         Reviewed by Kevin McCullough.
   95808 
   95809         * page/inspector/ObjectPropertiesSection.js:
   95810         (WebInspector.ObjectPropertiesSection): Set editable to true by default.
   95811         (WebInspector.ObjectPropertiesSection.prototype.onpopulate):
   95812         Factored out code into update, and calls update.
   95813         (WebInspector.ObjectPropertiesSection.prototype.update): Moved from onpopulate.
   95814         Call removeChildren since this method can be called multiple times now.
   95815         (WebInspector.ObjectPropertyTreeElement): Pass an empty title, the title
   95816         gets made later in onattach.
   95817         (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate): Don't return early
   95818         if shouldRefreshChildren is true. Call removeChildren since this method can be
   95819         called multiple times now.
   95820         (WebInspector.ObjectPropertyTreeElement.prototype.ondblclick): Call startEditing.
   95821         (WebInspector.ObjectPropertyTreeElement.prototype.onattach): Call update.
   95822         (WebInspector.ObjectPropertyTreeElement.prototype.update): Update the title for
   95823         this element (code moved from the constructor.)
   95824         (WebInspector.ObjectPropertyTreeElement.prototype.updateSiblings): Recreate all
   95825         sibling property elements.
   95826         (WebInspector.ObjectPropertyTreeElement.prototype.startEditing): Call
   95827         WebInspector.startEditing after rememebring some context.
   95828         (WebInspector.ObjectPropertyTreeElement.prototype.editingEnded): Reset the scrollLeft
   95829         for the list element, since it might have scrolled during editing.
   95830         (WebInspector.ObjectPropertyTreeElement.prototype.editingCancelled): Call editingEnded
   95831         then restore the state from the context. Then call update to restore the title.
   95832         (WebInspector.ObjectPropertyTreeElement.prototype.editingCommitted): Call editingCancelled
   95833         if the user input and the previous input are the same. Call editingEnded, then call applyExpression
   95834         to commit the user input.
   95835         (WebInspector.ObjectPropertyTreeElement.prototype.applyExpression): Evaluates the input expression
   95836         and stores the result on the object for the property name of this element. If the expression is
   95837         empty, delete the property and remove the tree element.
   95838         * page/inspector/ScopeChainSidebarPane.js:
   95839         (WebInspector.ScopeChainSidebarPane.prototype.update): Set the editInSelectedCallFrameWhenPaused
   95840         property on each ObjectPropertiesSection.
   95841         (WebInspector.ScopeVariableTreeElement.prototype.onattach): Call ObjectPropertyTreeElement's onattach
   95842         since it is now implemented.
   95843         * page/inspector/ScriptsPanel.js:
   95844         (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame): Added an updateInterface argument
   95845         that defaults to true if omitted. It specifies whether to call update on the scope chain.
   95846         * page/inspector/inspector.css: New styles.
   95847         * page/inspector/treeoutline.js:
   95848         (TreeElement.prototype._attach): Fixed an exception that fired when handling the shouldRefreshChildren
   95849         change. The nextSibling would exist but have a _listItemNode that didn't match the new parent.
   95850 
   95851 2008-08-18  Timothy Hatcher  <timothy (a] apple.com>
   95852 
   95853         Surround the expression to be evaluated in parenthesis so the
   95854         result of the eval is the result of the whole expression not
   95855         the last potential sub-expression. So evaluating {x: 123}
   95856         will show the Object not 123.
   95857 
   95858         https://bugs.webkit.org/show_bug.cgi?id=20428
   95859 
   95860         Reviewed by Kevin McCullough.
   95861 
   95862         * page/inspector/Console.js:
   95863         (Console.prototype._evalInInspectedWindow): Add parenthesis
   95864         around the expression. And add couple comments.
   95865 
   95866 2008-08-19 Kevin McCullough <kmccullough (a] apple.com>
   95867 
   95868         Reviewed by Geoff.
   95869 
   95870         -Implement a page() function to extract a common code pattern.
   95871 
   95872         * WebCore.xcodeproj/project.pbxproj:
   95873         * page/Console.cpp:
   95874         (WebCore::Console::addMessage):
   95875         (WebCore::Console::error):
   95876         (WebCore::Console::info):
   95877         (WebCore::Console::log):
   95878         (WebCore::Console::dir):
   95879         (WebCore::Console::assertCondition):
   95880         (WebCore::Console::time):
   95881         (WebCore::Console::timeEnd):
   95882         (WebCore::Console::group):
   95883         (WebCore::Console::groupEnd):
   95884         (WebCore::Console::finishedProfiling):
   95885         (WebCore::Console::warn):
   95886         (WebCore::Console::framePage):
   95887         * page/Console.h:
   95888 
   95889 2008-08-12  Darin Adler  <darin (a] apple.com>
   95890 
   95891         Reviewed by Geoff.
   95892 
   95893         - eliminate JSValue::type()
   95894 
   95895         * bridge/c/c_instance.cpp:
   95896         (KJS::Bindings::CInstance::defaultValue): Take PreferredPrimitiveType
   95897         argument instead of JSType argument. Removed unneeded code to handle
   95898         boolean, since that's never passed.
   95899         * bridge/c/c_instance.h: Ditto.
   95900 
   95901         * bridge/c/c_utility.cpp:
   95902         (KJS::Bindings::convertValueToNPVariant): Use JSValue::is functions
   95903         instead of JSValue::type(). Removed unneeded code to handle
   95904         "unspecified".
   95905 
   95906         * bridge/jni/jni_instance.cpp:
   95907         (JavaInstance::defaultValue): Take PreferredPrimitiveType argument
   95908         instead of JSType argument. Removed unneeded code to handle boolean.
   95909         * bridge/jni/jni_instance.h: Ditto.
   95910 
   95911         * bridge/jni/jni_jsobject.mm:
   95912         (JavaJSObject::convertValueToJObject): Use JSValue::is functions
   95913         instead of JSValue::type().
   95914 
   95915         * bridge/objc/objc_instance.h: Take PreferredPrimitiveType argument
   95916         instead of JSType argument. Removed unused argument.
   95917         * bridge/objc/objc_instance.mm:
   95918         (ObjcInstance::getValueOfUndefinedField): Removed unused argument.
   95919         (ObjcInstance::defaultValue): Take PreferredPrimitiveType argument
   95920         instead of JSType argument. Removed unneeded code to handle boolean
   95921         and another dead code path for unknown types.
   95922 
   95923         * bridge/objc/objc_runtime.h: Take PreferredPrimitiveType argument
   95924         instead of JSType argument. Removed override of type() that caused
   95925         the fallback object to return "UndefinedType" when there is no
   95926         invokeUndefinedMethodFromWebScript:withArguments: method defined.
   95927         That didn't accomplish much, since most checks for undefined don't
   95928         ever call type().
   95929         * bridge/objc/objc_runtime.mm:
   95930         (ObjcFallbackObjectImp::defaultValue): Ditto.
   95931 
   95932         * bridge/qt/qt_instance.cpp:
   95933         (KJS::Bindings::QtInstance::defaultValue): Take PreferredPrimitiveType
   95934         argument instead of JSType argument. Removed unneeded code to handle
   95935         boolean.
   95936         * bridge/qt/qt_instance.h: Ditto.
   95937 
   95938         * bridge/runtime.h:
   95939         (KJS::Bindings::Instance::getValueOfUndefinedField): Removed
   95940         unsed argument.
   95941         * bridge/runtime_object.cpp:
   95942         (RuntimeObjectImp::defaultValue): Take PreferredPrimitiveType
   95943         argument instead of JSType argument.
   95944         * bridge/runtime_object.h: Ditto.
   95945 
   95946 2008-08-18  Maxime Britto  <britto (a] apple.com>
   95947 
   95948         Reviewed by Adele.
   95949 
   95950         <rdar://6157207> Mouse pointer does not change when new window is opened after pan-scrolling original window
   95951         Related to the discussion from rdar://6102511 , we should disable every key event (except for the esc key which stops the panning).
   95952         We shouldn't be able to create another window while we are in pan scrolling.
   95953         Other browsers behaviors :
   95954           FF3 : Most of the keys are disabled, there is no way to create another window while in panscroll mode
   95955           IE7 : Keys are not disabled but stops immediately the panning.
   95956         This patch matches FF3 behavior by disabling every key but the esc key.
   95957 
   95958         * page/EventHandler.cpp:
   95959         (WebCore::EventHandler::stopAutoscrollTimer): Change the cursor back to the regular arrow cursor when the pannning is stopped.
   95960         (WebCore::EventHandler::keyEvent): When a key event is received while in panning or autoscroll we swallow the event early.
   95961 
   95962 2008-08-18  Dan Bernstein  <mitz (a] apple.com>
   95963 
   95964         Reviewed by Dave Hyatt.
   95965 
   95966         - fix <rdar://problem/5862634> REGRESSION (3.1.1): In iChat, inline image not resizable past current size after another IM is received
   95967 
   95968         Test: fast/replaced/max-width-percent.html
   95969 
   95970         Added an includeMaxWidth boolean to RenderBox::calcReplaedWidth().
   95971         When false, max-width is not factored into the
   95972         calculation.
   95973         Changed RenderReplaced and subclasses' calcPrefWidths() to call
   95974         calcReplacedWidth(false) and then apply max-width only if it has a
   95975         fixed, positive value.
   95976 
   95977         * rendering/RenderBox.cpp:
   95978         (WebCore::RenderBox::calcReplacedWidth):
   95979         * rendering/RenderBox.h:
   95980         * rendering/RenderImage.cpp:
   95981         (WebCore::RenderImage::calcReplacedWidth):
   95982         (WebCore::RenderImage::calcPrefWidths):
   95983         * rendering/RenderImage.h:
   95984         * rendering/RenderReplaced.cpp:
   95985         (WebCore::RenderReplaced::calcPrefWidths):
   95986         * rendering/RenderSVGRoot.cpp:
   95987         (WebCore::RenderSVGRoot::calcPrefWidths):
   95988         * rendering/RenderVideo.cpp:
   95989         (WebCore::RenderVideo::calcReplacedWidth):
   95990         (WebCore::RenderVideo::calcPrefWidths):
   95991         * rendering/RenderVideo.h:
   95992 
   95993 2008-08-18  Daniel Macks  <dmacks (a] netspace.org>
   95994 
   95995         Reviewed by Mark Rowe.
   95996 
   95997         https://bugs.webkit.org/show_bug.cgi?id=20410
   95998         More portable/self-documenting replacement for SIZE_MAX.
   95999 
   96000         * platform/network/curl/FormDataStreamCurl.cpp:
   96001         (WebCore::FormDataStream::read):
   96002 
   96003 2008-08-18  Simon Fraser  <simon.fraser (a] apple.com>
   96004 
   96005         Reviewed by Dave Hyatt
   96006 
   96007         Need to make sure we have an Animation in the AnimationList
   96008         before setting the initial value.
   96009         https://bugs.webkit.org/show_bug.cgi?id=20408
   96010 
   96011         Test: fast/css/transition_shorthand_parsing.html
   96012 
   96013         * css/CSSStyleSelector.cpp:
   96014 
   96015 2008-08-18  Kevin McCullough  <kmccullough (a] apple.com>
   96016 
   96017         Reviewed by Tim.
   96018 
   96019         <rdar://problem/6150593> JSProfiler: Empty profiles disappear when there
   96020         is another profile.
   96021 
   96022         * page/inspector/ProfilesPanel.js:
   96023 
   96024 2008-08-18  Kevin McCullough  <kmccullough (a] apple.com>
   96025 
   96026         Reviewed by Geoff.
   96027 
   96028         <rdar://problem/6150642> REGRESSION: Closing the Web Inspector clears
   96029         all console messages
   96030 
   96031         * page/inspector/Console.js:
   96032 
   96033 2008-08-18  Dirk Schulze  <vbs85 (a] gmx.de>
   96034 
   96035         Reviewed by Eric Seidel.
   96036 
   96037         Fixed Canvas for Cairo. Stroke and fill colors didn't work after
   96038         the canvas clean up.
   96039 
   96040         https://bugs.webkit.org/show_bug.cgi?id=20405
   96041 
   96042         * html/CanvasRenderingContext2D.cpp:
   96043         (WebCore::CanvasRenderingContext2D::fill):
   96044         (WebCore::CanvasRenderingContext2D::stroke):
   96045         (WebCore::CanvasRenderingContext2D::fillRect):
   96046 
   96047 2008-08-17  Timothy Hatcher  <timothy (a] apple.com>
   96048 
   96049         Complete in scope variables in the Console when paused.
   96050 
   96051         https://bugs.webkit.org/show_bug.cgi?id=19115
   96052 
   96053         Reviewed by Geoffrey Garen.
   96054 
   96055         * page/inspector/Console.js:
   96056         (WebInspector.Console.prototype.completions): If the expressionString
   96057         is null or empty and the debugger is paused, call variablesInScopeForSelectedCallFrame
   96058         to get an object that declares all the in scope variables. That way
   96059         "top level" expressions are completed.
   96060         * page/inspector/ScriptsPanel.js:
   96061         (WebInspector.ScriptsPanel.prototype.variablesInScopeForSelectedCallFrame):
   96062         Return an object that has all the variables that are in scope for the
   96063         selected call frame. The value of each property is just true.
   96064         The return object is useful for quick lookups or auto completion.
   96065 
   96066 2008-08-17  Cameron Zwarich  <cwzwarich (a] uwaterloo.ca>
   96067 
   96068         Not reviewed.
   96069 
   96070         Speculative Qt build fix.
   96071 
   96072         * bridge/qt/qt_runtime.cpp:
   96073         (KJS::Bindings::convertValueToQVariant):
   96074         (KJS::Bindings::QtRuntimeMethod::QtRuntimeMethod):
   96075 
   96076 2008-08-17  Geoffrey Garen  <ggaren (a] apple.com>
   96077 
   96078         Reviewed by Cameron Zwarich.
   96079 
   96080         Updated project files to XCode 3.1.
   96081 
   96082         * manual-tests/NPN_Invoke/NPN_Invoke.xcodeproj/project.pbxproj:
   96083 
   96084 2008-08-17  Geoffrey Garen  <ggaren (a] apple.com>
   96085 
   96086         Reviewed by Cameron Zwarich.
   96087 
   96088         Made room for a free word in JSCell.
   96089 
   96090         Changed JSDOMWindowBase to store its auxiliary data in a subclass of
   96091         JSGlobalData, so the two could share a pointer.
   96092 
   96093         Added a bunch of ASSERTs, to help catch over-sized objects.
   96094 
   96095 2008-08-15  Mark Rowe  <mrowe (a] apple.com>
   96096 
   96097         Reviewed by Dan Bernstein.
   96098 
   96099         Disable dead code stripping in debug builds.
   96100 
   96101         * Configurations/Base.xcconfig:
   96102         * WebCore.xcodeproj/project.pbxproj:
   96103 
   96104 2008-08-15  Mark Rowe  <mrowe (a] apple.com>
   96105 
   96106         Rubber-stamped by Geoff Garen.
   96107 
   96108         <rdar://problem/6139914> Please include a _debug version of JavaScriptCore framework
   96109 
   96110         * Configurations/Base.xcconfig: Factor out the debug-only settings so that they can shared
   96111         between the Debug configuration and debug Production variant.
   96112         * WebCore.xcodeproj/project.pbxproj: Enable the debug variant.
   96113 
   96114 2008-08-15  Antti Koivisto  <antti (a] apple.com>
   96115 
   96116         Reviewed by Anders.
   96117 
   96118         Don't start preloading body resources before the head is complete. This prevents
   96119         body preloads from slowing down initial display when there is limited amount
   96120         of bandwidth available.
   96121 
   96122         Works by queuing up found body preloads to DocLoader and only issuing them
   96123         after document has rendering.
   96124 
   96125         With bandwidth capped to 300kbit/s this speeds up cnn.com initial display by ~25% or 5s
   96126         without affecting complete load time.
   96127 
   96128         * html/PreloadScanner.cpp:
   96129         (WebCore::PreloadScanner::PreloadScanner):
   96130         (WebCore::PreloadScanner::scanningBody):
   96131         (WebCore::PreloadScanner::emitTag):
   96132         (WebCore::PreloadScanner::emitCSSRule):
   96133         * html/PreloadScanner.h:
   96134         * loader/DocLoader.cpp:
   96135         (WebCore::DocLoader::preload):
   96136         (WebCore::DocLoader::checkForPendingPreloads):
   96137         (WebCore::DocLoader::requestPreload):
   96138         * loader/DocLoader.h:
   96139         * loader/loader.cpp:
   96140         (WebCore::Loader::Host::didFinishLoading):
   96141         (WebCore::Loader::Host::didFail):
   96142 
   96143 2008-08-15  Ada Chan  <adachan (a] apple.com>
   96144 
   96145         Use item's computed style if the render style is 0 before falling back to the <select>'s style.
   96146         This way style set on an <hr> within a <select> will be honored.
   96147 
   96148         Reviewed by Dave Hyatt and Dan Bernstein.
   96149 
   96150         * rendering/RenderMenuList.cpp:
   96151         (WebCore::RenderMenuList::itemStyle):
   96152 
   96153 2008-08-15  Antti Koivisto  <antti (a] apple.com>
   96154 
   96155         Reviewed by Oliver.
   96156 
   96157         Some loader performance tweaks:
   96158         - Make stylesheets highest priority instead of scripts. We block script execution on stylesheets.
   96159           Especially if a stylesheet @imports other stylesheets it is important to get them to the front of the queue
   96160           to not delay rendering.
   96161         - Issue the first resource load for a host immediately even if the resource is low priority. TCP connection setup
   96162           can take long time when latency is high so it is good to get started early.
   96163         - When the document is fully parsed and stylesheets have been loaded there is no need to keep managing the
   96164           load queues. Issue remaining loads to the network layer.
   96165 
   96166         * loader/loader.cpp:
   96167         (WebCore::Loader::determinePriority):
   96168         (WebCore::Loader::load):
   96169         (WebCore::Loader::Host::servePendingRequests):
   96170         * loader/loader.h:
   96171 
   96172 2008-08-15  Timothy Hatcher  <timothy (a] apple.com>
   96173 
   96174         Detach the script debugger when the Web Inspector's window closes.
   96175         This has always been the intended design, but never fully implemented.
   96176 
   96177         https://bugs.webkit.org/show_bug.cgi?id=20402
   96178 
   96179         Reviewed by Adam Roben.
   96180 
   96181         * page/InspectorController.cpp:
   96182         (WebCore::InspectorController::setWindowVisible): Call stopDebugging()
   96183         if the window is no longer visible.
   96184 
   96185 2008-08-15  Hvard Wall  <hwall (a] trolltech.com>
   96186 
   96187         Reviewed by Simon.
   96188 
   96189         Fixes:    compile with QT_NO_CONTEXTMENU
   96190 
   96191         * platform/qt/PlatformMouseEventQt.cpp:
   96192         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
   96193         * platform/qt/PlatformScrollBarQt.cpp:
   96194         (WebCore::PlatformScrollbar::handleMouseMoveEvent):
   96195         (WebCore::PlatformScrollbar::handleContextMenuEvent):
   96196 
   96197 2008-08-15  Hvard Wall  <hwall (a] trolltech.com>
   96198 
   96199         Reviewed by Simon.
   96200 
   96201         Fixes: compile with QT_NO_WHEELEVENT
   96202 
   96203         * platform/qt/WheelEventQt.cpp:
   96204         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   96205 
   96206 2008-08-15  Keishi Hattori  <casey.hattori (a] gmail.com>
   96207 
   96208         Fixed Bug 20210: Console groups are incorrect when closing and reopening the Inspector
   96209 
   96210         https://bugs.webkit.org/show_bug.cgi?id=20210
   96211 
   96212         Reviewed by Tim Hatcher.
   96213 
   96214         * page/Console.cpp:
   96215         (WebCore::Console::group):
   96216         (WebCore::Console::groupEnd):
   96217         * page/Console.h:
   96218         (WebCore::): Removed GroupTitleMessageLevel. Added StartGroupMessaageLevel and EndGroupMessageLevel.
   96219         * page/InspectorController.cpp:
   96220         (WebCore::InspectorController::startGroup): Increments group level by
   96221         one and adds console message with StartGroupMessaageLevel.
   96222         (WebCore::InspectorController::endGroup): Decrements group level by one
   96223         and adds console message with EndGroupMessaageLevel.
   96224         * page/InspectorController.h:
   96225         * page/inspector/Console.js:
   96226         (WebInspector.Console.prototype.addMessage): Creates new ConsoleGroup
   96227         if the message is StartGroupMessaageLevel.
   96228         (WebInspector.ConsoleMessage.prototype.toMessageElement):
   96229         (WebInspector.ConsoleGroup.prototype.addMessage):
   96230         * page/inspector/inspector.js:
   96231 
   96232 2008-08-15  Keishi Hattori  <casey.hattori (a] gmail.com>
   96233 
   96234         Adds support for console.dir to the Inspector
   96235 
   96236         https://bugs.webkit.org/show_bug.cgi?id=19155
   96237 
   96238         Reviewed by Tim Hatcher.
   96239 
   96240         * bindings/js/JSConsoleCustom.cpp:
   96241         (WebCore::JSConsole::dir):
   96242         * page/Console.cpp:
   96243         (WebCore::Console::dir):
   96244         * page/Console.h: Added ObjectMessageLevel.
   96245         * page/Console.idl: Added console.dir.
   96246         * page/inspector/Console.js:
   96247         (WebInspector.ConsoleMessage.prototypet.toMessageElement): Creates an
   96248         ObjectPropertiesSection if the MessageLevel is Object.
   96249         * page/inspector/ObjectPropertiesSection.js: "in" operator can't be
   96250         used on primitive data types.
   96251         * page/inspector/inspector.css:
   96252 
   96253 2008-08-15  Keishi Hattori  <casey.hattori (a] gmail.com>
   96254 
   96255         Adds support for clear() in the Inspector console.
   96256 
   96257         https://bugs.webkit.org/show_bug.cgi?id=19873
   96258 
   96259         Reviewed by Tim Hatcher.
   96260 
   96261         * page/inspector/Console.js:
   96262 
   96263 2008-08-15  Anthony Ricaud  <rik24d (a] gmail.com>
   96264 
   96265         Cmd-F on Mac or Ctrl-F on other platforms now focus the search field.
   96266 
   96267         Platform distinction and modifier key matching adjusted
   96268         by Daniel Jalkut <jalkut (a] red-sweater.com>
   96269 
   96270         Bug 16313: text search (find) keybindings should work in the Web Inspector
   96271         https://bugs.webkit.org/show_bug.cgi?id=16313
   96272 
   96273         Reviewed by Tim Hatcher.
   96274 
   96275         * page/inspector/inspector.js: Added a case for the F key
   96276 
   96277 2008-08-15  Keishi Hattori  <casey.hattori (a] gmail.com>
   96278 
   96279         Fix for error when the string doesn't contain a webkit-profile link.
   96280 
   96281         https://bugs.webkit.org/show_bug.cgi?id=20399
   96282 
   96283         Reviewed by Tim Hatcher.
   96284 
   96285         * page/inspector/inspector.js:
   96286 
   96287 2008-08-15  Timothy Hatcher  <timothy (a] apple.com>
   96288 
   96289         Fixes two bugs where JavaScript could be executed from the page
   96290         while the debugger is paused.
   96291 
   96292         The first issue was JSLazyEventListener not checking the paused
   96293         state before parsing the code.
   96294 
   96295         The second issue was with the PageGroup version of
   96296         JavaScriptDebugServer::setJavaScriptPaused always passing false
   96297         to the Page version of JavaScriptDebugServer::setJavaScriptPaused,
   96298         and not the paused argument.
   96299 
   96300         https://bugs.webkit.org/show_bug.cgi?id=20284
   96301 
   96302         Reviewed by Adam Roben.
   96303 
   96304         * bindings/js/JSEventListener.cpp:
   96305         (WebCore::JSLazyEventListener::parseCode): Check the paused
   96306         state of the ScriptController. Return early if paused.
   96307         * manual-tests/inspector/debugger-execution-while-paused.html: Added.
   96308         * page/JavaScriptDebugServer.cpp:
   96309         (WebCore::JavaScriptDebugServer::setJavaScriptPaused):
   96310         Pass the paused argument to the Page version of setJavaScriptPaused.
   96311 
   96312 2008-08-15  Alexey Proskuryakov  <ap (a] webkit.org>
   96313 
   96314         Reviewed by Geoff Garen.
   96315 
   96316         JSStringRef is created context-free, but can get linked to one via an identifier table,
   96317         breaking an implicit API contract.
   96318 
   96319         * page/InspectorController.cpp:
   96320         (WebCore::jsStringRef):
   96321         (WebCore::InspectorController::didParseSource):
   96322         (WebCore::InspectorController::failedToParseSource):
   96323         * page/JavaScriptProfile.cpp:
   96324         (WebCore::getTitleCallback):
   96325         Updated for JavaScriptCore changes.
   96326 
   96327 2008-08-14  Kevin Ollivier  <kevino (a] theolliviers.com>
   96328 
   96329         wx !USE(WXGC) build fix. This is necessary until we find a way to replace GDI with
   96330         an alternative that performs reasonably well. (GDI+ is too slow in many cases.)
   96331 
   96332         * platform/graphics/AffineTransform.h:
   96333 
   96334 2008-08-14  Eric Carlson  <eric.carlson (a] apple.com>
   96335 
   96336         Reviewed by Adele.
   96337 
   96338         Fix for https://bugs.webkit.org/show_bug.cgi?id=20388
   96339         <video> elements on Windows never becomes visible when a page is restored from the cache
   96340 
   96341         Always pass "set" calls down to MediaPlayerPrivate instead of only when the
   96342         value is different from the cached value. Let the implementation decide when
   96343         to avoid work because nothing has changed.
   96344 
   96345         * platform/graphics/MediaPlayer.cpp:
   96346         (WebCore::MediaPlayer::setVolume):
   96347         (WebCore::MediaPlayer::setRate):
   96348         (WebCore::MediaPlayer::setRect):
   96349         (WebCore::MediaPlayer::setVisible):
   96350 
   96351 2008-08-14  Keishi Hattori  <casey.hattori (a] gmail.com>
   96352 
   96353         Make Firebug command line API respect predefined variables.
   96354 
   96355         https://bugs.webkit.org/show_bug.cgi?id=20385
   96356 
   96357         Reviewed by Tim Hatcher.
   96358 
   96359         * page/inspector/Console.js:
   96360 
   96361 2008-08-14  Sam Weinig  <sam (a] webkit.org>
   96362 
   96363         Reviewed by Geoffrey Garen and Timothy Hatcher.
   96364 
   96365         Allow programatically setting the HTMLTokenizers time delay and chunk size
   96366         which are used for determining how aggressively we yield.
   96367 
   96368         * WebCore.base.exp:
   96369         * html/HTMLTokenizer.cpp:
   96370         (WebCore::HTMLTokenizer::begin):
   96371         (WebCore::HTMLTokenizer::continueProcessing):
   96372         * html/HTMLTokenizer.h:
   96373         * page/Page.cpp:
   96374         (WebCore::Page::Page):
   96375         (WebCore::Page::setCustomHTMLTokenizerTimeDelay):
   96376         (WebCore::Page::setCustomHTMLTokenizerChunkSize):
   96377         * page/Page.h:
   96378         (WebCore::Page::hasCustomHTMLTokenizerTimeDelay):
   96379         (WebCore::Page::customHTMLTokenizerTimeDelay):
   96380         (WebCore::Page::hasCustomHTMLTokenizerChunkSize):
   96381         (WebCore::Page::customHTMLTokenizerChunkSize):
   96382 
   96383 2008-08-14  Eric Seidel  <eric (a] webkit.org>
   96384 
   96385         Reviewed by Beth.
   96386 
   96387         Move us one step closer to cross-platform svg/graphics code
   96388 
   96389         * WebCore.xcodeproj/project.pbxproj:
   96390         * html/CanvasStyle.cpp:
   96391         * platform/graphics/Color.cpp:
   96392         (WebCore::colorWithOverrideAlpha):
   96393         * platform/graphics/Color.h:
   96394         * svg/graphics/cg/CgSupport.cpp:
   96395         (WebCore::applyStrokeStyleToContext):
   96396         (WebCore::strokeBoundingBox):
   96397         * svg/graphics/cg/SVGPaintServerSolidCg.cpp:
   96398         (WebCore::SVGPaintServerSolid::setup):
   96399 
   96400 2008-08-14  Eric Seidel  <eric (a] webkit.org>
   96401 
   96402         Reviewed by Alexey.
   96403 
   96404         Remove un-need includes from HTMLCanvas and use the
   96405         Gradient platform abstraction in one place in CanvasStyle
   96406 
   96407         * html/CanvasRenderingContext2D.cpp:
   96408         (WebCore::CanvasRenderingContext2D::fillRect):
   96409         * html/CanvasStyle.cpp:
   96410         * html/HTMLCanvasElement.cpp:
   96411 
   96412 2008-08-14  Eric Seidel  <eric (a] webkit.org>
   96413 
   96414         Reviewed by Alexey.
   96415 
   96416         Clean up GlyphBuffer.h, removing more #ifdefs
   96417 
   96418         * platform/graphics/GlyphBuffer.h:
   96419         (WebCore::GlyphBuffer::glyphAt):
   96420         (WebCore::GlyphBuffer::advanceAt):
   96421         (WebCore::GlyphBuffer::add):
   96422 
   96423 2008-08-14  Eric Seidel  <eric (a] webkit.org>
   96424 
   96425         Reviewed by Sam.
   96426 
   96427         Clean up AffineTransform.h, removing #ifdefs
   96428 
   96429         * platform/graphics/AffineTransform.h:
   96430         * platform/graphics/cairo/AffineTransformCairo.cpp:
   96431         * platform/graphics/cg/AffineTransformCG.cpp:
   96432         * platform/graphics/qt/AffineTransformQt.cpp:
   96433         * platform/graphics/wx/AffineTransformWx.cpp:
   96434 
   96435 2008-08-14  Dan Bernstein  <mitz (a] apple.com>
   96436 
   96437         - fix non-CG builds by adding an ImageSource::frameSizeAtIndex() that returns size().
   96438 
   96439         * platform/graphics/cairo/ImageSourceCairo.cpp:
   96440         (WebCore::ImageSource::frameSizeAtIndex):
   96441         * platform/graphics/qt/ImageSourceQt.cpp:
   96442         (WebCore::ImageSource::frameSizeAtIndex):
   96443         * platform/graphics/wx/ImageSourceWx.cpp:
   96444         (WebCore::ImageSource::frameSizeAtIndex):
   96445 
   96446 2008-08-14  Dan Bernstein  <mitz (a] apple.com>
   96447 
   96448         Reviewed by Brady Eidson.
   96449 
   96450         - fix <rdar://problem/5993323> REGRESSION (r34210): Apple.com favicon appears stretched/clipped
   96451 
   96452         * platform/graphics/BitmapImage.cpp:
   96453         (WebCore::BitmapImage::BitmapImage): Added initialization of
   96454         m_hasUniformFrameSize.
   96455         (WebCore::BitmapImage::cacheFrame): Added code to get the size of the
   96456         cached frame for use in decoded size computation and for setting
   96457         m_hasUniformFrameSize.
   96458         (WebCore::BitmapImage::currentFrameSize): Added.
   96459         (WebCore::BitmapImage::dataChanged): Added code to reset
   96460         m_hasUniformFrameSize.
   96461         * platform/graphics/BitmapImage.h: Added currentFrameSize() and
   96462         m_hasUniformFrameSize.
   96463         * platform/graphics/ImageSource.h: Added frameSizeAtIndex().
   96464         * platform/graphics/cg/ImageCG.cpp:
   96465         (WebCore::BitmapImage::draw): Changed to use currentFrameSize(). This
   96466         fixes the bug, which resulted from assuming that the frame being drawn
   96467         was the same size as the first frame.
   96468         * platform/graphics/cg/ImageSourceCG.cpp:
   96469         (WebCore::ImageSource::frameSizeAtIndex): Renamed size() to this and
   96470         changed to get the size of the frame at the given index.
   96471         (WebCore::ImageSource::size): Added. Returns frameSizeAtIndex(0).
   96472 
   96473 2008-08-13  Simon Fraser  <simon.fraser (a] apple.com>
   96474 
   96475         Reviewed by Eric Seidel
   96476 
   96477         Fix @font-face inside @media rule crash.
   96478         https://bugs.webkit.org/show_bug.cgi?id=20367
   96479 
   96480         Test: fast/css/font-face-in-media-rule.html
   96481 
   96482         * css/CSSStyleSelector.cpp:
   96483         (WebCore::CSSRuleSet::addRulesFromSheet):
   96484 
   96485 2008-08-14  Kevin Ollivier  <kevino (a] theolliviers.com>
   96486 
   96487         wx build fixes after recent changes to Canvas and Image classes.
   96488 
   96489         * platform/graphics/Pattern.h:
   96490         * platform/graphics/wx/GradientWx.cpp:
   96491         (WebCore::Gradient::fill):
   96492         * platform/graphics/wx/GraphicsContextWx.cpp:
   96493         (WebCore::GraphicsContext::applyFillPattern):
   96494         (WebCore::GraphicsContext::applyStrokePattern):
   96495         * platform/graphics/wx/ImageBufferWx.cpp:
   96496         (WebCore::ImageBuffer::image):
   96497         * platform/graphics/wx/ImageWx.cpp:
   96498         (WebCore::Image::loadPlatformResource):
   96499 
   96500 2008-08-14  Maxime Britto  <britto (a] apple.com>
   96501 
   96502         Reviewed by Sam Weinig.
   96503 
   96504         rdar://6102511
   96505         When pan-scrolling, typing on the keyboard should either stop the pan scroll or be ignored
   96506         IE and FF are both preventing the keyboard event to interact with the page while scrolling.
   96507         Some differences exist between them concerning the kind of key which is pressed :
   96508         IE7 : every key leads to a stop of the panning
   96509         FF3 : the ESC and TAB keys leads to a stop, the other keys are inactive.
   96510         For WebKit this patch is adopting the FF3 behavior except for the TAB key which is inactive too.
   96511 
   96512         * page/EventHandler.cpp:
   96513         (WebCore::EventHandler::keyEvent): Verifies which key has been hit and decide either to stop the pan scroll or to swallow the key event.
   96514 
   96515 2008-08-14  Christian Dywan  <christian (a] twotoasts.de>
   96516 
   96517         Gtk+/ Cairo build fix, patch by Dirk Schulze.
   96518 
   96519         * html/CanvasStyle.cpp:
   96520         * platform/graphics/cairo/PatternCairo.cpp:
   96521         (WebCore::Pattern::createPlatformPattern):
   96522         * svg/graphics/cairo/SVGResourceMaskerCairo.cpp:
   96523 
   96524 2008-08-14  Kevin McCullough  <kmccullough (a] apple.com>
   96525 
   96526         Reviewed by Tim.
   96527 
   96528         <rdar://problem/6115819> Notify of profile in console
   96529 
   96530         * page/InspectorController.cpp:
   96531         (WebCore::InspectorController::addProfile):
   96532         (WebCore::InspectorController::addProfileMessageToConsole): Called by
   96533         addProfile this is the function that adds a message to the console that
   96534         a profile finished.
   96535         * page/InspectorController.h:
   96536         * page/JavaScriptProfile.cpp: Expose the profiler's unique ID to match
   96537         the console log to the profile in the web inspector.
   96538         (WebCore::getUniqueIdCallback):
   96539         (WebCore::ProfileClass):
   96540         * page/inspector/ProfilesPanel.js: Created a map of all the profiles by
   96541         Id to bring up the requested profile.  Also select and reveal the
   96542         profile in the profile panel.  And created displayTitleForProfileLink()
   96543         which formats a title taking into account if it's user initiated or if
   96544         there are multiples. Lasty, I put the user initiated profile in a
   96545         variable.
   96546         * page/inspector/inspector.js: Make the profile title be a clickable
   96547         link that will take the user to the identified profile.  Also expose
   96548         the count of user initiated profiles so they can be displayed in the
   96549         console with the correct count.
   96550 
   96551 2008-08-14  Timothy Hatcher  <timothy (a] apple.com>
   96552 
   96553         Avoid formating ConsoleMessages twice unless the message will be
   96554         displayed in bubbles of a SourceFrame.
   96555 
   96556         Reviewed by Kevin McCullough.
   96557 
   96558         * page/inspector/Console.js:
   96559         (WebInspector.ConsoleMessage): Only format the plain text message
   96560         if the URL and line are valid and the level is error or warning.
   96561         (WebInspector.ConsoleMessage.prototype.isErrorOrWarning): Added.
   96562         Helper to test for error or warning level.
   96563         * page/inspector/SourceFrame.js:
   96564         (WebInspector.SourceFrame.prototype.addMessage): Don't add the
   96565         message if there is no message or valid line or if the msg
   96566         isn't an error or warning.
   96567 
   96568 2008-08-14  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   96569 
   96570         partial Gtk build fix, not reviewed
   96571 
   96572         * platform/graphics/cairo/PatternCairo.cpp:
   96573 
   96574 2008-08-13  Sam Weinig  <sam (a] webkit.org>
   96575 
   96576         Reviewed by Anders Carlsson.
   96577 
   96578         Fix style issue.
   96579 
   96580         * html/HTMLMediaElement.cpp:
   96581         (WebCore::HTMLMediaElement::pickMedia):
   96582 
   96583 2008-08-13  Nikolas Zimmermann  <zimmermann (a] kde.org>
   96584 
   96585         Build fix for Cairo, not reviewed. (exposed by gtk build slave)
   96586         Continue Erics build fixes, after the Image cleanup.
   96587 
   96588         * platform/graphics/cairo/ImageBufferCairo.cpp:
   96589         (WebCore::ImageBuffer::image):
   96590 
   96591 2008-08-13  Nikolas Zimmermann  <zimmermann (a] kde.org>
   96592 
   96593         Build fix for Qt, not reviewed.
   96594         Don't declare eventuallyMarkAsParserCreated in a block wrapped by !USE_QXMLSTREAM.
   96595 
   96596         * dom/XMLTokenizer.cpp:
   96597         (WebCore::eventuallyMarkAsParserCreated): Was erre
   96598 
   96599 2008-08-13  Nikolas Zimmermann  <zimmermann (a] kde.org>
   96600 
   96601         Build fix, not reviewed.
   96602         Add ScriptElement.cpp to Gtk build.
   96603 
   96604         * GNUmakefile.am:
   96605 
   96606 2008-08-13  Nikolas Zimmermann  <zimmermann (a] kde.org>
   96607 
   96608         Reviewed by Eric.
   96609 
   96610         Fixes: https://bugs.webkit.org/show_bug.cgi?id=20372
   96611 
   96612         Refactor HTMLScriptElement's code into a common base class: ScriptElement.
   96613         SVGScriptElement will be converted to use ScriptElement in a follow-up patch.
   96614 
   96615         This resolves code duplications and allows us to completly replace the old
   96616         SVGScriptElement (which doesn't use CachedScript, no dynamic injected scripts etc..)
   96617 
   96618         As ScriptElement, doesn't actually inherit from Element, we may want to rename
   96619         it, though StyleElement uses the same naming convention, so I left it as is for now.
   96620         Eventually we'll rename both files in future.
   96621 
   96622         No functional changes yet, as SVGScriptElement doesn't yet use the new base class.
   96623 
   96624         * WebCore.pro: Add new ScriptElement.cpp to build.
   96625         * WebCore.vcproj/WebCore.vcproj: Ditto.
   96626         * WebCore.xcodeproj/project.pbxproj: Ditto.
   96627         * WebCoreSources.bkl: Dutto.
   96628         * dom/ScriptElement.cpp: Added. 1:1 based on HTMLScriptElement
   96629         (WebCore::ScriptElement::insertedIntoDocument):
   96630         (WebCore::ScriptElement::removedFromDocument):
   96631         (WebCore::ScriptElement::childrenChanged):
   96632         (WebCore::ScriptElement::finishParsingChildren):
   96633         (WebCore::ScriptElement::handleSourceAttribute):
   96634         (WebCore::isSupportedJavaScriptLanguage):
   96635         (WebCore::ScriptElementData::ScriptElementData):
   96636         (WebCore::ScriptElementData::~ScriptElementData):
   96637         (WebCore::ScriptElementData::requestScript):
   96638         (WebCore::ScriptElementData::evaluateScript):
   96639         (WebCore::ScriptElementData::stopLoadRequest):
   96640         (WebCore::ScriptElementData::notifyFinished):
   96641         (WebCore::ScriptElementData::ignoresLoadRequest):
   96642         (WebCore::ScriptElementData::shouldExecuteAsJavaScript):
   96643         (WebCore::ScriptElementData::scriptCharset):
   96644         (WebCore::ScriptElementData::scriptContent):
   96645         * dom/ScriptElement.h: Added.
   96646         (WebCore::ScriptElement::ScriptElement):
   96647         (WebCore::ScriptElement::~ScriptElement):
   96648         (WebCore::ScriptElementData::element):
   96649         (WebCore::ScriptElementData::createdByParser):
   96650         (WebCore::ScriptElementData::setCreatedByParser):
   96651         * dom/XMLTokenizer.cpp:
   96652         (WebCore::isScriptElement):
   96653         (WebCore::castToScriptElement):
   96654         (WebCore::eventuallyMarkAsParserCreated):
   96655         (WebCore::XMLTokenizer::startElementNs):
   96656         (WebCore::XMLTokenizer::endElementNs):
   96657         (WebCore::createXHTMLParserErrorHeader):
   96658         (WebCore::XMLTokenizer::insertErrorMessageBlock):
   96659         * html/HTMLScriptElement.cpp: Refactored code, pushed most code down to ScriptElement.
   96660         (WebCore::HTMLScriptElement::HTMLScriptElement):
   96661         (WebCore::HTMLScriptElement::~HTMLScriptElement):
   96662         (WebCore::HTMLScriptElement::isURLAttribute):
   96663         (WebCore::HTMLScriptElement::setCreatedByParser):
   96664         (WebCore::HTMLScriptElement::shouldExecuteAsJavaScript):
   96665         (WebCore::HTMLScriptElement::childrenChanged):
   96666         (WebCore::HTMLScriptElement::parseMappedAttribute):
   96667         (WebCore::HTMLScriptElement::finishParsingChildren):
   96668         (WebCore::HTMLScriptElement::insertedIntoDocument):
   96669         (WebCore::HTMLScriptElement::removedFromDocument):
   96670         (WebCore::HTMLScriptElement::text):
   96671         (WebCore::HTMLScriptElement::setText):
   96672         (WebCore::HTMLScriptElement::setHtmlFor):
   96673         (WebCore::HTMLScriptElement::setEvent):
   96674         (WebCore::HTMLScriptElement::charset):
   96675         (WebCore::HTMLScriptElement::src):
   96676         (WebCore::HTMLScriptElement::type):
   96677         (WebCore::HTMLScriptElement::scriptCharset):
   96678         (WebCore::HTMLScriptElement::scriptContent):
   96679         (WebCore::HTMLScriptElement::sourceAttributeValue):
   96680         (WebCore::HTMLScriptElement::charsetAttributeValue):
   96681         (WebCore::HTMLScriptElement::typeAttributeValue):
   96682         (WebCore::HTMLScriptElement::languageAttributeValue):
   96683         (WebCore::HTMLScriptElement::dispatchLoadEvent):
   96684         (WebCore::HTMLScriptElement::dispatchErrorEvent):
   96685         * html/HTMLScriptElement.h:
   96686         * svg/SVGScriptElement.cpp: Inherit from ScriptElement, don't actually use it yet.
   96687         * svg/SVGScriptElement.cpp:
   96688         (WebCore::SVGScriptElement::SVGScriptElement):
   96689         (WebCore::SVGScriptElement::scriptContent):
   96690         (WebCore::SVGScriptElement::sourceAttributeValue):
   96691         (WebCore::SVGScriptElement::charsetAttributeValue):
   96692         (WebCore::SVGScriptElement::typeAttributeValue):
   96693         (WebCore::SVGScriptElement::languageAttributeValue):
   96694         (WebCore::SVGScriptElement::dispatchLoadEvent):
   96695         (WebCore::SVGScriptElement::dispatchErrorEvent):
   96696         * svg/SVGScriptElement.h:
   96697         (WebCore::SVGScriptElement::setCreatedByParser):
   96698 
   96699 2008-08-13  Eric Seidel  <eric (a] webkit.org>
   96700 
   96701         Attempt to fix the Gtk build, no review.
   96702 
   96703         I removed the bogus GraphicsContext::translatePoint() hack for Gtk in the process.
   96704 
   96705         * platform/graphics/GraphicsContext.h:
   96706         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   96707         * platform/graphics/qt/GradientQt.cpp:
   96708         * platform/graphics/qt/GraphicsContextQt.cpp:
   96709         * platform/gtk/RenderThemeGtk.cpp:
   96710         (WebCore::paintMozWidget):
   96711 
   96712 2008-08-13  Eric Seidel  <eric (a] webkit.org>
   96713 
   96714         Yet another attempt to fix the Qt build, no review.
   96715 
   96716         * platform/graphics/qt/GradientQt.cpp:
   96717         * platform/graphics/qt/GraphicsContextQt.cpp:
   96718         (WebCore::GraphicsContext::applyStrokePattern):
   96719         (WebCore::GraphicsContext::applyFillPattern):
   96720 
   96721 2008-08-13  Eric Seidel  <eric (a] webkit.org>
   96722 
   96723         Attempt to fix the Windows build, no review.
   96724 
   96725         * platform/win/CursorWin.cpp:
   96726         (WebCore::loadCursorByName):
   96727         * platform/win/ScrollViewWin.cpp:
   96728         (WebCore::ScrollView::paint):
   96729 
   96730 2008-08-13  Eric Seidel  <eric (a] webkit.org>
   96731 
   96732         Attempt to fix the Windows build, no review.
   96733 
   96734         * platform/win/CursorWin.cpp:
   96735         (WebCore::loadCursorByName):
   96736         * platform/win/ScrollViewWin.cpp:
   96737         (WebCore::ScrollView::paint):
   96738 
   96739 2008-08-13  Eric Seidel  <eric (a] webkit.org>
   96740 
   96741         Attempt to fix the Qt build, no review.
   96742 
   96743         * platform/graphics/qt/ImageBufferQt.cpp:
   96744         (WebCore::ImageBuffer::image):
   96745 
   96746 2008-08-13  Eric Seidel  <eric (a] webkit.org>
   96747 
   96748         Attempt to fix the Windows build, no review.
   96749 
   96750         * platform/graphics/win/ImageWin.cpp:
   96751         (WebCore::Image::loadPlatformResource):
   96752         * plugins/win/PluginViewWin.cpp:
   96753         (WebCore::PluginView::paintMissingPluginIcon):
   96754 
   96755 2008-08-13  Eric Seidel  <eric (a] webkit.org>
   96756 
   96757         Another attempt to fix the Qt build, no review.
   96758 
   96759         * platform/graphics/qt/ImageQt.cpp:
   96760         * platform/graphics/qt/StillImageQt.h:
   96761 
   96762 2008-08-13  Eric Seidel  <eric (a] webkit.org>
   96763 
   96764         No review, build fix only.
   96765 
   96766         Fix mac build, due to change in new code since my patch was written.
   96767 
   96768         * svg/graphics/cg/SVGResourceMaskerCg.mm:
   96769         (WebCore::SVGResourceMasker::applyMask):
   96770 
   96771 2008-08-13  Eric Seidel  <eric (a] webkit.org>
   96772 
   96773         Build fix only, no review.
   96774 
   96775         Attempt to fix the Qt build.
   96776 
   96777         * platform/graphics/qt/ImageBufferQt.cpp:
   96778         * platform/graphics/qt/StillImageQt.h:
   96779         (WebCore::StillImage::create):
   96780         (WebCore::StillImage::destroyDecodedData):
   96781         (WebCore::StillImage::decodedSize):
   96782 
   96783 2008-08-13  Eric Seidel  <eric (a] webkit.org>
   96784 
   96785         Build fix only, no review.
   96786 
   96787         Attempt to fix the Qt build.
   96788 
   96789         * html/CanvasStyle.cpp:
   96790         (WebCore::CanvasStyle::applyStrokeColor):
   96791         (WebCore::CanvasStyle::applyFillColor):
   96792 
   96793 2008-08-13  Eric Seidel  <eric (a] webkit.org>
   96794 
   96795         Reviewed by Sam.
   96796 
   96797         Match HTML5 spec by throwing INVALID_STATE_ERR when
   96798         createPattern is called and the HTMLImageElement is not
   96799         yet done loading the image (!isComplete)
   96800         https://bugs.webkit.org/show_bug.cgi?id=20351
   96801 
   96802         Test: http/misc/canvas-pattern-from-incremental-image.html
   96803 
   96804         * html/CanvasRenderingContext2D.cpp:
   96805         (WebCore::CanvasRenderingContext2D::createPattern):
   96806 
   96807 2008-08-13  Eric Seidel  <eric (a] webkit.org>
   96808 
   96809         Reviewed by Niko.
   96810 
   96811         Split out a Pattern class from CanvasPattern
   96812         and remove all the Pattern-related #ifdefs
   96813         (This will break non-mac platforms!  I will fix them.)
   96814         https://bugs.webkit.org/show_bug.cgi?id=20351
   96815 
   96816         * GNUmakefile.am:
   96817         * WebCore.pro:
   96818         * WebCore.vcproj/WebCore.vcproj:
   96819         * WebCore.xcodeproj/project.pbxproj:
   96820         * WebCoreSources.bkl:
   96821         * html/CanvasPattern.cpp:
   96822         (WebCore::CanvasPattern::parseRepetitionType):
   96823         (WebCore::CanvasPattern::CanvasPattern):
   96824         * html/CanvasPattern.h:
   96825         (WebCore::CanvasPattern::create):
   96826         (WebCore::CanvasPattern::pattern):
   96827         (WebCore::CanvasPattern::originClean):
   96828         * html/CanvasRenderingContext2D.cpp:
   96829         (WebCore::CanvasRenderingContext2D::createPattern):
   96830         (WebCore::CanvasRenderingContext2D::applyStrokePattern):
   96831         (WebCore::CanvasRenderingContext2D::applyFillPattern):
   96832         * html/CanvasRenderingContext2D.h:
   96833         * html/HTMLCanvasElement.cpp:
   96834         * html/HTMLCanvasElement.h:
   96835         * loader/FrameLoader.cpp:
   96836         (WebCore::FrameLoader::createHistoryItem):
   96837         * platform/graphics/GraphicsContext.h:
   96838         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   96839         (WebCore::GraphicsContext::applyStrokePattern):
   96840         (WebCore::GraphicsContext::applyFillPattern):
   96841         * platform/graphics/cg/GraphicsContextCG.cpp:
   96842         (WebCore::GraphicsContext::clipToImageBuffer):
   96843         (WebCore::GraphicsContext::applyStrokePattern):
   96844         (WebCore::GraphicsContext::applyFillPattern):
   96845 
   96846 2008-08-13  Eric Seidel  <eric (a] webkit.org>
   96847 
   96848         Reviewed by Niko.
   96849 
   96850         Make Images RefCounted (and clean up callers)
   96851         https://bugs.webkit.org/show_bug.cgi?id=20351
   96852 
   96853         * editing/DeleteButtonController.cpp:
   96854         (WebCore::DeleteButtonController::createDeletionUI):
   96855         * loader/CachedImage.cpp:
   96856         (WebCore::CachedImage::CachedImage):
   96857         (WebCore::brokenImage):
   96858         (WebCore::nullImage):
   96859         (WebCore::CachedImage::image):
   96860         (WebCore::CachedImage::notifyObservers):
   96861         (WebCore::CachedImage::createImage):
   96862         * loader/CachedImage.h:
   96863         * loader/icon/IconRecord.cpp:
   96864         (WebCore::IconRecord::setImageData):
   96865         (WebCore::IconRecord::loadImageFromResource):
   96866         * loader/icon/IconRecord.h:
   96867         * platform/graphics/BitmapImage.h:
   96868         (WebCore::BitmapImage::create):
   96869         * platform/graphics/GeneratedImage.h:
   96870         * platform/graphics/Gradient.cpp:
   96871         * platform/graphics/Gradient.h:
   96872         * platform/graphics/Image.cpp:
   96873         (WebCore::Image::nullImage):
   96874         * platform/graphics/Image.h:
   96875         * platform/graphics/ImageBuffer.h:
   96876         * platform/graphics/cairo/ImageBufferCairo.cpp:
   96877         (WebCore::ImageBuffer::image):
   96878         * platform/graphics/cg/ImageBufferCG.cpp:
   96879         (WebCore::ImageBuffer::image):
   96880         (WebCore::ImageBuffer::getImageData):
   96881         (WebCore::ImageBuffer::putImageData):
   96882         * platform/graphics/cg/PDFDocumentImage.h:
   96883         (WebCore::PDFDocumentImage::create):
   96884         (WebCore::PDFDocumentImage::destroyDecodedData):
   96885         (WebCore::PDFDocumentImage::decodedSize):
   96886         * platform/graphics/gtk/ImageGtk.cpp:
   96887         (WebCore::Image::loadPlatformResource):
   96888         * platform/graphics/mac/ImageMac.mm:
   96889         (WebCore::Image::loadPlatformResource):
   96890         * rendering/RenderImage.cpp:
   96891         * rendering/RenderLayer.cpp:
   96892         (WebCore::RenderLayer::paintOverflowControls):
   96893         * svg/graphics/SVGImage.cpp:
   96894         (WebCore::SVGImage::nativeImageForCurrentFrame):
   96895         * svg/graphics/SVGImage.h:
   96896         (WebCore::SVGImage::create):
   96897         (WebCore::SVGImage::destroyDecodedData):
   96898         (WebCore::SVGImage::decodedSize):
   96899         (WebCore::SVGImage::frameAtIndex):
   96900         * svg/graphics/cairo/SVGPaintServerPatternCairo.cpp:
   96901         (WebCore::SVGPaintServerPattern::setup):
   96902         * svg/graphics/cairo/SVGResourceMaskerCairo.cpp:
   96903         (WebCore::SVGResourceMasker::applyMask):
   96904         * svg/graphics/cg/SVGPaintServerPatternCg.cpp:
   96905         (WebCore::patternCallback):
   96906         * svg/graphics/cg/SVGResourceMaskerCg.mm:
   96907         (WebCore::SVGResourceMasker::applyMask):
   96908 
   96909 2008-08-13  Eric Seidel  <eric (a] webkit.org>
   96910 
   96911         Reviewed by Niko.
   96912 
   96913         Remove #ifdefs from CanvasStyle by using platform/Color.h
   96914         https://bugs.webkit.org/show_bug.cgi?id=20351
   96915 
   96916         There are some down-sides to this commit.
   96917         This commit limits us to 255 levels of grey for calls like:
   96918         context.setStrokeStyle(.37, 1.0)
   96919         previously CG might have used up to 32bits to store the grey level
   96920         Since setStrokeStyle is not part of HTML5, I don't suspect the web will notice.
   96921 
   96922         Likewise, setStrokeStyle/setFillStyle calls which used float colors are now limited
   96923         to RGBA32 (like all the rest of colors in WebCore), thus:
   96924         context.setStrokStyle(.37, .24, .456, .99) will now have the same precision as:
   96925         context.strokeStyle = "rgba(.37, .24, .456, .99)", which is to say RGBA32
   96926 
   96927         If this is a problem for Dashboard, we can either roll out this commit
   96928         or add a beefier Color abstraction, which can be used internally by GraphicsContext
   96929         when keeping state, and then GraphicsContext can grow some additional set* routines
   96930         for setting the a grey/float/whatever fill and stroke.
   96931 
   96932         * html/CanvasRenderingContext2D.cpp:
   96933         (WebCore::CanvasRenderingContext2D::setFillStyle):
   96934         * html/CanvasStyle.cpp:
   96935         (WebCore::CanvasStyle::CanvasStyle):
   96936         (WebCore::colorWithOverrideAlpha):
   96937         (WebCore::CanvasStyle::applyStrokeColor):
   96938         (WebCore::CanvasStyle::applyFillColor):
   96939         * html/CanvasStyle.h:
   96940         * platform/graphics/Color.cpp:
   96941         (WebCore::colorFloatToRGBAByte):
   96942         (WebCore::makeRGBA32FromFloats):
   96943         * platform/graphics/Color.h:
   96944 
   96945 2008-08-13  Eric Carlson  <eric.carlson (a] apple.com>
   96946 
   96947         Reviewed by Adele Peterson.
   96948 
   96949         Fix for <rdar://problem/6137931>
   96950         https://bugs.webkit.org/show_bug.cgi?id=20360
   96951         Remove all parameters from the MIME type before checking with the MIME type registry
   96952 
   96953         Tests: media/video-source-type-params.html
   96954 
   96955         * html/HTMLMediaElement.cpp:
   96956         (WebCore::HTMLMediaElement::pickMedia): only pass the portion before the first ';'
   96957         to isSupportedMediaMIMEType()
   96958 
   96959 2008-08-13  Beth Dakin  <bdakin (a] apple.com>
   96960 
   96961         Reviewed by Sam Weinig.
   96962 
   96963         Fix for <rdar://problem/6141345>
   96964 
   96965         This patch refines findString and markAllMatchesForText functions'
   96966         interactions with disconnected frames. They no longer rely on
   96967         knowing where a range is relative to the visible region and work
   96968         with disconnected frames that contain frames.
   96969 
   96970         * editing/Editor.cpp:
   96971         (WebCore::Editor::insideVisibleArea): Now returns a bool instead of
   96972         the visiblity enum.
   96973         (WebCore::Editor::firstVisibleRange): This now returns the very
   96974         first visible range in the document. It's no longer dependent on
   96975         searching forward.
   96976         (WebCore::Editor::lastVisibleRange): This now returns the very last
   96977         visible range in the document. It's no longer dependent on
   96978         searching backwards.
   96979         (WebCore::Editor::nextVisibleRange): This returns the next visible
   96980         range in the appropriate direction from the current range.
   96981         * editing/Editor.h:
   96982         * page/Frame.cpp:
   96983         (WebCore::Frame::findString):
   96984         (WebCore::Frame::markAllMatchesForText):
   96985 
   96986 2008-08-13  Kevin Ollivier  <kevino (a] theolliviers.com>
   96987 
   96988         wx build fix for case-sensitive platforms, like Linux.
   96989 
   96990         * WebCoreSources.bkl:
   96991 
   96992 2008-08-13  Marco Barisione  <marco.barisione (a] collabora.co.uk>
   96993 
   96994         Reviewed by Holger Freyther.
   96995 
   96996         http://bugs.webkit.org/show_bug.cgi?id=16881
   96997         [GTK] PlatformScreenGtk is unimplemented
   96998 
   96999         Original patch by Christian Dywan.
   97000 
   97001         * platform/gtk/PlatformScreenGtk.cpp:
   97002         (WebCore::screenDepth):
   97003         (WebCore::screenDepthPerComponent):
   97004         (WebCore::screenIsMonochrome):
   97005         (WebCore::screenRect):
   97006         (WebCore::screenAvailableRect):
   97007 
   97008 2008-08-13  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   97009 
   97010         Reviewed by Holger Freyther.
   97011 
   97012         http://bugs.webkit.org/show_bug.cgi?id=20318
   97013         SharedTimerGtk should use G_PRIORITY_DEFAULT_IDLE for g_idle_add
   97014 
   97015         g_idle_add is the same as g_idle_add_full with a priority of
   97016         G_PRIORITY_DEFAULT_IDLE, so we can safely use that.
   97017 
   97018         * platform/gtk/SharedTimerGtk.cpp:
   97019         (WebCore::setSharedTimerFireTime):
   97020 
   97021 2008-08-13  Timothy Hatcher  <timothy (a] apple.com>
   97022 
   97023         Changed the InspectorController so it can be notified when the
   97024         attached state of the Inspector changes in WebKit.
   97025 
   97026         Reviewed by Kevin McCullough.
   97027 
   97028         * WebCore.base.exp: Updated the symbol for setWindowVisible.
   97029         * page/InspectorController.cpp:
   97030         (WebCore::InspectorController::setWindowVisible): Added an attached argument,
   97031         that defaults to false.Call setAttachedWindow with the attached argument.
   97032         (WebCore::InspectorController::setAttachedWindow): Call the script version
   97033         of setAttachedWindow.
   97034         * page/InspectorController.h:
   97035         * page/inspector/inspector.js:
   97036         (WebInspector.setAttachedWindow): Set the attached property.
   97037 
   97038 2008-08-12  Timothy Hatcher  <timothy (a] apple.com>
   97039 
   97040         Added a close button to the Inspector's toolbar when docked.
   97041 
   97042         https://bugs.webkit.org/show_bug.cgi?id=14270
   97043 
   97044         Reviewed by Kevin McCullough.
   97045 
   97046         * page/InspectorController.cpp:
   97047         (WebCore::closeWindow): Call InspectorController::closeWindow.
   97048         (WebCore::InspectorController::windowScriptObjectAvailable):
   97049         Added closeWindow to the script class.
   97050         * page/InspectorController.h:
   97051         * page/inspector/Images/closeButtons.png: Added.
   97052         * page/inspector/inspector.css: Added and changed styles.
   97053         * page/inspector/inspector.html: Added the close button.
   97054         * page/inspector/inspector.js:
   97055         (WebInspector.loaded): Added click event listener to the close button.
   97056         (WebInspector.close): Call InspectorController.closeWindow.
   97057 
   97058 2008-08-12  Timothy Hatcher  <timothy (a] apple.com>
   97059 
   97060         Make the docked Web Inspector resizable. This is the cross platform
   97061         portion of the code. Each InspectorClient needs to implement the
   97062         real resize code.
   97063 
   97064         https://bugs.webkit.org/show_bug.cgi?id=14282
   97065 
   97066         Reviewed by Kevin McCullough.
   97067 
   97068         * loader/EmptyClients.h: Added an empty setAttachedWindowHeight.
   97069         * page/InspectorClient.h: Added setAttachedWindowHeight.
   97070         * page/InspectorController.cpp:
   97071         (WebCore::setAttachedWindowHeight): Call setAttachedWindowHeight
   97072         on the InspectorController.
   97073         (WebCore::InspectorController::setAttachedWindowHeight): Call
   97074         setAttachedWindowHeight on the client.
   97075         (WebCore::InspectorController::windowScriptObjectAvailable):
   97076         Added setAttachedWindowHeight to the script class.
   97077         * page/InspectorController.h:
   97078         * page/inspector/inspector.css: Make the cursor on the toolbar be
   97079         row-resize when docked.
   97080         * page/inspector/inspector.js:
   97081         (WebInspector.loaded): Always add the toolbarDragStart event listener.
   97082         (WebInspector.toolbarDragStart): Return early if we are not attached
   97083         and not on Leopard. Call WebInspector.elementDragStart.
   97084         (WebInspector.toolbarDragEnd): Call WebInspector.elementDragEnd.
   97085         (WebInspector.toolbarDrag): When attached call setAttachedWindowHeight,
   97086         otherwise call moveByUnrestricted.
   97087 
   97088 2008-08-13  Simon Hausmann  <hausmann (a] webkit.org>
   97089 
   97090         Reviewed by Holger.
   97091 
   97092         Initialize m_zoomsTextOnly in the Settings constructor.
   97093 
   97094         * page/Settings.cpp:
   97095         (WebCore::Settings::Settings):
   97096 
   97097 2008-08-13  Brad Hughes <bhughes (a] trolltech.com>
   97098 
   97099         Reviewed by Simon.
   97100 
   97101         Fix compiling of QtWebKit in release mode with the Intel C++ Compiler for Linux
   97102 
   97103         The latest upgrade of the intel compiler allows us to compile all of
   97104         Qt with optimizations enabled (yay!).
   97105 
   97106         * WebCore.pro:
   97107 
   97108 2008-08-13  Prasanth Ullattil  <prasanth.ullattil (a] trolltech.com>
   97109 
   97110         Reviewed by Simon.
   97111 
   97112         Fix QtWebKit not displaying content on 403 HTTP responses
   97113 
   97114         Just like with 404 responses also display content with 403, as
   97115         used by http://audiio.ejamming.proteus-tech.com/audiio/profile/original_signup/
   97116 
   97117         * platform/network/qt/QNetworkReplyHandler.cpp:
   97118         (WebCore::QNetworkReplyHandler::finish):
   97119 
   97120 2008-08-13  Simon Hausmann  <hausmann (a] webkit.org>
   97121 
   97122         Reviewed by Holger.
   97123 
   97124         Qt part of https://bugs.webkit.org/show_bug.cgi?id=18994
   97125 
   97126         Make the formatting of String::format() locale independent through the use of QString::vsprintf.
   97127 
   97128         * platform/text/String.cpp:
   97129         (WebCore::String::format):
   97130 
   97131 2008-08-13  Simon Hausmann  <hausmann (a] webkit.org>
   97132 
   97133         Reviewed by Lars.
   97134 
   97135         Fix QWebFrame::setHtml() not setting the new contents immediately.
   97136 
   97137         Added a setter to the DocumentLoader to toggle the deferred loading of the main
   97138         resource when it comes from substitute data.
   97139 
   97140         Disable deferred loading of the main resource when we have valid substitute data,
   97141         as used by QWebFrame::setHtml.
   97142 
   97143         * loader/DocumentLoader.h:
   97144 
   97145 2008-08-13  Mark Rowe  <mrowe (a] apple.com>
   97146 
   97147         Speculative GTK build fix.
   97148 
   97149         * GNUmakefile.am:  Add dependency info for JSSVGElementWrapperFactory.cpp.
   97150 
   97151 2008-08-13  Thiago Macieira  <tjmaciei (a] trolltech.com>
   97152 
   97153         Reviewed by Simon.
   97154 
   97155         Fix encoding of [ and ] in the host part of the URL
   97156 
   97157         Until QUrl is fixed (making QUrl's tolerant parser more tolerant), we have to
   97158         add this workaround to the QUrl <> WebCore::KURL conversion operator so that it
   97159         doesn't encode [ and ] when they are found in the host part. That is, the
   97160         following URL:
   97161         http://[::1]/
   97162         is valid and should not be reencoded to:
   97163         http://%5b::1%5d/
   97164 
   97165         * platform/qt/KURLQt.cpp:
   97166         (WebCore::KURL::operator QUrl):
   97167 
   97168 2008-08-12  Mihnea Ovidenie  <mihnea (a] adobe.com>
   97169 
   97170         Fix for https://bugs.webkit.org/show_bug.cgi?id=19891
   97171         Broken HTML object elements cause de-reference of pointer to freed memory.
   97172         If we fail to load an image for an object tag and we no longer believe the object tag points at
   97173         an image, then clear m_imageLoader in the HTMLObjectElement so that we attempt to render the
   97174         fall back content.
   97175 
   97176         Reviewed by Dave Hyatt and Alexey Proskuryakov.
   97177 
   97178         Test: http/tests/misc/object-image-error-with-onload.html
   97179 
   97180         * html/HTMLObjectElement.cpp:
   97181         (WebCore::HTMLObjectElement::renderFallbackContent):
   97182         * page/Frame.cpp:
   97183         (WebCore::Frame::Frame):
   97184 
   97185 2008-08-12  Nikolas Zimmermann  <zimmermann (a] kde.org>
   97186 
   97187         Reviewed by Dave.
   97188 
   97189         Fixes: https://bugs.webkit.org/show_bug.cgi?id=19798
   97190         Masks are translated, and the mask images are swapped on the y-axis.
   97191 
   97192         Turned out that http://trac.webkit.org/changeset/31830/trunk/WebCore/svg/graphics/cg/SVGResourceMaskerCg.mm
   97193         is guilty. GraphicsContext::clipToImageBuffer() does some extra transformations that SVGResourcesMaskerCg does not want.
   97194 
   97195         Long term goal is to remove the SVGResource*/SVGPaintServer* classes anyway, so it's okay to duplicate
   97196         the "clip to image buffer" functionality, in the CG specific SVGResourceMaskerCg class - as it was before.
   97197 
   97198         * svg/graphics/cg/SVGResourceMaskerCg.mm:
   97199         (WebCore::SVGResourceMasker::applyMask): Changed back to use CG clipping again.
   97200 
   97201 2008-08-12  Dan Bernstein  <mitz (a] apple.com>
   97202 
   97203         - WebCore part of <rdar://problem/6121636>
   97204           Make fast*alloc() abort() on failure and add "try" variants that
   97205           return NULL on failure.
   97206 
   97207         Reviewed by Darin Adler.
   97208 
   97209         * platform/Arena.cpp:
   97210         (WebCore::ArenaAllocate): Removed null checking of fastMalloc()'s
   97211         result.
   97212         * platform/graphics/cg/ImageBufferCG.cpp:
   97213         (WebCore::ImageBuffer::create): Changed to use tryFastCalloc().
   97214 
   97215 2008-08-12  Dan Bernstein  <mitz (a] apple.com>
   97216 
   97217         Reviewed by Darin Adler.
   97218 
   97219         - fix https://bugs.webkit.org/show_bug.cgi?id=19348
   97220           <rdar://problem/5978447> REGRESSION (r34193): Setting the size of a frame with javascript document.body.row no longer works
   97221 
   97222         Test: fast/frames/frameset-style-recalc.html
   97223 
   97224         * html/HTMLFrameSetElement.cpp:
   97225         (WebCore::HTMLFrameSetElement::recalcStyle): Changed to call the base
   97226         class implementation after marking for layout.
   97227 
   97228 2008-08-12  Dan Bernstein  <mitz (a] apple.com>
   97229 
   97230         Reviewed by John Sullivan.
   97231 
   97232         - move shouldUpdateWhenOffscreen from Settings to FrameView and rename it shouldUpdateWhileHidden
   97233 
   97234         * WebCore.base.exp:
   97235         * page/FrameView.cpp:
   97236         (WebCore::FrameViewPrivate::FrameViewPrivate):
   97237         (WebCore::FrameView::shouldUpdateWhileHidden):
   97238         (WebCore::FrameView::setShouldUpdateWhileHidden):
   97239         * page/FrameView.h:
   97240         * page/Settings.cpp:
   97241         * page/Settings.h:
   97242 
   97243 2008-08-12  Adam Roben  <aroben (a] apple.com>
   97244 
   97245         Windows build fix
   97246 
   97247         * bindings/js/JSSVGPODTypeWrapper.h: Align
   97248         JSSVGDynamicPODTypeWrapper's and JSSVGStaticPODTypeWrapperWithParent's
   97249         members on 16-byte boundaries to avoid an alignment warning.
   97250 
   97251 2008-08-12  Nikolas Zimmermann  <zimmermann (a] kde.org>
   97252 
   97253         Reviewed by Oliver.
   97254 
   97255         Add new dynamice-update layout tests covering SVGMarkerElement.
   97256         Fix bug: SVGMarkerElement's SVG DOM function calls don't update rendering.
   97257         Fix orientAngle/orientType confusion: "auto" orient should always return "0" as angle.
   97258 
   97259         Tests: svg/dynamic-updates/SVGMarkerElement-dom-markerHeight-attr.html
   97260                svg/dynamic-updates/SVGMarkerElement-dom-markerUnits-attr.html
   97261                svg/dynamic-updates/SVGMarkerElement-dom-markerWidth-attr.html
   97262                svg/dynamic-updates/SVGMarkerElement-dom-orient-attr.html
   97263                svg/dynamic-updates/SVGMarkerElement-dom-refX-attr.html
   97264                svg/dynamic-updates/SVGMarkerElement-dom-refY-attr.html
   97265                svg/dynamic-updates/SVGMarkerElement-svgdom-markerHeight-prop.html
   97266                svg/dynamic-updates/SVGMarkerElement-svgdom-markerUnits-prop.html
   97267                svg/dynamic-updates/SVGMarkerElement-svgdom-markerWidth-prop.html
   97268                svg/dynamic-updates/SVGMarkerElement-svgdom-orientAngle-prop.html
   97269                svg/dynamic-updates/SVGMarkerElement-svgdom-orientType-prop.html
   97270                svg/dynamic-updates/SVGMarkerElement-svgdom-refX-prop.html
   97271                svg/dynamic-updates/SVGMarkerElement-svgdom-refY-prop.html
   97272                svg/dynamic-updates/SVGMarkerElement-svgdom-setOrientToAngle-call.html
   97273                svg/dynamic-updates/SVGMarkerElement-svgdom-setOrientToAuto-call.html
   97274 
   97275         * svg/SVGMarkerElement.cpp:
   97276         (WebCore::SVGMarkerElement::SVGMarkerElement):
   97277         (WebCore::SVGMarkerElement::parseMappedAttribute):
   97278         (WebCore::SVGMarkerElement::svgAttributeChanged):
   97279         (WebCore::SVGMarkerElement::childrenChanged):
   97280         (WebCore::SVGMarkerElement::setOrientToAuto):
   97281         (WebCore::SVGMarkerElement::setOrientToAngle):
   97282         (WebCore::SVGMarkerElement::canvasResource):
   97283 
   97284 2008-08-12  Nikolas Zimmermann  <zimmermann (a] kde.org>
   97285 
   97286         Reviewed by Oliver.
   97287 
   97288         Add new dynamic-update layout tests covering SVGImageElement.
   97289         Fix bug: SVGImageElement doesn't react on 'preserveAspectRatio' changes.
   97290 
   97291         Tests: svg/dynamic-updates/SVGImageElement-dom-height-attr.html
   97292                svg/dynamic-updates/SVGImageElement-dom-preserveAspectRatio-attr.html
   97293                svg/dynamic-updates/SVGImageElement-dom-width-attr.html
   97294                svg/dynamic-updates/SVGImageElement-dom-x-attr.html
   97295                svg/dynamic-updates/SVGImageElement-dom-y-attr.html
   97296                svg/dynamic-updates/SVGImageElement-svgdom-height-prop.html
   97297                svg/dynamic-updates/SVGImageElement-svgdom-preserveAspectRatio-prop.html
   97298                svg/dynamic-updates/SVGImageElement-svgdom-width-prop.html
   97299                svg/dynamic-updates/SVGImageElement-svgdom-x-prop.html
   97300                svg/dynamic-updates/SVGImageElement-svgdom-y-prop.html
   97301 
   97302         * svg/SVGImageElement.cpp:
   97303         (WebCore::SVGImageElement::svgAttributeChanged):
   97304 
   97305 2008-08-11  Anthony Ricaud  <rik24d (a] gmail.com>
   97306 
   97307         Changed Option/Alt-Up or Down in CSS editing when the value is
   97308         near zero to jump to the next integer.
   97309 
   97310         Reviewed by Tim Hatcher.
   97311 
   97312         https://bugs.webkit.org/show_bug.cgi?id=20326
   97313 
   97314         * page/inspector/StylesSidebarPane.js:
   97315 
   97316 2008-08-11  Anthony Ricaud  <rik24d (a] gmail.com>
   97317 
   97318         Changed the line highlight transition for an easier animation.
   97319 
   97320         Reviewed by Tim Hatcher.
   97321 
   97322         * page/inspector/SourceFrame.js:
   97323 
   97324 2008-08-11  Keishi Hattori  <casey.hattori (a] gmail.com>
   97325 
   97326         Added support for some Firebug Command Line APIs.
   97327 
   97328         Reviewed by Tim Hatcher.
   97329 
   97330         https://bugs.webkit.org/show_bug.cgi?id=19867
   97331         https://bugs.webkit.org/show_bug.cgi?id=19868
   97332         https://bugs.webkit.org/show_bug.cgi?id=19869
   97333         https://bugs.webkit.org/show_bug.cgi?id=19875
   97334         https://bugs.webkit.org/show_bug.cgi?id=19876
   97335         https://bugs.webkit.org/show_bug.cgi?id=19880
   97336 
   97337         * page/inspector/Console.js:
   97338         (WebInspector.Console.prototype._evalInInspectedWindow):
   97339         Create an object on the inspected window that holds the console
   97340         command line API functions. This object is used in a with statement
   97341         around the typed expression.
   97342 
   97343 2008-08-11  Nikolas Zimmermann  <zimmermann (a] kde.org>
   97344 
   97345         Reviewed by Antti.
   97346 
   97347         Fixes: http://bugs.webkit.org/show_bug.cgi?id=17736
   97348 
   97349         JS wrapper objects around SVG POD types, that contain other SVG POD types with writable properties
   97350         failed to update. Modification of the values were completly ignored (ie. transform.matrix.a = 50, didn't take any effect)
   97351 
   97352         Added tests: svg/custom/svg-modify-currentTranslate.html
   97353                      svg/custom/tearoffs-with-tearoffs.html
   97354                      svg/custom/immutable-properties.html
   97355 
   97356         Fixed tests: svg/dynamic-updates/SVGLinearGradientElement-svgdom-gradientTransform-prop.html
   97357 
   97358         * bindings/js/JSSVGPODTypeWrapper.h:
   97359         (WebCore::JSSVGDynamicPODTypeWrapper::commitChange):
   97360         (WebCore::JSSVGStaticPODTypeWrapperWithPODTypeParent::create):
   97361         (WebCore::JSSVGStaticPODTypeWrapperWithPODTypeParent::commitChange):
   97362         (WebCore::JSSVGStaticPODTypeWrapperWithPODTypeParent::JSSVGStaticPODTypeWrapperWithPODTypeParent):
   97363         (WebCore::JSSVGStaticPODTypeWrapperWithParent::create):
   97364         (WebCore::JSSVGStaticPODTypeWrapperWithParent::operator PODType):
   97365         (WebCore::JSSVGStaticPODTypeWrapperWithParent::commitChange):
   97366         (WebCore::JSSVGStaticPODTypeWrapperWithParent::JSSVGStaticPODTypeWrapperWithParent):
   97367         * bindings/scripts/CodeGenerator.pm:
   97368         * bindings/scripts/CodeGeneratorJS.pm:
   97369         * svg/SVGSVGElement.idl: Add [Immutable] markers to SVG POD attributes, that contain POD types with writable attributes.
   97370         * svg/SVGZoomEvent.idl:  SVG specification explicitely demands these attributes to be readonly, even its content.
   97371 
   97372 2008-08-11  Brady Eidson  <beidson (a] apple.com>
   97373 
   97374         Reviewed by John and Anders
   97375 
   97376         Fix for <rdar://problem/6141797>
   97377 
   97378         When WebArchives were entirely a WebKit concept, there was a guarantee that a WebResource
   97379         would never have nil data.
   97380 
   97381         When they were pushed down into WebCore, that guarantee was lost, subtly changing a few
   97382         semantics with some WebKit applications.
   97383 
   97384         The guarantee was a good one and should be restored.
   97385 
   97386         Note that ApplicationCacheResource doesn't need any updates to follow this rule as it already
   97387         creates an empty data object in the case of null data for its own purposes.
   97388 
   97389         * loader/SubstituteResource.h:
   97390         (WebCore::SubstituteResource::SubstituteResource): ASSERT that the data is not null.  This
   97391           well help any future subclassers not make this mistake.
   97392 
   97393         * loader/archive/ArchiveResource.cpp:
   97394         (WebCore::ArchiveResource::create): Return 0 if the data is null.
   97395 
   97396 2008-08-11  Simon Fraser  <simon.fraser (a] apple.com>
   97397 
   97398         Reviewed by Dave Hyatt
   97399 
   97400         https://bugs.webkit.org/show_bug.cgi?id=20328
   97401         Fix a problem when an 'all' transition transition with more than
   97402         one property changing is interrupted, and did some AnimationController
   97403         cleanup.
   97404 
   97405         Test: transitions/interrupted-all-transition.html
   97406 
   97407         * page/AnimationController.cpp:
   97408         (WebCore::ImplicitAnimation::ImplicitAnimation):
   97409         (WebCore::AnimationControllerPrivate::blendProperties):
   97410         (WebCore::CompositeAnimation::updateTransitions):
   97411         (WebCore::CompositeAnimation::cleanupFinishedAnimations):
   97412         (WebCore::CompositeAnimation::setTransitionStartTime):
   97413         (WebCore::CompositeAnimation::overrideImplicitAnimations):
   97414         (WebCore::CompositeAnimation::resumeOverriddenImplicitAnimations):
   97415         (WebCore::ImplicitAnimation::animate):
   97416         (WebCore::ImplicitAnimation::onAnimationEnd):
   97417         (WebCore::ImplicitAnimation::sendTransitionEvent):
   97418         (WebCore::ImplicitAnimation::affectsProperty):
   97419         (WebCore::KeyframeAnimation::endAnimation):
   97420         (WebCore::KeyframeAnimation::onAnimationEnd):
   97421 
   97422 2008-08-11  Kevin McCullough  <kmccullough (a] apple.com>
   97423 
   97424         Reviewed by Tim.
   97425 
   97426         - Because console messages have group levels now, newly created messages
   97427         that do not specify the level lose their message since the number of
   97428         arguments is wrong.
   97429 
   97430         * page/inspector/Console.js:
   97431         * page/inspector/Resource.js:
   97432 
   97433 2008-08-11  Alp Toker  <alp (a] nuanti.com>
   97434 
   97435         Build fix. Add new files from r35666 (WebKitAnimationEvent). Also take
   97436         the opportunity to sort the sources lists.
   97437 
   97438         * GNUmakefile.am:
   97439 
   97440 2008-08-11  Timothy Hatcher  <timothy (a] apple.com>
   97441 
   97442         Speed up the the JavaScript syntax highlighter by generating
   97443         the finders only once per script instead of per line.
   97444 
   97445         https://bugs.webkit.org/show_bug.cgi?id=20346
   97446 
   97447         Reviewed by Adam Roben.
   97448 
   97449         * page/inspector/SourceFrame.js:
   97450         (WebInspector.SourceFrame.prototype._syntaxHighlightJavascriptLine):
   97451         Removed, factored into syntaxHighlightJavascript as an inline function.
   97452         (WebInspector.SourceFrame.prototype.syntaxHighlightJavascript):
   97453         Pulled in the _syntaxHighlightJavascriptLine so it will create a closure.
   97454         Generate the finders before iterating the lines.
   97455 
   97456 2008-08-11  Adam Roben  <aroben (a] apple.com>
   97457 
   97458         Windows build fix
   97459 
   97460         * WebCore.vcproj/WebCore.vcproj: Added JSWebKitAnimationEvent.cpp and
   97461         JSWebKitTransitionEvent.cpp to the project. Let VS reformat the file,
   97462         too.
   97463 
   97464 2008-08-11  Dan Bernstein  <mitz (a] apple.com>
   97465 
   97466         Reviewed by Darin Adler.
   97467 
   97468         - fix <rdar://problem/6131096> Reproducible crash in CounterNode::isReset under guard malloc
   97469 
   97470         Test: fast/css/counters/invalidate-cached-counter-node.html
   97471 
   97472         * rendering/RenderContainer.cpp:
   97473         (WebCore::RenderContainer::invalidateCounters): Added. Invalidates all
   97474         RenderCounters in :before and :after content.
   97475         * rendering/RenderContainer.h:
   97476         * rendering/RenderCounter.cpp:
   97477         (WebCore::RenderCounter::isCounter): Renamed isRenderCounter() to this
   97478         to match the RenderObject method.
   97479         (WebCore::RenderCounter::invalidate): Added. Resets the cached
   97480         CounterNode and invalidates the object's layout and preferred widths.
   97481         (WebCore::destroyCounterNodeChildren): Added a call to
   97482         invalidateCounters().
   97483         * rendering/RenderCounter.h:
   97484         * rendering/RenderObject.h:
   97485         (WebCore::RenderObject::invalidateCounters):
   97486 
   97487 2008-08-11  Dean Jackson  <dino (a] apple.com>
   97488 
   97489         Implement CSS Animation and Transition Events
   97490         https://bugs.webkit.org/show_bug.cgi?id=20337
   97491 
   97492         Implement the events defined in the CSS Animations
   97493         and Transitions specifications so code can react
   97494         to animations and transitions.
   97495 
   97496         Reviewed by Tim Hatcher and Dave Hyatt.
   97497 
   97498         * DerivedSources.make:
   97499         * GNUmakefile.am:
   97500         * WebCore.pro:
   97501         * WebCore.vcproj/WebCore.vcproj:
   97502         * WebCore.xcodeproj/project.pbxproj:
   97503         * WebCoreSources.bkl:
   97504             Build configs for new files
   97505 
   97506         * bindings/js/JSDOMWindowBase.cpp:
   97507         * bindings/js/JSDOMWindowBase.h:
   97508         * bindings/js/JSEventCustom.cpp:
   97509         * dom/Document.h:
   97510         * dom/Event.cpp:
   97511         * dom/Event.h:
   97512         * dom/EventTarget.cpp:
   97513         * dom/EventTargetNode.cpp:
   97514         * dom/EventTargetNode.h:
   97515         * html/HTMLElement.cpp:
   97516         * page/AnimationController.cpp:
   97517             do all the new event stuff
   97518 
   97519         * html/HTMLAttributeNames.in:
   97520             the onwebkitanimation* and onwebkittransitionend attrs
   97521 
   97522         * dom/WebKitAnimationEvent.cpp: Added.
   97523         * dom/WebKitAnimationEvent.h: Added.
   97524         * dom/WebKitAnimationEvent.idl: Added.
   97525         * dom/WebKitTransitionEvent.cpp: Added.
   97526         * dom/WebKitTransitionEvent.h: Added.
   97527         * dom/WebKitTransitionEvent.idl: Added.
   97528             New files for the events
   97529 
   97530         * manual-tests/transition-events.html: Added.
   97531             New testfile
   97532 
   97533 2008-08-11  Adam Roben  <aroben (a] apple.com>
   97534 
   97535         Add a ForwardingHeader for wtf/NotFound.h
   97536 
   97537         Rubberstamped by Darin Adler.
   97538 
   97539         * ForwardingHeaders/wtf/NotFound.h: Added.
   97540 
   97541 2008-08-11  Timothy Hatcher  <timothy (a] apple.com>
   97542 
   97543         Fixes a bug where error bubbles in JavaScript resources would
   97544         be clobbered by the syntax highlighter.
   97545 
   97546         https://bugs.webkit.org/show_bug.cgi?id=20345
   97547 
   97548         Reviewed by Adam Roben.
   97549 
   97550         * manual-tests/inspector/resources/script-error.js: Added.
   97551         * manual-tests/inspector/styled-error-bubbles-in-scripts.html: Added.
   97552         * page/inspector/SourceFrame.js:
   97553         (WebInspector.SourceFrame.prototype._addMessageToSource):
   97554         Check the nodeType and not the nodeName, this is less fragile.
   97555         (WebInspector.SourceFrame.prototype._syntaxHighlightJavascriptLine):
   97556         Check if the lastChild is an error bubble, if so remove it before
   97557         getting the line's textContent. Add the error bubble back at the end.
   97558 
   97559 == Rolled over to ChangeLog-2008-08-10 ==
   97560